CN114979034B - 一种数据包转发***、方法、装置及存储介质 - Google Patents
一种数据包转发***、方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114979034B CN114979034B CN202210750876.2A CN202210750876A CN114979034B CN 114979034 B CN114979034 B CN 114979034B CN 202210750876 A CN202210750876 A CN 202210750876A CN 114979034 B CN114979034 B CN 114979034B
- Authority
- CN
- China
- Prior art keywords
- data packet
- module
- switch
- target
- modules
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000004888 barrier function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/252—Store and forward routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据包转发***、方法、装置及存储介质,该***包括包含至少两个交换模块的交换模块组,至少两个交换模块之间通过网线级联;在数据包转发***接收到数据包时,交换模块组中的一个目标交换模块被配置为转发数据包,其中,目标交换模块根据数据包关联的端口地址确定;交换模组中除所述目标交换模块外的其他交换模块作为备份交换模块被配置以在目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包。上述技术方案交换模块组中存在至少两个交换模块,根据数据包关联的端口地址可选择其中的一个目标交换模块用于数据包的转发,其他交换模块可以备用,实现了数据包转发的冗余,提高了数据包转发的可靠性。
Description
技术领域
本发明实施例涉及数据传输技术领域,尤其涉及一种数据包转发***、方法、装置及存储介质。
背景技术
交换模块(Switch)是一种用于信号或数据转发的网络设备,多个交换模块可以汇聚成一个模块组,一个模块组对外有一个虚拟路由冗余协议(Virtual Router RedundancyProtocol,VRRP)的虚拟地址,用于与外部设备通信。
然而,在模块组中可能会出现部分交换模块不可用的情况,例如各交换模块正在协商对外的虚拟地址,这种情况下,模块组的虚拟地址不可用,外接设备无法与模块组中的任何一个交换模块连通,将会导致数据传输失败,数据包转发中断,数据包转发的可靠性低。
发明内容
本发明提供了一种数据包转发***、方法、装置及存储介质,以提高数据包转发的可靠性。
第一方面,本发明实施例提供了一种数据包转发***,
包括包含至少两个交换模块的交换模块组,所述至少两个交换模块之间通过网线级联;
在所述数据包转发***接收到数据包时,所述交换模块组中的一个目标交换模块被配置为转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
所述交换模组中除所述目标交换模块外的其他交换模块作为备份交换模块被配置以在所述目标交换模块出现故障时,使用所述备份交换模块中的任一个转发所述数据包。
第二方面,本发明实施例提供了一种数据包转发方法,应用于交换模块组,所述交换模块组包括至少两个交换模块,所述至少两个交换模块之间通过网线级联;所述方法包括:
接收数据包;
通过所述交换模块组中的一个目标交换模块转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
在所述目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包,其中,所述备份交换模块包括所述交换模组中除所述目标交换模块外的其他交换模块。
第三方面,本发明实施例提供了一种数据包转发装置,应用于包含至少两个通过网线级联的交换模块的交换模块组,包括:
数据包转发模块,被配置以在数据包转发***接收到数据包时,使用所述交换模块组中的一个目标交换模块转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
备份模转发块,被配置以在所述目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包,其中,所述备份交换模块为交换模组中除所述目标交换模块外的其他交换模块。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现如第二方面所述的数据包转发方法。
本发明实施例的技术方案,通过在交换模块组设置利用网线级联的至少两个交换模块,根据数据包关联的端口地址可选择其中的一个目标交换模块用于数据包的转发,其他交换模块可以备用,可以保证外接设备与交换模块组的连通,实现了数据包转发的冗余,提高了数据包转发的可靠性。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种数据包转发***的结构示意图;
图2是根据本发明实施例一提供的一种数据包转发***的结构示意图;
图3是根据本发明实施例一提供的一种数据包转发过程的示意图;
图4是根据本发明实施例二提供的一种数据包转发方法的流程图;
图5是根据本发明实施例三提供的一种数据包转发装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供的一种数据包转发***的结构示意图,本实施例可适用于实现数据包转发的情况。如图1所示,该数据包转发***包括:包含至少两个交换模块11的交换模块组10,至少两个交换模块11之间通过网线12级联;在数据包转发***接收到数据包时,交换模块组10中的一个目标交换模块被配置为转发数据包,其中,目标交换模块根据数据包关联的端口地址确定。交换模组10中除目标交换模块外的其他交换模块作为备份交换模块被配置以在目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包。
其中,数据包可以是指分块的传输数据,这些数据包沿着不同的路径在一个或多个网络中传输,并在目的地重新组合。数据包关联于转发表,其中,转发表可以是指存储数据包的传输路径的数据表或路由目录,转发表中可以包括用于转发数据包的交换模块的端口地址,还可以包括媒体访问控制地址(Media Access Control Address,MAC地址)和数据包接收端的互联网协议(Internet Protocol,IP)地址等,传输路径中的各个节点,包括交换模块组10都可根据转发表来转发数据包。MAC地址可以是指用于确认网络设备位置的地址,每个网络设备都有唯一的MAC地址。端口地址可以是指在微机***中,每个端口分配有唯一的地址码或者端口号,称之为端口地址。IP地址可以是指分配给网络上的各个网络设备的地址。
交换模块组10可以是由至少两个交换模块11组成的模块组,交换模块11可以是指用于信号或数据转发的网络设备,例如可以为交换机、交换芯片或交换板卡等。通过将至少两个交换模块11组成交换模块组10可以扩展用于数据交换的端口的数量。本实施例对连接各交换模块11网线12的类型不作限定,如可以是双绞线、同轴电缆或光缆等。
其中,交换模块组10中的交换模块11可以有相同的二层或三层转发表,即不同交换模块11可以通过级联定时同步二层或三层转发表,以实现转发表的冗余。其中,二层转发表可以是指二层交换机对应的转发表,三层转发表可以是指三层交换机对应的转发表。在此基础上,在一个交换模块11的端口无法访问时,由于各交换模块11的转发表同步,另一个交换模块11也可以将数据包按照转发表中的路径正确转发。
本实施例中,在接收到数据包时,根据数据包关联的端口地址可以确定该数据包需要由交换模块组10中的哪个交换模块11转发,例如,数据包关联的端口地址为交换模块A的一个端口的地址,则该交换模块A即可作为目标交换模块,其他交换模块可作为备份交换模块;当交换模块A的端口出现故障而无法访问或者失效时,也可以通过任意一个备份交换模块用于转发该数据包。在此基础上,数据包的转发不再依赖于交换模块组10的虚拟地址,而是根据端口地址可以选择一个具体的目标交换模块用于数据包转发,即便交换模块组10的虚拟地址不可用,也不影响选择目标交换模块,从而提高数据包转发的可靠性。
本发明实施例的一种数据包转发***,通过在交换模块组设置至少两个交换模块,根据数据包关联的端口地址可选择其中的一个目标交换模块用于数据包的转发,其他交换模块可以备用,保证外接设备与交换模块组的连通,实现了数据包转发的冗余,提高了数据包转发的可靠性。
可选的,目标交换模块根据数据包关联的端口地址确定包括:若端口地址对应的交换模块的端口未出现故障,则将端口地址对应的交换模块作为目标交换模块;若端口地址对应的交换模块的端口出现故障,则将备份交换模块中的任一个作为目标交换模块。
其中,根据数据包关联的端口地址可以确定该数据包需要由交换模块组10中的哪个交换模块11转发,如果端口地址对应的交换模块的端口未出现故障,即该端口有效,或者支持外部设备或数据包转发***中的其他设备(例如数据包的发送端或者外接交换机等)访问,则其他设备可以访问该交换模块11的端口,则该交换模块11可作为目标交换模块,用于将数据包转发至相应的接收端。
如果端口地址对应的交换模块的端口出现故障,即该端口失效,或者不支持外部设备或数据包转发***中的其他设备访问,则可以使用交换模块组10中的另一个交换模块11作为目标交换模块,用于将数据包转发至相应的接收端。在此基础上,只要交换模块组10中存在可以访问的交换模块11,即可保证数据包的转发,提高数据包转发的成功率及可靠性。
可选的,各交换模块11对应不同的端口地址范围;各交换模块11还被配置为:通过协商的方式,根据所述端口地址所属的端口地址范围确定目标交换模块与备份交换模块。
其中,目标交换模块为与数据包的端口地址对应的交换模块;备份交换模块为交换模块组10中除目标交换模块以外的其他交换模块。当启用备份交换模块时,备份交换模块可以实现目标交换模块相应的功能。各交换模块11对应不同的端口地址范围,可通过协商的方式确定目标交换模块与备份交换模块,协商可以是指,通过和对端交换各自的端口地址范围,以确认数据包关联的端口地址属于哪个交换模块的端口地址范围,也即确认各交换模块是否包含与数据包的端口地址相对应的端口,在此基础上选择包含与数据包的端口地址相对应的端口的交换模块作为目标交换模块,其他交换模块作为备份交换模块。例如,交换模块1对应于端口地址1至端口地址24,交换模块2对应于端口地址24至端口地址48。如果数据包关联的端口地址为端口地址30,属于交换模块2对应的端口地址范围,则可将交换模块2作为目标交换模块,交换模块1作为备份交换模块。
可选的,各交换模块11分别具有设定数量的端口,各交换模块11的端口依次编号;端口地址包括端口号;目标交换模块根据端口号对设定数量进行除法运算得到的商和余数确定。其中,若余数为0,则与商对应编号的交换模块为目标交换模块;若余数不为0,则商加1对应编号的交换模块为目标交换模块。
其中,各交换模块11分别具有设定数量的端口,例如,各交换模块分别具有24个端口,以交换模块组包含两个交换模块(分别记为交换模块1和交换模块2)为例,则对应的交换模块组10包含的端口总数量为48。各交换模块的端口可以顺序编号,例如48个端口依次记为端口1、端口2……端口48。数据包关联的端口地址可以为端口号的形式,在此基础上,数据包关联的端口号对设定数量进行除法运算,得到的商和余数决定了数据包关联的端口号属于哪个交换模块的编号范围,即决定了该数据包通过哪个交换模块转发。例如,数据包关联的端口地址为地址30,用30对24除法运算,得到的商为1且有余数,则应使用该商加1后对应的交换模块(即交换模块2)作为目标交换模块。又如,数据包关联的端口地址为地址48,用48对24除法运算,得到的商为2且余数为0,则应使用该商对应的交换模块(即交换模块2)作为目标交换模块。可见,当端口地址对应的端口号为1到24中的任一端口时,数据包可由第一个交换模块转发;当端口地址对应的端口号为25到48中的任一端口时,数据包可由第二个交换模块转发。本实施例中,各交换模块11的型号相同且端口数量一致,便于快速确定交换模块11的IP地址,也有利于负载分配均衡。
图2为本发明实施例一提供的一种数据包转发***的结构示意图。如图2所示,数据包转发***包括:发送端20、接收端30以及如上述任意实施例所述的交换模块组10。
具体的,发送端20可以是指用于发送数据包的网络设备,将数据包发送至所述交换模块组10。本实施例对发送端20的类型不作限定,如可以是各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、大型计算机、和其它适合的计算机。在一些实施例中,发送端20可以向外接交换机发送数据包,再由外接交换机将数据包发送至所述交换模块组10。
接收端30可以是指用于接收数据包的网络设备,本实施例对接收端30的类型不作限定,只要能接收数据包即可,如可以是各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、大型计算机、和其它适合的计算机。交换模块组10的目标交换模块可用于将数据包转发至相应的接收端30。本实施例的数据包转发***,通过在交换模块组中设置至少两个交换模块,根据数据包关联的端口地址可选择其中的一个目标交换模块用于数据包的转发,其他交换模块可以备用,实现了数据包转发的冗余,提高了数据包转发的可靠性。
可选的,该数据包转发***还包括:外接交换机,外接交换机分别与交换模块组以及至少一个发送端连接;外接交换机被配置为在接收到任一发送端的数据包时,与目标交换模块建立连接,并将数据包传输至目标交换模块。
具体的,外接交换机可以是指用于电信号转发的网络设备,可以扩展连接多个发送端20,并与交换模块组10中的目标交换模块建立连接,以将发送端20的数据包传输至目标交换模块。交换模块组10与外接交换机的区别在于,交换模块组10可直接对接接收端30。本实施例对外接交换机的类型不作限定,如可以是以太网交换机、电话语音交换机、光纤交换机等。本实施例中,外接交换机优先将数据包传输至交换模块组10中的目标交换模块(即与数据包的端口地址对应的交换模块),若端口地址对应的交换模块的端口出现故障,则将交换模块组10中除端口地址对应的交换模块以外的另一个交换模块作为目标交换模块,与目标交换模块建立连接,并将数据包传输至目标交换模块。在此基础上,可以保证在数据包的端口地址对应的交换模块不可用时,使用其他可用的交换模块完成数据包的转发,实现数据包转发的冗余,提高数据包转发的可靠性。
示例性的,数据包的转发表中可以存储MAC地址和端口地址,外接交换机通过地址解析协议(Address Resolution Protocol,ARP)可以确定MAC地址和端口地址对应的目标交换模块的IP地址。地址解析协议可以是指根据IP地址获取MAC地址的一个传输控制/网际协议(Transfer Control Protocol/Internet Protocol,TCP/IP)。在二层交换机中,可以通过MAC地址转发数据,与IP地址无关。在三层交换机中,可以通过ARP查看MAC地址与IP地址的对应关系,进而可以得到MAC地址、IP地址、端口地址的三元组对应关系。其中,二层交换机是指可以工作于开放式通信***互联参考模型(Open System Interconnection,OSI)的第二层(数据链路层)的交换机,可以识别数据帧中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中,OSI模型可以是指国际标准化组织提出的一个试图使各种计算机在世界范围内互连为网络的标准框架。三层交换机可以是指具有部分路由器功能的交换机,工作在OSI模型的第三层(网络层),三层交换机的最重要目的是加快大型局域网内部的数据交换,所具有的路由功能也是为这目的服务的,能够做到一次路由,多次转发。
示例性的,外接交换机在接收到数据包以后,首先会记录数据包对应的MAC地址和端口地址到转发表中,然后检查自己的转发表是否有与MAC地址和端口地址的匹配条目,如果有,则会根据转发表中的匹配条目将数据包转发给相应的目标交换模块。
可选的,该数据包转发***还包括:防火墙设备,防火墙设备分别与交换模块组以及至少一个发送端连接;防火墙设备被配置为在验证任一发送端的数据包合法时,将数据包传输至交换模块组。
其中,防火墙设备可以是指由软件和硬件设备组合而成,在内部网和外部网之间、专用网与公共网之间的界面上可以构造保护屏障的设备。本实施例对防火墙的类型不作限定,只要能构造保护屏障即可,如可以是应用层防火墙、链路层防火墙、物理层防火墙等。
本实施例对至少一个防火墙设备验证发送端发送的数据包合法的方式此处不作限定,如可以是防火墙设备通过检查数据包地址来决定是否允许数据包进入本地网的防火墙;又如,防火墙设备只允许符合特定规则的封包通过,其余的一概禁止穿越防火墙,这些规则通常可以经由管理员定义或修改。当防火墙设备验证发送端发送的数据包合法时,将数据包转发至交换模块组10,或者将数据包先转发至外接交换机,再由外接交换机转发至交换模块组10。在此基础上,可以提高数据包转发的安全性。
图3是根据本发明实施例一提供的一种数据包转发过程的示意图,如图3所示,该***包括:四个发送端、两个外接交换机40、交换模块组10以及两个接收端30;其中,四个发送端分别为发送端201、发送端202、发送端203和发送端204;交换模块组10中包括两个交换模块,分别为交换模块101和交换模块102,两个交换模块之间通过网线12级联;两个接收端30分别为接收端101和接收端102;两个外接交换机40分别为外接交换机401和外接交换机402。该***还包括两个防火墙设备50,分别为防火墙设备501和防火墙设备502。
其中,不同的接收端30可以有不同的用途,例如可用于测试不同项目或功能,例如接收端101可以为网管服务器,接收端102可以为Web服务器。不同接收端30之间互相独立,交换模块组10可以与根据转发表与相应的接收端30通信。
交换模块101和交换模块102可以是型号相同且端口数量一致的交换模块。
外接交换机401和外接交换机402可以是型号相同的交换机,用于扩展连接多个发送端。
本实施例中,对发送端的类型不作限定,如可以是各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、大型计算机、和其它适合的计算机;对防火墙设备的类型不作限定,两个防火墙设备可以相同,也可以不同,只要可以构造保护屏障即可。
如图3所示,四个发送端的IP地址分别为192.168.1.152、192.168.1.169、11.99.78.3和11.99.78.4;其中,有两个发送端(发送端203和发送端204)需要经过防火墙设备501和防火墙设备502才能与外接交换机401通信;防火墙设备501的IP地址可以为端口1:192.168.4.254、端口2:11.99.78.1,防火墙设备502的IP地址为端口1:192.168.1.250、端口2:192.168.4.253;外接交换机401的IP地址为192.168.1.244,外接交换机402的IP地址为192.168.1.243;交换模块101的IP地址为192.168.1.241,交换模块102的IP地址为192.168.1.242;接收端101的IP地址为192.168.1.50,接收端102的IP地址为192.168.1.10。
如下是一种数据包由发送端203到接收端101的过程:
发送端203向防火墙设备501发送数据包,防火墙设备501的IP地址中的11.99.78.1与发送端203的IP地址11.99.78.3为同一网段,防火墙设备501接收发送端203发送的数据包。
防火墙设备501的IP地址中的192.168.4.254和防火墙设备502的IP地址中的192.168.4.253为同一网段,故防火墙设备501可以将数据包发送至防火墙设备502并被防火墙设备502接收。
防火墙设备502的IP地址中的192.168.1.250和外接交换机401的IP地址192.168.1.244为同一网段,随即将数据包转发给外接交换机401并被外接交换机401接收。
外接交换机401的IP地址和外接交换机402的IP地址192.168.1.243为同一网段,随即将数据包转发给外接交换机402并被外接交换机402接收。
交换模块组10中的交换模块101与交换模块102通过协商的方式,根据所述端口地址所属的端口地址范围确定目标交换模块与备份交换模块,目标主交换模块为交换模块101,则外接交换机402将数据包发送至交换模块101;目标主交换模块为交换模块102,则外接交换机402将数据包发送至交换模块102。
以数据包关联的端口地址相对应的交换模块为交换模块101为例,交换模块101的IP地址192.168.1.241和外接交换机402的IP地址192.168.1.243为同一网段,外接交换机402将数据包发送至交换模块101,并被交换模块101接收。
交换模块101的IP地址192.168.1.241和接收端101的IP地址192.168.1.50为同一网段,随即将数据包转发给接收端101,并被接收端101接收,实现数据包由发送端203到接收端101的转发。
其中,交换模块101与交换模块102可以有相同的二层或三层转发表,可以通过级联定时同步二层或三层转发表,可以实现转发表的冗余。当外接交换机402无法访问主交换模块101时,启用备份交换模块,即交换模块102,外接交换机402可以通过物理链路重新连接至交换模块102,随即将数据包发送到交换模块102然后再转发到接收端101。交换模块101与交换模块102的内部转发表及业务都是冗余存在的,根据端口决定访问的是哪一个交换模块,这使得业务不会出现中断的情况。在此基础上当一个交换模块出现故障时,另一个交换模块会继续工作,保证了外接设备与交换模块组的连通,提高了数据包转发的可靠性。
实施例二
图4为本发明实施例二提供的一种数据包转发方法的流程图,本实施例可适用于实现数据包转发的情况,该方法可以由交换模块组来实现。需要说明的是,未在本实施例中详尽描述的技术细节可参见上述任意实施例。
如图4所示,该方法包括:
S110、接收数据包。
S120、通过所述交换模块组中的一个目标交换模块转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定。
S130、在所述目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包,其中,所述备份交换模块包括所述交换模组中除所述目标交换模块外的其他交换模块。
本实施例中,在接收到数据包时,根据数据包关联的端口地址可以确定该数据包需要由交换模块组中的哪个交换模块转发,其他交换模块可以备用。在此基础上,可以保证外接设备与交换模块组的连通,实现了数据包转发的冗余,提高了数据包转发的可靠性。
可选的,目标交换模块根据数据包关联的端口地址确定包括:
若所述端口地址对应的交换模块的端口未出现故障,则将所述端口地址对应的交换模块作为所述目标交换模块;若所述端口地址对应的交换模块的端口出现故障,则将所述备份交换模块中的任一个作为所述目标交换模块。
可选的,各所述交换模块对应不同的端口地址范围;该方法还包括:
通过协商的方式,根据所述端口地址所属的端口地址范围确定目标交换模块与备份交换模块。
可选的,各交换模块分别具有设定数量的端口,各所述交换模块的端口依次编号;所述端口地址包括端口号;该方法还包括:
将端口号对设定数量进行除法运算,并根据得到的商和余数确定目标交换模块;其中,若所述余数为0,则与所述商对应编号的交换模块为所述目标交换模块;若所述余数不为0,则所述商加1对应编号的交换模块为所述目标交换模块。
本发明实施例提供的数据包转发方法可基于上述任意实施例提供的交换模块组实现,属于同一发明构思,具备相应的功能和有益效果。
实施例三
图5为本发明实施例三提供的一种数据包转发装置的结构示意图。如图5所示,该装置包括:
数据包转发模块210,被配置以在数据包转发***接收到数据包时,使用所述交换模块组中的一个目标交换模块转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
备份模转发块220,被配置以在所述目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包,其中,所述备份交换模块为交换模组中除所述目标交换模块外的其他交换模块。
本实施例中,在接收到数据包时,根据数据包关联的端口地址可以确定该数据包需要由交换模块组中的哪个交换模块转发,其他交换模块可以备用。在此基础上,可以保证外接设备与交换模块组的连通,实现了数据包转发的冗余,提高了数据包转发的可靠性。
可选的,目标交换模块根据数据包关联的端口地址确定,包括:
若端口地址对应的交换模块的端口未出现故障,则将端口地址对应的交换模块作为目标交换模块;若端口地址对应的交换模块的端口出现故障,则将备份交换模块中的任一个作为目标交换模块。
可选的,各交换模块对应不同的端口地址范围;
该装置还包括:协商模块,被配置为:通过协商的方式,根据端口地址所属的端口地址范围确定目标交换模块与备份交换模块。
可选的,各所述交换模块分别具有设定数量的端口,各所述交换模块的端口依次编号;所述端口地址包括端口号;
所述目标交换模块根据所述端口号对所述设定数量进行除法运算得到的商和余数确定;
其中,若所述余数为0,则与所述商对应编号的交换模块为所述目标交换模块;若所述余数不为0,则所述商加1对应编号的交换模块为所述目标交换模块。
本发明实施例提供的数据包转发装置与上述任意实施例提供的数据包转发方法属于同一发明构思,具备相应的功能和有益效果。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现上述任意实施例所述的数据包转发方法。
在一些实施例中,数据包转发方法可被实现为计算机指令,其被有形地包含于计算机可读存储介质。在一些实施例中,计算机指令的部分或者全部可以经由ROM和/或通信单元而被载入和/或安装到交换模块组上。当计算机指令加载到RAM并由处理器执行时,可以执行上文描述的方法的一个或多个步骤。备选地,在其他实施例中,处理器可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据包转发方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机指令中,该一个或者多个计算机指令可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机指令可以采用一个或多个编程语言的任何组合来编写。这些计算机指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机指令当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机指令可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的计算机指令。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在交换模块组上实施此处描述的***和技术,该交换模块组具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给交换模块组。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (8)
1.一种数据包转发***,其特征在于,包括包含至少两个交换模块的交换模块组,所述至少两个交换模块之间通过网线级联;
在所述数据包转发***接收到数据包时,所述交换模块组中的一个目标交换模块被配置为转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
所述交换模组中除所述目标交换模块外的其他交换模块作为备份交换模块被配置以在所述目标交换模块出现故障时,使用所述备份交换模块中的任一个转发所述数据包;
其中,所述目标交换模块根据所述数据包关联的端口地址确定包括:
若所述端口地址对应的交换模块的端口未出现故障,则将所述端口地址对应的交换模块作为所述目标交换模块;
若所述端口地址对应的交换模块的端口出现故障,则将所述备份交换模块中的任一个作为所述目标交换模块;
数据包关联于转发表,所关联的转发表中包括用于转发数据包的交换模块的端口地址,所关联的转发表中还包括媒体访问控制MAC地址;
所述***还包括:外接交换机,所述外接交换机分别与所述交换模块组以及至少一个发送端连接;
所述外接交换机被配置为在接收到任一发送端的数据包时,与所述目标交换模块建立连接,并将所述数据包传输至所述目标交换模块;所述外接交换机通过地址解析协议ARP,确定所接收数据包关联的转发表中的MAC地址和端口地址对应的交换模块的互联网协议IP地址。
2.根据权利要求1所述的***,其特征在于,各所述交换模块对应不同的端口地址范围;
各所述交换模块还被配置为:通过协商的方式,根据所述端口地址所属的端口地址范围确定所述目标交换模块与所述备份交换模块;
其中,所述目标交换模块为包含与数据包的端口地址相对应的端口的交换模块,所述备份交换模块为交换模块组中除目标交换模块以外的其他交换模块。
3.根据权利要求1所述的***,其特征在于,各所述交换模块分别具有设定数量的端口,各所述交换模块的端口依次编号;所述端口地址包括端口号;
所述目标交换模块根据所述端口号对所述设定数量进行除法运算得到的商和余数确定;
其中,若所述余数为0,则与所述商对应编号的交换模块为所述目标交换模块;若所述余数不为0,则所述商加1对应编号的交换模块为所述目标交换模块。
4.根据权利要求1所述的***,其特征在于,还包括:防火墙设备,所述防火墙设备经所述外接交换机与所述交换模块组连接,以及所述防火墙设备与至少一个发送端连接;
所述防火墙设备被配置为在验证任一发送端的数据包合法时,将所述数据包经所述外接交换机传输至所述交换模块组。
5.一种数据包转发方法,其特征在于,应用于权利要求1-4中任一项所述的数据包转发***所包括的交换模块组,所述交换模块组包括至少两个交换模块,所述至少两个交换模块之间通过网线级联;所述方法包括:
接收数据包;
通过所述交换模块组中的一个目标交换模块转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
在所述目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包,其中,所述备份交换模块包括所述交换模组中除所述目标交换模块外的其他交换模块。
6.根据权利要求5所述的方法,其特征在于,所述目标交换模块根据所述数据包关联的端口地址确定,包括:
若所述端口地址对应的交换模块的端口未出现故障,则将所述端口地址对应的交换模块作为所述目标交换模块;
若所述端口地址对应的交换模块的端口出现故障,则将所述备份交换模块中的任一个作为所述目标交换模块。
7.一种数据包转发装置,其特征在于,应用于权利要求1-4中任一项所述的数据包转发***所包括的交换模块组,所述交换模块组包含至少两个通过网线级联的交换模块,所述装置包括:
数据包转发模块,被配置以在数据包转发***接收到数据包时,使用所述交换模块组中的一个目标交换模块转发所述数据包,其中,所述目标交换模块根据所述数据包关联的端口地址确定;
备份模转发块,被配置以在所述目标交换模块出现故障时,使用备份交换模块中的任一个转发所述数据包,其中,所述备份交换模块为交换模组中除所述目标交换模块外的其他交换模块。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求5-6中任一项所述的数据包转发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210750876.2A CN114979034B (zh) | 2022-06-28 | 2022-06-28 | 一种数据包转发***、方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210750876.2A CN114979034B (zh) | 2022-06-28 | 2022-06-28 | 一种数据包转发***、方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114979034A CN114979034A (zh) | 2022-08-30 |
CN114979034B true CN114979034B (zh) | 2024-03-26 |
Family
ID=82968198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210750876.2A Active CN114979034B (zh) | 2022-06-28 | 2022-06-28 | 一种数据包转发***、方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114979034B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756027B1 (en) * | 2007-06-13 | 2010-07-13 | Juniper Networks, Inc. | Automatic configuration of virtual network switches |
CN110753010A (zh) * | 2019-10-22 | 2020-02-04 | 新华三信息安全技术有限公司 | 一种报文转发方法及装置 |
CN111901133A (zh) * | 2020-08-07 | 2020-11-06 | 北京东土军悦科技有限公司 | 一种组播切换方法、装置、网络设备和存储介质 |
CN112511419A (zh) * | 2020-11-06 | 2021-03-16 | 北京东土军悦科技有限公司 | 一种分布式转发*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10581758B2 (en) * | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
-
2022
- 2022-06-28 CN CN202210750876.2A patent/CN114979034B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756027B1 (en) * | 2007-06-13 | 2010-07-13 | Juniper Networks, Inc. | Automatic configuration of virtual network switches |
CN110753010A (zh) * | 2019-10-22 | 2020-02-04 | 新华三信息安全技术有限公司 | 一种报文转发方法及装置 |
CN111901133A (zh) * | 2020-08-07 | 2020-11-06 | 北京东土军悦科技有限公司 | 一种组播切换方法、装置、网络设备和存储介质 |
CN112511419A (zh) * | 2020-11-06 | 2021-03-16 | 北京东土军悦科技有限公司 | 一种分布式转发*** |
Also Published As
Publication number | Publication date |
---|---|
CN114979034A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7231462B2 (en) | Method of preserving symmetrical routing in a communication system based upon a server farm | |
CN102647406B (zh) | 用于高度可实现性应用的智能集成网络安全设备 | |
US8270306B2 (en) | Fault management apparatus and method for identifying cause of fault in communication network | |
US8438307B2 (en) | Method and device of load-sharing in IRF stack | |
CN108123824B (zh) | 一种网络故障检测方法及装置 | |
CN111585800B (zh) | 基于虚拟私有云的网关节点的配置方法、装置和介质 | |
US7475162B2 (en) | Preserving symmetrical routing in a communication system based upon a server farm | |
US7864666B2 (en) | Communication control apparatus, method and program thereof | |
CN109474495B (zh) | 一种隧道检测方法及装置 | |
EP2775676B1 (en) | Policy based routing method and device | |
US8477598B2 (en) | Method and system for implementing network element-level redundancy | |
CN104539462B (zh) | 一种切换至灾备应用实例的方法及装置 | |
EP4020905A1 (en) | Packet transmission method, device, and system | |
EP4020904A1 (en) | Packet transmission method, device, and system | |
EP4320753A1 (en) | Passive optical network for utility infrastructure resiliency | |
US7573810B2 (en) | Avoiding deadlocks in performing failovers in communications environments | |
CN112564983B (zh) | 数据传输方法、装置、计算机***和介质 | |
CN114979034B (zh) | 一种数据包转发***、方法、装置及存储介质 | |
CN109218117B (zh) | 链路检测方法、装置及网络设备 | |
CN107659436A (zh) | 一种防止业务中断的方法及装置 | |
CN116708129A (zh) | 一种链路故障检测与快速恢复的方法、装置及存储介质 | |
US8547828B2 (en) | Method and system for implementing network element-level redundancy | |
US8553531B2 (en) | Method and system for implementing network element-level redundancy | |
CN112637054B (zh) | Ip承载网的组网优化方法、装置、计算设备和存储介质 | |
CN113037622A (zh) | 一种防止bfd震荡的***及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |