CN104184608B - 数据发送装置和数据发送方法 - Google Patents

数据发送装置和数据发送方法 Download PDF

Info

Publication number
CN104184608B
CN104184608B CN201410203255.8A CN201410203255A CN104184608B CN 104184608 B CN104184608 B CN 104184608B CN 201410203255 A CN201410203255 A CN 201410203255A CN 104184608 B CN104184608 B CN 104184608B
Authority
CN
China
Prior art keywords
communication path
node
link failure
data
routing table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201410203255.8A
Other languages
English (en)
Other versions
CN104184608A (zh
Inventor
吉本匡宏
力竹宣博
横山利郁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN104184608A publication Critical patent/CN104184608A/zh
Application granted granted Critical
Publication of CN104184608B publication Critical patent/CN104184608B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

数据发送装置、方法和非易失性计算机可读存储介质。一种耦接到包括多个通信路径的网络中的多个节点的数据发送装置,该数据发送装置包括存储器和耦接到所述存储器的处理器,该处理器被配置为:基于对所述多个通信路径中包括的第一通信路径进行指定的命令,设置路由表;检测在所述网络中出现的链路故障;并且当在所述数据发送装置与所述第一通信路径上和所述数据发送装置相邻的第一节点之间的第一位置处出现所述链路故障时,修改所述路由表,使得数据被发送到与所述第一通信路径不同的第二通信路径上的第二节点,并且当在与所述网络中的第一位置不同的第二位置处出现所述链路故障时,维持所述路由表。

Description

数据发送装置和数据发送方法
技术领域
本文讨论的实施方式涉及数据发送装置、数据发送方法和非易失性计算机可读存储介质。
背景技术
随着通信需求的增加,需要在网络上转发分组的第二层交换机中更有效的通信路径控制功能。例如,建立了生成树协议作为通信路径控制技术。然而,为了阻止通信路径变成环路,生成树协议通过限制针对树的通信路径备选,来产生阻塞端口。出于该原因,存在的问题在于例如,有效的带宽使用变得困难。
同时,由因特网工程任务组(IETF)所规定的多链路透明互联(TRILL)作为通信路径控制技术而得到普及。TRILL技术的特征是最短路径优先(SPF)算法(该算法确定使表示各条链路的通信速度的总成本最小化的通信路径)和等价多路径 (ECMP)算法(该算法在存在多个这种通信路径时允许流量分配)。相关技术的相关文献包括:D.Eastlake:"Transparent Interconnection of Lots of Links(TRILL)Use of IS-IS",IETF RFC6326,2011年7月;R.Perlman:"Routing Bridges(RBridges):Base ProtocolSpecification",IETF RFC 6325,2011年7月;D.Eastlake 3rd,"Routing Bridges(RBridges):Adjacency",IETF RFC 6327,2011年7月;以及R.Perlman:"Routing Bridges(RBridges):Appointed Forwarders",IETF RFC 6439,2011年11月。
发明内容
技术问题
根据TRILL技术,第二层交换机通过与网络上的其它交换机进行通信,获知网络的拓扑。随后,第二层交换机根据指定的协议,针对由例如虚拟局域网标识(VLAN ID)所识别的各个分组自主地决定通信路径。此时,从已被选为产生最小成本的多个通信路径(换言之,ECMP)选择一个通信路径。
在例如建立绕开特定的第二层交换机的通信路径以便对该交换机执行维护作业时,或者在分配数据流以平衡各个通信路径的带宽时,由操作者的命令输入随意改变自主确定的通信路径。要注意的是,经由命令行接口(CLI)等执行命令输入。
然而,根据TRILL技术,如果第二层交换机例如在网络上的某个位置检测到链路故障,则通信路径被自主地重置。出于该原因,由操作者的命令输入所设置的通信路径被恢复回自主确定的通信路径,这产生了诸如通信中断等的问题。
因此,鉴于上述问题,已经设计出本文所讨论的实施方式,并且该实施方式的目的是提供一种具有改进的通信路径控制的分组转发装置和分组转发方法。
在本说明书中描述的分组转发方法中,针对网络上的多个节点中的至少一个节点,分组被转发到由从操作者接收到的命令输入所设置的通信路径上的下一个节点。在检测到与由命令输入所设置的通信路径上的下一个节点之间的链路故障时,分组转发目的地被切换到自主地设置的通信路径上的下一个节点。在网络上的另一个位置处检测到链路故障时,维持分组转发目的地。
技术方案
根据本发明的一个方面,一种耦接到包括多个通信路径的网络中的多个节点的数据发送装置,该数据发送装置包括存储器和耦接到所述存储器的处理器。该处理器被配置为:基于对所述多个通信路径中所包括的第一通信路径进行指定的命令,在所述存储器中设置路由表;检测在所述网络中出现的链路故障;并且当在所述数据发送装置与经由所述第一通信路径与所述数据发送装置相邻的第一节点之间的第一位置处出现所述链路故障时,修改所述路由表,以指定要经由耦接到第二节点的第二通信路径发送的数据,并且基于所修改的路由表经由所述第二通信路径向所述第二节点发送所述数据,并且当在所述网络中的与所述第一位置不同的第二位置处出现所述链路故障时,维持路由表,并且根据所述路从数据发送装置发送所述数据。
有益效果
本说明书中描述的分组转发装置和分组转发方法展示出改进通信路径控制的有益效果。
附图说明
图1是例示分组转发装置的网络的示例的构造图;
图2是例示链路成本的示例的表;
图3是例示ECMP的示例的网络拓扑图;
图4是例示向通信路径分配VLAN ID的表;
图5是例示由命令输入修改通信路径的修改例(1)的网络拓扑图;
图6是例示针对修改前后的各个通信路径的总带宽的表;
图7是例示由命令输入修改通信路径的修改例(2)的网络拓扑图;
图8是作为比较例例示了向修改前后以及链路断开后的通信路径分配VLAN ID 的表;
图9是作为比较例例示了链路断开后的通信路径的网络拓扑图;
图10是例示初始状态下的通信路径的示例的网络拓扑图;
图11是例示图10的状态下的各个节点的路由表设置的表;
图12是例示发生链路故障后的通信路径的示例(1)的网络拓扑图;
图13是例示图12的状态下的各个节点的路由表设置的示例(1)的表;
图14是例示图12的状态下的各个节点的路由表设置的示例(2)的表;
图15是例示发生链路故障后的通信路径的示例(2)的网络拓扑图;
图16是例示图15的状态下的各个节点的路由表设置的示例(1)的表;
图17是例示图15的状态下的各个节点的路由表设置的示例(2)的表;
图18是例示发生链路故障后的通信路径的示例(3)的网络拓扑图;
图19是例示分组转发装置的功能构造的构造图;
图20是例示分组转发处理的流程图;
图21是例示出现链路故障时的通信路径控制处理的流程图;
图22是例示当从链路故障恢复时的通信路径控制处理的流程图;
图23A、图23B和图23C是例示入口路由桥(RB)的转发目的地节点确定方法的图;
图24A、图24B和图24C是例示转接RB的转发目的地节点确定方法的图;
图25是例示网络的另一个示例中的通信路径的初始状态的网络拓扑图;
图26是例示图25的状态下的节点RB#1的路由表设置的表;
图27是例示由命令输入修改通信路径的示例的网络拓扑图;
图28是例示图27的状态下的节点RB#1的路由表设置的表;
图29是例示链路断开后的通信路径的示例的网络拓扑图;以及
图30是例示图29的状态下的节点RB#1的路由表设置的表。
具体实施方式
将参照图1和图2描述TRILL技术中的SPF和ECMP。图1是例示了分组转发装置的网络的示例的构造图。
分组转发装置1分别设置在互联以形成网状网络的多个节点RB#1至RB#9中。分组转发装置1经由LAN线缆或光纤互联。分组转发装置1起到在节点之间转发分组的第二层交换机的作用。例如,分组可以是给予VLAN ID作为分组标识符的以太网(注册商标)帧,或通过根据指定格式封装以太网帧而获得的帧。
节点RB#1至RB#9中各个节点的分组转发装置1用被称作Hello交换的协议获知网络的相邻关系。因此,分组转发装置1获取相邻节点的节点标识符或分组转发装置1的装置ID。例如,节点RB#1的分组转发装置1获取RB#2和RB#3,作为相邻节点的节点标识符。
而且,分组转发装置1用被称作链路状态协议数据单元(LSP)交换的协议来获知网络拓扑。在LSP交换中,各个分组转发装置1在所有端口上输出由装置本身生成的LSP帧以及从其它装置接收到的LSP帧。这被称作泛洪(flooding)。因此,分组转发装置1在还获取各个节点之间的链路的成本(即,链路成本)的同时获知网络的整体拓扑。
如图1所示,链路成本是针对各条链路确定的参数(是通信路径的最小单位)。图2是例示了链路成本的示例的表。例如,根据链路的通信速度,链路成本的值是从 1至5。越低的数值意味着越快的通信速度。
各个分组转发装置1利用SPF算法,以基于链路成本自主地计算出到其它节点的最短的通信路径。例如,RB#1的分组转发装置1计算按顺序经过RB#2、RB#5和 RB#8的路径,作为到RB#9的通信路径,使得总链路成本被最小化。此时的链路成本是1+1+1+2=5。
而且,RB#1的分组转发装置1计算按顺序经过RB#2和RB#3的路径P1以及按顺序经过RB#2和RB#5的路径P2,作为到RB#6的通信路径。路径P1和P2这两者的总链路成本是5,由此被作为ECMP。出于该原因,如下面所讨论的,分组转发装置1根据VLAN ID来转发在路径P1与P2之间分配的分组。
接着,将讨论将分组分配给ECMP。图3是例示ECMP的示例的网络拓扑图。该示例中的网络包括节点ES#1、ES#2和RB#1至RB#6。端站(例如,服务器)设置在节点ES#1和ES#2处,而分组转发装置1设置在节点RB#1至RB#6处。
在图3中,节点RB#1至RB#6中的框内数字([1]至[3])指示分组转发装置1 的端口编号(端口#1至#3)。现在将描述该示例中的连接构造。节点RB#1的分组转发装置1经由端口#1连接到节点RB#2、经由端口#2连接到节点RB#3并且经由端口 #3连接到节点ES#1。
节点RB#2的分组转发装置1经由端口#1连接到节点RB#1、经由端口#2连接到节点RB#4,并且经由端口#3连接到节点RB#5。节点RB#3的分组转发装置1经由端口#1连接到节点RB#1、经由端口#2连接到节点RB#5,并且经由端口#3连接到节点RB#4。
节点RB#4的分组转发装置1经由端口#1连接到节点RB#2、经由端口#2连接到节点RB#6,并且经由端口#3连接到节点RB#3。节点RB#5的分组转发装置1经由端口#1连接到节点RB#5、经由端口#2连接到节点RB#6,并且经由端口#3连接到节点RB#2。节点RB#6的分组转发装置1经由端口#1连接到节点RB#4、经由端口#2 连接到节点RB#5,并且经由端口#3连接到节点ES#2。
节点RB#1至RB#6中各节点的分组转发装置1基于上述SPF,计算四个ECMP 通信路径P10、P11、P20和P21(参见点线),作为节点ES#1与ES#2之间的通信路径。为了识别分组,各个分组转发装置1将给予分组的VLAN ID自主地分配给各个通信路径P10、P11、P20和P21。
图4例示了向通信路径P10、P11、P20和P21分配VLAN ID。通信路径P10按顺序经过节点RB#1、RB#2、RB#4和RB#6。通信路径P10被分配有8n和8n+2(其中,n=0,1,2,...,511),作为VLAN ID。
通信路径P10按顺序经过节点RB#1、RB#2、RB#5和RB#6。通信路径P11被分配有8n+1和8n+3,作为VLAN ID。
通信路径P21按顺序经过节点RB#1、RB#3、RB#4和RB#6。通信路径P21被分配有8n+5和8n+7,作为VLAN ID。
通信路径P20按顺序经过节点RB#1、RB#3、RB#5和RB#6。通信路径P20被分配有8n+4和8n+6,作为VLAN ID。
因此,如图3所示,根据通信路径P10转发VLAN ID是8和10的分组,而根据通信路径P11转发VLAN ID是9和11的分组。而且,根据通信路径P20转发VLAN ID是13和15的分组,而根据通信路径P21转发VLAN ID是12和14的分组。
要注意的是,节点RB#1位于通信路径P10、P11、P20和P21的数据输入侧上,并因而被称作入口RB,而节点RB#6位于通信路径P10、P11、P20和P21的数据输出侧上,并因而被称作出口RB。而且,节点RB#2至RB#5位于通信路径P10、P11、 P20和P21上的数据中继点处,因而被称作转接RB。
而且,本实施方式提出基于VLAN ID在ECMP中间分配分组的示例,但不限于此。例如,也可以基于以太网帧的报头中的目的地地址(DA)和源地址(SA)或因特网协议(IP)分组的目的地IP地址和源IP地址,在ECMP中间分配分组。
这样,分组转发装置1自主地设置通信路径P10、P11、P20和P21。然而,为了适应各种要求和条件,分组转发装置1也可以根据经由诸如CLI这样的命令输入技术从操作者接收到的命令输入,来修改路径。下文中,将给出通信路径的修改例。
在本文中,作为经由命令输入修改通信路径的修改例(1),将例示为调节流过通信路径中的上述通信路径P10、P22、P20和P21的流量的带宽的目的而修改通信路径的情况。要注意的是,带宽指的不是链路通信速度,而是指为保证网络用户的使用的合同带宽(contract bandwidth)。
图5是例示由命令输入修改通信路径的修改例(1)的网络拓扑图。如与图3的比较所表明的,在该修改例中,VLAN ID是10的通信路径P10被修改为通信路径 P21。
图6例示了修改前后的各个通信路径P10、P11、P20和P21的总带宽。在图6 中,各个VLAN ID的带宽记载在括号[]内。
在修改之前,通信路径P10、P11、P20和P21的总带宽分别是600(Mbps)、400(Mbps)、300(Mbps)和400(Mbps)。另一方面,在修改之后,通信路径P10、P11、P20 和P21的总带宽分别是500(Mbps)、400(Mbps)、400(Mbps)和400(Mbps)。
这样,在本修改例中,通过经由命令输入修改通信路径,通信路径P10与P21 之间的带宽差从300(Mbps)变为100(Mbps),并且调节了这些通信路径之间的带宽平衡。
作为经由命令输入修改通信路径的修改例(2),为了对节点RB#5的分组转发装置1执行维护作业,修改VLAN ID是9、11、12和14的通信路径,所以包括节点 RB#5的通信路径P11和P20不用于分组转发。
图7是例示了由命令输入修改通信路径的修改例(2)的网络拓扑图。在本修改例中,VLAN ID9和11被分配给通信路径P10,而VLAN ID12和14被分配给通信路径P21。要注意的是,在图7中,给予通信路径P11和P20的标签“VLAN ID=NONE”指示没有向其分配VLANID。
图8作为比较例例示了向修改前后以及链路断开后的通信路径分配VLAN ID。如修改前后的VLAN ID分配的比较所表明的,VLAN ID是9、11、12和14的通信路径被修改。而且,在比较例中,各个分组转发装置1在网络上的任意节点之间检测到链路断开时,将通信路径设置恢复到修改前的状态。
图9是作为比较例例示了链路断开后的通信路径的网络拓扑图。当从装置去除了在节点RB#5的分组转发装置1与节点RB#3的分组转发装置1之间的LAN线缆(或光纤)以便对节点RB#5的分组转发装置1执行维护作业时,出现链路断开(参见X 标记)。利用上述LSP帧将链路断开的出现作为链路故障与指示网络上的故障位置的信息一起从节点RB#3和RB#5的分组转发装置1报告给其它节点RB#1、RB#2、RB#4 和RB#6的分组转发装置1。
当检测到链路故障时,各个分组转发装置1将VLAN ID是9和11的通信路径 P10切换为自主地设置的通信路径P11。要注意的是,因为自主地设置的通信路径P20 包括出现了链路故障的链路,所以不切换VLAN ID是12和14的通信路径P21。
这样,在比较例中,通过当被链路故障的出现所触发时重新计算通信路径,由针对VLAN ID9和11的命令输入所设置的通信路径P10被切换为自主地设置的通信路径P11。出于该原因,VLAN ID是9和11的分组的通信被中断。
根据本实施方式的分组转发装置1通过根据与由命令输入所设置的通信路径上的下一个节点之间是否存在链路故障,确定是否将分组转发目的地切换为自主地设置的通信路径上的下一个节点,来改进通信路径控制。下文中,将在举例的同时详细讨论该分组转发方法。
图10是例示初始状态下的通信路径的示例的网络拓扑图。在图10中,向与图3 共享的构造给出相同的标记,并且将缩短或省略其描述。
图10例示了用操作者的命令输入将VLAN ID是10的分组的通信路径从自主地设置的通信路径P10修改为通信路径P21的示例。各个分组转发装置1根据通信路径选择分组转发目的地节点。
更具体地,当不存在由命令输入所设置的通信路径时,各个分组转发装置1将自主地设置的通信路径上的下一个节点作为分组转发目的地节点。另一方面,当存在由命令输入所设置的通信路径时,各个分组转发装置1将由命令输入所设置的通信路径上的下一个节点作为分组转发目的地节点。换言之,各个分组转发装置1根据通信路径决定分组转发目的地节点。
例如,针对VLAN ID10,节点RB#1和RB#3的分组转发装置1将由命令输入所设置的通信路径上的下一个节点RB#3和RB#4作为相应的转发目的地节点。例如,针对VLAN ID10,节点RB#4的分组转发装置1将自主地设置的通信路径上的下一个节点RB#6作为转发目的地节点。因此,形成按顺序经过节点RB#1、RB#3和RB#4 的通信路径P21。
而且,即使节点RB#2和RB#4没有被选为转发目的地节点,节点RB#1和RB#2 的分组转发装置1如由标记R10所示地也分别保持自主地设置的通信路径上的下一个节点RB#2和RB#4的设置。类似地,即使节点RB#5和RB#6没有被选为转发目的地节点,节点RB#3和RB#4的分组转发装置1如由标记R20所示地也分别保持自主地设置的通信路径上的下一个节点RB#5和RB#6的设置。
换言之,由标记R10和R20指示的通信路径在节点RB#1、RB#2、RB#5和RB#6 的分组转发装置1中仅被保持为设置,并且不承载流量。要注意的是,如图10中的图例所示,用于各个链路的路径的类型由线条类型来区分。
各个分组转发装置1基于装置中所存储的路由表来选择转发目的地节点。图11 例示了在图10的状态下的节点RB#1至RB#5中各个节点的路由表设置。要注意的是,虽然图11例示了路由表仅包括针对VLAN ID是10的设置的示例,但是同样存在针对其它VLAN ID的设置。
在图11中,“节点”栏指示安装了分组转发装置1的节点RB#1至RB#5。换言之,“节点”栏指示路由表的位置,或者换言之,指示其分组转发装置1保持有路由表的节点。
“VLAN ID”栏指示分配给通信路径的分组的VLAN ID。“下一个节点ID”栏指示该通信路径上的下一个节点的标识符,或者换言之,指示分组转发目的地的标识符。“有效/无效”栏指示上述“下一个节点ID”是有效的还是无效的。
“优先级”栏指示上述“VLAN ID”和“下一个节点ID”的优先级。优先级为“高”的下一个节点ID(第一标识符)指示针对该VLAN ID由命令输入所设置的通信路径上的下一个节点。另一方面,优先级为“低”的下一个节点ID(第二标识符)指示针对该 VLAN ID自主地设置的通信路径上的下一个节点。使下一个节点ID在各个分组转发装置1中与端口标识符(端口#1至#3)相对应。
与优先级为“低”的下一个节点ID相比,各个分组转发装置1将优先级为“高”的下一个节点ID优先作为分组转发目的地。换言之,在优先级为“高”的有效的下一个节点ID存在于装置自身的路由表中的情况下,各个分组转发装置1将该下一个节点 ID作为分组转发目的地。另一方面,在优先级为“高”的下一个节点ID不存在于装置自身的路由表中的情况下,或在使优先级为“高”的下一个节点ID无效的情况下,各个分组转发装置1将优先级为“低”的下一个节点ID作为分组转发目的地。
对于节点RB#1和RB#3的分组转发装置1,优先级为“高”的有效的下一个节点 ID存在于各个装置自身的路由表中,由此由命令输入所设置的通信路径上的下一个节点RB#3和RB#4分别被作为转发目的地节点。同时,优先级为“低”的有效的下一个节点ID RB#2和RB#4在节点RB#1和RB#3的路由表中被保持为设置,但是如上所讨论的,流量不流过该通信路径。
另一方面,对于其它节点RB#2、RB#4和RB#5的分组转发装置1,优先级为“高”的有效的下一个节点ID不存在于各个装置自身的路由表中,由此由优先级为“低”的下一个节点ID指示的节点RB#4、RB#6和RB#6分别被作为转发目的地节点。换言之,节点RB#2、RB#4和RB#5的分组转发装置1将自主地设置的通信路径上的下一个节点RB#4、RB#6和RB#6作为相应的转发目的地节点。要注意的是,节点RB#2 和RB#5的下一个节点ID仅被保持为设置,并且如上所讨论的,流量不流过这些通信路径。
图12是例示发生链路故障后的通信路径的示例(1)的网络拓扑图。该示例展示了在节点RB#1与节点RB#3之间出现链路故障的情况。因为该链路故障,流量停止在经过节点RB#1、节点RB#3和节点RB#4的路径R21上流过。
由于与由命令输入所设置的通信路径上的下一个节点RB#3之间出现的链路故障,节点RB#1的分组转发装置1如标记K1所示,将转发目的地节点从节点RB#3 切换为节点RB#2(参见“切换:接通”)。因此,针对VLAN ID是10的通信路径从路径P21(参见图10)被修改为路径P10,并且避免了链路故障。
同时,节点RB#3的分组转发装置1将转发目的地节点保持在节点RB#4而没有进行切换(参见“切换:断开”)。出于该原因,为防止从链路故障恢复之后还原至原始通信路径P21的情况,可以保持节点RB#3与节点RB#4之间的路径R21的设置。然而,路径R21仅作为设置而存在,而不承载流量。要注意的是,如图12中的图例所示,用于各个链路的路径类型由线条类型来区分。
图13例示了图12的状态下的节点RB#1至RB#5中各节点的路由表设置的示例 (1)。节点RB#1的分组转发装置1,响应于链路故障的出现,使优先级为“高”的下一个节点ID无效(“有效/无效”=“无效”)。出于该原因,节点RB#1的分组转发装置 1选择由优先级为“低”的下一个节点ID所指示的节点RB#2,或换言之,选择自主地设置的通信路径上的下一个节点RB#2,作为转发目的地节点。因此,针对VLAN ID 是10的通信路径被从路径P21(参见图10)被修改为路径P10。
而且,当从链路故障恢复时,分组转发装置1可以根据由来自操作者的命令输入所设置的路径恢复设置,来选择是否将通信路径恢复回出现链路故障之前的状态。例如,如果从终端装置输入命令“path_recovery_enable”,则分组转发装置1使路径恢复设置有效。在这种情况下,在链路故障恢复之后,节点RB#1的分组转发装置1通过将“有效/无效”设置修改为“有效”,使优先级为“高”的下一个节点ID有效(参见图11)。
因此,在链路故障恢复之后,针对VLAN ID是10的通信路径从路径P10(参见图12)被恢复为路径P21(参见图10)。换言之,在检测到从与由命令输入所设置的通信路径上的下一个节点之间的链路故障恢复的情况下,分组转发目的地被还原成由命令输入所设置的通信路径上的下一个节点。因此,在链路故障恢复之后,降低或省去了对由命令输入所设置的通信路径进行重配置的负担。
另一方面,如果输入命令“path_recovery_disable”,则分组转发装置1使路径恢复设置无效。在这种情况下,在链路故障恢复之后,节点RB#1的分组转发装置1将“有效/无效”设置保持为“无效”,并且即使在从链路故障恢复之后,仍然将针对VLAN ID 是10的通信路径作为路径P10(参见图12)。
这样,当使路径恢复设置无效时,在从链路故障恢复之后,通信路径不还原成出现链路故障之前的状态。因此,在这种情况下,节点RB#1的分组转发装置1也可以在出现链路故障时删除优先级为“高”的下一个节点ID。
图14例示了在图12的状态下的节点RB#1至RB#5中各个节点的路由表设置的示例(2)。在这种情况下,节点RB#1的分组转发装置1在出现链路故障时删除优先级为“高”的下一个节点ID。因此,类似于图13的情况,节点RB#1的分组转发装置 1选择由优先级为“低”的下一个节点ID所指示的节点RB#2作为转发目的地节点,并且针对VLAN ID为10的通信路径被从路径P21(参见图10)修改为路径P10。
另外,图15是例示了发生链路故障后的通信路径的示例(2)的网络拓扑图。该示例展示了在节点RB#3与节点RB#4之间出现链路故障的情况。由于该链路故障,流量停止在节点RB#3与节点RB#4之间的路径R11上流动。要注意的是,如图15 中的图例所示,用于各个链路的路径类型由线条类型来区分。
由于与由命令输入所设置的通信路径上的下一个节点RB#4出现的链路故障,节点RB#3的分组转发装置1如标记K2所示,将转发目的地节点从节点RB#4切换为节点RB#5(参见“切换:接通”)。因此,针对VLAN ID是10的通信路径被从路径 P21(参见图10)修改为路径P20,并且避免了链路故障。
同时,因为转发目的地节点已经被节点RB#3的分组转发装置1切换,所以节点 RB#1的分组转发装置1将转发目的地节点保持在节点RB#3而没有进行切换(参见“切换:断开”)。
图16是例示了在图15的状态下的针对各个节点的路由表设置的示例(1)。节点RB#3的分组转发装置1,响应于链路故障的出现,使优先级为“高”的下一个节点ID 无效(“有效/无效”设置=“无效”)。出于该原因,节点RB#3的分组转发装置1选择由优先级为“低”的下一个节点ID所指示的节点RB#5,或换言之,选择自主地设置的通信路径上的下一个节点RB#5,作为转发目的地节点。因此,针对VLAN ID是10的通信路径被从路径P21(参见图10)修改为路径P20。
在从链路故障恢复之后,当使上述路径恢复设置有效时,节点RB#1的分组转发装置1通过将“有效/无效”设置修改为“有效”,使优先级为“高”的下一个节点ID有效 (参见图11)。因此,在链路故障恢复之后,针对VLAN ID是10的通信路径被从路径P20(参见图15)恢复为路径P21(参见图10)。另一方面,当使路径恢复设置无效时,针对VLAN ID是10的通信路径将设置保持在路径P20,由此节点RB#1的分组转发装置1也可以在链路故障出现时删除优先级为“高”的下一个节点ID。
图17例示了在图15的状态下的节点RB#1至RB#5中各节点的路由表设置的示例(2)。在这种情况下,节点RB#3的分组转发装置1在出现链路故障时删除优先级为“高”的下一个节点ID。因此,类似于图15的情况,节点RB#3的分组转发装置1 选择由优先级为“低”的下一个节点ID所指示的节点RB#5作为转发目的地节点,并且针对VLAN ID为10的通信路径被从路径P21(参见图10)修改为路径P20。
图18是例示发生链路故障后的通信路径的示例(3)的网络拓扑图。该示例展示了在节点RB#3与节点RB#5之间出现链路故障的情况。要注意的是,如图18中的图例所示,针对各个链路的路径类型由线条类型来区分。
对于节点RB#1和RB#3的分组转发装置1,链路故障的故障位置不在与由命令输入所设置的通信路径上的下一个节点之间,并且不影响VLAN ID是10的分组的通信。出于该原因,节点RB#1和RB#3的分组转发装置1不切换转发目的地节点。换言之,节点RB#1和RB#3的分组转发装置1分别将节点#3和#4维持为转发目的地节点。出于该原因,该示例中的路由表变为图11中所例示的那样。
这样,对于网络上的多个节点RB#1至RB#6中的至少一个节点,分组被转发到由从操作者接收到的命令输入所设置的通信路径上的下一个节点。随后,在检测到与由命令输入所设置的通信路径上的下一个节点之间的链路故障的情况下,分组转发目的地被切换到自主地设置的通信路径上的下一个节点。同时,在网络上的另一个位置处检测到链路故障的情况下,维持分组转发目的地。
因此,在经由命令输入所设置的通信路径的通信因链路故障的出现而变得不可用的情况下,切换通信路径,以避免链路故障,并且继续通信。另一方面,即使出现链路故障,当经由命令输入所设置的通信路径的通信仍然可用时,也维持分组转发目的地而不进行切换,由此也维持通信路径,这提高了便利性。换言之,在这种情况下,不出现如参照图9所讨论的那些问题。
接着,将讨论根据本实施方式的分组转发装置1的构造。图19是例示分组转发装置1的功能构造的构造图。
分组转发装置1包括处理器10、非易失性存储器11、CLI处理单元12、包括内部存储器14的切换单元13和多个端口15。多个端口15包括连接LAN线缆或光纤的连接器,以及执行物理层与MAC层中的处理的PHY/MAC芯片。多个端口15分别连接到网络上的多个节点ES#1、ES#2和RB#1至RB#6,并且收发分组。
切换单元13根据前面讨论的路由表,在多个端口15之间切换分组。因此,在多个节点ES#1、ES#2和RB#1至RB#6之间转发分组。
内部存储器(存储单元)14存储路由表。路由表中的下一个节点ID与端口15 一一对应。出于该原因,切换单元13参照内部存储器14中所存储的路由表,并且向与根据分组的VLAN ID被选为转发目的地节点的下一个节点ID相对应的端口15转发分组。要注意的是,也可以使用设置于切换单元13的外部的存储器,而不是内部存储器14。
处理器10是诸如中央处理单元(CPU)这样的计算处理电路,并且控制分组转发装置1的整体行为。非易失性存储器11例如是闪存,并且存储诸如驱动存储器10 的程序这样的信息。处理器10通过在启动时从非易失性存储器11读出程序而工作。要注意的是,虽然附图中未例示,但是处理器10包括用于操作的工作存储器。
作为处理器10读出程序的结果,设置处理单元100和故障检测单元101形成为功能。设置处理单元100通过访问切换单元13的内部存储器14来设置路由表。设置处理单元100执行参照图1和图2讨论的SPF和ECMP功能,并且自主地设置通信路径。在自主地设置通信路径的情况下,设置处理单元100设置路由表中优先级为“低”的下一个节点ID。要注意的是,设置处理单元100和故障检测单元101不限于软件,且还可以由硬件构造。
CLI处理单元(接收单元)12从操作者接收命令输入。CLI处理单元经由LAN 线缆等连接到外部终端装置16,利用终端装置16处理由操作者进行的命令输入,并且向处理器10输出处理内容。要注意的是,终端装置16可以是例如个人计算机等。
设置处理单元100设置路由表,使得从多个节点中,分组被转发到由命令输入所设置的通信路径上的下一个节点。换言之,设置处理单元100根据命令输入来设置路由表中优先级为“高”的下一个节点ID。
而且,设置处理单元100根据命令输入来设置前面讨论的路径恢复设置。当使路径恢复设置有效时,设置处理单元100配置路由表,使得在从链路故障恢复之后,通信路径恢复成链路故障出现之前的状态。当使路径恢复设置无效时,设置处理单元100维持路由表设置。
故障检测单元101检测网络上的链路故障。切换单元13在接收到LSP帧时,向设置处理单元100输出LSP帧。根据LSP帧中所包括的信息,故障检测单元101检测链路故障的出现和故障位置,或另选地,检测从链路故障的恢复和恢复位置。
接着,将描述根据实施方式的分组转发装置1的操作。图20是例示分组转发处理的流程图。针对各个VLAN ID执行该处理。
切换单元13参照内部存储器14中的路由表,并且检测是否存在由命令输入所设置的通信路径上的下一个节点ID(步骤St1)。换言之,切换单元13检查路由表中是否存在优先级为“高”的下一个节点ID。
当存在由命令输入所设置的通信路径上的下一个节点ID时(步骤St1,是),切换单元13检测针对该节点ID的“有效/无效”设置是否是“有效”(步骤St2)。当“有效 /无效”设置是“有效”时(步骤St2,是),切换单元13将分组转发到由命令输入所设置的通信路径上的下一个节点(步骤St3)。换言之,切换单元13向与优先级为“高”的下一个节点ID相对应的端口输出分组。
同时,当不存在由命令输入所设置的通信路径上的下一个节点ID时(步骤St1,否),切换单元13将分组转发给自主地设置的通信路径上的下一个节点(步骤St4)。换言之,切换单元13向与优先级为“低”的下一个节点ID相对应的端口输出分组。在“有效/无效”设置是“无效”时,同样执行该处理(步骤St2,否)。这样,执行分组转发处理。
这样,切换单元在与优先级为“低”的下一个节点ID相比优先考虑优先级为“高”的下一个节点ID的同时,在多个端口15之间交换分组。出于该原因,当由命令输入所设置的有效的通信路径存在于路由表中时,分组被转发给该通信路径上的下一个节点,否则分组被转发给自主地设置的通信路径上的下一个节点。因此,在该实施方式中,根据路由表中所包括的下一个节点ID,容易确定转发目的地节点。
图21是例示了出现链路故障时的通信路径控制处理的流程图。故障检测单元101基于LSP帧确定是否已经检测到链路故障(步骤St11)。当尚未检测到链路故障时(步骤St11,否),处理结束。
当已经检测到链路故障时(步骤St11,是),故障检测单元101基于LSP帧确定链路故障是否出现在与由命令输入所设置的通信路径上的下一个节点之间(步骤St12)。在网络上的另一个位置出现链路故障的情况下(步骤St12,否),处理结束。
在链路故障出现在与由命令输入所设置的通信路径上的下一个节点之间的情况下(步骤St12,是),设置处理单元100确定路径恢复设置是否是有效的(步骤St13)。当路径恢复设置有效时(步骤St13,是),设置处理单元100将由命令输入所设置的通信路径上的下一个节点ID的“有效/无效”设置修改为“无效”(步骤St14)。换言之,设置处理单元100使优先级为“高”的下一个节点ID无效。
当使路径恢复设置无效时(步骤St13,否),设置处理单元100从路由表删除由命令输入所设置的通信路径上的下一个节点ID(步骤St15)。换言之,设置处理单元 100从路由表删除优先级为“高”的下一个节点ID。这样,执行出现链路故障时的通信路径控制处理。
如果执行步骤St14和St15中的处理,则切换单元13按照图20中例示的流程,向与优先级为“低”的下一个节点ID相对应的端口输出分组。另一方面,如果不执行步骤St14和St15中的处理,则切换单元13按照图20中所例示的流程,向与优先级为“高”的下一个节点ID相对应的端口输出分组。
这样,当故障检测单元101检测到与由命令输入所设置的通信路径上的下一个节点的链路故障时,设置处理单元100从路由表删除优先级为“高”的下一个节点ID,或者使该下一个节点ID无效。出于该原因,分组转发目的地被切换为自主地设置的通信路径上的下一个节点,从而避免链路故障。
另一方面,当故障检测单元101在网络上的另一个位置处检测到链路故障时,设置处理单元100维持路由表设置。出于该原因,分组被转发给由命令输入所设置的通信路径上的下一个节点,而不将分组转发目的地切换为自主地设置的通信路径上的下一个节点。所以,因为没有产生如参照图9所描述的那些问题,所以提高了便利性。
图22是例示当从链路故障恢复时的通信路径控制处理的流程图。故障检测单元101基于LSP帧确定是否已经检测到从链路故障的恢复(步骤St21)。当尚未检测到从链路故障的恢复时(步骤St21,否),处理结束。
当故障检测单元101检测到从链路故障的恢复时(步骤St21,是),设置处理单元100确定路径恢复设置是否是有效的(步骤St22)。当路径恢复设置无效时(步骤 St22,否),处理结束。
当使路径恢复设置有效时(步骤St22,是),设置处理单元100将由命令输入所设置的通信路径上的下一个节点ID的“有效/无效”设置修改为“有效”(步骤St23)。换言之,设置处理单元100使路由表中优先级为“高”的下一个节点ID有效。这样,执行当从链路故障恢复时的通信路径控制处理。
这样,当故障检测单元101检测到从与由命令输入所设置的通信路径上的下一个节点之间的链路故障恢复时,设置处理单元100使优先级为“高”的下一个节点ID有效。出于该原因,在从链路故障恢复之后,通信路径还原到出现链路故障之前的状态 (由命令输入所设置的通信路径)。因此,在链路故障恢复之后,降低或省去了对由命令输入所设置的通信路径进行重配置的负担。
接着,将讨论根据VLAN ID确定转发目的地节点的确定方法。在各个分组转发装置1的设置处理单元100中自主地执行该确定方法。设置处理单元100在路由表中将确定的转发目的地节点设置为优先级为“低”的下一个节点ID。
转发目的地节点确定方法根据分组转发装置1的节点是入口RB还是转接RB而不同。下文中,转发目的地节点确定方法将通过示例分为入口RB情况和转接RB情况来进行例示。该示例例示了通过将八个VLAN ID8至15分配到四个自主确定的通信路径(ECMP)来获得图3例示的通信路径的情况。
图23A至图23C例示了针对入口RB的转发目的地节点确定方法。首先,如图 23A所示,基于将VLAN ID以二进制表示时的最低有效三位(参见“VLAN ID(bin.)”),将VLAN ID分为八个模式“000”至“111”。
接着,如图23B所示,根据ECMP编号(1至8)的输出目的地编号分配给各个模式。ECMP编号是自主确定的通信路径上的下一个节点的编号。参照图3,入口节点RB#1具有RB#2和RB#3作为下一个节点,由此具有的ECMP编号是2。
输出目的地编号(1至8)是用于相互区分地输出等于ECMP编号的编号。分配输出目的地编号,以针对通过将以降序排布的模式等分为与ECMP编号相等的组而获得的各个组产生相同的编号。例如,当ECMP编号是2时,将输出目的地编号“1”被分配给模式“001”至“011”,而将输出目的地编号“2”分配给模式“100”至“111”。要注意的是,当ECMP编号是1时,将输出目的地编号“1”分配给所有模式“000”至“111”。
接着,如图23C所示,将下一个节点ID分配给各个模式。图23C例示了在图3 的节点RB#1的情况下的分配。使输出目的地编号根据编号的排布顺序与下一个节点 ID相对应。因此,使输出目的地编号“1”和“2”分别对应于节点RB#1和RB#3。因此,针对VLAN ID8至11(模式“000”至“011”),RB#2被分配为下一个节点ID,而针对 VLAN ID12至15(模式“100”至“111”),RB#3被分配为下一个节点ID。
图24A至图24C例示了针对转接RB的转发目的地节点确定方法。如图24A所示,与图23A类似,将VLAN ID分类为模式。
接着,如图24B所示,将根据ECMP编号(1至8)的输出目的地编号分配给各个模式。将输出目的地编号分配给以降序排布的模式,以便以降序重复。例如,当 ECMP编号是2时,将输出目的地编号“1”分配给模式“000”、“010”、“100”和“110”,而将输出目的地编号“2”分配给模式“001”、“011”、“101”和“111”。要注意的是,当 ECMP编号是1时,将输出目的地编号“1”分配给所有模式“000”至“111”。
接着,如图24C所示,将下一个节点ID分配给各个模式。图24C例示了在图3 的节点RB#2的情况下的分配。使输出目的地编号根据编号的排布顺序与下一个节点 ID相对应。因此,使输出目的地编号“1”和“2”分别对应于节点RB#4和RB#5。因此,针对VLAN ID8、10、12和14(模式“000”、“010”、“100”和“110”),RB#4被分配为下一个节点ID。而且,针对VLAN ID9、11、13和15(模式“001”、“011”、“101”和“111”),RB#5被分配为下一个节点ID。要注意的是,同样地,利用类似的技术分配其它节点。
这样,当存在多个自主地设置的通信路径时(当存在ECMP时),设置处理单元 100根据VLAN ID选择通信路径上的下一个节点ID作为分组转发目的地,使得将分组一致地分配给各个通信路径。因此,向ECMP的各个路径一致地分配多个VLAN ID 是可能的。
接着,将通过展示网络的另一个示例来描述根据本实施方式的分组转发装置1 的操作。图25是例示了在网络的另一个示例中的通信路径的初始状态的网络拓扑图。
网络包括安装了端站2的节点ES#10、ES#11、ES#20和ES#21以及安装了分组转发装置1的节点RB#1至RB#6。在该网络中,节点ES#10与ES#21之间的通信路径P30和节点ES#11与ES#22之间的通信路径P31是针对VLAN ID9自主地设置的。换言之,在该网络上,针对相同的VLAN ID,不同的ECMP共存。通信路径P30经过节点RB#1、RB#2、RB#4和RB#6,而通信路径P31经过节点RB#10、RB#1、RB#3、 RB#5和RB#6。
图26例示了图25状态下的节点RB#1的路由表设置。在路由表中,作为节点类型,提供针对入口RB和转接RB的情况的两个种类。分组转发装置1能够用例如前面讨论的LSP交换,确定装置自身的节点针对各条通信路径P30和P31对应于入口 RB还是转接RB。
因为节点RB#1充当通信路径P30上的入口RB,所以针对通信路径P30,参照“入口RB”路由表。利用参照图23A至图23C所讨论的转发目的地节点确定方法来设置“入口RB”路由表。按照该设置,节点RB#1的分组转发装置1将来自节点ES#10的分组转发给自主地设置的通信路径上的下一个节点RB#2。
另一方面,因为节点RB#1充当通信路径P31上的转接RB,所以针对通信路径 P31,参照“转接RB”路由表。利用参照图24A至图24C讨论的转发目的地节点确定方法来设置“转接RB”路由表。按照该设置,节点RB#1的分组转发装置1将来自节点ES#11的分组转发给自主地设置的通信路径上的下一个节点RB#2。要注意的是,图25省略了除VLAN ID9之外的通信路径的例示。
图27是例示了由命令输入来修改通信路径的示例的网络拓扑图。在该示例中,节点ES#10与ES#21之间的通信路径P30经由命令输入修改为另一个通信路径P32。通信路径P32按顺序经过节点RB#1、RB#3、RB#5和RB#6。
图28例示了图27的状态下的节点RB#1的路由表设置。在“入口RB”路由表中,针对VLAN ID9,将RB#3设置为优先级为“高”的下一个节点ID。因此,节点RB#1 的分组转发装置1将来自节点ES#10的分组转发给由命令输入所设置的通信路径上的下一个节点RB#3。要注意的是,因为没有修改“转接RB”路由表,所以没有修改节点ES#11与ES#22之间的通信路径P31。
图29是例示链路断开后的通信路径的示例的网络拓扑图。在该示例中,链路断开出现在节点RB#1与RB#3之间,并且节点ES#10与ES#21之间的通信路径P32 被修改为自主地设置的通信路径P30。而且,因为通信因链路断开而变得不可用,所以节点ES#11与ES#22之间的通信路径P31被修改为另一个自主地设置的通信路径 P33。
图30例示了图29的状态下的针对节点RB#1的路由表设置。在“入口RB”路由表中,删除优先级为“高”的下一个节点ID的设置。本文中,假定使路径恢复设置无效。因此,节点ES#10与ES#21之间的通信路径P32被切换为自主地设置的通信路径P30。
而且,在“入口RB”路由表中,针对VLAN ID12至15的下一个节点ID设置被从RB#3修改为RB#2。因此,针对其它VLAN ID的通信路径被切换为其它自主地设置的路径,以便避免链路故障。类似地,在“转接RB”路由表中,针对VLAN ID是9、 11、13和15的下一个节点ID设置被从RB#3修改为RB#2。
这样,即使在不同的ECMP共存的情况下,分组转发装置1也能够有效控制通信路径。
如到此为止所讨论的,根据本实施方式的分组转发装置1包括多个端口15、切换单元13、CLI处理单元12、设置处理单元100和故障检测单元101。多个端口15 分别连接到网络上的多个节点,并且收发分组。
切换单元13根据路由表,在多个端口15之间切换分组。CLI处理单元12从操作者接收命令输入。
设置处理单元100设置路由表,使得从多个节点中,分组被转发到由命令输入所设置的通信路径上的下一个节点。故障检测单元101检测网络上的链路故障。
当故障检测单元101检测到与由命令输入所设置的通信路径上的下一个节点之间的链路故障时,故障检测单元101修改路由表设置,使得分组转发目的地切换到自主地设置的通信路径上的下一个节点。当故障检测单元101在网络上的另一个位置处检测到链路故障时,设置处理单元100维持路由表设置。
凭借根据本实施方式的分组转发装置1,切换单元13根据路由表在多个端口15 之间交换分组,由此能够在多个节点之间转发分组。设置处理单元100设置路由表,使得从多个节点中,分组被转发到由命令输入所设置的通信路径上的下一个节点。出于该原因,由操作者任意设置通信路径。
当故障检测单元101检测到与由命令输入所设置的通信路径上的下一个节点之间的链路故障时,故障检测单元101修改路由表设置,使得分组转发目的地切换到自主地设置的通信路径上的下一个节点。出于该原因,在经由命令输入所设置的通信路径的通信因链路故障的出现而变得不可用的情况下,切换通信路径,以避免链路故障,并且通信继续。
当故障检测单元101在网络上的另一个位置处检测到链路故障时,设置处理单元100维持路由表设置。出于该原因,维持由命令输入所设置的通信路径,这提高了便利性。因此,凭借根据本实施方式的分组转发装置1,改进了通信路径控制。
另外,在本实施方式的分组转发方法中,针对网络上的多个节点中的至少一个节点,分组被转发到由从操作者接收到的命令输入所设置的通信路径上的下一个节点。在检测到与由命令输入所设置的通信路径上的下一个节点之间的路径失败时,分组转发目的地被切换到自主地设置的通信路径上的下一个节点。在网络上的另一个位置处检测到链路故障时,维持分组转发目的地。
根据本实施方式的分组转发方法具有与上述分组转发装置1类似的构造,由此展示出上述操作优点。
另外,根据上面讨论的实施方式,操作者可以在仍然根据基于TRILL技术的协议执行自主路径控制的同时,任意设置通信路径。而且,即使在因链路故障的出现而重新计算通信路径的情况下,在仍然尽可能地维持由操作者设置的通信路径的同时支持动态路径控制,从而使得能够提供灵活的网络。
因此,根据上面讨论的实施方式,可以利用基于TRILL技术的协议,来实现软件定义网络(SDN),或换言之,仅用软件自由修改拓扑和设置的虚拟网络。例如,利用软件,可以执行向ECMP的各个通信路径尽可能一致地分配带宽的流量工程 (traffic engineering),或在维护作业期间在没有问题的情况下从对象装置对流量进行重新路由。
由此,上面所述参照优选实施方式具体描述了本公开的内容,但是对于本领域技术人员来说清楚的是,可以基于本公开的根本技术概念和教导采用各种修改例。

Claims (12)

1.一种耦接到包括多个通信路径的网络中的多个节点的数据发送装置,该数据发送装置包括:
存储器;以及
处理器,所述处理器被耦接到所述存储器并且被配置为:
基于对所述多个通信路径中所包括的第一通信路径进行指定的命令,在所述存储器中设置路由表;
检测在所述网络中出现的链路故障;并且
当在所述数据发送装置与所述第一通信路径上与所述数据发送装置相邻的第一节点之间的第一位置处出现所述链路故障时,修改所述路由表,以指定要经由耦接到第二节点的第二通信路径发送的数据,并且基于所修改的路由表经由所述第二通信路径向所述第二节点发送所述数据,并且当在所述数据发送装置与所述第一节点之间未出现所述链路故障而在所述第一通信路径上的与所述第一位置不同的第二位置处出现所述链路故障时,基于所述路由表向所述第一节点发送所述数据,
其中,所述第一通信路径是由操作者的命令输入确定的,而不是自主确定的。
2.根据权利要求1所述的数据发送装置,其中,
所述处理器被配置为:在所述第一位置处检测到所述链路故障时,基于针对所述多个通信路径中的各个路径所确定的通信速度从所述多个通信路径选择所述第二通信路径。
3.根据权利要求2所述的数据发送装置,其中,
所述第二节点位于所述第二通信路径上所述数据发送装置的相邻处。
4.根据权利要求3所述的数据发送装置,所述数据发送装置还包括:
多个端口,所述多个端口发送所述数据并且分别连接到所述网络中的所述多个节点;以及
开关,所述开关从所述多个端口选择用于发送所述数据的端口,其中,
所述路由表包括对所述第一节点进行指示的第一标识符和对所述第二节点进行指示的第二标识符,
所述开关通过使所述第一标识符优先于所述第二标识符,来选择所述端口,并且
所述处理器被配置为:在所述第一位置处检测到所述链路故障时,从所述路由表删除所述第一标识符,或者使所述第一标识符无效。
5.根据权利要求4所述的数据发送装置,其中,
所述处理器被配置为:检测在所述第一位置处从所述链路故障的恢复,并且使所述第一标识符有效。
6.根据权利要求3所述的数据发送装置,其中,
所述数据被包括在分组中,并且所述分组被分配有用于识别所述分组的分组标识符,并且
所述处理器被配置为:当所述多个通信路径中所包括的第三通信路径的通信速度与所述第二通信路径的通信速度相同时,基于所述分组标识符来选择所述第二通信路径和所述第三通信路径中的一个。
7.一种从包括多个节点和多个通信路径的网络中所包括的数据发送装置发送数据的数据发送方法,该数据发送方法包括以下步骤:
基于对所述多个通信路径中所包括的第一通信路径进行指定的命令,设置路由表;
检测在所述网络中出现的链路故障;并且
当在所述数据发送装置与所述第一通信路径上与所述数据发送装置相邻的第一节点之间的第一位置处出现所述链路故障时,修改所述路由表,以指定要经由耦接到第二节点的第二通信路径发送的数据,并且基于所修改的路由表经由所述第二通信路径向所述第二节点发送所述数据,并且当在所述数据发送装置与所述第一节点之间未出现所述链路故障而在所述第一通信路径上的与所述第一位置不同的第二位置处出现所述链路故障时,基于所述路由表向所述第一节点发送所述数据,
其中,所述第一通信路径是由操作者的命令输入确定的,而不是自主确定的。
8.根据权利要求7所述的数据发送方法,该方法还包括:
在所述第一位置处检测到所述链路故障时,基于针对所述多个通信路径中的各个路径所确定的通信速度从所述多个通信路径选择所述第二通信路径。
9.根据权利要求8所述的数据发送方法,其中,
所述第二节点位于所述第二通信路径上所述数据发送装置的相邻处。
10.根据权利要求9所述的数据发送方法,该方法还包括以下步骤:
在所述路由表中存储对所述第一节点进行指示的第一标识符和对所述第二节点进行指示的第二标识符;
通过使所述第一标识符优先于所述第二标识符,来选择所述第一通信路径;以及
基于在所述第一位置处检测到所述链路故障的情况,从所述路由表删除所述第一标识符,或者使所述第一标识符无效。
11.根据权利要求10所述的数据发送方法,该方法还包括:
检测在所述第一位置处从所述链路故障的恢复,并且使所述第一标识符有效。
12.根据权利要求9所述的数据发送方法,其中,
所述数据被包括在分组中,并且所述分组被分配有用于识别所述分组的分组标识符,并且
当所述多个通信路径中所包括的第三通信路径的通信速度与所述第二通信路径的通信速度相同时,基于所述分组标识符来选择所述第二通信路径和所述第三通信路径中的一个。
CN201410203255.8A 2013-05-22 2014-05-14 数据发送装置和数据发送方法 Expired - Fee Related CN104184608B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-108379 2013-05-22
JP2013108379A JP6217138B2 (ja) 2013-05-22 2013-05-22 パケット転送装置及びパケット転送方法

Publications (2)

Publication Number Publication Date
CN104184608A CN104184608A (zh) 2014-12-03
CN104184608B true CN104184608B (zh) 2018-06-05

Family

ID=51935323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410203255.8A Expired - Fee Related CN104184608B (zh) 2013-05-22 2014-05-14 数据发送装置和数据发送方法

Country Status (3)

Country Link
US (1) US9485172B2 (zh)
JP (1) JP6217138B2 (zh)
CN (1) CN104184608B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9203738B2 (en) * 2013-05-21 2015-12-01 Cisco Technology, Inc. Optimal forwarding for trill fine-grained labeling and VXLAN interworking
US11296800B2 (en) 2013-07-15 2022-04-05 Eric Litak Classical implementation of entanglement
US9614752B2 (en) * 2013-11-11 2017-04-04 Avaya Inc. Multi-threaded multi-path processing
US9692684B2 (en) * 2014-09-05 2017-06-27 Telefonaktiebolaget L M Ericsson (Publ) Forwarding table precedence in SDN
US10855791B2 (en) * 2014-11-25 2020-12-01 Netapp, Inc. Clustered storage system path quiescence analysis
CN105743785B (zh) * 2014-12-12 2019-09-10 南京中兴软件有限责任公司 设备的路由切换方法及装置
JP6333751B2 (ja) * 2015-02-04 2018-05-30 日本電信電話株式会社 Ipネットワークシステムおよびロードバランス方法
CN106817301A (zh) * 2015-11-30 2017-06-09 中兴通讯股份有限公司 故障恢复方法及装置、控制器、软件定义网络
US10606779B2 (en) * 2016-09-16 2020-03-31 Altera Corporation Methods and apparatus for performing partial reconfiguration in a pipeline-based network topology
US10140237B2 (en) * 2016-09-29 2018-11-27 Ford Global Technologies, Llc Fail functional automated driving
WO2018195520A1 (en) * 2017-04-20 2018-10-25 Borrill Paul L Classical implementation of entanglement
JP6879129B2 (ja) * 2017-08-31 2021-06-02 沖電気工業株式会社 中継装置および中継プログラム
US11196713B2 (en) 2017-10-17 2021-12-07 Eric Litak Classical implementation of quantum entanglement in datacenter network design
CN108494700B (zh) * 2018-02-02 2022-11-01 百度在线网络技术(北京)有限公司 跨链路数据传输方法、装置、计算机设备及存储介质
US20220345398A1 (en) * 2019-09-30 2022-10-27 Nippon Telegraph And Telephone Corporation Transfer apparatus, transfer system, and transfer method.
WO2021232190A1 (en) * 2020-05-18 2021-11-25 Alibaba Group Holding Limited Forward path planning method in massive data center networks

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002091689A1 (en) * 2001-05-07 2002-11-14 Sun Microsystems, Inc. Fault-tolerant routing scheme for a multi-path interconnection fabric in a storage network
CN101827009A (zh) * 2009-03-04 2010-09-08 丛林网络公司 利用服务vlan标识符在trill网络中路由帧
CN101997770A (zh) * 2009-08-14 2011-03-30 株式会社日立制作所 传输控制服务器、传输控制***及预备路径设定方法
CN102299845A (zh) * 2011-09-20 2011-12-28 神州数码网络(北京)有限公司 多链路透明互联多播帧传输方法和***
CN102415065A (zh) * 2009-03-26 2012-04-11 博科通讯***有限公司 在有路由的网络中冗余主机连接
CN102638389A (zh) * 2011-02-15 2012-08-15 中兴通讯股份有限公司 一种trill网络的冗余备份方法及***
CN102780635A (zh) * 2012-08-09 2012-11-14 华为技术有限公司 基于trill网络实现保护倒换的方法、tor交换机及***
CN102845047A (zh) * 2010-03-26 2012-12-26 岩星比德科有限公司 在路由式以太网网络中的分布式故障恢复

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6857026B1 (en) * 1999-12-14 2005-02-15 Nortel Networks Limited Using alternate routes for fail-over in a communication network
JP2001333091A (ja) * 2000-05-23 2001-11-30 Fujitsu Ltd 通信装置
US20020004843A1 (en) * 2000-07-05 2002-01-10 Loa Andersson System, device, and method for bypassing network changes in a routed communication network
US8264955B2 (en) * 2009-06-12 2012-09-11 Polytechnic Institute Of New York University Internet protocol fast reroute for shared risk link group failure recovery
JP5283192B2 (ja) * 2009-09-08 2013-09-04 Kddi株式会社 経路制御プロトコルに基づいて障害リンクをリアルタイムに検出する方法、ノード装置及びプログラム
US8553562B2 (en) * 2010-09-08 2013-10-08 Telefonaktiebolaget L M Ericsson (Publ) Automated traffic engineering for multi-protocol label switching (MPLS) with link utilization as feedback into the tie-breaking mechanism

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002091689A1 (en) * 2001-05-07 2002-11-14 Sun Microsystems, Inc. Fault-tolerant routing scheme for a multi-path interconnection fabric in a storage network
CN101827009A (zh) * 2009-03-04 2010-09-08 丛林网络公司 利用服务vlan标识符在trill网络中路由帧
CN102415065A (zh) * 2009-03-26 2012-04-11 博科通讯***有限公司 在有路由的网络中冗余主机连接
CN101997770A (zh) * 2009-08-14 2011-03-30 株式会社日立制作所 传输控制服务器、传输控制***及预备路径设定方法
CN102845047A (zh) * 2010-03-26 2012-12-26 岩星比德科有限公司 在路由式以太网网络中的分布式故障恢复
CN102638389A (zh) * 2011-02-15 2012-08-15 中兴通讯股份有限公司 一种trill网络的冗余备份方法及***
CN102299845A (zh) * 2011-09-20 2011-12-28 神州数码网络(北京)有限公司 多链路透明互联多播帧传输方法和***
CN102780635A (zh) * 2012-08-09 2012-11-14 华为技术有限公司 基于trill网络实现保护倒换的方法、tor交换机及***

Also Published As

Publication number Publication date
CN104184608A (zh) 2014-12-03
JP6217138B2 (ja) 2017-10-25
US9485172B2 (en) 2016-11-01
US20140347975A1 (en) 2014-11-27
JP2014230100A (ja) 2014-12-08

Similar Documents

Publication Publication Date Title
CN104184608B (zh) 数据发送装置和数据发送方法
CN103947160B (zh) 通过基于trill的网络承载fcoe帧的方法
US8711863B2 (en) Virtual links in a routed ethernet mesh network
CN104380672B (zh) 用于802.1aq的三级折叠Clos优化
CN101960798B (zh) 多机箱端口信道上的分布式生成树协议
US9042395B2 (en) E-spring support of Ethernet protection
EP2695340B1 (en) Utility communication method and system
US7145878B2 (en) Avoiding overlapping segments in transparent LAN services on ring-based networks
CN104380671B (zh) 在分级、冗余、多播路由选择中增加失效覆盖
CN103703727A (zh) 用于分体式架构***中控制业务的弹性路由的方法和设备
KR20130100218A (ko) 주소 기반 캐리어 네트워크의 구별 전달
CN104426731A (zh) 一种生成树计算的方法和装置
CN110535768A (zh) 组播数据传输方法及相关设备
CN104618150B (zh) 一种ptn二层转三层业务场景下的业务配置方法及***
CN108111409A (zh) 建立分离路径的方法和装置
CN106713026A (zh) 业务链拓扑结构、业务链设置方法和控制器
CN105763439B (zh) 一种多链接透明互联网络中数据中心的互联方法及装置
WO2016141846A1 (zh) 数据报文传输方法及边缘路由网桥设备
CN102932255A (zh) 隧道路径选择的方法及装置
CN107733719B (zh) 一种软件定义抗毁网络无损路径恢复方法
CN103493439A (zh) 接收信息的方法、发送信息的方法及装置
CN104796346B (zh) 一种实现l3vpn业务负载分担的方法、设备及***
CN106230717B (zh) 集群***中的路由获取方法及装置
CN105099743B (zh) 一种列车冗余动态配置方法及***
CN107018072A (zh) 一种数据帧发送方法和接入设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180605