通信系统、控制器、节点控制方法和程序的制作方法

文档序号:7884718阅读:240来源:国知局
专利名称:通信系统、控制器、节点控制方法和程序的制作方法
技术领域
本发明涉及通信系统、控制器、节点控制方法和程序。更具体地,本发明涉及包括一网络节点和另一网络节点的通信系统,所述网络节点通过参考条目来转发分组,所述另一网络节点根据处理规则集合来转发到来的分组。所述条目将所述第一状态的网络节点的端口与所述另一网络节点的地址信息相关联,其中所述分组从所述端口转发给所述另一网络节点。处理规则集合将应用于 所述分组的处理与作为处理对象而识别所述分组的匹配规则相关联。本发明还涉及控制器、节点控制方法和程序。
背景技术
近年来,已经提出了称为Open-Flow的技术(参见专利文献I和非专利文献I和2)。OpenFlow将通信理解为端到端流,并且进行路径控制、故障恢复、负载分发和逐流优化。作为中继设备操作的OpenFlow交换机包括用于与作为控制器操作的OpenFlow控制器进行通信的安全信道。OpenFlow交换机根据流表进行操作,由OpenFlow控制器不定时地命令对流表进行添加或改写。在流表中,以流为基础定义了用于与分组首部进行匹配的一组匹配规则(首部字段)、流统计信息(计数器)和动作(参见图9)。动作定义了应用于与匹配规则(首部字段)匹配的分组的处理的内容。在接收到分组时,OpenFlow交换机在流表中检索具有与分组的首部信息(参见图9的首部字段)匹配的匹配规则的条目。如果作为检索的结果,找到了与到来的分组匹配的条目,则OpenFlow交换机更新流统计信息(计数器)。OpenFlow交换机还向到来的分组应用在该条目的动作字段中描述的处理内容,例如从指定端口传送分组、扩散或丢弃(丢掉)。如果作为上述检索的结果,未找到与到来的分组匹配的条目,则OpenFlow交换机通过安全信道将到来的分组转发到OpenFlow控制器,请求控制器根据到来的分组的源以及传送目的地来决定该分组的转发路径。OpenFlow交换机然后接收实施流条目,以更新流表。按照这种方式,OpenFlow交换机使用存储在流表中的条目作为处理规则集合来转发分组。在专利文献2中,公开了一种中继设备,包括端口运动电路,用于检测在帧经由与MAC地址表中已知的路径不同的路径到达时将发生的端口运动。引用列表专利文献PTLl W02008/095010A1PTL2 JP Patent Kokai Publication No. JP2008-301003A非专利文献NPLl Nick McKeown et al., " OpenFlow Enabling Innovation in CampusNetworks ",(online), (retrieved on July6,2010), Internet<URL http://www.openflowswitch. org//documents/openflow~wp-latest. pdf>NPL2 " OpenFlow Switch Specification " Versionl. 0.0. (Wire Protocol0x01) (retrieved on July6,2010), Internet<URL http://www. openflowswitch. org/documents/openflow-spec-vl. 0. 0. pdf>

发明内容
技术问题将上述 专利文献和非专利文献的全部公开通过对其的引用并入本文。以下分析由本发明给出。在专利文献2中还描述了在层2交换中,MAC地址表获悉到来的分组,作为从非预计方向接收到分组的结果,可能出现MAC地址表的错误获悉。因此,在专利文献I和非专利文献I和2公开的OpenFlow交换机与层2交换机连接在一起的情况下,由于层2交换机,在转发路径上存在一个问题,即分组可能无法根据OpenFlow控制器所设置的转发路径而流动。例如,如果OpenFlow控制器针对行进和返回路径设置了不同的转发路径,则如图10的下部分中的环绕迷你表所示,更新层2交换机(L2SW)的MAC地址表。这是因为由半路提供的层2交换机(L2SW)的端口 2接收从终端MAC A寻址到终端MAC B的分组。因此,如图10中的虚线所示,在层2交换机(L2SW)的端口 2处输出后续从终端MAC B传送至终端MAC A的分组。鉴于上述现有技术,本发明的目的是提供一种配置和方法,其中,在上述层2交换机所表示的节点和在专利文献I和非专利文献I和2中公开的OpenFlow交换机所表示的节点共存的环境中,能够根据预计路径来转发分组。解决技术问题的技术方案在本发明的第一方面,提供了一种通信系统,所述通信系统包括第一节点,所述第一节点在预设时间内保存将第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的分组经由所述端口转发到所述多个节点。所述第一节点参考所述条目组来决定与分组的目的地相关联的用于转发分组的端口。该通信系统还包括多个第二节点,每个第二节点包括分组处理器。分组处理器根据将要应用于分组的处理与适于识别要经过该处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组。该通信系统还包括控制器,所述控制器使得从在分组转发路径上位于第一节点下游侧的第二节点向第一节点传送目的地获悉分组,以便由第一节点接收该目的地获悉分组。目的地获悉分组以在预设分组转发路径上位于第一节点下游侧的第二节点之一作为传送源。因此,使第一节点根据分组转发路径执行分组转发操作。在本发明的第二方面,提供了一种控制器,所述控制器与第一节点相连,所述第一节点在预设时间内保存将第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的分组经由所述端口转发到所述多个节点。所述第一节点参考所述条目组来决定与分组的目的地相关联的用于转发分组的端口。所述控制器还与多个第二节点相连。每个第二节点包括分组处理器,所述分组处理器根据将应用于分组的处理与适于识别要经受该处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组。所述控制器使得从在分组转发路径上位于第一节点下游侧的第二节点向第一节点传送目的地获悉分组,以便由第一节点接收该目的地获悉分组。目的地获悉分组以在预设分组转发路径上位于第一节点下游侧的第二节点之一作为传送源。因此,使第一节点根据分组转发路径执行分组转发操作。在本发明的第三方面,提供了一种节点控制方法,其中,控制器与第一节点以及多个第二节点相连,所述第一节点在预设时间内保存将第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的分组经由所述端口转发到所述多个节点;所述第一节点参考所述条目组来决定与分组的目的地相关联的用于转发分组的端口 ;每个第二节点包括分组处理器,所述分组处理器根据将应用于分组的处理与适于识别要经受该处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组。所述控制器使得从在分组转发路径上位于第一节点下游侧的第二节点向第一节点传送目的地获悉分组,以便由第一节点接收到目的地获悉分组;目的地获悉分组以在预设分组转发路径上位于第一节点下游侧的第二节点之一作为传送源。所述控制器使得第一节点根据目的地获悉分组的传送源地址来更新将第一节点的端口与分组能够经由端口被转发到的节点的地址信息相关联的条目。要注意,本方法与专用机器绑定,所述专用机器即构成控制上述第二节点的控制器的计算机。在本发明的第四方面 ,提供了一种在构成控制器的计算机上运行的程序。所述控制器与第一节点以及多个第二节点相连,所述第一节点在预设时间内保存将第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的分组经由所述端口转发到所述多个节点;所述第一节点参考所述条目组来决定与分组的目的地相关联的用于转发分组的端口 ;每个第二节点包括分组处理器,所述分组处理器根据将要应用于分组的处理与适于识别要经受该处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组。所述程序使得计算机执行以下处理向在数据分组转发路径上位于第一节点下游侧的第二节点传送目的地获悉分组,以便向第一节点转发目的地获悉分组;或者命令位于第一节点下游侧的第二节点产生目的地获悉分组,并向第一节点发送该目的地获悉分组。要注意,本程序可以记录在计算机可读记录介质上。即,本发明可以实现为计算机程序产品。本发明的有益效果本发明的有益效果总结如下。即使在上述层2交换机(L2SW)所表示的节点和在专利文献I和非专利文献I和2中公开的OpenFlow交换机所表示的节点共存的情况下,也能够根据预计路径来转发分组。


图1是示出了本发明的概要的示意图。图2是示出了本发明的示意性实施例1的配置的示意图。图3是示出了本发明的示意性实施例1的控制设备(控制器)的详细配置的框图。图4是示出了要由本发明的示意性实施例2实现的分组转发路径的示意图。图5是示出了本发明的示意性实施例2的操作的示意图。图6是示出了要由本发明的示意性实施例3实现的分组转发路径的示意图。
图7是示出了本发明的示意性实施例3的操作的示意图。图8是示出了本发明的示意性实施例4的操作的示意图。图9是示出了在非专利文献2中公开的流条目的配置的图示。图10是示出了 MAC地址表的错误获悉情况的示意图。
具体实施例方式首先,解释本发明的概要。参考图1,本发明可以由第一网络节点400、一组第二网络节点210、220、230和240以及控制器100实现。第一网络节点保存一条目组,该条目组根据到来的分组的传送源的地址,将节点自身的端口与分组能够经由端口被转发到的节点的地址信息相关联。第一节点参考该条目组,以决定与分组的目的地相关联的用于转发分组的端口。第二网络节点210、220、230和240中的每一个均包括分组处理器,分组处理器根据将要应用于分组的处理与适于识别要经受该处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组。控制器100使得第一节点400经由第二节点(例如图1的第二节点220)接收目的地获悉分组。要注意,将上面使用的参考数字附在相关单元上仅仅是为了利于理解,并不意在将本 发明限制于附图中所示的模式。例如,假定针对从图1的终端310传送到终端320的分组,已经决定了这种转发路径,其中,经由第二节点210、第一节点400、第二节点220和第二节点230,按照该顺序转发分组。要注意,如果具有终端320的MAC地址(MAC A)的分组应该从终端320流向第一节点400的端口 #2,则第一节点400应该已经通过错误而获悉了应该经由端口 #2输出以MACA作为目的地的分组(参见图10)。另一方面,如果第一节点400在比预设时间长的时间内未接收到以MAC A作为目的地的分组,则第一节点应该从与端口 #1绑定(相关联)的条目中删除终端320的MAC地址(MAC A)。考虑到该情况,本发明的控制器100以预定时间间隔向(假定上述分组转发路径)第一节点400传送目的地获悉分组。目的地获悉分组以终端320的MAC地址MAC A作为传送源的地址。这更新在第一节点处保存的分组转发条目,因而使得更可靠地执行对于上述分组转发路径而言适当的分组转发操作。要注意,希望以在考虑到第一节点400的条目保存时间(超时值)的情况下不会擦除所需条目的短间隔来传送目的地获悉分组。示意性实施例1现在参考附图来描述本发明的示意性实施例1。图2示出了本发明的示意性实施例I的配置。参考图2,示意性实施例1的配置包括与终端310相连的第二节点210、与终端320相连的第二节点230以及第一节点400,第一节点400通过参考从第二节点210传送来的分组的目的地地址,向第二节点220或第二节点240转发分组。此外,示意性实施例1的配置包括将第二节点230与第一节点400互连的第二节点220、240。第一节点400是层2交换机,其在预设时间内保存一组条目,该条目组根据接收到的分组的传送源的地址,将其自身的一个端口与到来的分组能够经由该端口被转发到的节点的地址信息相关联。这些条目与例如交换机集线器所保存的MAC地址表中的条目相同。假定在下面的示意性实施例中,第二节点220和第二节点240分别与第一节点400的端口#1和端口 #2相连。第二节点210至240中的每一个是包括分组处理器的交换机,分组处理器根据将要应用于分组的处理与适于识别要经受该处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组。例如,可以将按照非专利文献2的OpenFlow交换机操作的交换机用作
第二节点。控制器100具有以下功能使得第二节点210、220、230和240中的任意一个传送(即,发送)目的地获悉分组。在示意性实施例的以下说明中,假定控制器100是非专利文献2的OpenFlow控制器,能够针对第二节点210至240设置处理规则(流条目)、发送出缓存的分组或收集统计信息(计数器)。控制器100还可以是能够与非专利文献2的OpenFlow控制器协作的独立设备,即传送目的地获悉分组,以便实现OpenFlow控制器所预备的分组转发路径。在下面的示意性实施例中,假设终端310的MAC地址是“B”且终端320的MAC地址是“A”。图3是示出了作为Open-Flow控制器操作、并且还能够传送目的地获悉分组的控制设备(控制器)100的配置的框图。参考图3,控制设备(控制器100)包括流条目数据库(流条目DB) 101,其中存储了处理规则(流条目),每个处理规则由匹配规则(如图9的示例所示)、动作(包括定时器值)以及流统计信息构成的。控制器100还包括目的地获悉分组产生器102、拓扑管理单元103、 路径/动作计算单元104、流条目管理单元105、控制消息处理器106和用于执行与节点210至240的通信的节点通信单元107。这些组件的操作如下。以路径/动作计算单元104等预备新的流作为触发,目的地获悉分组产生器102参考拓扑管理单元103所构造的网络拓扑信息,以决定作为目的地获悉分组流动所经过的部分的起始点操作的第二节点。这种第二节点要设置在分组转发路径上进行获悉操作的第一节点400下游侧。目的地获悉分组产生器还产生要向包括上述第一节点400在内的分组转发路径的一部分或全部发送的目的地获悉分组。更具体而言,目的地获悉分组产生器产生这样的分组,该分组以在分组转发路径上流动的数据分组的目的地MAC地址作为传送源MAC地址,并且以在目的地获悉分组流动所经过的范围的终端终点处的第二节点的MAC地址作为目的地MAC地址。要注意,可以通过来自目的地获悉分组流动所经过的路径部分的终端终点处的第二节点的、用于添加或更新(Packet-1n)处理规则集合(流条目)的请求,来检测利用上述目的地获悉分组的获悉操作的完成。拓扑管理单元103根据经由节点通信单元107所收集的节点210至240的互连关系,构造(创建)并管理网络拓扑信息。路径/动作计算单元104根据拓扑管理单元103所构造的网络拓扑信息,找到分组转发路径、要由位于转发路径上的节点210至240中的每一个执行的动作、以及作为处理规则的有效性的时间段的定时器值。流条目管理单元105根据从节点接收到的信息来规划匹配规则(匹配关键字)。流条目管理单元还将路径至/动作计算单元104所计算的结果作为处理规则集合(流条目)登记在流条目DBlOl中,同时响应于来自节点210至240中的每一个的、用于添加或更新处理规则集合(流条目)的请求,来设置处理规则集合(流条目)。控制消息处理器106分析从节点210至240接收到的控制消息,以将控制消息信息转送给控制设备(控制器)100内的相关处理装置。例如,在从节点210至240接收到通知检测到新的流的消息(Packet-1n)时,控制消息处理器106进行检查,以查看要应用于这种新的流的处理规则集合(流条目)是否已经登记在流条目DBlOl中。如果尚未登记处理规则集合,则控制消息处理器请求路径/动作计算单元104规划新的处理规则集合(流条目)。控制 消息处理器106还向作为目的地获悉分组流向第一节点400所经过的路径部分的起始点的第二节点发送在目的地获悉分组产生器102中产生的目的地获悉分组,并且控制消息处理器请求第二节点经由特定端口来传送该分组。在需要使得多个第一节点400中的每一个均接收目的地获悉分组的情况下,控制消息处理器还设置在位于包括第一节点在内的目的地获悉分组转发路径上的第二节点中实现所感兴趣的转发路径的处理规则(流条目)。还可以使用使得图3所示的控制器100的各个组件(处理装置)在构成控制器100的计算机的硬件的辅助下执行上述处理操作的计算机程序。在本示意性实施例中,已经说明了 控制器100预备目的地获悉分组,并请求第二节点传送所预备的分组。然而,控制器请求第二节点产生并传送目的地获悉分组也是可行的。因此,以下情况也是可行的控制器命令第二节点改写缓存器等所保存的分组的首部,以在特定端口处输出所得到的分组;或者控制器设置已经定义了执行改写/输出操作的动作的处理规则集合(流条目)。通过这样做,可以实现等同的操作。如上所述,通过使目的地获悉分组流经包括第一节点400在内的路径部分,可以以最佳条件保持相关的第一节点400的分组转发条目。示意性实施例2现在参考附图来描述本发明的示意性实施例2。在上述示意性实施例1中,维持某个指定的分组转发路径。在本示意性实施例2中,如图4所示,经由彼此相对布置的两个第一节点来转发分组,使得经由不同的分组转发路径,在行进和返回路径上转发彼此不同的分组。由于本示意性实施例2可以由与上述示意性实施例1相同的配置来实现,所以下面的解释将关注于与示意性实施例1不同的点。假定在添加有与第一节点400相同的第一节点410的网络中,如图4所示,经由不同的分组转发路径,在行进路径和返回路径上转发彼此不同的分组。在这种情况下,在图的右侧处的第一节点410已经接收到从图4的终端310 (MAC地址=B)寻址到终端320 (MAC地址=A)的分组的时间点处,第一节点410将获悉要经由其端口 #1转发目的地MAC地址是B的分组。因此,利用示意性实施例1的目的地获悉分组,不可能实现对于行进路径且对于返回路径不同的分组转发路径。因此,在设置针对作为数据分组转发路径的起始点的第二节点210的处理规则集合(流条目)时,本示意性实施例的控制设备(控制器)100B添加以下动作将数据分组的分组首部中的传送源的MAC地址改写为预设MAC地址,例如图5所示的‘X’。类似地,在作为从终端320至终端310的数据分组转发路径的起始点的第二节点250中设置添加有改写传送源MAC地址的动作的处理规则集合(流条目),尽管图5并未示出这一点。然后,本示意性实施例的控制设备(控制器)100B使得第二节点220或第二节点250传送以下目的地获悉分组上述预设MAC地址⑴作为目的地MAC地址,且传送源MAC地址是终端320的MAC地址(A)。第一节点400因此获悉经由端口 #1发送以终端320作为目的地的分组。此外,通过使得第一节点410按照类似方式接收目的地获悉分组,可以使得第一节点410获悉经由其端口 #2发送以MAC地址(B)作为目的地的分组,尽管图5并未示出这一点。即使第一节点40接收到上述数据分组或来自第二节点250的目的地获悉分组,节点410也仅获悉经由端口 #1发送目的地MAC地址为MAC地址(X)的分组。第一节点410因此维持经由其端口 #2发送目的地MAC地址为MAC地址⑶的分组的条目。因此,可以如图5所示,针对行进路径实现与针对返回路径的分组转发路径不同的分组转发路径。按照类似方式,第一节点410维持经由其端口 #1发送以MAC地址(A)作为目的地MAC地址的分组的条目。如上所述,利用本示意性实施例,可以针对行进路径实现与针对返回路径的分组转发路径不同的分组转发路径。要注意,当然,如果在要在第二节点220、240中的每一个中设置的处理规则集合(流条目)的匹配规则(匹配关键字)中包含了改写的MAC地址,则必需纠正与改写的MAC地址有关的内容。示意性实施例3现在描述本发明的示意性实施例3。在上述示意性实施例1中,要维持某个指定的分组转发路径。在本示意性实施例中,如图6中的粗虚线所示,以流为基础按照分流方式转发相同目的地的分组I。由于本示意性实施例3可以由与上述示意性实施例1相同的配置来实现,所以下面的说明将关注于本示 意性实施例与示意性实施例1不同的点。参考图6,利用与在示意性实施例1中使用的目的地获悉分组相同的目的地获悉分组,以如下方式进行获悉操作经由端口 #1发送所有以MAC地址(A)作为目的地的第一节点400处的分组。因此,第一节点400无法以流为基础按照节点400处的分流方式转发分组。因此,在作为数据分组转发路径的起始点的第二节点210处设置处理规则集合(流条目)时,本示意性实施例的控制设备(控制器)100C添加以下动作将数据分组的分组首部中的目的地MAC地址改写为每个流唯一的MAC地址,例如如图7所示的‘VI’或‘V2’。此外,在作为数据分组转发路径的终点的第二节点230中设置处理规则集合(流条目)时,控制设备(控制器)100C添加以下动作将数据分组的分组首部中的目的地MAC地址从每个流唯一的MAC地址(例如,‘VI’或‘V2’ )改写为原始MAC地址。要注意,每个流唯一的MAC地址可以由控制器100的目的地获悉分组产生器102产生,或者可以使用在流条目DBlOl中使用的条目管理编号等。随后,本示意性实施例的控制器100C使得第二节点220或第二节点250发送以每个流唯一的MAC地址Vl作为传送源MAC地址的目的地获悉分组。控制器100还使得第二节点240或第二节点250传送以每个流唯一的MAC地址(V2)作为传送源MAC的目的地获悉分组。第一节点400因此获悉在其端口 #1传送以MAC地址(Vl)作为目的地的分组,并且在其端口 #2传送以MAC地址(V2)作为目的地的分组。因此利用本示意性实施例,可以使得分组转发路径上的第一节点400执行与第二节点所执行的操作类似的基于流的分组转发操作。当然,如果在要在第二节点220或第二节点240中设置的处理规则集合(流条目)的匹配规则(匹配关键字)中包含了改写的MAC地址,则必需纠正与改写的MAC地址有关的内容。示意性实施例4现在参考附图来描述本发明的示意性实施例4。在上述示意性实施例3中,获悉每个流唯一的MAC地址。因此,恐怕第一节点所保存的条目的数目可能增加。在本示意性实施例中,唯一的MAC地址与分组转发路径上的每个第二节点的各自端口一致,以防止第一节点所保存的条目的数目增加。由于本示意性实施例4可以由与上述示意性实施例1相同的配置来实现,所以下面的说明将关注于本示意性实施例与示意性实施例1不同的点。在下面的说明中,将第二节点210与第一节点400的连接端口的MAC地址标记为Ll-1,并将第二节点220与第一节点400的连接端口的MAC地址标记为L2-1。将第二节点220与第一节点410的连接端口的MAC地址标记为L2-2。类似地,将第二节点240与第一节点400的连接端口的MAC地址标记为L4-1,并将第二节点240与第一节点410的连接端口的MAC地址标记为L4-2。将第二节点250与第一节点410的连接端口的MAC地址标记为L3-1。

在数据分组转发路径上的第二节点210、220中设置处理规则(流条目)时,如图8所示,本示意性实施例的控制器100D添加以下动作将数据分组的分组首部中的目的地和传送源MAC地址改写为自身(第二)节点210、220的MAC地址和下一跳的MAC地址。此夕卜,在作为数据分组转发路径的终端端点的第二节点250中设置处理规则集合(流条目)时,控制器100添加以下动作将数据分组的分组首部中的目的地和传送源MAC地址恢复为原始MAC地址。然后,本示意性实施例的控制器100D使得传送数据分组的目的地MAC地址和传送源MAC地址互换的目的地获悉分组。对于这种目的地获悉分组,可以使用LLDP (链路层发现协议)分组以获益。通过这么做,第一节点400、410仅获悉直接与之连接的每个第二节点的MAC地址,因此可以抑制第一节点400、410所保存的条目的数目。此外,在本示意性实施例中,在每个跳中改写数据分组的分组首部,并且通过与改写的分组首部相对应的目的地获悉分组来进行获悉操作。因此,可以针对行进路径实现与针对返回路径的分组转发路径不同的分组转发路径。此外,通过将数据分组改写为基于流的MAC地址而不是改写为每个第二节点的基于端口的MAC地址,并如示意性实施例3 —样发送基于流的目的地获悉分组,可以将相同目的地的分组分流为多个基于流的分组。尽管关于本发明的优选示意性实施例进行了描述,但是这些示意性实施例仅作为示意给出,并不意在限制本发明的范围。也即,在不背离本发明的基本技术概念的情况下可以进行其他修改、替换或调整。例如,在上述示意性实施例中示出的第一和第二节点或者网络配置中的每一个的数目仅用于辅助对本发明的理解,可以广泛地修改该数目。本发明可以包括以下优选执行示例的节点<第一模式>(参见根据第一方面的上述通信系统)<第二模式>第一模式的通信系统,其中,所述控制器向在数据分组的转发路径上位于所述第一节点下游侧的第二节点传送目的地获悉分组,以使得所述目的地获悉分组被转发到所述第一节点,或者命令位于所述第一节点下游侧的所述第二节点产生所述目的地获悉分组并向所述第一节点传送所产生的所述目的地获悉分组,从而使所述第一节点接收所述目的地获悉分组。<第三模式>第一或第二模式的通信系统,其中,在所述预设分组转发路径上位于所述第一节点下游侧的第二节点中设置处理规则集合时,所述控制器向所述处理规则集合添加将传送源地址改写为另一地址的处理。〈第四模式〉第一至第三模式中的任意一项的通信系统,其中,在所述预设分组转发路径上位于所述第一节点上游侧的第二节点中设置处理规则集合时,所述控制器向所述处理规则集合添加将分组首部的目的地地址改写为逐流设置的虚拟目的地地址的处理;其中,所述控制器使所述第一节点接收以所述虚拟目的地地址作为传送源且以位于所述第一节点上游侧的节点作为目的地的分组,作为所述目的地获悉分组。<第五模式>第一至第四模式中的任意一项的通信系统,其中,在包括所述第一节点在内的预设分组转发路径上与所述第一节点相连的第二节点中设置处理规则集合时,所述控制器向针对经由所述第一节点相连的所述第二节点的所述处理规则集合添加改写分组首部的处理,使得在第二节点的端口中设置的虚拟地址成为传送源,并且在经由所述第一节点连接的第二节点的端口中设置的虚拟地址成为目`的地;其中,使所述第一节点接收以每个虚拟地址作为传送源和目的地的反向目的地获悉分组,作为所述目的地获悉分组。<第六模式>根据第五模式的通信系统,其中,使用LLDP (链路层发现协议)分组作为所述目的地获悉分组。<第七模式>根据第一至第六模式中的任意一项的通信系统,其中,所述控制器使所述第一节点以比所述第一节点的条目保存时间间隔短的时间间隔来接收目的地获悉分组。<第八模式>(参见根据上述第二方面的控制设备)〈第九模式〉(参见根据上述第三方面的节点控制方法)〈第十模式〉(参见根据上述第四方面的程序)与上述第一模式的通信系统类似,可以如第二至第七模式所示,扩展上述第八至第十模式。将上述专利文献和非专利文献的公开通过对其的引用并入本文。可以根据本发明的基本技术概念,在本发明的整体公开(含权利要求)的范围内修改或调整特定示意性实施例或示例。此外,可以在权利要求的框架内进行本文公开的单元的各种组合或选择。附图标记列表
100、100B、100C、IOOD控制设备(控制器)400,410第一节点210、220、230、240、250第二节点310、320终端101流条目数据库(流条目DB)102目的地获悉分组产生器103拓扑管理单元104路径/动作计算单元

105流条目管理单元106控制消息处理器107节点通信单元
权利要求
1.一种通信系统,包括 第一节点,所述第一节点在预设时间内保存将所述第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的所述分组经由所述端口转发到所述多个节点;所述第一节点参考所述条目组来决定与所述分组的目的地相关联的用于转发所述分组的端口; 多个第二节点,每个所述第二节点包括分组处理器,所述分组处理器根据将要应用于所述分组的处理与适于识别要经受所述处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组;以及 控制器,所述控制器使得从在预设分组转发路径上位于所述第一节点下游侧的第二节点向所述第一节点传送目的地获悉分组,以便由所述第一节点接收所述目的地获悉分组;所述目的地获悉分组以在所述预设分组转发路径上位于所述第一节点下游侧的所述第二节点之一作为传送源;从而使所述第一节点根据所述分组转发路径执行分组转发操作。
2.根据权利要求1所述的通信系统,其中 所述控制器向在数据分组的转发路径上位于所述第一节点下游侧的第二节点发送目的地获悉分组,以使得向所述第一节点转发所述目的地获悉分组,或者命令位于所述第一节点下游侧的所述第二节点产生所述目的地获悉分组并向所述第一节点发送所产生的所述目的地获悉分组,从而使所述第一节点接收所述目的地获悉分组。
3.根据权利要求1或2所述的通信系统,其中 在所述预设分组转发路径上位于所述第一节点上游侧的所述第二节点中设置所述处理规则集合时,所述控制器向所述处理规则集合添加将传送源地址改写为另一地址的处理。
4.根据权利要求1至3中的任一项所述的通信系统,其中 在所述预设分组转发路径上位于所述第一节点上游侧的所述第二节点中设置所述处理规则集合时,所述控制器向所述处理规则集合添加将分组首部的目的地地址改写为逐流设置的虚拟目的地地址的处理; 使所述第一节点接收以所述虚拟目的地地址作为传送源且以位于所述第一节点上游侧的所述节点作为目的地的分组,作为所述目的地获悉分组。
5.根据权利要求1至4中的任一项所述的通信系统,其中 在包括所述第一节点在内的所述分组转发路径上与所述第一节点相连的第二节点中设置所述处理规则集合时,所述控制器向经由所述第一节点相连的所述第二节点的所述处理规则集合添加改写分组首部的处理,使得在第二节点的端口中设置的虚拟地址将会成为传送源,并且在经由所述第一节点连接的所述第二节点的端口中设置的虚拟地址将会成为目的地; 使所述第一节点接收以在经由所述第一节点相连的所述第二节点的端口中设置的所述虚拟目的地地址作为传送源、并且以在与所述第一节点相连的所述第二节点中设置的所述虚拟目的地地址作为目的地的反向目的地获悉分组。
6.根据权利要求5所述的通信系统,其中,使用LLDP‘链路层发现协议’分组作为所述目的地获悉分组。
7.根据权利要求1至6中的任一项所述的通信系统,其中,所述控制器使所述第一节点以比所述第一节点的条目保存时间间隔短的时间间隔来接收所述目的地获悉分组。
8.—种控制器,与以下节点相连 第一节点,所述第一节点在预设时间内保存将所述第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的所述分组经由所述端口转发到所述多个节点;所述第一节点参考所述条目组来决定与所述分组的目的地相关联的用于转发所述分组的端口 ;以及 多个第二节点,每个所述第二节点包括分组处理器,所述分组处理器根据将应用于所述分组的处理与适于识别要经受所述处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组; 所述控制器使得从在预设分组转发路径上位于所述第一节点下游侧的第二节点向所述第一节点传送目的地获悉分组,以便由所述第一节点接收所述目的地获悉分组;所述目的地获悉分组以在所述预设分组转发路径上位于所述第一节点下游侧的所述第二节点之一作为传送源;从而使所述第一节点根据所述分组转发路径执行分组转发操作。
9.一种节点控制方法,其中, 控制器与以下节点相连 第一节点,所述第一节点在预设时间内保存将所述第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的所述分组经由所述端口转发到所述多个节点;所述第一节点参考所述条目组来决定与所述分组的目的地相关联的用于转发所述分组的端口 ;以及 多个第二节点,每个所述第二节点包括分组处理器,所述分组处理器根据将应用于所述分组的处理与适于识别要经受所述处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组; 其中,所述方法包括 所述控制器使得从在所述分组转发路径上位于所述第一节点下游侧的第二节点向所述第一节点传送目的地获悉分组,以便由所述第一节点接收所述目的地获悉分组的步骤;所述目的地获悉分组以在预设分组转发路径上位于所述第一节点下游侧的所述第二节点之一作为传送源;以及 所述控制器使所述第一节点根据所述目的地获悉分组的传送源地址来更新将所述第一节点的端口与能够经由所述端口对其进行分组转发操作的节点的地址信息相关联的条目的步骤。
10.一种在构成控制器的计算机上运行的程序,其中,所述控制器与以下节点相连 第一节点,所述第一节点在预设时间内保存将所述第一节点的端口与多个节点的地址信息相关联的条目组,能够根据所述第一节点接收到的分组的传送源的地址将接收到的所述分组经由所述端口转发到所述多个节点;所述第一节点参考所述条目组来决定与所述分组的目的地相关联的用于转发所述分组的端口; 多个第二节点,每个所述第二节点包括分组处理器,所述分组处理器根据将要应用于所述分组的处理与识别要经受所述处理的分组的匹配规则相关联的处理规则集合,来处理到来的分组;以及其中 所述程序使得所述计算机执行以下处理向在数据分组转发路径上位于所述第一节点下游侧的第二节点传送目的地获悉分组,以便向第一节点转发所述目的地获悉分组;或者 命令位于所述第一节点下游侧的所述第二节点产生所述目的地获悉分组,并向所述第一节点 发送所述目的地获悉分组,从而使所述第一节点接收所述目的地获悉分组。
全文摘要
本发明提供了一种通信系统的配置,即使在层2交换机(L2SW)所表示的节点和OpenFlow交换机所表示的节点共存的环境中,也能够根据预计转发路径来进行分组转发。该通信系统包括第一节点,例如层2交换机;多个第二节点,与OpenFlow交换机等同;以及控制器。所述控制器使第一节点从在预设分组转发路径上位于所述第一节点下游侧的一个第二节点接收目的地获悉分组。目的地获悉分组以位于所述第一节点下游侧的节点作为传送源,因而控制器使第一节点根据分组转发路径来执行分组转发操作。
文档编号H04L29/12GK103069756SQ20118004036
公开日2013年4月24日 申请日期2011年8月22日 优先权日2010年8月20日
发明者下西英之, 保田武晴, 田中裕树 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1