《减少EAPS系统中的流量损失.pdf》由会员分享,可在线阅读,更多相关《减少EAPS系统中的流量损失.pdf(14页完整版)》请在专利查询网上搜索。
1、10申请公布号CN101999223A43申请公布日20110330CN101999223ACN101999223A21申请号200980112319022申请日2009030912/098,28620080404USH04L12/43720060171申请人极进网络有限公司地址美国加利福尼亚州72发明人巴拉卡什卡什耶普拉姆克里什南乔伊迪普查克拉瓦提戴维K帕克74专利代理机构北京东方亿思知识产权代理有限责任公司11258代理人宋鹤南霆54发明名称减少EAPS系统中的流量损失57摘要一种具有自动保护切换域的环网络200包括控制VLAN和至少一个数据VLAN。环中的主控节点210被连接到至少一个转。
2、运节点220、230、240。环网络中的每个节点通过主要端口P1或次要端口P2被链接到相邻的节点。主控节点210经由控制VLAN接收故障通知,所述故障指示相邻节点之间的出故障的链路。作为响应,主控节点210对多个数据VLAN上的流量开放其次要端口。主控节点和多个转运节点220、230、240上的转发数据库条目被刷洗。数据流量被涌流到环网络,直到主控节点210和多个转运节点220、230、240上的数据库条目已经被重新建立为止。30优先权数据85PCT申请进入国家阶段日2010100886PCT申请的申请数据PCT/US2009/0365392009030987PCT申请的公布数据WO2009/。
3、123829EN2009100851INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书5页附图6页CN101999231A1/2页21在具有包括控制虚拟局域网VLAN和至少一个数据VLAN的自动保护切换域的环网络中,一种方法包括检测所述环网络中的故障,所述环网络具有被连接到至少一个转运节点的主控节点,每个节点通过主要端口或次要端口中的至少一个被链接到相邻节点,所述故障指示相邻节点之间的出故障的链路;将流量涌流到所述环网络,直到所述主控节点和所述至少一个转运节点上的各自的转发数据库条目已经被重新建立为止。2根据权利要求1所述的方法,还包括刷洗所述主控节点和所述至少一个。
4、转运节点上的转发数据库条目。3一种方法,包括从环网络上的转发设备检索转发数据库条目;确定与所述转发数据库条目相关联的输出端口检查所述转发数据库条目中的快速切换字段;基于所述快速切换字段,检查与自动保护切换域相关联的端口阵列中的与所述输出端口相关联的端口字段;并且基于所述端口阵列中的输出端口字段,将流量涌流到与所述自动保护切换域相关联的环端口。4根据权利要求1所述的方法,其中,所述转发设备是层2交换机和层3路由器中的一者。5根据权利要求1所述的方法,其中,基于所述快速切换比特检查与自动保护切换域相关联的端口阵列中的与所述输出端口相关联的端口字段包括在所述快速切换字段指示所述端口字段中的比特被设定。
5、为高时检查所述端口字段。6一种包括计算机可读介质的制造产品,所述计算机可读介质在其上存储内容以提供指令来使得电子设备执行如下操作,包括检测环网络中的故障,所述环网络具有连接到至少一个转运节点的主控节点,每个节点通过主要端口或次要端口中的至少一个被链接到相邻节点,所述故障指示相邻节点之间的出故障的链路;将流量涌流到所述环网络,直到所述主控节点和所述至少一个转运节点上的各自的转发数据库条目已经被重新建立为止。7根据权利要求6所述的制造产品,在其上存储内容以提供指令来使得电子设备还执行如下操作,包括刷洗所述主控节点和所述至少一个转运节点上的转发数据库条目。8一种系统,包括用于存储与路由设备相关联的转。
6、发表的存储器;用于从环网络上的转发设备检索转发数据库条目的装置;用于确定与所述转发数据库条目相关联的输出端口的装置;用于检查所述转发数据库条目中的快速切换字段的装置;用于基于所述快速切换字段检查与自动保护切换域相关联的端口阵列中的与所述输出端口相关联的端口字段的装置;以及用于基于所述端口阵列中的输出端口字段将流量涌流到与所述自动保护切换域相关权利要求书CN101999223ACN101999231A2/2页3联的环端口的装置。9根据权利要求8所述的系统,其中,所述路由设备是层2交换机和层3路由器中的一者。10根据权利要求8所述的系统,其中,用于基于所述快速切换比特检查与自动保护切换域相关联的端。
7、口阵列中的与所述输出端口相关联的端口字段的装置还包括用于在所述快速切换字段指示所述端口字段中的比特被设定为高时检查所述端口字段的装置。权利要求书CN101999223ACN101999231A1/5页4减少EAPS系统中的流量损失技术领域0001本发明的实施例涉及计算机网络,并且更具体地涉及环网络中的自动保护切换。背景技术0002在以太网自动保护切换EAPS系统中,在具有环拓扑的层2网络中环路LOOP被防止。EAPS域包括控制虚拟局域网VLAN和至少一个受保护的数据VLAN。EAPS域与主控节点相关联,主控节点被链接到环网络中的至少一个转运TRANSIT节点。0003当网络故障在环中被检测到时。
8、,EAPS系统中的主控节点通过控制VLAN接收控制消息,控制消息指示网络故障。在正常操作期间,主控节点阻止受保护的VLAN流量穿过其次要端口。在网络故障期间,主控节点开放其次要端口并且将受保护的数据VLAN流量变更为路由通过其次要端口。当故障已经被修复时,次要节点重新被阻塞。每当次要节点被阻塞和开放时,环中所有节点上的转发数据库都被刷洗FLUSH。0004刷洗节点上的转发数据库要求重新学习例如,自动重新学习和/或重新编程例如,手动重新编程每个转发数据库中的转发条目和/或路径,这两种情况都是很贵的。在任一种情况中,重新建立转发数据库不会立即发生。换句话说,在开始刷洗转发数据库和随后重新建立转发数。
9、据库之间存在一段时间。在此段时间期间,网络连接性可能会暂时被切断并且数据例如,数据帧、分组等可能会被丢弃或丢失。发明内容0005一种具有自动保护切换域的环网络包括控制VLAN和至少一个数据VLAN。环中的主控节点被连接到至少一个转运节点。环网络中的每个节点通过主要端口或次要端口被链接到相邻节点。在正常操作期间,主控节点允许数据流量流过其主要端口,而其次要端口被阻塞。通过阻塞次要端口,主控节点防止了环路。当故障在环中被检测到时,故障经由控制VLAN被传达给主控节点。故障指示相邻节点之间的出故障的链路。作为对故障的响应,主控节点对多个数据VLAN上的流量开放其次要端口。0006流量流动的改变导致主。
10、控节点和多个转运节点上的现存的转发数据库条目失效。因此,转发数据库条目从主控节点和多个转运节点被刷洗。刷洗转发数据库条目使得有必要基于环网络的新配置即,主控节点开放次要端口来重新学习转发路线。在刷洗条目和重新学习条目之间的这段时间期间,数据流量被涌流FLOOD到环网络,以保持连接性并防止帧和/或分组丢失。当转发数据库条目被重新学习之后,流量涌流自动停止。附图说明0007下面的描述包括对借助于本发明的实施例的实现方式的示例给出的用于图示说明的示图的论述。这些示图应当通过示例而非通过限制来理解。如在此所使用的,对一个或多个“实施例”的提及应当被理解为描述本发明的至少一个实现方式中包括的具体特征、说。
11、明书CN101999223ACN101999231A2/5页5结构或特性。因此,在此出现的诸如“在一个实施例中”或“在一个替代实施例中”之类的短语描述本发明的各种实施例和实现方式,并且不一定都涉及相同的实施例。然而,它们也不一定彼此排斥。0008图1示出现有技术以太网自动保护切换EAPS系统;0009图2A示出根据各实施例的EAPS环网络在正常操作期间的状态;0010图2B示出根据各实施例的EAPS环网络在紧邻链路故障之后的状态;0011图2C示出根据各实施例的EAPS环网络在故障恢复之后的状态;0012图3是示出根据各实施例的用于转发数据流量的处理的流程图;0013图4是示出适用于实践各实施。
12、例的合适计算环境的框图。具体实施方式0014如在此提供的方法、装置和系统在采用以太网自动保护切换EAPS的环网络中发生故障时保持连接性并防止帧和/或分组丢失。0015图1是示出现有技术EAPS系统的框图。EAPS系统100包括一个或多个EAPS域101。为了发送和接收EAPS系统控制消息117,控制VLAN103针对每个EAPS域101被创建。EAPS域101被创建以保护成组的一个或多个数据承载VLAN104。0016EAPS系统100在环网络102上操作。环网络102上的一个节点被指定作为主控节点105。主控节点105上的两个环端口被指定作为主要端口106和次要端口107。环网络102上的所。
13、有其他节点是转运节点111并且每个具有其各自的环端口112。每个主控节点105和转运节点111分别具有转发数据库FDB108和113,它们在其中存储有关网络通信路径的信息。主控节点105具有状态寄存器109,状态寄存器109用于存储环网络102的状态。为了说明的目的,环网络102的状态被描述为“故障”或“完整”,“故障”是指在环网络102中存在故障或破损,“完整”是指环网络未破损或者环网络已经恢复并且所有节点正在正确地通信。转运节点111具有状态寄存器114和先转发PREFORWARDING定时器115,它们在状态寄存器114中存储先转发状态。转运节点111还具有临时阻塞端口存储区域TBP11。
14、6,它们在其中存储临时被阻塞的端口的标识。下面讨论先转发和TBP。0017在各种实施例中,主控节点105和转运节点111使用控制消息117来经由控制VLAN103通信。在实施例中控制消息117的一些示例有健康检查消息、链路掉落LINKDOWN消息以及刷洗FDB消息。转运节点111将在控制VLAN103上发送的消息认为是控制消息117,因为其具有特殊的MAC媒体访问控制地址,该地址对应于转发数据库113中的条目。主控节点和转运节点在将控制消息117拷贝到节点的中央处理单元CPU之前把其转发,此处,控制消息117被记入日志以供在发现并修理故障中使用等等。控制消息117在被CPU处理之前被转发有助于。
15、环网络102在故障之后以远比由在前的现有技术方法可以实现聚合的时间少的时间而聚合。0018主控节点105具有HELLO定时器118,其是用于发送健康检查控制消息117的时钟。当HELLO定时器118被启动了时,其提示主控节点105以规则的间隔例如每一秒在控制VLAN103上发送健康检查消息117。健康检查消息117绕着环网络102被转发并且几乎瞬间返回到主控节点105。当主控节点105发送健康检查消息117时,其设定故障定时器110。如果故障定时器110在健康检查消息返回到主控节点105之前期满,则主控节说明书CN101999223ACN101999231A3/5页6点105判定在环网络102。
16、中存在故障。即使在故障期间,健康检查消息117也被发送。当故障被恢复时,主控节点105马上知道,因为健康检查消息117的返回被重新取得。0019如在此所使用的,将网络从故障状态引至完整状态所花的时间被称为“故障恢复FAILOVER”时间。换句话说,故障恢复时间是在FDB条目被刷洗之后重新学习FDB条目所花的时间。虽然,刷洗FDB条目适当地与链路故障或其它故障相关联,但是刷洗也可以故意发生例如,因为网络维护等。倘若系统可包括100000个或更多个主机每个具有单独的路由条目,则从网络连接性角度来看,故障恢复时间可能相当长。现有技术FDB条目简单地定义了数据应通过其被转发以达到特定目的地的输出端口。。
17、在故障恢复时段期间,这些FDB条目中的许多条目可能变为无效,因为通过所定义的输出端口的路径可能包括故障的链路。无效的FDB条目可导致数据流量即,帧,分组等被丢失或丢弃。为了减少EAPS系统在故障恢复期间的帧和/或分组的丢失,附加字段在此称为快速切换FSWO字段被添加到一个或多个FDB数据库中的FDB条目。0020在各种实施例中,FSWO字段是被添加到FDB条目的1比特字段,虽然该字段在不同实施例中可以是多比特。FSWO字段指示在FDB条目中所定义的输出端口在故障恢复期间是否易无效。因此,对于易无效的FDB条目,FSWO比特被设定为高例如,被设定为1。在其他实施例中,低例如,0FSWO比特可以被。
18、定义为指示FDB条目易无效。在各种实施例中,当FDB条目被访问时,FSWO字段就被审查。FSWO字段是在FDB条目的输出端口字段之前还是之后被审查是不重要的。0021当条目的FSWO比特被设定为高指示该条目易无效时,特殊端口阵列被访问。端口阵列被维护在硬件中用于快速访问例如,被维护在内部RAM等中。更具体地,端口阵列是全局资源并且允许存储器索引,这与需要针对特定端口进行搜索相对。端口阵列的存储器索引最小化了硬件资源,因为对于搜索每个条目,每个EAPS端口仅需要端口阵列中的单个比特,这与依赖于FDB条目的比特长度的9个、13个或16个比特等相对。在其他实施例中,端口阵列可以被维护在软件中。002。
19、2在各种实施例中,端口阵列在阵列中针对EAPS系统中的每个端口包括一比特。例如,具有512个端口的系统将具有有512比特例如,0511的端口阵列。每当EAPS系统检测到故障或链路故障时,端口阵列通过将针对每个EAPS受控端口的比特设定为高例如,1而被修改。端口阵列中的高比特指示需要将流量涌流到所有相关EAPS端口。例如,端口阵列中针对端口X的高比特表示将要正常地被路由通过端口X的所有流量应被涌流到所有端口。按照此种方式,否则会被丢弃或丢失的帧和/分组能够到达它们的目的地。只要端口阵列中的一个或多个比特为高,相关EAPS端口上就会发生涌流。当故障恢复时段结束即,FDB条目因链路故障已经被重新学习。
20、和/或重新编程时,端口阵列比特被设定为低例如,设定为0。在其它实施例中,端口阵列比特可以在定时器期满时被设定为低。因此,随后基于FDB条目中的高FSWO比特对端口阵列的访问将指示涌流不必要。0023图2A图2C示出结合了EAPS系统的环网络。具体地,图2A示出了正常操作期间的环网络200。主控节点210具有主要端口P1和次要端口P2。根据此EAPS系统配置,数据VLAN上的流量被阻止流过端口P2。因此,来自主控节点的所有流量被转发通过端口P1。用于做出转发决定的处理通过下面的示例说明。0024在本示例中,到来的帧202到达主控节点210,其目的地为转运节点230地址说明书CN101999223。
21、ACN101999231A4/5页7XYZ。在图2A中所示的FDB条目示出了转发决定处理。当到来的帧202到达主控节点210时,与目的地地址XYZ相对应的条目被访问。当访问该条目时,输出端口字段被审查并且被确定为是端口P1。然而,在确定了输出端口之后,此处理并未结束。在确定了输出端口之后,FDB条目中的快速切换FSWO比特被审查。如果FSWO比特被设定为高例如,1,则EAPS系统端口阵列250的P1比特必须被查看。如果在图2A中端口阵列250中的P1比特为低例如,0,则涌流不被准许。因此,主控节点210进行到如在FDB条目所指示那样在端口P1上转发帧。0025继续该示例,图2B示出了环网络20。
22、0紧邻在转运节点220和230之间的链路故障之后的状态。链路故障经由EAPS系统控制VLAN被传达给主控节点210。另外,EAPS系统的端口阵列250被更新,以使得与EAPS端口相对应的比特被设定为高例如,1。作为对检测到的链路故障的响应,主控节点210开放其次要端口P2。这样,当去往转运节点230的到来的帧204到达主控节点210时,FDB条目如图2B所示错误地指示帧应当在端口P1上被转发。然而,因为在审查输出端口字段之后查询并没有结束,所以这是没有问题的。在输出端口字段被审查之后,端口阵列250的P1比特被审查,因为FDB条目的FSWO比特被设定为高例如,1。这里,已经由于链路故障被更新的。
23、端口阵列250的P1比特也被设定为高。端口阵列250中的高比特指示到来的帧应当在所有相关EAPS端口上被涌流。因此,帧204在主控节点210的两个端口即,P1和P2上被涌流出去。如果不用于涌流,帧204将在端口P1上被路由出去,如FDB条目所指示,并且因为转运节点220和230之间的故障链路而不能到达转运节点230。然而,因为帧204在端口P1和P2二者上被涌流,所以帧现在具有通过端口P2到其目的地即,转运节点230的路径。0026图2C示出EAPS相关FDB条目已经被刷洗并被重新学习之后的环网络200、FDB条目212和端口阵列250。当去往转运节点230的到来的帧206到达主控节点210时。
24、,FDB条目210现在正确地指示帧应当在端口P2上被转发。FSWO比特仍然被设定为高,指示在端口P2上转发帧之前需要查看端口阵列250。倘若EAPS相关FDB条目已经被重新学习以反映环网络200的当前状态,则端口阵列250中的比特被设定为低例如,被设定为0。因此,涌流是不必要的并且主控节点210可进行到在端口P2上将帧206转发向转运节点230。0027图3是示出根据各实施例的用于在EAPS使能的环网络上转发数据帧和/或分组的处理的流程图。当帧在除了其最终目的地以外的节点被接收时,FDB条目基于帧的目的地地址例如,MAC地址、IP地址等等被检索310。FDB条目中的输出端口字段指示帧应当在其上。
25、被转发以便达到其目的地的端口。因此,输出端口被确定320。FDB条目还包括快速切换FSWO字段例如,1比特字段。如果确定330FSWO被设定为高例如,等于1,则有必要查看端口阵列340。这是因为具有高FSWO比特的条目可能在环网络中发生链路故障或其他故障时变为无效。端口阵列被更新以指示链路故障或缺陷存在并且需要对其进行弥补。因此,端口阵列被查看340,以判定360与在步骤320中确定的输出端口相对应的端口阵列比特是否被设定为高即,等于1。如果该比特未被设定为高,则帧被转发350通过在步骤320中确定的输出端口。然而,如果该比特被设定为高,则缺陷或故障状况已经出现;因此,帧在相关EAPS端口上被。
26、涌流370。0028本领域技术人员将认识到,除了上述实施例以外,还可以实践各种替代实施例。例如,虽然上述实施例一般可应用于层2例如,数据链路层,但是还预期到实施例可以使用说明书CN101999223ACN101999231A5/5页8层3例如,网络层来实现。例如,在FDB条目中不是将MAC地址作为目的地层2,在层3FDB条目中,因特网协议IP地址可以被用作目的地地址。在层3实施例中,FDB条目在包括输出端口字段以外还可以包括VLAN字段,因为在层3中输出VLAN可以与输入VLAN不同。另外,实施例不限于单播流量或单路径路由;多播流量和均等成本的多路径路由ECMP可以被用在其他实施例中。0029。
27、图4示出各种实施例中可以实践图13所示的本发明的某些方面的计算环境。总体地,这些部件旨在表示硬件系统的大分类,包括但不限于通用计算机系统和专用网络交换机。0030计算机系统400包括处理器410、I/O设备440、主存储器420和闪存430,它们经由总线480彼此耦合。主存储器420可以包括一个或多个系统存储器RAM和非易失性存储设备例如,磁盘或光盘,其存储供处理器410使用的指令和数据。另外,网络接口470、数据存储装置460和开关结构450经由总线480被彼此耦合。数据存储装置460表示在此描述的供开关结构450用来转发网络分组或消息的路由数据库即,路由表以及诸如分组缓存器之类的其他存储区。
28、域等。0031在各种实施例中,计算机系统400的各种部件可以重新布置,并且某些实施例可以不要求也不包括所有的上述部件。此外,其他部件可以包括在系统400中,诸如另外的处理器例如,数字信号处理器、存储设备、存储器、网络/通信接口,等等。0032在图4所示的实施例中,如上面描述的根据本发明的减小路由表大小的方法和设备可以被实现为由图4的计算机系统400运行的一系列软件例程。这些软件例程包括要被硬件系统中的处理系统诸如处理器410执行的多个指令或指令序列。最初,指令序列被存储在数据存储装置460例如,路由管理器数据库、存储器420或闪存430中。0033在此描述的各种部件包括图4的部件可以是用于执行。
29、在此描述的功能的装置。在用于执行在此描述的操作的部件包括软件的情况中,软件数据、指令和/或配置可以由机械/电子设备/硬件通过制造产品来提供。制造产品可以包括具有提供指令、数据等内容的计算机可读介质。此内容可以使得在此描述的电子设备执行所描述的各种操作或执行。计算机可读介质包括提供即,存储和/或发送可由计算机例如,计算机、计算设备、电子设备、电子系统/子系统等访问的形式的信息/内容的任何构件。例如,计算机可读介质包括可记录/不可记录介质例如,只读存储器ROM、随机存取存储器RAM、磁盘存储介质、光存储介质、闪存设备,等等。计算机可读介质还可以包括将代码装载到存储装置的电子设备,在电子设备运行时代。
30、码可被执行。因此,呈递具有这样的代码的的电子设备可以理解为提供具有在此所述的内容的制造产品。此外,将代码存储在数据库或其他存储位置上以及通过通信介质提供供下载的代码可以被理解为提供具有在此所述的内容的制造产品。0034除了在此描述的以外,可以在不脱离本发明的范围的前提下对所公开的实施例和实现方式做出各种修改。因此,这里的说明和示例应当被解释为是说明性的,而不具有限制意义。本发明的范围应当仅通过参考所附的权利要求书来度量。说明书CN101999223ACN101999231A1/6页9图1现有技术说明书附图CN101999223ACN101999231A2/6页10图2A说明书附图CN101999223ACN101999231A3/6页11图2B说明书附图CN101999223ACN101999231A4/6页12图2C说明书附图CN101999223ACN101999231A5/6页13图3说明书附图CN101999223ACN101999231A6/6页14图4说明书附图CN101999223A。