CN117857484A - 报文转发方法、通信设备及存储介质 - Google Patents
报文转发方法、通信设备及存储介质 Download PDFInfo
- Publication number
- CN117857484A CN117857484A CN202211210587.XA CN202211210587A CN117857484A CN 117857484 A CN117857484 A CN 117857484A CN 202211210587 A CN202211210587 A CN 202211210587A CN 117857484 A CN117857484 A CN 117857484A
- Authority
- CN
- China
- Prior art keywords
- arp
- physical port
- port
- physical
- virtual port
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 87
- 238000004891 communication Methods 0.000 title claims abstract description 17
- 238000003860 storage Methods 0.000 title claims abstract description 10
- 230000000694 effects Effects 0.000 abstract description 22
- 238000012217 deletion Methods 0.000 description 18
- 230000037430 deletion Effects 0.000 description 18
- 230000004044 response Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 230000002159 abnormal effect Effects 0.000 description 12
- 230000010355 oscillation Effects 0.000 description 10
- 230000002776 aggregation Effects 0.000 description 8
- 238000004220 aggregation Methods 0.000 description 8
- 238000005520 cutting process Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000006855 networking Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005111 flow chemistry technique Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000005641 tunneling 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/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种报文转发方法、通信设备及存储介质,该方法包括:在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。由此,在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,从而可以快速完成ARP条目收敛,以达到网络快速切换的效果,提升全网的路由性能。
Description
技术领域
本申请涉及网络技术领域,尤其涉及一种报文转发方法、通信设备及存储介质。
背景技术
一般情况下,网络设备的ARP(Address Resolution Protocol,地址解析协议)条目标识了网络设备的主机路由,其出口指向此网络设备的一个转发路径,此路径包含了物理端口、对端主机MAC(Media Access Control,介质访问控制)地址、Vlan(Virtual LocalArea Network,虚拟局域网)等信息。
目前,在网络设备与其相关的转发路径的物理端口失效时,对于物理端口失效之后相关ARP条目的收敛过程需要逐条处理,其过程较为耗时。而在一些场景中,需要对物理端口失效以后的ARP条目进行快速收敛,以达到网络快速切换的效果,而目前的ARP收敛技术,尚不能满足此类场景的快速收敛的要求。
发明内容
有鉴于此,本申请实施例的主要目的在于提出一种报文转发方法、通信设备及存储介质,旨在网络设备的物理端口失效的情况下,快速完成ARP条目收敛,以达到网络快速切换的效果,提高网络设备对网络异常情况的响应速度,提升全网的路由性能。
本申请实施例提供一种报文转发方法,所述方法应用于网络设备,所述方法包括:
在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
本申请实施例还提供一种通信设备,所述通信设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的报文转发程序,所述报文转发程序被所述处理器执行时实现如上所述的报文转发方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有报文转发程序,所述报文转发程序被处理器执行时实现如上所述的报文转发方法。
本申请实施例提出的一种报文转发方法、通信设备及存储介质,在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。由此,通过预先配置虚拟端口表,并在虚拟端口表配置网络设备的物理端口与虚拟端口的对应关系,并将ARP条目中的端口信息预先配置为该ARP条目对应的物理端口所对应的虚拟端口信息,在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,从而可以快速完成ARP条目收敛,以达到网络快速切换的效果。
相比现有技术中一般的ARP处理方法,本申请实施例通过上述技术方案,使用虚拟端口(VP)来替代物理端口写入ARP表项中,既可以完成在物理端口失效时,针对ARP表项的一次性操作,达到ARP条目的快速收敛和快速流量切断,又可以针对端口震荡的情况完成ARP表项的流量处理且不引起大量路由震荡。是一种非常高效且简单的端口失效时的ARP处理方式。因此,运用此方法可以提高网络设备对网络异常情况的响应速度,提升全网的路由收敛速度,提升全网的路由性能。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请报文转发方法一实施例的流程示意图;
图2为本申请报文转发方法另一实施例的流程示意图;
图3为本申请报文转发方法又一实施例的流程示意图;
图4为本申请实施例中网络设备的内部流程示意图;
图5为本申请实施例的实际组网应用场景示意图;
图6为本申请报文转发装置一实施例的功能模块示意图;
图7为本申请通信设备一实施例的功能模块示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
可选地,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,可选地,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当……时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。本申请使用的术语“或”、“和/或”、“包括以下至少一个”等可被解释为包括性的,或意味着任一个或任何组合。例如,“包括以下至少一个:A、B、C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A和B和C”,再如,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A和B和C”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
应该理解的是,虽然本申请实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
可选地,在本文中,采用了诸如S10、S100等步骤代号,其目的是为了更清楚简要地表述相应内容,不构成顺序上的实质性限制。
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
在本申请实施例中,通信设备可以为服务器、终端设备,也可以为基站设备等,需要根据具体上下文来加以确定本申请。
后续描述中将以服务器为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本申请的实施方式的构造也能够应用于其他固定类型的终端。
本申请实施例的主要解决方案是:在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。由此,通过预先配置虚拟端口表,并在虚拟端口表配置网络设备的物理端口与虚拟端口的对应关系,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,从而可以快速完成ARP条目收敛,以达到网络快速切换的效果,提高网络设备对网络异常情况的响应速度,提升全网的路由性能。
本申请实施例涉及的技术术语:
VP,Virtual Port,虚拟端口;
ARP,Address Resolution Protocol,地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
ARP表:指主机路由表,ARP表中包括若干ARP条目。ARP表中的ARP条目标识了网络设备的主机路由,其出口指向此网络设备的一个转发路径。本申请实施例中,此路径包含了与物理端口对应的VP、对端主机MAC地址、Vlan等网络设备的路由信息。
ARP条目的收敛:ARP条目响应网络设备与其相关的转发路径的物理端口失效的收敛,所谓收敛,即在物理端口失效之后,与之相关的ARP条目全部删除,并且通过路由协议通知邻居设备相关的路由删除。
MC-LAG,Multi-Chassis Link Aggregation Group,跨设备链路聚合组:进入移动互联时代后,互联网与人们的日常生活越发密切,在给人们带来网络便捷体验的同时,也给网络带来了海量数据的交互处理,对网络的带宽和可靠性提出了更高要求。而传统的链路聚合技术仅限于一对一的两台设备之间,不能实现一对多台设备之间的链路聚合。于是,为了提供更可靠的网络,MC-LAG产生了。当一台接入设备(可以是服务器或交换机)与上层两台网络设备A和B对接时,可采用MC-LAG技术组成跨设备链路聚合组。
MC-LAG的基本思想是让两台网络设备A、B以同一状态与接入设备进行链路聚合,在接入设备看来,就如同与同一台网络设备建立了链路聚合关系。这样就将链路聚合技术从一对一的设备对接,扩展到了可以同时接入对端两台设备,并组成了一个双活系统。
VLAN,Virtual Local Area Network,虚拟局域网,是对连接到的第二层交换机端口的网络用户的逻辑分段,不受网络用户的物理位置限制而根据用户需求进行网络分段。一个VLAN可以在一个交换机或者跨交换机实现。VLAN可以根据网络用户的位置、作用、部门或者根据网络用户所使用的应用程序和协议来进行分组。基于交换机的虚拟局域网能够为局域网解决冲突域、广播域、带宽问题。
MAC地址,Media Access Control地址,别称局域网地址、以太网地址、物理地址,介质访问控制地址,是用来确认网络设备位置的位址。MAC地址的长度为48位(6个字节),通常表示为12个16进制数。MAC地址用于在网络中唯一标示一个网卡,一台设备若有一个或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址。通过MAC地址过滤技术可以保证授权的MAC地址能对网络资源进行访问。
VPN,Virtual Private Network,虚拟专用网络,VPN是一种用于连接中、大型企业或团体与团体间的私人网络的通讯方法,它利用隧道协议来达到保密、发送端认证、消息准确性等私人消息安全效果。VPN技术可以用不安全的网络来发送可靠、安全的消息,可通过服务器、硬件、软件等多种方式实现。
本申请实施例考虑到,相关技术中,ARP条目响应网络设备与其相关的转发路径的物理端口失效的收敛过程如下:
首先,网络设备感知端口出现异常,通知CPU物理端口异常;
然后,CPU根据出现异常的物理端口,通知协议栈,协议栈根据异常的物理端口计算需要删除的ARP所有表项(即ARP条目),一条一条通知网络设备进行ARP表项的硬件删除;
最后,协议栈得到硬件删除成功的消息,通过路由协议将被删除的ARP表项通告给其他网络设备。
由此可见,在现有技术中,对于物理端口失效之后的相关的ARP条目的收敛是一个比较耗时的过程,而且其处理与ARP的条目相关,ARP条目越多处理时间越慢。而在一些场景中,需要对物理端口失效以后的ARP条目进行快速收敛,以达到网络快速切换的效果,例如在MCLAG(Multi-Chassis Link Aggregation Group,跨设备链路聚合组)的网络切换场景中,就会出现类似的需求,而目前的ARP收敛技术,尚不能满足此类场景的快速收敛的要求。
因此,本申请实施例提出一种解决方案,在网络设备的物理端口失效的情况下,可以快速将所有与之相关的ARP条目一次性收敛,利用此方法不需要再针对ARP条目一条一条的处理,而是根据物理端口直接处理所有与之相关的ARP条目。因此,运用此方法可以快速收敛与失效物理端口相关的所有ARP条目,并且快速通知邻居网络设备。从而提高网络设备对网络异常情况的响应速度,提升全网的路由收敛速度,提升全网的路由性能。
具体地,参照图1,图1为本申请报文转发方法一实施例的流程示意图。
如图1所示,本申请一实施例提出一种报文转发方法,所述方法应用于网络设备,所述方法包括:
步骤S101,在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
在本实施例中,网络设备可以是交换机或者路由器等,网络设备的内部处理流程可以参照图4所示。
本实施例报文转发方法的应用环境可以包括:交换机或者路由器在ARP条目需要对物理端口的变化进行快速收敛响应的场景中,比如,应用于MCLAG切换、核心网对接等场景。其中,实际组网使用场景可以参照图5所示。
本实施例方法的执行主体可以是网络设备。
在本实施例中,网络设备预先配置有虚拟端口表,其中,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口的对应关系。
此外,在本实施例中,下发给网络设备的ARP表中的ARP条目标识了网络设备的主机路由,其出口指向此网络设备的一个转发路径,此路径包含了与物理端口对应的虚拟端口、对端主机MAC地址、Vlan等网络设备的路由信息。
也就是说,本实施例中,ARP条目中的端口信息为所述物理端口对应ARP条目对应的物理端口所对应的虚拟端口信息,即将虚拟端口对应的物理端口的ARP条目中的物理端口信息替换为了虚拟端口信息。
其中,虚拟端口表可以是VP表,也可以是类似于VP的可以绑定物理端口并且可以在转发时查找到物理端口的其他表项,本实施例以VP表进行举例。
本申请实施例的主要思想,是利用网络设备的虚拟端口VP资源,与物理端口一一对应,在ARP处理的时候,不再使用真实物理端口写入ARP表,而是在ARP表中写入VP,在VP表中再去对应真实物理端口的信息,在网络设备的物理端口失效需要进行ARP条目收敛的时候,不再一条一条的对ARP条目进行处理,而是直接处理VP表,这样就可以快速对所有与此失效物理端口相关的ARP条目进行收敛处理,从而达到快速收敛的效果。
本实施例考虑到:网络设备中一般会存在VP资源,该VP资源正常情况下一般用于VPN业务。而本申请实施例利用此VP资源来管理ARP条目,从而达到物理端口失效快速收敛ARP条目的效果。
具体地,在网络设备预先配置虚拟端口表(以下以VP表举例),并在ARP表中写入VP,不再使用真实物理端口写入ARP表。
其中,所述VP表包括所述网络设备的物理端口与虚拟端口(以下简称VP)的对应关系。
也就是说,该VP表中包括VP以及与所述VP一一对应的物理端口信息,其中,所述物理端口信息可以包括物理端口ID。
在ARP表中写入有ARP条目的出口路径。
ARP表中的ARP条目标识了网络设备的主机路由,其出口指向此网络设备的一个转发路径,此路径包含了与物理端口对应的VP、对端主机MAC地址、Vlan等网络设备的路由信息。
所述ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
在具体实现时,首先,将网络设备的VP与网络设备的物理端口一一对应起来,具体可以在VP表中,写入物理端口的对应端口ID。
然后,在下发ARP表项的时候,在网络设备的硬件中,使用VP取代现有技术使用物理端口写入ARP表的方法,即ARP条目的出口路径不再写成:物理端口+主机MAC+vlan,而是写成:VP+主机MAC+vlan。即,在ARP表项中写入VP,不再使用真实物理端口写入ARP表,同时,在VP表中配置虚拟端口VP与物理端口的对应关系。
由于在VP表中,对应了VP与物理端口的关系,因此,在网络设备转发报文的时候,报文通过ARP条目查找到出口,发现出口是一个VP的时候,就会在VP表中查找其真实出口,从而找到真实的物理端口进行转发,这样使得报文的转发仍然可以按照原有的正确路径进行。
在本实施例中,在网络设备感知到物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口的对应关系。这样处理之后,在物理端口出现失效的时候,就不需要对ARP条目进行一条一条的处理。
其中,在网络设备的物理端口失效的情况下,在网络设备直接删除VP表中对应的物理端口信息之后,所有与此物理端口相关的ARP条目的VP将无法在VP表中查找到真实物理出口,因此所有流量立刻中断,ARP条目无法转发流量,报文无法转发。
其中,进一步地,作为一种实施方式,在网络设备直接删除VP表中对应的物理端口信息之后,通过路由协议,可以将与所述物理端口有关的ARP条目对所述网络设备的邻居设备进行删除通告,由此,通过通告,可以告知网络设备的邻居设备对应的物理端口已经失效,与失效物理端口有关的ARP条目需要全部删除,网络设备的邻居设备则可以以将所有与此失效物理端口相关的路由全部删除,从而在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,快速完成ARP条目收敛,达到网络快速切换的效果。
进一步地,作为一种实施方式,在网络设备直接删除VP表中对应的物理端口信息之后,通知CPU已成功删除VP表中对应的物理端口信息,CPU立刻触发路由协议通告,将网络协议中与此失效物理端口有关的所有ARP条目对网络设备的邻居进行删除通告。
需要说明的是,此时网络设备的CPU快速的发出了路由通告,但网络设备中硬件的ARP条目并未被真正的删除,硬件中的ARP条目仍然存在,只是由于其出口VP已经失效,因此ARP条目目前无法转发流量。因此,在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,就可以快速完成ARP条目收敛,达到网络快速切换的效果。
需要说明的是,此时网络设备中真正的硬件ARP条目,则可以根据路由协议进行逐条的同步删除,由于已经完成了路由通告和底层硬件的ARP条目的转发中断,因此,此时硬件中的ARP条目的删除已经不再影响整个网络的快速收敛速度了。
根据以上方案可以看出,与现有技术不同,本实施例的路由处理方案,不再需要一个一个的处理硬件ARP条目的删除,也无需等待硬件的ARP条目删除时间,再通过网络协议通知邻居设备,而是只需要对VP做一次操作,根据此操作的结果即可操作所有的ARP条目进行删除。此操作的速度与ARP条目的数量不再有关,因此可以达到快速响应和快速收敛的效果,实际的操作结果可以达到毫秒级的收敛速度。
本实施例通过上述方案,在网络设备的物理端口失效的情况下,在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。由此,通过预先配置虚拟端口表,在虚拟端口表配置网络设备的物理端口与虚拟端口的对应关系,在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,从而可以快速完成ARP条目收敛,以达到网络快速切换的效果。
更为具体地,相比现有一般的ARP处理方法,本申请实施例通过上述技术方案,使用虚拟端口(VP)来替代物理端口写入ARP表中,既可以完成在物理端口失效时,针对ARP表的一次性操作,达到ARP条目的快速收敛和快速流量切断,又可以针对端口震荡的情况完成ARP表项的流量处理且不引起大量路由震荡。是一种非常高效且简单的端口失效时的ARP处理方式。因此,运用此方法可以提高网络设备对网络异常情况的响应速度,提升全网的路由收敛速度,提升全网的路由性能。
参照图2,图2为本申请报文转发方法另一实施例的流程示意图。
如图2所示,本申请另一实施例提出一种报文转发方法,基于上述图1所示的实施例,在上述步骤S101,在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息之后还包括:
步骤S102,通过路由协议,向所述网络设备的邻居设备发送物理端口失效的通告,以使所述邻居设备删除与失效的物理端口有关的所有ARP条目。
其中,在网络设备直接删除VP表中对应的物理端口信息之后,通过路由协议,可以将与所述物理端口有关的ARP条目对所述网络设备的邻居设备进行删除通告,由此,通过通告,可以告知网络设备的邻居设备对应的物理端口已经失效,与失效物理端口有关的ARP条目需要全部删除,网络设备的邻居设备则可以以将所有与此失效物理端口相关的路由全部删除,从而在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,快速完成ARP条目收敛,达到网络快速切换的效果。
作为一种实施方式,在网络设备直接删除VP表中对应的物理端口信息之后,通知CPU已成功删除VP表中对应的物理端口信息,CPU立刻触发路由协议通告,将网络协议中与此失效物理端口有关的所有ARP条目对网络设备的邻居进行删除通告。
进一步地,作为一种实施方式,所述方法在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息之前还可以包括:
创建用于表征虚拟端口与物理端口之间的对应关系的虚拟端口表;
将所述虚拟端口对应的物理端口的ARP条目中的物理端口信息替换为所述物理端口对应的虚拟端口信息。
进一步地,作为一种实施方式,所述方法在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息之前还可以包括:
生成第一对应关系表,所述第一对应关系表用于表征所述网络设备的物理端口对应的虚拟端口与所述物理端口的ARP条目之间的对应关系,所述第一对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息;和/或
生成第二对应关系表,所述第二对应关系表用于表征所述网络设备的物理端口与ARP条目之间的对应关系,所述第二对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
具体地,作为一种实施方式,通过路由协议,向所述网络设备的邻居设备发送物理端口失效的通告,以使所述邻居设备删除与失效的物理端口有关的所有ARP条目,可以采用如下方案:
首先,基于失效的物理端口查找所述虚拟端口表,获得对应的目标虚拟端口;
基于所述目标虚拟端口查找所述第一对应关系表,如图4所示,获得与所述目标虚拟端口对应的目标ARP条目,其中,所述第一对应关系表包括所述网络设备的物理端口对应的虚拟端口与所述物理端口的ARP条目之间的对应关系,所述第一对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息;
最后,通过路由协议,将所述目标ARP条目通告至所述网络设备的邻居设备,以使所述邻居设备删除对应的目标ARP条目。
具体地,作为另一种实施方式,通过路由协议,向所述网络设备的邻居设备发送物理端口失效的通告,以使所述邻居设备删除与失效的物理端口有关的所有ARP条目,还可以采用如下方案:
基于失效的物理端口查找所述第二对应关系表,获得与所述失效的物理端口对应的目标ARP条目,所述第二对应关系表包括所述网络设备的物理端口与ARP条目的对应关系(可以将图4所示的第一对应关系表中的VP1替换为PORT1,得到物理端口与ARP条目的对应关系的第二对应关系表),所述第二对应关系表中的ARP条目的端口信息为虚拟端口信息;
然后,通过路由协议,将所述目标ARP条目通告至所述网络设备的邻居设备,以使所述邻居设备删除对应的目标ARP条目。
具体地,作为再一种实施方式,通过路由协议,向所述网络设备的邻居设备发送物理端口失效的通告,以使所述邻居设备删除与失效的物理端口有关的所有ARP条目,还可以采用如下方案:
基于失效的物理端口查找所述虚拟端口表,获得对应的目标虚拟端口;
通过路由协议,向所述网络设备的邻居设备发送所述目标虚拟端口失效的路由通告,以使所述邻居设备根据从所述网络设备获取的所述第一对应关系表将所有与所述目标虚拟端口对应的目标ARP条目全部删除,其中,所述第一对应关系表包括所述网络设备的物理端口对应的虚拟端口与所述物理端口的ARP条目之间的对应关系,所述第一对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
具体地,如前所述,本实施例将网络设备的VP与网络设备的物理端口一一对应,并写入VP表中,同时,将VP表写入ARP表项中。即在下发ARP表项的时候,在网络设备的硬件中,使用VP取代物理端口写入ARP表项,即ARP条目的出口路径不再写成:物理端口+主机MAC+vlan,而是写成:VP+主机MAC+vlan。即,在ARP表项中写入VP表,不再使用真实物理端口写入ARP表项,同时,在VP表中配置VP与物理端口的对应关系。
由于在VP表中,对应了VP与物理端口的关系,因此,在网络设备转发报文的时候,报文通过ARP条目查找到出口,发现出口是一个VP的时候,就会在VP表中查找其真实物理端口,从而找到真实的物理端口进行转发,这样使得报文的转发仍然可以按照原有的正确路径进行。
而在物理端口出现失效的时候,网络设备直接删除VP表中对应的物理端口信息,这样所有与此失效物理端口相关的ARP条目的VP将无法在VP表中查找到真实物理端口,因此所有流量立刻中断,ARP条目无法转发流量,报文无法转发。
在本实施例中,对于网络设备的邻居设备而言,需要及时了解网络设备的ARP表项相关路由信息。
因此,本实施例网络设备在获得ARP表项后,通过路由协议,向所述网络设备的邻居设备发送相关的ARP条目以及对应的VP的路由通告,以使所述邻居设备获得该VP与ARP条目的关联关系表,即第一对应关系表。
后续,网络设备的邻居设备在接收到网络设备发送的目标虚拟端口失效的路由通告后,邻居设备可以根据从网络设备获取的第一对应关系表将所有与所述目标虚拟端口对应的目标ARP条目全部删除。
因此,如果邻居设备支持把收到的VP信息与ARP条目关联,则网络设备可以在通告ARP条目删除之前,直接先对邻居设备通告VP失效,此时,邻居设备则可以以更快的速度将所有与此VP相关的ARP条目全部删除。这样邻居设备也可以做到更快速度撤销与此相关的所有路由。
也就是说,网络设备在通过路由协议对外通告这些ARP表项相关的路由信息的时候,可以将此VP信息与ARP表项相关信息同步通告出去,这样,在邻居设备上,也可以形成这个VP与路由相关的对应条目。这样当网络设备的物理端口失效时,网络设备可以立刻发出一个VP失效的消息给邻居设备,邻居设备可以根据此VP信息立刻将与此VP相关的路由条目全部删除。从而避免邻居设备不必要的路由转发操作,提高网络设备对网络异常情况的响应速度,提升全网的路由收敛速度,提升全网的路由性能。
通告上述方案可知,在网络设备直接删除VP表中对应的物理端口信息之后,通过路由协议,可以将与所述物理端口有关的ARP条目对所述网络设备的邻居设备进行删除通告,通过通告,可以告知网络设备的邻居设备对应的物理端口已经失效,与失效物理端口有关的ARP条目需要全部删除,网络设备的邻居设备则可以以将所有与此失效物理端口相关的路由全部删除,从而在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,快速完成ARP条目收敛,达到网络快速切换的效果。
需要说明的是,此时网络设备的CPU快速的发出了路由通告,但网络设备中硬件的ARP条目并未被真正的删除,硬件中的ARP条目仍然存在,只是由于其出口VP已经失效,因此ARP条目目前无法转发流量。因此,在网络设备的物理端口失效的情况下,只需要在ARP表项中删除对应的物理端口信息,而无需逐条处理ARP条目,就可以快速完成ARP条目收敛,达到网络快速切换的效果。
需要说明的是,此时网络设备中真正的硬件ARP条目,则可以根据路由协议进行逐条的同步删除,由于已经完成了路由通告和底层硬件的ARP条目的转发中断,因此,此时硬件中的ARP条目的删除已经不再影响整个网络的快速收敛速度了。
根据以上方案可以看出,与现有技术不同,本实施例的路由处理方案,不再需要一个一个的处理硬件ARP条目的删除,也无需等待硬件的ARP条目删除时间,再通过网络协议通知邻居设备,而是只需要对VP做一次操作,根据此操作的结果即可操作所有的ARP条目进行删除。此操作的速度与ARP条目的数量不再有关,因此可以达到快速响应和快速收敛的效果,实际的操作结果可以达到毫秒级的收敛速度。
参照图3,图3为本申请报文转发方法又一实施例的流程示意图。
如图3所示,本申请又一实施例提出一种报文转发方法,基于上述图1所示的实施例,所述方法还包括:
步骤S103,通过路由协议,将与失效的物理端口对应的目标ARP条目逐条删除。
相比上述图1所示的实施例,本实施例还包括:网络设备删除失效物理端口有关的ARP条目的方案。
具体地,作为一种实施方式,在网络设备感知到物理端口失效的情况下,在所述网络设备的ARP表项中删除VP表中对应的物理端口信息。
其中,网络设备在ARP表项中删除VP表中对应的物理端口信息后,通知CPU已成功删除VP表中对应的物理端口信息,CPU立刻触发路由协议通告,将网络协议中与此失效物理端口有关的所有ARP条目对网络设备的邻居进行删除通告。
需要说明的是,此时网络设备的CPU快速的发出了路由通告,但网络设备中硬件的ARP条目并未被真正的删除,硬件中的ARP条目仍然存在,只是由于其出口VP已经失效,因此ARP条目目前无法转发流量。
在本实施例中,网络设备会根据路由协议对所述网络设备中与该失效物理端口有关的ARP条目进行删除。
作为一种实施方式,可以在网络设备上将ARP条目与VP的关系存放成一张快速检索的对应关系表(即本实施例所称第一对应关系表),以用于软件的快速删除处理。
具体实现如下:
首先,基于失效的物理端口查找所述虚拟端口表,获得对应的目标虚拟端口;
然后,基于所述目标虚拟端口查找所述第一对应关系表,获得与所述目标虚拟端口对应的目标ARP条目,所述第一对应关系表包括所述网络设备的物理端口对应的虚拟端口与所述物理端口的ARP条目之间的对应关系,所述第一对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息;
最后,通过路由协议,将所述目标ARP条目逐条删除。
因此,如果存在VP与ARP条目的对应表,则处理速度更快,网络设备可以将此VP对应的所有ARP条目在网络协议中快速删除,并且通过网络协议通告给所有邻居设备。
此外,作为另一种实施方式,也可以在网络设备上将ARP条目与物理端口的关系存放成一张对应关系表(即本实施例所称第二对应关系表),便于网络设备基于该ARP条目与物理端口的对应关系表,通过路由协议对所述网络设备中与该失效物理端口有关的ARP条目进行删除。
具体实现如下:
首先,基于失效的物理端口查找所述第二对应关系表,获得与所述失效的物理端口对应的目标ARP条目,所述第二对应关系表包括所述网络设备的物理端口与ARP条目的对应关系,所述第二对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息;
然后,通过路由协议,将所述目标ARP条目逐条删除。
根据以上方案可以看出,与现有技术不同,本实施例的路由处理方案,不再需要一个一个的处理硬件ARP条目的删除,也无需等待硬件的ARP条目删除时间,再通过网络协议通知邻居设备,而是只需要对VP做一次操作,根据此操作的结果即可操作所有的ARP条目进行删除。此操作的速度与ARP条目的数量不再有关,因此可以达到快速响应和快速收敛的效果,实际的操作结果可以达到毫秒级的收敛速度。
本实施例通过上述方案,在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息;同时,可以根据路由协议对所述网络设备中与失效的物理端口有关的ARP条目进行删除。由此,通过在ARP表项中预先配置虚拟端口表,并在虚拟端口表配置网络设备的物理端口与虚拟端口的对应关系,这样,使用虚拟端口(VP)来替代物理端口写入ARP表项中,既可以完成在物理端口失效时,只需要在ARP表项中删除对应的物理端口信息,针对ARP表项的一次性操作,而无需逐条处理ARP条目,达到ARP条目的快速收敛和快速流量切断,提高网络设备对网络异常情况的响应速度,提升全网的路由收敛速度,又可以针对端口震荡的情况完成ARP表项的流量处理且不引起大量路由震荡,提升全网的路由性能。
进一步地,作为一种实施例,所述方法还可以包括:
步骤S104,在接收到报文转发请求的情况下,提取所述报文转发请求携带的目的IP地址;
步骤S105,根据所述目的IP地址确定对应的ARP条目;
步骤S106,确定所述对应的ARP条目所对应的目的虚拟端口;
步骤S107,基于所述目的虚拟端口从所述虚拟端口表中查找对应的目的物理端口ID;
步骤S108,在查找到对应的目的物理端口ID的情况下,通过对应的目的物理端口转发所述报文,在未查找到对应的目的物理端口ID的情况下,不转发所述报文。
具体地,如前所述,本实施例将网络设备的VP与网络设备的物理端口一一对应,并写入VP表中。在下发ARP表项的时候,在网络设备的硬件中,使用VP取代物理端口写入ARP表项,即ARP条目的出口路径不再写成:物理端口+主机MAC+vlan,而是写成:VP+主机MAC+vlan。即不再使用真实物理端口写入ARP表项,同时在ARP表项中写入VP表,在VP表中配置VP与物理端口的对应关系。
当网络设备接收到报文转发请求时,提取所述报文转发请求携带的目的IP地址;根据所述目的IP地址确定对应的ARP条目。
在所述网络设备的ARP表项中查找ARP条目的出口路径:VP+主机MAC+vlan。
根据所述ARP条目的出口路径确定对应的VP。
由于在VP表中,对应了VP与物理端口的关系,因此,在网络设备转发报文的时候,通过ARP条目查找到报文的出口路径,发现出口是一个VP的时候,就会在VP表中查找其真实物理端口,比如在VP表中查找其真实物理端口ID。
其中,作为一种情况,在从VP表中查找对应的物理端口ID时,若查找到对应的物理端口ID,说明物理端口并未失效,则通过对应的物理端口转发所述报文,从而通过上述方案找到真实的物理端口进行报文转发,这样在修改了ARP表项配置的情况下,使得报文的转发仍然可以按照原有的正确路径进行。
其中,作为另一种情况,在从VP表中查找对应的物理端口ID时,若未查找到对应的物理端口ID,说明该物理端口已失效,VP表中对应的物理端口信息已被删除,则不转发所述报文。
也就是说,在物理端口出现失效的时候,网络设备直接删除VP表中对应的物理端口信息,这样所有与此失效物理端口相关的ARP条目的VP将无法在VP表中查找到真实物理端口,因此所有流量立刻中断,ARP条目无法转发流量,报文无法转发。
需要说明的是,本实施例方案可以根据实际情况,与上述各实施例合理组合实施,在此不再详述。
进一步地,作为一种实施例,在将目标ARP条目逐条删除之前,所述方法还可以包括:
步骤S109,在所述网络设备失效的物理端口重新有效的情况下,在所述虚拟端口表中对应添加有效的物理端口信息;
在检测到所述网络设备失效的物理端口持续无效的情况下,执行步骤:通过路由协议,将与失效的物理端口对应的目标ARP条目逐条删除。
具体地,在网络设备之前失效的物理端口重新有效的情况下,网络设备可以在所述ARP表项的VP表中对应添加有效的物理端口信息。
也就是说,本申请实施例可以在失效的时候,直接删除VP对应的物理端口,如果在将目标ARP条目逐条删除之前,物理端口重新有效,则直接在VP表中添加此有效的物理端口即可,只需要一次操作,可以使得所有与之相关的ARP重新有效或失效,从而大幅减少对CPU的消耗。
进一步地,作为一种实施例,所述方法还可以包括:
在所述ARP条目对应的第一物理端口变更为第二物理端口的情况下,将所述ARP条目中的端口信息替换为所述第二物理端口对应的虚拟端口信息。
也就是说,如果ARP条目的出口路径的物理端口信息出现变化,也同样需要将VP同步的进行更新,与一般的VP使用的效果不同的是(一般VPN中使用VP,出口变化是直接改变VP表中的出口),此处不是将VP表中VP对应的物理端口改掉,而是要将ARP条目中的VP变成新的物理端口所对应的VP,即对VP进行更新。
根据以上方案可以看出,与现有技术不同,本申请实施例的路由处理方案,在网络设备的物理端口失效的情况下,不再需要一个一个的处理硬件ARP条目的删除,也无需等待硬件的ARP条目删除时间,再通过网络协议通知邻居设备,而是只需要对VP做一次操作,根据此操作的结果即可对所有的ARP条目进行删除。此操作的速度与ARP条目的数量不再有关,因此可以达到快速响应和快速收敛的效果,实际的操作结果可以达到毫秒级的收敛速度。
额外的,如果此时端口出现震荡,在短时间内连续的出现有效和无效,在以往的技术中,会出现大量的CPU损耗,因为会出现大量的针对硬件的ARP删除和添加操作,而本申请实施例则可以在失效的时候,直接删除VP对应的物理端口,如果物理端口重新有效,则直接在VP表中添加此有效的物理端口即可,只需要一次操作,可以使得所有与之相关的ARP重新有效或失效,从而大幅减少对CPU的消耗。
而最终硬件中存在的这些ARP条目,则可根据网络在稳态后的协议计算结果,再与协议计算结果做最后的比对,并进行删除或者添加,以达到协议与硬件的ARP条目相同的效果。具体的实现效果可以参照图4所示。
以下结合图4通过具体实例对本实施例方案进行详细阐述:
主要分两个步骤进行说明。
假设存在ARP条目:
10.1.1.1路径出口:物理端口port1,MAC:00:11:22:33:44:55,vlan 100;
10.1.1.2路径出口:物理端口port1,MAC:00:11:22:33:44:66,vlan 100;
10.1.1.3路径出口:物理端口port2,MAC:00:11:22:33:44:77,vlan 200;
第一步骤,使用VP代替真实物理端口写入ARP表,参照图4所示,具体流程如下:
1、网络设备分配VP1,用VP1对应物理端口port1;网络设备分配VP2,用VP2对应物理端口port2;
VP表中条目如下:
VP1->port1;VP2->port2;
2、协议下发需要写入ARP10.10.10.1、10.10.10.2、10.10.10.3时,查找物理端口port1对应的是VP1,port2对应的是VP2,则将VP信息写入硬件(同时可选的,在软件上形成VP1对应的ARP条目10.10.10.1、10.10.10.2和VP2对应的ARP条目10.10.10.3),最终硬件中写入ARP条目为:
10.1.1.1路径出口:VP1,MAC:00:11:22:33:44:55,vlan 100;
10.1.1.2路径出口:VP1,MAC:00:11:22:33:44:66,vlan 100;
10.1.1.3路径出口:VP2,MAC:00:11:22:33:44:77,vlan 200;
3、此时,10.1.1.3的ARP条目发生变化,转移到port1上,此时网络设备查找port1的对应VP为VP1,则直接修改ARP表的相关字段,最终写入ARP表中的10.1.1.3的条目变为(同时可选的,将软件VP与ARP对应表进行修改):
10.1.1.3路径出口:VP1,MAC:00:11:22:33:44:77,vlan 100;
第二步骤,物理端口出现失效:
1、此时硬件中的ARP条目如下:
10.1.1.1路径出口:VP1,MAC:00:11:22:33:44:55,vlan 100;
10.1.1.2路径出口:VP1,MAC:00:11:22:33:44:66,vlan 100;
10.1.1.3路径出口:VP1,MAC:00:11:22:33:44:77,vlan 100;
2、若物理端口port1出现故障,需要快速收敛ARP条目,则将VP表中的VP1的值删除,即VP1对应的port字段为空:
即VP表中字段变为:VP1->NULL(未指向任何port)。
3、此时硬件中的ARP表未做任何处理,仍然是:
10.1.1.1路径出口:VP1,MAC:00:11:22:33:44:55,vlan 100;
10.1.1.2路径出口:VP1,MAC:00:11:22:33:44:66,vlan 100;
10.1.1.3路径出口:VP1,MAC:00:11:22:33:44:77,vlan 100;
但是由于VP1的字段已经为空,因此所有命中此ARP的报文将直接被丢弃,无法转发。
此时,CPU感知到port1出现故障,立刻查找软件中与port1有关的所有ARP条目,并通过路由协议通知邻居设备自身的这些ARP条目已经全部撤销。
其中,作为一种实施方式,如果在ARP创建的时候,创建了ARP与VP的对应表,此时可以通过port1找到VP1,通过VP1快速索引到所有与之相关的ARP条目进行快速撤销;
其中,作为一种实施方式,如果邻居设备支持通过网络设备通告过来的VP创建路由,则可以直接向邻居设备通告VP1失效,则邻居设备将所有与VP1相关的路由一次性全部撤销。
其中,由于硬件中的ARP条目此时并未被立刻删除,因此,当协议完成通告之后,且下发硬件进行ARP条目删除时,这些ARP条目可以继续与协议进行同步的删除(由于快速切断流量的动作已经完成,因此后续硬件与协议同步的ARP的删除,不会影响ARP快速收敛的速度)。
额外的,若在ARP未删除之前,port1的故障已经恢复(即端口出现一次震荡),则可直接恢复VP与port1之间的对应关系,无需再做其他动作,即可一次性完成所有ARP的流量恢复。由于协议侧会积累一次对ARP的删除和一次对ARP的添加,则不再对设备进行ARP删除和添加的处理,也不会对邻居设备进行通告。此类情况在本申请中的处理,可以快速应对物理端口的震荡而切断ARP流量,又不会产生大量的路由通告。
由此可见,通过使用VP来替代物理端口写入ARP表中,既可以完成在物理端口失效时,针对ARP表的一次性操作,达到ARP表的快速收敛和快速流量切断。又可以针对端口震荡的情况完成ARP表的流量处理且不引起大量路由震荡,是一种非常高效且简单的端口失效时的ARP处理方式。
需要说明的是,以上实例中的路由处理方式,除了目前可以使用的VP方案,若芯片中存在类似于VP的可以绑定端口并且可以在转发时查找到端口的其他表项,亦可以用于本方法类似的方式进行处理,也属于本申请方案的保护范围。
本申请的应用环境主要应用于交换机或者路由器在ARP条目需要对物理端口的变化进行快速收敛响应的场景中,主要应用于MCLAG切换、核心网对接等场景。实际组网使用场景如图5所示。
参照图5,图5为本申请实施例的实际组网应用场景示意图。
如图5所示,该实际组网应用场景包括:路由器G、交换机A、交换机B以及服务器C1、服务器C2、服务器C3、服务器C4。
其中,路由器G上分别学习下游服务器C1、C2、C3、C4的32位掩码路由,路由器G上学习下游服务器C1、C2路由指向交换机A,学习下游服务器C3、C4路由指向交换机B。
在服务器侧,配置有主链路和备链路,在图5中,服务器C1的主链路为A1,备链路为B1;服务器C2的主链路为A2,备链路为B2;服务器C3的主链路为B3,备链路为A3;服务器C4的主链路为B4,备链路为A4,如图5中箭头所示。
此时,交换机B的B4出现故障,需要快速收敛所有与B4相关的ARP条目,并立刻通知路由器G撤销相关路由。
在服务器侧,服务器C4的主链路为B4,备链路为A4,若服务器C4与主链路B4之间出现故障,则服务器C4切换到备链路A4。
在路由器G的相关路由撤销后,路由器G侧重新学习下游服务器C4路由指向交换机A。
由上可知,交换机B的ARP条目撤销速度直接影响整体流量切换速度。
在实际应用场景中,结合本申请实施例的方案,在MCLAG网络快切中会产生非常好的效果,尤其是在MCLAG组网的整体快切(S-MLAG)的模式中,有非常重要的作用,因为此模式需要将虚拟机的ARP全部通告到路由器网关,因此需要在端口异常的时候快速撤销所有的ARP表条目,而本申请实施例的方案可以满足上述需要快速完成ARP条目收敛的场景的需求。
此外,如图6所示,本申请一实施例提出一种路由装置,包括:
删除模块,用于在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
本实施例实现报文转发的原理及实施过程,请参照上述各实施例,在此不再赘述。
如图7所示,本申请一实施例还提出一种通信设备,所述通信设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的报文转发程序,所述报文转发程序被所述处理器执行时实现如上述各实施例所述的报文转发方法。
其中,该通信设备可以为网络设备,比如交换机或者路由器等,如图7所示,该通信设备可以包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有报文转发程序。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中,存储器130中的报文转发程序被处理器执行时可以实现如上述各实施例所述的报文转发方法。
由于本报文转发程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有报文转发程序,所述报文转发程序被处理器执行时实现如上述各实施例所述的报文转发方法。
由于本报文转发程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本申请实施例通过上述技术方案,使用虚拟端口(VP)来替代物理端口写入ARP表项中,既可以完成在物理端口失效时,针对ARP表项的一次性操作,达到ARP条目的快速收敛和快速流量切断,又可以针对端口震荡的情况完成ARP表项的流量处理且不引起大量路由震荡。是一种非常高效且简单的端口失效时的ARP处理方式。因此,运用此方法可以提高网络设备对网络异常情况的响应速度,提升全网的路由收敛速度,提升全网的路由性能。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台通信设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (13)
1.一种报文转发方法,应用于网络设备,所述方法包括:
在网络设备的物理端口失效的情况下,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息,所述虚拟端口表包括所述网络设备的物理端口与虚拟端口之间的对应关系,所述物理端口对应的ARP条目中的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
2.根据权利要求1所述的方法,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息之前还包括:
生成第一对应关系表,所述第一对应关系表用于表征所述网络设备的物理端口对应的虚拟端口与所述物理端口的ARP条目之间的对应关系,所述第一对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息;和/或
生成第二对应关系表,所述第二对应关系表用于表征所述网络设备的物理端口与ARP条目之间的对应关系,所述第二对应关系表中的ARP条目的端口信息为所述ARP条目对应的物理端口所对应的虚拟端口信息。
3.根据权利要求2所述的方法,所述方法还包括:
基于失效的物理端口查找所述虚拟端口表,获得对应的目标虚拟端口;
基于所述目标虚拟端口查找所述第一对应关系表,获得与所述目标虚拟端口对应的目标ARP条目;
通过路由协议,将所述目标ARP条目通告至所述网络设备的邻居设备,以使所述邻居设备删除对应的目标ARP条目。
4.根据权利要求2所述的方法,所述方法还包括:
基于失效的物理端口查找所述第二对应关系表,获得与所述失效的物理端口对应的目标ARP条目;
通过路由协议,将所述目标ARP条目通告至所述网络设备的邻居设备,以使所述邻居设备删除对应的目标ARP条目。
5.根据权利要求2所述的方法,所述方法还包括:
基于失效的物理端口查找所述虚拟端口表,获得对应的目标虚拟端口;
通过路由协议,向所述网络设备的邻居设备发送所述目标虚拟端口失效的路由通告,以使所述邻居设备根据从所述网络设备获取的所述第一对应关系表将所有与所述目标虚拟端口对应的目标ARP条目全部删除。
6.根据权利要求2所述的方法,所述方法还包括:
基于失效的物理端口查找所述虚拟端口表,获得对应的目标虚拟端口,基于所述目标虚拟端口查找所述第一对应关系表,获得与所述目标虚拟端口对应的目标ARP条目;或者基于失效的物理端口查找所述第二对应关系表,获得与所述失效的物理端口对应的目标ARP条目;
通过路由协议,将所述目标ARP条目逐条删除。
7.根据权利要求1所述的方法,在所述网络设备的预先配置的虚拟端口表中删除对应的物理端口信息之前还包括:
创建用于表征虚拟端口与物理端口之间的对应关系的虚拟端口表;
将所述虚拟端口对应的物理端口的ARP条目中的物理端口信息替换为所述物理端口对应的虚拟端口信息。
8.根据权利要求6所述的方法,所述物理端口信息包括物理端口ID,所述方法还包括:
在接收到报文转发请求的情况下,提取所述报文转发请求携带的目的IP地址;
根据所述目的IP地址确定对应的ARP条目;
确定所述对应的ARP条目所对应的目的虚拟端口;
基于所述目的虚拟端口从所述虚拟端口表中查找对应的目的物理端口ID;
在查找到对应的目的物理端口ID的情况下,通过对应的目的物理端口转发所述报文;
在未查找到对应的目的物理端口ID的情况下,不转发所述报文。
9.根据权利要求6所述的方法,所述通过路由协议,将所述目标ARP条目逐条删除的步骤之前还包括:
在所述网络设备失效的物理端口重新有效的情况下,在所述虚拟端口表中对应添加有效的物理端口信息;
在检测到所述网络设备失效的物理端口持续无效的情况下,执行步骤:通过路由协议,将所述目标ARP条目逐条删除。
10.根据权利要求1所述的方法,所述ARP条目包括:IP地址、主机MAC地址、虚拟端口信息以及vlan。
11.根据权利要求10所述的方法,所述方法还包括:
在所述ARP条目对应的第一物理端口变更为第二物理端口的情况下,将所述ARP条目中的端口信息替换为所述第二物理端口对应的虚拟端口信息。
12.一种通信设备,所述通信设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的报文转发程序,所述报文转发程序被所述处理器执行时实现如权利要求1-11中任一项所述的报文转发方法。
13.一种计算机可读存储介质,所述计算机可读存储介质上存储有报文转发程序,所述报文转发程序被处理器执行时实现如权利要求1-11中任一项所述的报文转发方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211210587.XA CN117857484A (zh) | 2022-09-30 | 2022-09-30 | 报文转发方法、通信设备及存储介质 |
PCT/CN2023/104221 WO2024066587A1 (zh) | 2022-09-30 | 2023-06-29 | 报文转发方法、通信设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211210587.XA CN117857484A (zh) | 2022-09-30 | 2022-09-30 | 报文转发方法、通信设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117857484A true CN117857484A (zh) | 2024-04-09 |
Family
ID=90475940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211210587.XA Pending CN117857484A (zh) | 2022-09-30 | 2022-09-30 | 报文转发方法、通信设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117857484A (zh) |
WO (1) | WO2024066587A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100477666C (zh) * | 2005-11-23 | 2009-04-08 | 杭州华三通信技术有限公司 | 一种快速更新地址解析协议的方法 |
US9191271B2 (en) * | 2013-04-29 | 2015-11-17 | Telefonaktiebolaget L M Ericsson (Publ) | Fast traffic recovery in VRRP based routers |
CN105262685B (zh) * | 2014-07-14 | 2018-10-09 | 新华三技术有限公司 | 一种报文处理方法和装置 |
CN109698788B (zh) * | 2017-10-20 | 2021-06-15 | 华为技术有限公司 | 流量转发方法、装置及计算机可读介质 |
JP2020137006A (ja) * | 2019-02-22 | 2020-08-31 | 日本電気株式会社 | アドレス解決制御方法、ネットワークシステム、サーバ装置、端末及びプログラム |
CN113220413B (zh) * | 2021-04-21 | 2023-11-21 | 新浪技术(中国)有限公司 | 虚拟机迁移后清除交换机旧端口arp表项的方法及系统 |
-
2022
- 2022-09-30 CN CN202211210587.XA patent/CN117857484A/zh active Pending
-
2023
- 2023-06-29 WO PCT/CN2023/104221 patent/WO2024066587A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024066587A1 (zh) | 2024-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019223447A1 (zh) | 一种生成路由的方法和设备 | |
US10284466B2 (en) | Service processing method, device, and system | |
CN110798403B (zh) | 通信方法、通信设备和通信系统 | |
US10404773B2 (en) | Distributed cluster processing system and packet processing method thereof | |
CN111510378A (zh) | Evpn报文处理方法、设备及系统 | |
CN109729012B (zh) | 一种单播报文传输方法和装置 | |
CN110505152B (zh) | 路由过滤方法、装置及电子设备 | |
EP4096172A1 (en) | Method for generating forwarding entry, method for sending message, network device, and system | |
CN110661701B (zh) | 一种避免环路的通信方法、设备和系统 | |
CN107645402B (zh) | 一种路由管理方法和装置 | |
US20220124024A1 (en) | Establishment of method and apparatus for implementing entry backup | |
US10666558B2 (en) | Automatic alignment of roles of routers in networks | |
CN106789523B (zh) | 一种逻辑隧道的创建方法及装置 | |
CN108924052B (zh) | 报文转发方法、汇聚网关、接入网关及系统 | |
CN108768845B (zh) | 一种多归属主机路由同步方法及装置 | |
CN117857484A (zh) | 报文转发方法、通信设备及存储介质 | |
CN111954102B (zh) | 一种dhcpv6 pd场景下的路由控制方法与装置 | |
CN113872843B (zh) | 一种路由生成方法、路由处理方法及装置 | |
CN103763200A (zh) | 在虚拟二层互联中学习路由的方法和装置 | |
US11811658B1 (en) | Method for mobile ad-hoc network (manet) multi-hop routing in a broadcast domain | |
CN115086272A (zh) | Arp代答方法、装置、设备及存储介质 | |
CN115037677A (zh) | 一种frr场景保护的方法和装置 | |
CN113765783A (zh) | 通信方法及装置 | |
Zhang et al. | Routing Area Working Group Bin Liu Internet-Draft ZTE Inc. Intended status: Informational Yantao Sun Expires: November 1, 2015 Jing Cheng |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |