CN112822104A - 一种数据报文的处理方法、设备、存储介质及系统 - Google Patents
一种数据报文的处理方法、设备、存储介质及系统 Download PDFInfo
- Publication number
- CN112822104A CN112822104A CN201911122088.3A CN201911122088A CN112822104A CN 112822104 A CN112822104 A CN 112822104A CN 201911122088 A CN201911122088 A CN 201911122088A CN 112822104 A CN112822104 A CN 112822104A
- Authority
- CN
- China
- Prior art keywords
- network device
- segment
- segment identifier
- data packet
- differential
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000003672 processing method Methods 0.000 title abstract description 6
- 238000000034 method Methods 0.000 claims abstract description 182
- 230000008569 process Effects 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims description 436
- 230000009471 action Effects 0.000 claims description 256
- 238000004590 computer program Methods 0.000 claims description 9
- 230000009286 beneficial effect Effects 0.000 abstract description 6
- 230000000875 corresponding effect Effects 0.000 description 73
- 238000004891 communication Methods 0.000 description 51
- 230000006870 function Effects 0.000 description 50
- 238000013459 approach Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 20
- 101100256921 Ajellomyces capsulatus SID3 gene Proteins 0.000 description 17
- 101100366400 Schizosaccharomyces pombe (strain 972 / ATCC 24843) spg1 gene Proteins 0.000 description 17
- 101100064323 Arabidopsis thaliana DTX47 gene Proteins 0.000 description 11
- 101000805613 Homo sapiens Vacuole membrane protein 1 Proteins 0.000 description 11
- 101150026676 SID1 gene Proteins 0.000 description 11
- 102100038001 Vacuole membrane protein 1 Human genes 0.000 description 11
- 101100057159 Caenorhabditis elegans atg-13 gene Proteins 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 10
- 101100256922 Caenorhabditis elegans sid-3 gene Proteins 0.000 description 9
- 101150096768 sid4 gene Proteins 0.000 description 8
- 102100027270 Etoposide-induced protein 2.4 homolog Human genes 0.000 description 7
- 101001057564 Homo sapiens Etoposide-induced protein 2.4 homolog Proteins 0.000 description 7
- 238000012423 maintenance Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 101000840469 Arabidopsis thaliana Isochorismate synthase 1, chloroplastic Proteins 0.000 description 4
- 101100279860 Caenorhabditis elegans epg-2 gene Proteins 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 101100428614 Caenorhabditis elegans epg-3 gene Proteins 0.000 description 1
- 101100225553 Caenorhabditis elegans epg-4 gene Proteins 0.000 description 1
- 101100256916 Caenorhabditis elegans sid-1 gene Proteins 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种数据报文的处理方法、设备、存储介质及系统。通过在段路由网络中应用一种标识网络设备微分段的微分段段标识的方式,使得在段路由网络中的第二网络设备在接收到需在段路由网络中转发的数据报文时,根据该数据报文确定对应的第一网络设备的一个微分段的微分段段标识,并在转发该数据报文的过程中携带该微分段段标识。从而使得在段路由网络中转发所述数据报文时,该段路由网络中的网络设备可以基于该微分段段标识对数据报文进行处理,实现基于微分段对数据报文进行访问控制。通过本申请提供的方法,有助于降低网络的配置复杂度。
Description
技术领域
本申请涉及通信领域,一种数据报文的处理方法、设备、存储介质及系统。
背景技术
微分段(micro segmentation,MS):是一种可以基于(Internet Protocol,IP)地址、IP网段、媒体访问控制(Media Access Control,MAC)地址、虚拟机(virtual machine,VM)名称、容器、操作系统等来实现子网划分的虚拟网络划分方式,可以支持细粒度的网络隔离,例如属于相同虚拟局域网(virtual local network,VLAN)的不同设备之间也能实现相互隔离。通常,一个微分段对应一个端点组。
端点组(end point group,EPG)是一组具有相同特征的端点的集合,端点提供应用或服务,例如端点可以是虚拟机。端点组表示一组应用或服务,这些应用或服务被分组到一个微分段中,可以具有相同的安全策略等级。
分段路由(segment routing,SR)是基于源路由的理念而设计的在网络中转发数据报文的一种协议。在SR网络中,通过头节点往数据报文中插入一组有序的段标识来显示地指定数据报文的转发路径。当SR应用于多协议标签交换(multi-protocol labelSwitching,MPLS)数据平面时,则称为基于MPLS的分段路由(MPLS-SR或SR-MPLS),当SR应用于互联网协议第6版(Internet Protocol Version 6,IPv6)数据平面时,则称为基于IPv6的分段路由(SRv6)。
段标识(segment ID,SID),代表一个节点或者一条链路。在SRv6中,SID表现为一个128比特的值;在SR-MPLS中,SID表现为一个标签值,一个SRv6的段标识中可以包括功能部分,该功能部分指示发布该段标识的网络设备需要执行对应的动作。
段标识列表(segment ID List,SID List):包含了一组段标识的列表,段路由网络中的头节点在接收到数据报文后,在数据报文中插入1个SID List可以显示地指示一条转发路径。
在现有技术中,当不同的微分段之间需要互相访问或进行安全策略控制,且这些访问和安全策略需要作用于段路由网络时,需要进行大量的配置,如在每台设备上配置全网所有相关IP地址与微分段的对应关系,配置复杂,某种意义上来说,基本不具备可实行性。
发明内容
本申请提供了一种数据报文处理方法及装置,用于根据微分段信息在段路由网络中实现数据报文的访问控制,降低配置复杂度。
第一方面,提供了一种数据报文的处理方法,包括:段路由网络中的第一网络设备接收第一数据报文,所述第一数据报文包括第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文是发送向所述第二网络设备的数据报文;所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作;所述第一网络设备对所述第一数据报文执行所述处理动作。
SR网络中的网络设备通过从接收的数据报文中直接获取微分段段标识,然后该网络设备根据该微分段段标识对数据报文执行相应的处理动作,可以降低网络配置的复杂度,并进一步减少网络设备根据微分段实现数据报文的访问控制时的查表的次数。
在一种可能的方式中,所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:所述第一网络设备根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
SR网络中的网络设备通过直接根据微分段段标识和处理动作的对应关系确定处理动作,减少网络设备根据微分段实现数据报文的访问控制时的查表的次数。
在一种可能的方式中,所述第一网络设备根据所述第一微分段段标识对所述第一数据报文执行处理动作,包括:所述第一网络设备从所述第一微分段段标识中直接获得第一微分段;所述第一网络设备根据所述第一微分段对所述第一数据报文执行所述处理动作。
SR网络中的网络设备通过从接收的数据报文中直接获取微分段段标识,并从该微分段段标识中,直接获得微分段,然后该网络设备根据该微分段对数据报文执行相应的处理动作,可以降低网络配置的复杂度,并进一步减少网络设备根据微分段实现数据报文的访问控制时的查表的次数。
在一种可能的方式中,所述第一网络设备和所述第二网络设备为同一网络设备,所述第一微分段段标识包括功能部分,在所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作之前,所述方法还包括:所述第一网络设备确定所述功能部分用于指示:所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
通过在该段标识的功能部分直接指示网络设备执行确定动作,可以减少网络的配置。
在一种可能的方式中,所述第一数据报文还包括第二微分段段标识,所述第二微分段段标识用于标识所述段路由网络中的第三网络设备的一个微分段,所述第一网络设备根据所述第一微分段段标识对所述第一数据报文执行处理动作,包括:所述第一网络设备根据所述第一微分段段标识和所述第二微分段段标识对所述第一数据报文执行处理动作。
在一种可能的方式中,所述第一网络设备根据所述第一微分段段标识和第二微分段段标识执行所述处理动作,包括:所述第一微分段段标识包括第一微分段,所述第二微分段段标识包括第二微分段;所述第一网络设备根据所述第一微分段和所述第二微分段对所述第一数据报文执行所述处理动作。
在一种可能的方式中,所述第一数据报文还包括第二微分段段标识,所述第二微分段段标识用于标识所述段路由网络中的第三网络设备的一个微分段,所述第一微分段段标识和所述第二微分段段标识为由所述第三网络设备添加到所述第一数据报文中,所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:所述第一网络设备根据匹配条件和所述处理动作的对应关系,确定对所述第一数据报文的处理动作,所述匹配条件包括所述第一微分段段标识和所述第二微分段段标识。
通过同时在数据报文中携带第一微分段段标识和第二微分段段标识,或第一微分段和第二微分段作为数据报文的访问策略控制时的匹配条件,可以进行更精细化的访问策略配置,并进一步减少配置工作量。
在一种可能的方式中,所述第一数据报文的段标识列表中包括所述第一微分段段标识。
在一种可能的方式中,所述段标识列表中还包括所述第二微分段段标识,或所述第一数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
在一种可能的方式中,所述第二微分段段标识携带在所述第一数据报文的报文头的源目的地址中。
在一种可能的方式中,所述段标识列表携带在第一数据报文的段路由头或多协议标签交换标签栈中。
网络设备通过将第一微分段段标识携带在段标识列表中,而将该段标识列表携带在第二数报文的段路由头或多协议标签交换标签栈中的方式,有利于沿用段路由网络的控制、转发机制,降低本发明方案实施的复杂度。
网络设备通过在段标识列表或元数据中携带第二微分段段标识的方式,类似于将该数据报文的微分段特征直接携带在报文中,有利于该段路由网络中的其他设备之间获得第二微分段段标识,而不需要复杂的配置和多次查表,有利于降低整体段路由网络设备的开销。
在一种可能的方式中,所述第一数据报文的段路由头还包括携带标志,所述携带标志标识所述第二微分段段标识的携带方式。
网络设备通过在第一数据报文的段路由头中携带标识第二微分段段标识携带方式的携带标志,使得所述第一网络设备可以通过所述携带标志的指示,从该携带标志指示的位置直接获取第二微分段段标识。
在一种可能的方式中,所述处理动作包括:转发、丢弃、标记、重定向或镜像。
通过对多种处理动作的支持,可以使得本发明方案匹配多种网络业务的需求,满足更多的应用场景。
在一种可能的方式中,所述第二网络设备和所述第一网络设备为同一台设备。
在一种可能的方式中,所述第一网络设备发送通告报文,所述通告报文携带所述第一微分段段标识;或所述第一网络设备发送边界网络协议链路状态报文,所述链路状态报文携带所述第一微分段段标识;或所述第一网络设备发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述第一微分段段标识。
通过以上方式,第一网络设备可以发布标识其自身微分段的微分段段标识,便于该段路由网络中的其他网络设备获得第一网络设备的微分段段标识信息,向该段路由网络中的其他网络设备通告第一网络设备具备根据微分段段标识进行数据报文处理的能力,以及对应的路由信息等。
在一种可能的方式中,当所述处理动作包括转发或标记时,所述第一网络设备对所述第一数据报文执行所述处理动作,包括:所述第一网络设备生成第二数据报文,所述第二数据报文不包括所述第一微分段段标识;所述第一网络设备发送所述第二数据报文。
在一种可能的方式中,当所述处理动作包括转发或标记时,所述第一网络设备根据所述第一微分段段标识对所述第一数据报文执行处理动作,包括:所述第一网络设备剥离所述第一数据报文中的段标识列表,得到第二数据报文;当所述第二微分段段标识携带在所述元数据中时,所述第一网络设备还剥离所述第一数据报文中的所述元数据,得到所述第二数据报文;所述第一网络设备发送所述第二数据报文。
通过第一网络设备(尾节点)在接收到第二数据报文之后,将该数据报文中的SRH剥离,以及当第二微分段段标识携带在元数据中时,还将元数据进行剥离的方式,将段路由网络中的相关信息剥离的方式,类似于还原转发的数据报文,避免对该数据报文随后的转发造成影响。
在一种可能的方式中,所述第二网络设备和所述第一网络设备为不同的设备。
在一种可能的方式中,所述第一数据报文还包括微分段节点段标识,所述微分段节点段标识为所述第一网络设备的段标识,所述微分段节点段标识用于指示所述第一网络设备根据所述第一微分段段标识对所述第一数据报文进行处理。
在一种可能的方式中,所述第一网络设备发送通告报文,所述通告报文携带所述微分段节点段标识;或所述第一网络设备发送边界网络协议链路状态报文,所述链路状态报文发布所述微分段节点段标识;或所述第一网络设备发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述微分段节点段标识。
通过以上可选方式,该段路由网络中的中间节点发布其微分段节点段标识,使得该第一网络设备在根据第一数据报文生成第二数据报文时,即能将该微分段节点段标识携带在第二数据报文中,使得该中间节点也可以根据携带的第一、第二微分段段标识对数据报文执行处理动作。
第二方面,提供了一种数据报文的处理方法,包括:段路由网络中的第一网络设备接收第一数据报文;所述第一网络设备根据所述第一数据报文确定第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文不包括所述第一微分段段标识,所述第一数据报文为发送向所述第二网络设备的数据报文;所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作;所述第一网络设备对所述第一数据报文执行所述处理动作。
SR网络中的头节点可以通过根据接收的数据报文根据段标识表根据最长匹配原则,确定该数据报文对应的要发往的尾节点的微分段段标识(可称为目的微分段段标识),而不需要在头节点上配置全网所有设备的IP地址与微分段的关系,可以减少网络配置的复杂度。
在一种可能的方式中,所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:
所述第一网络设备根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述第二网络设备在根据所述第一微分段段标识对所述第一数据报文执行处理动作之前,所述方法还包括:所述第二网络设备获得对应关系,所述对应关系包括所述第一微分段段标识和所述处理动作的映射关系。
在一种可能的方式中,所述第二网络设备根据所述第一微分段段标识对所述第一数据报文执行处理动作,包括:所述第二网络设备根据所述第一微分段段标识和第二微分段段标识执行所述处理动作,所述第二微分段段标识用于标识所述第二网络设备的一个微分段;所述方法还包括:所述第二网络设备根据所述接收第一数据报文确定所述第二微分段段标识。
在一种可能的方式中,所述第二网络设备根据所述第一微分段段标识和第二微分段段标识执行所述处理动作,包括:所述第一微分段段标识包括第一微分段,所述第二微分段段标识包括第二微分段;所述第二网络设备根据所述第一微分段和所述第二微分段对所述第一数据报文执行所述处理动作。
这样,头节点通过采用上述目的微分段段标识和头节点的微分段段标识(可称为源微分段段标识)来作为数据报文的访问策略控制时的匹配条件;或者,头节点网络设备也可以确定出源微分段段标识对应的微分段(可称为源微分段),以及上述目的微分段,然后采用源微分段和目的微分段来作为作为数据报文的访问策略控制时的匹配条件。这样,可以进行更精细化的访问策略控制。在一种可能的方式中,所述处理动作包括:转发、丢弃、标记、重定向或镜像。
通过对多种处理动作的支持,可以使得本发明方案匹配多种网络业务的需求,满足更多的应用场景。
在一种可能的方式中,所述第一微分段段标识包括功能部分,所述功能部分用于指示:所述第二网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
通过在该段标识的功能部分直接指示网络设备执行确定动作,可以减少网络的配置。
在一种可能的方式中,所述第一网络设备还根据所述接收第一数据报文确定所述第二微分段段标识,所述第二微分段段标识用于标识所述第一网络设备的一个微分段;所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:所述第一网络设备根据匹配条件和所述处理动作的对应关系,确定对所述第一数据报文的处理动作,所述匹配条件包括所述第一微分段段标识和所述第二微分段段标识。
通过以第一微分段段标识和第二微分段段标识作为匹配条件,可以更精细的对数据报文采取进行更精细的访问策略控制。
在一种可能的方式中,当所述处理动作包括转发或标记时,所述第二网络设备根据所述第一微分段段标识对所述第一数据报文执行处理动作,包括:所述第二网络设备根据所述第一数据报文生成第二数据报文,所述第二数据报文包括段标识列表,所述段标识列表包括所述第一微分段段标识;所述第二网络设备向所述第一网络设备发送所述第二数据报文。
通过第二网络设备根据数据报文确定第一微分段段标识之后,在其生成的第二数据报文中携带第一微分段段标识的方式,仅需要在第二网络设备,如:段路由网络中转发该第一数据报文的头节点处将第一微分段段标识携带在后续的数据报文中,无须其他网络设备再次确定第一端点组段表示的方式,降低了整体网络设备的开销。
在一种可能的方式中,所述段标识列表还包括所述第二微分段段标识,或所述第二数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
在一种可能的方式中,所述第二微分段段标识携带在所述第二数据报文的报文头的源目的地址中。
通过在段标识列表或元数据中携带第二微分段段标识的方式,类似于将该数据报文的微分段特征直接携带在报文中,有利于该段路由网络中的其他设备之间获得第二微分段段标识,而不需要多次比对计算,有利于降低整体段路由网络设备的开销。
在一种可能的方式中,所述段标识列表携带在第二数据报文的段路由头或多协议标签交换MPLS标签栈中。
通过将第一微分段段标识携带在段标识列表中,而将该段标识列表携带在第二数报文的段路由头或MPLS标签栈中的方式,有利于沿用段路由网络的控制、转发机制,降低本发明方案实施的复杂度。
在一种可能的方式中,所述第二数据报文的段路由头还包括携带标志,所述携带标志标识所述第二微分段段标识的携带方式。
通过在第二数据报文的段路由头中携带标识第二微分段段标识携带方式的携带标志,使得接收第二数据报文的网络设备可以通过所述携带标志的指示,从该携带标志指示的位置直接获取第二微分段段标识。
在一种可能的方式中,所述第二网络设备还获得第三网络设备的微分段节点段标识,所述微分段节点段标识用于指示所述第三网络设备根据所述第一微分段段标识对所述第一数据报文进行处理;所述段标识列表中还包括所述微分段节点段标识。
通过在第二网络设备处获得第三网络设备,如段路由网络中转发该第一数据报文的中间节点的微分段节点段标识的方式,使得第二网络设备在根据第一数据报文生成第二数据报文时,即能将该微分段节点段标识携带在第二数据报文中,使得发布该微分段节点段标识的中间网络节点也可以根据携带的第一微分段段标识对数据报文执行处理动作。
在一种可能的方式中,所述第二网络设备接收配置指令,从所述配置指令获得所述第二微分段段标识;或所述第二网络设备生成所述第二微分段节点段标识。
在一种可能的方式中,所述第二网络设备发送通告报文,所述通告报文携带所述第二微分段段标识;或所述第二网络设备发送边界网络协议链路状态报文,所述链路状态报文携带所述第二微分段段标识;或所述第二网络设备发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述第二微分段段标识。
通过以上方式,第二网络设备也可以发布标识其自身微分段的微分段段标识,便于该端路由网络中的其他网络设备也获得第二网络设备的微分段段标识信息,向该段路由网络中的其他网络设备通告第二网络设备具备根据微分段段标识进行数据报文处理的能力,以及对应的路由信息等。
在一种可能的方式中,所述第二微分段段标识包括功能部分,所述功能部分用于指示:所述第一网络设备根据所述第二微分段段标识确定对所述第一数据报文的处理动作。
通过在该段标识的功能部分直接指示网络设备执行确定动作,可以减少网络的配置。
在一种可能的方式中,所述第二网络设备根据所述接收第一数据报文确定所述第二微分段段标识,包括:所述第二网络设备根据所述第一数据报文的源地址确定所述第二微分段段标识,或所述第二网络设备根据接收所述第一数据报文的接口确定所述第二微分段段标识。
通过以上方式,网络设备可以通过多种方式确定第一数据报文对应的第二微分段段标识,不用仅仅限定在一种方案中,方案应用场景更丰富。
在一种可能的方式中,所述第二网络设备根据所述第一数据报文确定第一微分段段标识,包括:所述第二网络设备根据所述第一数据报文的目的地址或区分服务编码点确定所述第一微分段段标识。
根据第一数据报文的目的地址或区分服务编码点确定第一微分段段标识的方法,不需要为本方案增加额外的特征信息来确定第一微分段段标识,方案使用范围更广。
在一种可能的方式中,所述第二网络设备接收所述第二网络设备发送的通告报文,通过所述通告报文获得所述第一微分段段标识;或所述第二网络设备接收控制器或路径计算单元发送所述第一微分段段标识。
通过以上可选方式,网络设备通过多种方式接收段路由网络中其他网络设备发布的微分段段标识,使得本发明可以在多种段路由网络场景中进行使用。
第三方面,提供了一种第一网络设备,所述第一网络设备应用于段路由网络中,包括:接收单元,用于接收第一数据报文,所述第一数据报文包括第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文是发送向所述第二网络设备的数据报文;处理单元,用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作;所述处理单元,用于对所述第一数据报文执行所述处理动作。
在一种可能的方式中,所述处理单元,用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:所述处理单元,用于根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述第一网络设备和所述第二网络设备为同一网络设备,所述第一微分段段标识包括功能部分,在所述处理单元用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作之前,所述处理单元还具体用于:确定所述功能部分用于指示:所述处理单元根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述第一数据报文还包括第二微分段段标识,所述第二微分段段标识用于标识所述段路由网络中的第三网络设备的一个微分段,所述处理单元用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理单元,用于根据所述第一微分段段标识和所述第二微分段段标识对所述第一数据报文执行处理动作。
在一种可能的方式中,所述第一数据报文的段标识列表中包括所述第一微分段段标识。
在一种可能的方式中,所述段标识列表中还包括所述第二微分段段标识,或所述第一数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
在一种可能的方式中,所述段标识列表携带在第二数据报文的段路由头或多协议标签交换标签栈中。
在一种可能的方式中,所述第一数据报文的段路由头还包括携带标志,所述携带标志标识所述第二微分段段标识的携带方式。
在一种可能的方式中,所述第一网络设备还包括发送单元,所述处理动作包括:转发、丢弃、标记、重定向或镜像。
在一种可能的方式中,所述第二网络设备和所述第一网络设备为同一台设备。
在一种可能的方式中,所述发送单元,用于发送通告报文,所述通告报文携带所述第一微分段段标识;或所述发送单元,用于发送边界网络协议链路状态报文,所述链路状态报文携带所述第一微分段段标识;或所述发送单元,用于发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述第一微分段段标识。
在一种可能的方式中,所述第一网络设备还包括发送单元,当所述处理动作包括转发或标记时,所述处理单元对所述第一数据报文执行所述处理动作,具体为:所述处理单元生成第二数据报文,所述第二数据报文不包括所述第一微分段段标识;所述发送单元,用于发送所述第二数据报文。
在一种可能的方式中,当所述处理动作包括转发或标记时,所述处理单元,用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理单元,用于剥离所述第一数据报文中的段标识列表,得到第二数据报文;当所述第二微分段段标识携带在所述元数据中时,所述处理单元,还用于剥离所述第一数据报文中的所述元数据,得到所述第二数据报文;所述第一网络设备发送所述第二数据报文。
在一种可能的方式中,所述第二网络设备和所述第一网络设备为不同的设备。
在一种可能的方式中,所述第一数据报文还包括微分段节点段标识,所述微分段节点段标识为所述第一网络设备的段标识,所述微分段节点段标识用于指示所述第一网络设备根据所述第一微分段段标识对所述第一数据报文进行处理。
在一种可能的方式中,所述第一网络设备和所述第二网络设备为不同的设备,所述第一数据报文还包括微分段节点段标识,所述微分段节点段标识为所述第一网络设备的段标识,所述微分段节点段标识包括功能部分,所述功能部分用于指示:所述处理单元根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述发送单元,用于:发送通告报文,所述通告报文携带所述微分段节点段标识;或发送边界网络协议链路状态报文,所述链路状态报文发布所述微分段节点段标识;或发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述微分段节点段标识。
第四方面,提供了一种第二网络设备,应用于段路由网络中,包括:
接收单元,用于接收第一数据报文;处理单元,用于根据所述第一数据报文确定第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文不包括所述第一微分段段标识,所述第一数据报文为发送向所述第二网络设备的数据报文;所述处理单元,还用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作;所述处理单元,还用于对所述第一数据报文执行所述处理动作。
在一种可能的方式中,所述处理单元还用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:所述处理单元,用于根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述第一微分段段标识包括功能部分,所述功能部分用于指示:所述第二网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述处理单元用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理单元用于根据所述第一微分段段标识和第二微分段段标识执行所述处理动作,所述第二微分段段标识用于标识所述第二网络设备的一个微分段;所述处理单元还用于:根据所述接收第一数据报文确定所述第二微分段段标识。
在一种可能的方式中,所述处理动作包括:转发、丢弃、标记、重定向或镜像。
在一种可能的方式中,所述第二网络设备还包括发送单元,当所述处理动作包括转发或标记时,所述处理单元还用于对所述第一数据报文执行所述处理动作,具体为:所述处理单元,用于根据所述第一数据报文生成第二数据报文,所述第二数据报文包括所述第一微分段段标识;所述发送单元,用于向所述第二网络设备发送所述第二数据报文。
在一种可能的方式中,所述第二微分段段标识包括功能部分,所述功能部分用于指示:所述第一网络设备根据所述第二微分段段标识确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述处理单元还包括发送单元,当所述处理动作包括转发或标记时,所述处理单元根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理单元,用于根据所述第一数据报文生成第二数据报文,所述第二数据报文包括段标识列表,所述段标识列表包括所述第一微分段段标识;所述发送单元,用于向所述第一网络设备发送所述第二数据报文。
在一种可能的方式中,所述段标识列表还包括所述第二微分段段标识,或所述第二数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
在一种可能的方式中,所述接收单元还用于接收第三网络设备的微分段节点段标识,所述微分段节点段标识用于指示所述第三网络设备根据所述第一微分段段标识对所述第一数据报文进行处理;所述段标识列表中还包括所述微分段节点段标识。
在一种可能的方式中,所述段标识列表携带在第二数据报文的段路由头或多协议标签交换MPLS标签栈中。
在一种可能的方式中,所述第二数据报文的段路由头还包括携带标志,所述携带标志标识所述第二微分段段标识的携带方式。
在一种可能的方式中,所述接收单元还用于接收配置指令,从所述配置指令获得所述第二微分段段标识;或所述处理单元,还用于生成所述第二微分段节点段标识。
在一种可能的方式中,所述发送单元,用于发送通告报文,所述通告报文携带所述第二微分段段标识;或所述发送单元,用于发送边界网络协议链路状态报文,所述链路状态报文携带所述第二微分段段标识;或所述发送单元,用于发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述第二微分段段标识。
在一种可能的方式中,所述处理单元还用于根据所述接收第一数据报文确定所述第二微分段段标识,具体为:所述处理单元,用于根据所述第一数据报文的源地址确定所述第二微分段段标识,或所述处理单元,用于根据接收所述第一数据报文的接口确定所述第二微分段段标识。
在一种可能的方式中,所述处理单元用于根据所述第一数据报文确定第一微分段段标识,具体为:所述处理单元,用于根据所述第一数据报文的目的地址或区分服务编码点确定所述第一微分段段标识。
在一种可能的方式中,所述接收单元,还用于接收所述第二网络设备发送的通告报文中的所述第一微分段段标识;或所述接收单元,还用于接收控制器或路径计算单元发送的所述第一微分段段标识。
第五方面,提供了一种第一网络设备,应用于段路由网络中,包括:通信接口、存储器和处理器;所述通信接口,用于接收第一数据报文,所述第一数据报文包括第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文是发送向所述第二网络设备的数据报文;所述处理器,用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作;所述处理器对所述第一数据报文执行所述处理动作。
在一种可能的方式中,所述处理器根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:所述处理器根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述第一网络设备和所述第二网络设备为同一网络设备,所述第一微分段段标识包括功能部分,在所述处理器根据所述第一微分段段标识确定对所述第一数据报文的处理动作之前,所述处理器还用于:确定所述功能部分用于指示:所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述第一数据报文还包括第二微分段段标识,所述第二微分段段标识用于标识所述段路由网络中的第三网络设备的一个微分段,所述处理器用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理器,还用于根据所述第一微分段段标识和所述第二微分段段标识对所述第一数据报文执行处理动作。
在一种可能的方式中,所述第一数据报文的段标识列表中包括所述第一微分段段标识。
在一种可能的方式中,所述段标识列表中还包括所述第二微分段段标识,或所述第一数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
在一种可能的方式中,所述段标识列表携带在第二数据报文的段路由头或多协议标签交换MPLS标签栈中。
在一种可能的方式中,所述第一数据报文的段路由头还包括携带标志,所述携带标志标识所述第二微分段段标识的携带方式。
在一种可能的方式中,所述处理动作包括:转发、丢弃、标记、重定向或镜像。
在一种可能的方式中,所述第二网络设备和所述第一网络设备为同一台设备。
在一种可能的方式中,所述通信接口,还用于发送通告报文,所述通告报文携带所述第一微分段段标识;或所述通信接口,还用于发送边界网络协议链路状态报文,所述链路状态报文携带所述第一微分段段标识;或所述通信接口,还用于发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述第一微分段段标识。
在一种可能的方式中,当所述处理动作包括转发或标记时,所述处理器,用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理器,用于剥离所述第一数据报文中的段标识列表,得到第二数据报文;当所述处理器确定所述第二微分段段标识携带在所述元数据中时,所述处理器,还用于剥离所述第一数据报文中的所述元数据,得到所述第二数据报文;所述通信接口,还用于发送所述第二数据报文。
在一种可能的方式中,所述第二网络设备和所述第一网络设备为不同的设备。
在一种可能的方式中,所述第一数据报文还包括微分段节点段标识,所述微分段节点段标识为所述第一网络设备的段标识,所述微分段节点段标识用于指示所述第一网络设备根据所述第一微分段段标识对所述第一数据报文进行处理。
在一种可能的方式中,所述通信接口,还用于发送通告报文,所述通告报文携带所述微分段节点段标识;或所述通信接口,还用于发送边界网络协议链路状态报文,所述链路状态报文发布所述微分段节点段标识;或所述通信接口,还用于发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述微分段节点段标识。
第六方面,提供了一种第二网络设备,所述第二网络设备应用于段路由网络中,包括:通信接口、存储器、处理器;所述通信接口用于接收第一数据报文;所述处理器用于根据所述第一数据报文确定第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文不包括所述第一微分段段标识,所述第一数据报文为发送向所述第二网络设备的数据报文;所述处理器还用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作;所述处理器还用于对所述第一数据报文执行所述处理动作。
在一种可能的方式中,所述处理器用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:所述处理器根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
在一种可能的方式中,所述处理器用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理器根据所述第一微分段段标识和第二微分段段标识执行所述处理动作,所述第二微分段段标识用于标识所述第二网络设备的一个微分段;所述处理器还具体用于:根据所述接收第一数据报文确定所述第二微分段段标识。
在一种可能的方式中,所述通信接口,还用于接收所述第二网络设备发送的通告报文,所述处理器,还用于从所述通告报文中获得所述第一微分段段标识;或所述通信接口,还用于接收控制器或路径计算单元发送的控制报文,所述处理器,还用于从所述控制报文中获得所述第一微分段段标识。
在一种可能的方式中,所述处理动作包括:转发、丢弃、标记、重定向或镜像。
在一种可能的方式中,当所述处理动作包括转发或标记时,所述处理器,用于根据所述第一微分段段标识对所述第一数据报文执行处理动作,具体为:所述处理器,用于根据所述第一数据报文生成第二数据报文,所述第二数据报文包括段标识列表,所述段标识列表包括所述第一微分段段标识;所述通信接口,用于向所述第一网络设备发送所述第二数据报文。
在一种可能的方式中,所述段标识列表还包括所述第二微分段段标识,或所述第二数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
在一种可能的方式中,所述段标识列表携带在第二数据报文的段路由头或多协议标签交换MPLS标签栈中。
在一种可能的方式中,所述第二数据报文的段路由头还包括携带标志,所述携带标志标识所述第二微分段段标识的携带方式。
在一种可能的方式中,所述处理器,还用于获得第三网络设备的微分段节点段标识,所述微分段节点段标识用于指示所述第三网络设备根据所述第一微分段段标识对所述第一数据报文进行处理;所述段标识列表中还包括所述微分段节点段标识。
在一种可能的方式中,所述通信接口,用于接收配置指令,所述处理器,用于从所述配置指令获得所述第二微分段段标识;或所述处理器,用于生成所述第二微分段节点段标识。
在一种可能的方式中,所述发送单元,用于发送通告报文,所述通告报文携带所述第二微分段段标识;或所述发送单元,用于发送边界网络协议链路状态报文,所述链路状态报文携带所述第二微分段段标识;或所述发送单元,用于发送路径计算单元通信协议报文,所述路径计算单元通信协议报文携带所述第二微分段段标识。
上述第六方面的各种可能的实现方式之间,以及第六方面的各种可能的实现方式和上述第六方面之间,可合理组合。
第七方面,提供一种网络设备,所述网络设备包括:主控板和接口板,进一步,还可以包括交换网板。所述网络设备用于执行第一方面或第一方面的任意可能的实现方式中的方法。具体地,所述网络设备包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的模块。
第八方面,提供一种网络设备,所述网络设备包括:主控板和接口板,进一步,还可以包括交换网板。所述网络设备用于执行第二方面或第二方面的任意可能的实现方式中的方法。具体地,所述网络设备包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的模块。
第九方面,提供了一种网络系统,所述网络系统包括第一网络设备和第二网络设备,所述第一网络设备为上述第三方面或第五方面任一种可选方式所提供的第一网络设备,所述第一网络设备为上述第四方面或第六方面任一种可选方式所提供的第二网络设备。
第十方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行如第一方面以及第一方面的任一种可选方式所提供的数据报文的处理方法,或如第二方面以及第二方面的任一种可选方式所提供的数据报文的处理方法。
第十一方面,提供了一种计算机程序,所述计算机程序包括用于执行上述第一方面或第一方面任一种可选方式所述的方法。
第十二方面,提供了一种计算机程序,所述计算机程序包括用于执行上述第二方面或第二方面任一种可选方式所述的方法。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中使用的附图作简单地介绍。显而易见地,下面附图只是本发明的一些实施例的附图,对于本领域普通技术人员来说,在不付出创造性劳动性的前提下,还可以根据这些附图获得同样能实现本发明的其他技术方案和附图。这些技术方案和附图也应该被认为是在本发明的范围之内。
图1为本申请实施例中的一种网络系统的应用场景示意图;
图2为本申请实施例中的一种应用场景的示意图;
图3a为本申请实施例提供的一种数据报文的处理方法流程图;
图3b为本申请实施例提供的一种数据报文的处理方法流程图;
图4a为本申请实施例提供的一种数据报文的处理方法流程图;
图4b为本申请实施例提供的一种数据报文的处理方法流程图;
图5为本申请实施例提供的一种第一类型长度值TLV的示意图;
图6为本申请实施例提供的一种微分段段标识的组成示意图;
图7为本申请实施例提供的一种段路由头的示意图;
图8为本申请实施例提供的一种元数据TLV的示意图;
图9为本申请实施例提供的一种段路由头中的标志位示意图;
图10为本申请实施例提供的一种第二类型长度值TLV的示意图;
图11为本申请实施例提供的一种第二网络设备结构示意图;
图12为本申请实施例提供的一种第一网络设备结构示意图;
图13为本申请实施例提供的一种网络设备结构示意图;
图14为本申请实施例提供的一种网络设备结构示意图;
图15为本申请实施例提供的一种网络系统示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
本申请中术语“第一”、“第二”、“第三”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第三”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
以下,对本申请涉及的术语进行解释:
段路由头(segment routing header,SRH):IPv6报文是由IPv6标准头+扩展头(0...n)+负载(Payload)组成。为了基于IPv6转发平面实现SRv6,新增加一种IPv6扩展头,称作SRH扩展头,该扩展头指定一个IPv6的显式路径,存储的是IPv6的Segment List信息,其作用与SR MPLS里的Segment List一样。头节点在IPv6报文增加一个SRH扩展头,中间节点就可以按照SRH扩展头里包含的路径信息转发该IPv6报文。例如,在转发IPv6报文时,支持SRv6的网络设备会按照数据报文中的目的地址((Destination Address,DA),查询本地段标识表(local SID table),当数据报文的目的地址与本地段标识表中的任一SID匹配时,则按照本地段标识表中的SID相关的策略,执行该策略对应的操作。例如,该策略对应的操作可以将数据报文从SID所指定的出接口转发出去);如果数据报文的目的地址与本地段标识表中的每个SID均不匹配,则再查IPv6的路由转发表,按照IPv6的路由转发表进行最长匹配转发。
头节点(Head Node):SR转发路径的起始节点,负责封装段标识。
微分段段标识:一种段标识,用于标识段路由网络中的网络设备的微分段,对应一个端点组。微分段段标识指示发布该微分段段标识的网络设备执行根据微分段段标识或微分段进行报文处理的操作。
微分段节点段标识:一种段标识,用于标识段路由网络中的网络设备。微分段节点段标识指示发布该微分段节点段标识的网络设备执行根据微分段段标识或微分段进行报文处理的操作。
在一种可能的方式中,若需要在段路由网络中根据微分段来对报文进行处理,需要在段路由网络中的每台设备上都配置IP地址与微分段的关系,以及配置微分段对应的处理动作。例如,一个网络中包括网络设备1和网络设备2,网络设备1连接VM1,网络设备2连接VM2,网络设备1和网络设备2之间的网络为SR网络。当VM1向VM2发送数据报文A时,网络设备1收到该数据报文A,网络设备1需要先根据数据报文A中的目的地址(即VM2的地址)查表获取VM2的地址对应的微分段,然后再根据该微分段查表获得相应的处理动作(如修改优先级),然后将转发标记后的数据报文A给网络设备2,网络设备2也要执行和网络设备1类似的动作。有时网络设备1和网络设备2之间的中间设备也需要根据微分段执行类似的策略,会导致对很多设备的配置工作。并且,当有大量的数据报文在网络设备1和网络设备2之间传递时,可能会涉及很多设备(包括网络设备1,网络设备2和中间设备)多次查表才能获得对这些数据报文的处理策略。在一些特殊的场景下,当存在多个网段的IP地址转换时,如:VM的IP地址为私网网段IP地址,段路由网络中的路由网络地址为公网IP地址时,则无法在段路由网络中的网络设备上配置微分段与IP地址的对应关系,无法根据微分段对数据报文进行处理。
以下,示例性介绍本申请的应用场景。参见图1,该图为本申请实施例的一种网络系统的应用场景的示意图。在图1所示的场景中,网络设备101、网络设备102、网络设备103、网络设备104属于同一个SR网络,其中,网络设备101、网络设备102、网络设备103、网络设备104可以为路由器设备,也可以为交换机或其他任意具备SR路由功能的设备,该设备的形态可以是实体装置设备,也可以是虚拟化的具备SR路由功能的设备,本申请不做具体限定。
本领域技术人员可以知晓,该应用场景中的网络设备的数量可以更多或更少。比如上述网络设备可以为几十个或几百个,或者更多数量。本申请实施例对网络设备的数量和设备类型不加以限定。
在图1所示的场景中,网络设备101与虚拟机(virtual machine,VM)1、VM2、VM3和VM4相连,同时,网络设备101还与网络设备102和网络设备104相连;网络设备102与网络设备101和网络设备103相连;网络设备104与网络设备101和网络设备103相连;网络设备103与VM5、VM6、VM7和VM8相连,同时,网络设备103还与网络设备102和网络设备104相连。其中,VM1和VM2属于同一个EPG:EPG1,VM3和VM4属于同一个EPG:EPG2,VM5和VM6属于同一个EPG:EPG3,VM7和VM8属于同一个EPG:EPG4。
该网络运行有SR协议:该网络即可以是SR-MPLS网络,也可以是SRv6网络。在图1所示的场景中,网络设备101与网络设备103均支持SR,网络设备102和网络设备104可支持SR,也可以不支持SR。
可选地,该应用场景中还可以包括控制器或路径计算单元,该控制器或路径计算单元可通过无线网络或有线网络与每个网络设备相连,该控制器或路径计算单元可以用于为需要在该段路由网络中转发的数据报文确定对应的转发路径。该控制器或路径计算单元可以是一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。当控制器是多台时,可以存在至少两台控制器用于提供不同的服务,和/或存在至少两台控制器用于提供相同的服务,比如以负载均衡方式提供同一种服务,本实施例对此不做具体限定。
本领域技术人员应理解,图1所示的场景并未限定网络设备101、网络设备103与其对应的VM的具体连接方式,他们可以是直接相连,也可以是通过其他网络设备,如交换机、防火墙等设备与对应的VM相连,这些其他网络设备不属于该SR网络,即不运行相应的SR功能。如图2所示,网络设备101通过网络设备201与VM1和VM3相连,网络设备101通过网络设备202与VM2和VM4相连。网络设备103通过网络设备203与VM5和VM6相连,网络设备103通过网络设备204与VM7和VM8相连。体现在网络设备101和网络设备103上,其为端点组划分对应的微分段的方式不限定于具体的连接方式,即不仅可以按照他们自身的物理或虚拟接口来进行微分段的划分,也可以基于最终端点组的特征,如IP地址,或区分服务编码点(differentiated services code point,DSCP),或两者的结合或更多的特征等来进行微分段的划分。
参见图3a,该图为本申请实施例提供的一种数据报文的处理方法流程图。如图3a所示,该方法的交互主要包括第一网络设备和第二网络设备。其中,第二网络设备可以为数据报文在该分段路由网络中的转发路径的头节点,第一网络设备可以是该转发路径中的尾节点。应用于图1所示的应用场景,网络设备101和网络设备103可分别为该第二网络设备和第一网络设备。
以下,结合图1和图3a对该方法主要包括的步骤和可选方式进行讲解,为便于理解,以网络设备101作为第二网络设备,网络设备103作为第一网络设备为示例对本方法实施例进行示例性讲解。应理解,这仅是一种示例,本领域的技术人员也可以参考本实施例,做类似的替换、应用,本申请不再一一举例。
该方法主要包括如下步骤:
S301:网络设备103发布第一微分段段标识。
微分段段标识对应网络设备的一个微分段,可以表示为End.XTEpg SID,End表示endpoint,意为端点;X表示crossing,意为三层交叉连接;T表示table lookup,意为查表;Epg表示endpoint group,意为端点组;SID意为段标识。微分段段标识可以满足IPv6地址或MPLS标签的格式。
该第一微分段段标识对应网络设备103的一个微分段,在一个示例中,该微分段为EPG3,其对应的微分段段标识可为一个IPv6地址格式的值,该微分段对应的端点组包括VM5和VM6。本领域技术人员应理解,在此仅为示例,微分段EPG3对应的端点组也可以为VM5和VM7。微分段的划分可以基于具体的IP地址,IP前缀,以及应用或服务的具体要求进行划分,本申请不做具体限定。应理解,在一些情况下,该第一微分段段标识也可以对应网络设备103的多个微分段。
网络设备103发布第一微分段段标识的方式包括以下三种或更多的发布方式:
方式一、网络设备103发送通告报文,该报文中携带有该第一微分段段标识。
该通告报文可以为边界网关协议(Border Gateway Protocol,BGP)报文,也可以是边界网关协议以太网虚拟私有网络(Border Gateway Protocol Ethernet VirtualPrivate Network,BGP EVPN)报文,也可以是内部网关协议(Interior Gateway Protocol,IGP)报文,本申请不做具体限定。
可选的,该通告报文中的第一微分段段标识携带在其第一类型长度值(typelength value,TLV)中,TLV是一种编码格式,主要通过类型(type)、长度(length)和值(value)这三种信息进行定义。该第一TLV的格式示意如图5所示。该图中的类型字段标识表示该第一TLV的类型,该类型字段的取值可以标识该第一TLV是用于发布End.XTEpg SID的TLV,该类型字段的取值可以是为发布微分段段标识新申请的类型,例如可以是90。长度字段的取值标识该第一TLV的长度。保留字段保留用于后续扩展,如可用于标识转发路径等。微分段段标识字段用于承载微分段段标识。
方式二、网络设备103可以通过BGP链路状态协议(Border Gateway Protocol-link state,BGP-LS),发布第一微分段段标识。
具体来讲,网络设备103可以通过BGP-LS,向控制器发送第一微分段段标识,控制器可以通过BGP-LS,接收网络设备103发送的第一微分段段标识,将第一微分段段标识发送至网络设备101。
方式三、网络设备103可以通过路径计算单元通信协议(Path ComputationElement Communication Protocol,PCEP),发布第一微分段段标识。
具体来讲,网络设备103可以通过PCEP,向控制器或路径计算单元(pathcomputation element,PCE)发送第一微分段段标识,控制器或PCE可以通过PCEP,接收网络设备103发送的第一微分段段标识,将第一微分段段标识发送至网络设备101。
在网络设备103发布第一微分段段标识之前,网络设备103需要先获得第一微分段段标识。关于网络设备103如何得到微分段段标识,在一些可能的实施例中,可以由网络设备103自动分配至少一个微分段段标识,也可以人工配置至少一个微分段段标识。具体地,得到微分段段标识的方式可以包括下述方式一或方式二中的任一项或多项。
方式一、网络设备103为对应的微分段或端点组分配微分段段标识。
在一个示例中,网络设备103可以为每个微分段或每个端点组分配一个微分段段标识,为不同的端点组/微分段分配的微分段段标识不同,使得分配的每一个微分段段标识对应一个微分段或一个端点组。在另一个示例中,网络设备103也可以为多个微分段或多个端点组分配分配同一个微分段段标识,使得分配的一个微分段段标识对应于多个微分段或多个端点组。其中,网络设备103可以存储有段标识空间,可以从段标识空间中选择未被占用的微分段段标识,将微分段段标识分配给微分段或端点组。
方式二、网络设备103接收配置指令,网络设备103从配置指令获取微分段段标识和1个或多个微分段或端点组的对应关系。其中,配置指令可以由用户在网络设备103上的配置操作触发,配置指令也可能由网管或者控制器(controller)触发。
在一个示例中,应用于图1所示的场景,网络设备103得到的微分段段标识和微分段之间的对应关系可以如下表1所示。
表1
微分段段标识 | 微分段标识 |
End.XTEpg SID3 | EPG3 |
End.XTEpg SID4 | EPG4 |
当网络设备103存在如表1所示的微分段段标识和微分段之间的对应关系时,则还存在微分段与端点组的对应关系,该端点组可以用端点设备的I P地址、端点组设备与网络设备103相连的接口、MAC地址等等信息进行定义。以下以采用端点设备的IP地址表示端点组进行示例:如VM5和VM6可以用同样的IP地址前缀A1::3:1/80表示,VM7和VM8可以用同样的IP地址前缀A1::3:2/80表示可以如下表2所示。
表2
微分段标识 | 端点组 |
EPG3 | A1::3:1/80 |
EPG4 | A1::3:2/80 |
上述表1和表2仅表示逻辑的概念,在实现时表1和表2可以合并为一张表。
在另一个示例中,应用于图1所示的场景,网络设备103得到的微分段段标识和端点组之间的对应关系可以如下表3所示,在本示例中,该端点组通过端点组设备与网络设备103相连的接口进行定义,该接口可以为虚拟子接口,也可以为物理接口。以下以虚拟子接口作为示例:End.XTEpg SID3对应于端点组EPG3,网络设备103与该端点组EPG3相连的接口为其虚接口1,其名称为vInf103-1;End.XTEpg SID4对应于端点组EPG4,网络设备103与该端点组EPG4相连的端口为其虚接口2,其名称为vInf103-2。
表3
微分段段标识 | 端点组 |
End.XTEpg SID3 | vInf103-1 |
End.XTEpg SID4 | vInf103-2 |
在表3中,微分段段标识还可以作为一个微分段的标识,指示一个微分段。
应理解,以上仅为微分段段标识与微分段或者端点组的对应关系的示例,在具体实施过程中,可以基于以上多种方式,如根据IP前缀,或具体的IP地址的组合,或端点与网络设备相连的接口等等信息获得微分段段标识和微分段或端点组的对应关系。
在一个SRv6的示例中,微分段段标识的具体取值包括以下两个部分:位置信息(Locator)以及功能(Function):SRv6 SID是IPv6地址的形式,SRv6 SID可以由位置信息和功能两部分组成,格式为:位置信息:功能。其中,位置信息占据IPv6地址的高比特位,功能占据IPv6地址的低比特位。其中,位置信息可以具有定位功能,可以在SR域唯一,功能代表设备的指令,这些指令由设备预先设定,功能部分用于指示SRv6 SID的生成设备执行相应的功能操作。
图6示出了另一种SRv6微分段段标识的示例,在该示例中,该微分段段标识共为128比特,其分为3个部分,位置信息:功能:参数段,其中位置信息部分占据0-64高比特位,其功能部分占据中间比特位,指示该微分段段标识的生成设备如网络设备103执行对应的根据微分段段标识进行查表以确定该微分段段标识对应的报文的处理动作,并最终对该报文执行处理动作以及对应的段路由头的生成或其他相关操作,参数段部分可以定义一些报文的流和服务等信息。
S303:网络设备101获得第一微分段段标识。
对应于网络设备103发布第一微分段段标识的方式,网络设备101获得该第一微分段段标识的方式可以为以下两种可选方式:
方式一、网络设备101接收网络设备103发送的通告报文,该报文中携带有该第一微分段段标识。
具体来说,当网络设备103通过BGP报文发送第一微分段段标识时,网络设备101接收到网络设备103发送的BGP报文,并从该报文中获得该第一微分段段标识;当网络设备103通过IGP报文发送第一微分段段标识,则网络设备101接收到网络设备103发送的IGP报文,并从该报文中获得该第一微分段段标识。
进一步来说,当该第一微分段段标识携带在BGP报文或IGP报文的第一TLV中时,网络设备101从该BGP报文或IGP报文的第一TLV中获得第一微分段段标识。
方式二、网络设备101接收来自控制器或路径计算单元发送的第一微分段段标识。
具体来讲,当网络设备103通过BGP-LS向控制器发送第一微分段段标识时,控制器可以通过BGP-LS协议,接收网络设备103发送的第一微分段段标识,并将第一微分段段标识发送至网络设备101。当网络设备103通过发送PCEP报文,向控制器或PCE发送第一微分段段标识时,控制器或PCE可以接收网络设备103发送的第一微分段段标识,并将第一微分段段标识发送至网络设备101。上述控制器或PCE执行向网络设备101发送第一微分段段标识的时间可以是在接收到第一微分段段标识之后即发送,也可以是在一段时间,或当网络设备101向控制器或PCE请求一条转发路径的时候再发送给网络设备101。
S305:网络设备101接收第一数据报文,并根据该第一数据报文确定第一微分段段标识,该第一数据报文中不包括第一微分段段标识。
在一个如图1所示的示例中,当VM1与VM5之间需要通信时,VM1会向VM5发送1个数据报文(即第一数据报文)。网络设备101接收到VM1发送的该第一数据报文后,可以根据该第一数据报文确定第一微分段段标识。
网络设备101根据第一数据报文确定第一微分段段标识的方式包括:
方式一、网络设备101根据第一数据报文的目的IP地址确定第一微分段段标识。如,网络设备101上可能存在如下表4所示的一个对应关系,则当该第一数据报文的目的IP地址为A1::3:1/80时,网络设备101根据匹配原则(例如是最长匹配原则),获得该第一微分段段标识为End.XTEpg SID3。
表4
目的IP前缀 | 微分段段标识 |
A1::3:1/80 | End.XTEpg SID3 |
A1::3:2/80 | End.XTEpg SID4 |
如表4所示的对应关系,可能是网络设备101根据获得的网络设备103发布的路由通告报文等信息迭代计算得到,也可能是网络设备101接收控制器或路径计算单元下发的转发路径规划信息而得到的。
方式二、网络设备101接收到该第一数据报文之后,向控制器或路径计算单元请求一条到达该数据报文的目的IP的转发路径。控制器或路径计算单元接收到该请求后,根据获得的网络拓扑或其他信息计算一条转发路径并下发给网络设备101。如,控制器或路径计算单元为网络设备101计算的VM1到VM5的转发路径为网络设备102->网络设备103,具体的段标识列表可为:End.SID102,End.XTEpg SID3。其中,End.SID102为网络设备102的段标识,End.XTEpg SID3为网络设备103的微分段段标识。网络设备101根据该转发路径确定第一微分段段标识为End.XTEpg SID3。
方式三、网络设备101根据该第一数据报文的区分服务编码点确定第一微分段段标识。
S307:网络设备101根据第一微分段段标识确定对第一数据报文的处理动作。
在一种可能的方式中,该网络设备101可被配置为是否需要查找或执行处理策略,此处的处理策略也可以认为是一种对应关系,当该网络设备被配置为不需要查找或执行处理策略时,则该处理动作为转发第一数据报文,则网络设备101根据该配置,确定对第一数据报文的处理动作为转发。
在一种可能的方式中,该网络设备101可被配置为查找对第一数据报文的处理策略并根据处理策略来处理,因此在一种可能的实现方式中,该网络设备101在根据第一微分段段标识确定对第一数据报文的处理动作之前,所述网络设备101还需要获得处理策略,该处理策略中包括匹配条件和处理动作,在一种可能的实现方式中,该处理策略存储在网络设备101的基于组的访问策略表项(group based policy,GBP)中。其中,匹配条件可以包括第一微分段段标识,即网络设备根据接收的数据报文确定第一微分段段标识,如上所述的第一微分段段标识End.XTEpg SID3。该处理策略中的处理动作包括以下一项或多项:转发、丢弃、标记、重定向和镜像。其中,标记为一种特殊的转发,即,网络设备在转发数据报文前,先对该数据报文进行标记。网络设备对数据报文可做的标记动作可包括,如重新标记该数据报文的DSCP,或修改该数据报文的优先级等。
网络设备获得处理策略包括如下方式:
方式一、网络设备101接收处理策略指令,该指令可以是由网管系统、网络应用或是运维人员人工向网络设备配置的指令,网络设备101根据该处理策略指令保存该处理策略,该处理策略包括第一微分段段标识。
方式二、网络设备也可以不通过接收处理策略指令,而是在生产时即预置处理策略的方式,获得该处理策略。
在一个示例中,网络设备101获得的处理策略如表5所示,网络设备101使用第一微分段段标识作为匹配条件,当网络设备101接收到的数据报文对应的第一微分段段标识为End.XTEpg SID3时,执行“标记”的处理动作,当网络设备接收到的数据报文对应的第一微分段段标识为End.XTEpg SID4时,执行“丢弃”的处理动作。在表5所示的处理动作仅为示例,处理动作对应的内容可以是一个处理动作标识,从而使得网络设备可以根据该处理动作标识进一步获取到对应的具体处理动作,该处理动作对应的内容也可以是一个具体的处理动作,如:remark dscp 40,表示,将符合条件的数据报文的DSCP修改为40。在一个示例中,该第一微分段段标识也可以被记为目的微分段段标识。
表5
微分段段标识 | 处理动作 |
End.XTEpg SID3 | 标记 |
End.XTEpg SID4 | 丢弃 |
在一个示例中,网络设备101获得的处理策略如表6所示,网络设备101根据第一微分段段标识获得对应的微分段,如:从该微分段段标识的第64至第80比特位获得该微分段,并以该微分段作为匹配条件,当网络设备101接收到的数据报文对应的第一微分段段标识为End.XTEpg SID3时,根据该微分段段标识获得第一微分段为EPG3,执行“标记”的处理动作,当网络设备接收到的数据报文对应的第一微分段段标识为End.XTEpg SID4时,根据该微分段段标识获得第一微分段为EPG4,执行“丢弃”的处理动作。该第一微分段也可以被记为目的微分段或目的端点组。
表6
可选的,该网络设备101还根据第二微分段段标识确定对该第一数据报文的处理策略。该第二微分段段标识指示网络设备101的一个微分段。在网络设备101还根据第二微分段段标识确定对第一数据报文的处理策略之前,该网络设备101需要先获得第二微分段段标识。关于网络设备101如何得到第二微分段段标识,与上述网络设备103获得微分段段标识的方式相似,在一些可能的实施例中,可以由网络设备101自动分配第二微分段段标识,也可以人工配置第二微分段段标识。具体地获得方式,参见上述网络设备103获得微分段段标识部分的方式一和方式二,在此不再赘述。
在一个示例中,应用于图1所示的场景,网络设备101得到的微分段段标识和微分段之间的对应关系可以如下表7所示。
表7
当网络设备101存在如表1所示的微分段段标识和微分段之间的对应关系时,则还存在微分段与端点组的对应关系,该端点组可以用端点设备的IP地址、端点组设备与网络设备101相连的接口、MAC地址等等信息进行定义。以下以采用端点设备的IP地址表示端点组进行示例:如VM1和VM2可以用同样的IP地址前缀A1::1:1/80表示,VM3和VM4可以用同样的IP地址前缀A1::1:2/80表示可以如下表7所示。
表8
微分段标识 | 端点组 |
EPG1 | A1::1:1/80 |
EPG2 | A1::1:2/80 |
在另一个示例中,应用于图1所示的场景,网络设备101得到的微分段段标识和端点组之间的对应关系可以如下表9所示,在本示例中,该端点组通过端点组设备与网络设备101相连的接口进行定义,该接口可以为虚拟子接口,也可以为物理接口。以下以虚拟子接口作为示例:End.XTEpg SID1对应于端点组EPG1,网络设备101与该端点组EPG1相连的接口为其虚接口1,其名称为vInf101-1;End.XTEpg SID2对应于端点组EPG2,网络设备101与该端点组EPG2相连的端口为其虚接口2,其名称为vInf101-2。
表9
微分段段标识 | 端点组 |
End.XTEpg SID1 | vInf101-1 |
End.XTEpg SID2 | vInf101-2 |
当微分段段标识和端点组的对应关系如表9所示时,微分段段标识还可以作为一个微分段的标识,指示一个微分段。
应理解,以上仅为微分段段标识与微分段或者端点组的对应关系的示例,在具体实施过程中,可以基于以上多种方式,如根据IP前缀,或具体的IP地址的组合,或端点与网络设备相连的接口等等信息获得微分段段标识和微分段或端点组的对应关系。
网络设备101接收到第一数据报文后,根据该接收到第一数据报文确定第二微分段段标识。对应于网络设备101上的微分段段标识与端点组的对应关系信息,网络设备101根据“接收到第一数据报文确定第二微分段段标识”包括以下一种或多种方式:
方式一、网络设备101根据该第一数据报文的源IP地址确定第二微分段段标识。如,当该第一数据报文为VM1发送的第一数据报文,且其源IP地址为A1::1:1时,则网络设备101根据表7所示对应关系中的端点组信息确认VM1属于端点组EPG1,并进一步根据表6所示的对应关系确定该端点组对应的微分段段标识为End.XTEpg SID1。
方式二、网络设备101根据接收该第一数据报文的接口确定第二微分段段标识。如,当网络设备101为从vInf101-1接收到的第一数据报文,如表9所示,则该网络设备101确定该第一数据报文对应的第二微分段段标识为End.XTEpg SID1。
在网络设备101根据第二微分段段标识确定对该第一数据报文的处理策略之前,网络设备101还获得包括第二微分段段标识的处理策略。网络设备101获得包括第二微分段段标识的处理策略的方式与上述网络设备101获得包括第一微分段段标识的处理策略的方式相同,此处不再赘述。
在一个示例中,网络设备101获得的处理策略如表10所示,该处理策略的匹配条件包括第二微分段段标识和第一微分段段标识,也可记为:源微分段段标识和目的微分段段标识。表10示出了2条处理策略,第一条处理策略表明,当网络设备101接收到的数据报文确定的第二微分段段标识和第一微分段段标识满足匹配条件:第二微分段段标识为End.XTEpg SID1、第一微分段段标识为End.XTEpg SID3时,则网络设备101对该数据报文执行处理动作:标记。第二条处理策略表明,当网络设备101接收到的数据报文确定的第二微分段段标识和第一微分段段标识满足匹配条件:第二微分段段标识为End.XTEpg SID1、第一微分段段标识为End.XTEpg SID2时,则网络设备101对该数据报文执行处理动作:丢弃。
表10
第二微分段段标识 | 第一微分段段标识 | 处理动作 |
End.XTEpg SID1 | End.XTEpg SID3 | 标记 |
End.XTEpg SID1 | End.XTEpg SID4 | 丢弃 |
在一个示例中,网络设备101获得的处理策略如表11所示,该处理策略的匹配条件包括第二微分段和第一微分段,也可记为:源微分段和目的微分段,或者记为:源端点组和目的端点组。表11示出了2条处理策略,第一条处理策略表明,第二微分段和第一微分段满足匹配条件:第二微分段为EPG1、第一微分段为EPG3时,则网络设备101对该数据报文执行处理动作:标记。第二条处理策略表明,当网络设备101接收到的数据报文确定的第二微分段和第一微分段满足匹配条件:第二微分段为EPG1、第一微分段为EPG4时,则网络设备101对该数据报文执行处理动作:丢弃。
当网络设备101接收到的数据报文确定的第二微分段段标识为End.XTEpg SID1时,网络设备101根据该第二微分段段标识确定的第二微分段为EPG1,当网络设备101接收到的数据报文确定的第一微分段段标识为End.XTEpg SID3时,网络设备101根据该第一微分段段标识确定的第一微分段为EPG3。则网络设备101根据该第二微分段和第一微分段确定的处理动作为标记。
表11
第二微分段 | 第一微分段 | 处理动作 |
EPG1 | EPG3 | 标记 |
EPG1 | EPG4 | 丢弃 |
在网络设备101根据处理策略确定对数据报文的处理动作时,网络设备101可以对数据报文与匹配条件进行严格匹配或最长匹配。严格匹配表明,仅当数据报文完全满足该匹配条件时,才确定对该数据报文执行的处理动作。最长匹配表明,按照数据报文最长匹配的匹配条件,确定对该数据报文的处理动作,当存在多条匹配长度相等的处理策略时,可以执行第一条命中、或最后一条命中、或最高优先级命中的处理策略。
网络设备101计算匹配长度的方法可以包括多个方式。如方式一、可以按照满足匹配条件的1个分支则为1个长度,如上表10所示的匹配条件含有2个分支,即匹配第二微分段段标识和匹配第一微分段段标识,则最长匹配长度为2。方式二、根据先匹配第一微分段段标识,再匹配第二微分段段标识,再匹配其他分支的条件进行匹配,每匹配一项,即匹配长度加1。
以下分别对严格匹配和最长匹配进行示例:如,当网络设备101中获得的处理策略如表10所示,当采用严格匹配时,则只有当网络设备101根据接收到的数据报文确定的第二微分段段标识以及第一微分段段标识为(End.XTEpg SID1,End.XTEpg SID3)或(End.XTEpgSID1,End.XTEpg SID4),即完全满足第一条处理策略的匹配条件或完全满足第二条处理策略的匹配条件时,才确定针对该数据报文的处理动作。如果仅匹配了如,第一微分段段标识为End.XTEpg SID3,则网络设备101认为不存在对该数据报文的处理动作,则网络设备101则执行默认的处理动作,如转发或丢弃。该默认的处理动作可以是在网络设备上配置的一条默认处理策略,也可以是该段路由网络中所有设备默认的处理策略。当采用最长匹配时,则当网络设备101根据接收到的数据报文确定的第二微分段段标识为End.XTEpg SID1和第一微分段段标识为End.XTEpg SID3时,则根据表9中的第一条处理策略,确认针对该数据报文的处理动作为标记,但是当网络设备101根据接收到的数据报文仅确定了第一微分段段标识为End.XTEpg SID3,而未获得第二微分段段标识,或获得的第二微分段段标识不为End.XTEpg SID1时,网络设备101仍可以确定对该数据报文匹配第一条处理策略,从而确定针对该数据报文的处理动作为标记。
可选的,网络设备获得的处理策略还包括数据报文的发送方向,如数据报文的发送方向为流入(in),则表明该处理策略为针对该网络设备接收到的数据报文的处理策略;如数据报文的发送方向为流出(out),则表明该处理策略为针对该网络设备发送的数据报文的处理策略。
在一种可能的方式中,当网络设备101还根据接收到的数据报文确定第二微分段段标识后,网络设备101可以仅根据第二微分段段标识确定对第一数据报文的处理动作。网络设备101根据第二微分段段标识确定对第一数据报文的处理动作的方法和可选方式与网络设备101仅根据第一微分段段标识确定对第一数据报文的处理动作的方法和可选方式相同,在此不再赘述。
S308:网络设备101对第一数据报文执行确定的处理动作。
在S307中,当网络设备101根据该配置为不查找或执行处理策略,确定对第一数据报文的处理动作为转发时,执行S309。
在S307中,当网络设备101根据配置,查找第一数据报文的处理策略并根据处理策略来处理时,则根据确定的处理动作,执行以下步骤之一:
当网络设备101确定的对第一数据报文的处理动作为丢弃时,网络设备101丢弃第一数据报文,结束流程。
当网络设备101确定的对第一数据报文的处理动作为镜像时,网络设备101向指定的地址镜像该第一数据报文,结束流程。
当网络设备101确定的对第一数据报文的处理动作为重定向时,网络设备101更改该第一数据报文的转发目的地址,结束流程。
当网络设备101确定的处理动作为转发或标记时,执行S309。
S309:网络设备101根据第一数据报文生成第二数据报文。
网络设备101根据获得的针对第一数据报文的段路由网络转发路径和第一数据报文,生成第二数据报文。网络设备101获得该段路由网络转发路径的方式可以包括:一、网络设备101自身具备计算段路由网络转发路径的能力,网络设备101确定该段路由网络转发路径。二、网络设备101从控制器或路径计算单元处获得该段路由网络转发路径。
在一个示例中,当中间网络设备不支持SR时,网络设备101获得的针对VM1到VM5的数据报文的段路由网络转发路径为:End.XTEpg SID3。当中间网络设备支持SR时,网络设备101获得的针对VM1到VM5的数据报文的段路由网络转发路径,该段路由网络转发路径可对应一个段标识列表,该段标识列表可以包括1个或多个段标识,如该段标识列表为:End.SID102,End.XTEpg SID3,其中,End.SID102为网络设备102的段标识,End.XTEpg SID3为网络设备101的1个微分段段标识。
网络设备101根据该转发路径和第一数据报文生成第二数据报文。以下SRv6作为示例,SR-MPLS的方案也与此类似,在此不再赘述。
网络设备101生成第二数据报文,该第二数据报文包括SRH,该SRH中包括段标识列表,该段标识列表包括第一微分段段标识,如End.XTEpg SID3。
可选的,该段标识列表还包括中间网络设备的段标识,如网络设备102的段标识。
可选的,该第二数据报文中还包括第二微分段段标识,本申请实施例提供多种数据报文中携带第二微分段段标识的方式,包括:
方式一、该段标识列表中还包括第二微分段段标识,如示例中的源微分段段标识,End.XTEpg SID1。
在一个如图7所示的SRH的示例中,当该第二端点组端标识携带在SRH中时,该第二微分段段标识携带在SRH的Segment List[0]的位置,该第一微分段段标识携带在SRH的Segment List[1]的位置,即该SRH中的剩余节点(segments left)的值至少为1。
方式二、该第二数据报文中还包括元数据,该元数据中携带该第二微分段段标识。为了使得该第二数据报文中还可以携带第二微分段段标识,可以定义一种新的元数据。在该方式下,还可以在该元数据中携带第一微分段段标识,这样,所有段路由网络中需要根据微分段段标识进行数据报文的处理的网络设备都可以仅通过元数据即获得第一微分段段标识和第二微分段段标识,而不需要再从数据报文的SRH中获得第一微分段段标识和第二微分段段标识。
该元数据可以通过如图8所示的TLV进行携带。在该TLV中,类型字段表明其为携带微分段段标识的元数据,该类型字段的值可以为该携带端点组端标识申请的特定的值,如91。该长度字段表明该元数据的整体长度,保留字段可留作特殊处理使用,当前暂无特定定义。第二微分段段标识字段携带该第二微分段段标识,如:End.XTEpg SID2,可选的,该TLV中还包括第一微分段段标识字段,该第一微分段段标识字段携带第一微分段段标识,如:End.XTEgp SID1。
方式三、网络设备101将第一数据报文的IPv6报文头复制携带在第二数据报文的载荷中,并为该第二数据报文生成新的IPv6报文头,该IPv6报文头中的源地址为该第二微分段段标识。
运维人员可以通过提前在网络设备上配置在生成第二数据报文的时候是否需要携带第二微分段段标识,以及采用以上三种方式中的哪种方式实现第二微分段段标识的携带。或者网络设备默认采用一致的方式来携带第二微分段段标识。
当运维人员是通过配置使得网络设备在生成第二数据报文的时候携带第二微分段段标识且确定网络设备101携带第二微分段段标识的方式之后,为了使得网络设备101生成的第二数据报文在转发的过程中可以被正确的处理,而不影响数据报文的转发,网络设备101在生成第二数据报文的SRH时,可以通过在该SRH中标识第二微分段段标识的携带方式,以使得在该段路由网络中具备根据微分段段标识对数据报文进行处理的网络设备在报文转发的过程中可以确定获取第二端点组端标识的位置。
如图9所示的第二数据报文的SRH的Flag标志位示意图所示,SRH的标志位(Flags)占8比特,其中U,当前暂未使用,P标志,占1比特,为保护标志。O标志,占1比特,为操作、管理和维护(operation,administration and maintenance,OAM)标志。A标志,占1比特,为告警标志,如果存在,则以为着存在重要的TLV。H标志,占1比特,为散列信息认证码(hash-basedmessage authentication code,HMAC)标志,如果存在,说明存在HMAC TLV。网络设备101可以在SRH的Flags字段的U标志的低比特位,标识第二端点组携带的位置,如当Flags的第8比特位为1时,则表明该第二微分段段标识的携带方式采用了上述方式一,携带在SRH的段标识列表的segment[0]中。当Flags字段的第7比特位为1时,则表明该该二微分段段标识的携带方式采用了上述方式二,携带在该SRH的元数据中。当Flags字段的第6比特位为1时,则表明该该二微分段段标识的携带方式采用了上述方式三,携带在第二报文的IPv6报文头的源IP地址中。
S311:网络设备101向网络设备103发送第二数据报文。
网络设备101根据路由转发信息,向网络设备103发送第二数据报文,该第二数据报文中携带有第一微分段段标识。
可选的,该第二数据报文还携带有第二微分段段标识。
S321:网络设备103接收到网络设备101发送的第二数据报文后,从第二数据报文中获得第一微分段段标识。
如,网络设备103从第二数据报文中获得该第一微分段段标识为:End.XTEpgSID3。
该网络设备103在根据第一微分段段标识确定对所述数据报文的处理动作之前,所述网络设备103还需要获得处理策略,该处理策略中包括匹配条件和处理动作。该处理策略中的处理动作包括以下一项或多项:转发、丢弃、标记、重定向和镜像。其中,标记为一种特殊的转发,即,网络设备在转发数据报文前,先对该数据报文进行标记。网络设备对数据报文可做的标记动作可包括,如重新标记该数据报文的DSCP,或修改该数据报文的优先级等。
网络设备103获得处理策略的方式与处理策略的内容与网络设备101获得处理策略的方式与处理策略的内容一致,详情请参见网络设备101获得处理策略处的详细描述,本申请在此不再赘述。
S323:网络设备103根据该第一微分段段标识确定对第二数据报文的处理动作。
网络设备103根据第一微分段段标识确定对第二数据报文的处理动作的方式与网络设备101根据第一微分段段标识确定对第一数据报文的处理动作的方式一致,详情请参见网络设备101根据第一微分段段标识确定对第一数据报文的处理动作处的详细描述,本申请在此不再赘述。
可选的,网络设备103还根据第二微分段段标识确定对第二数据报文的处理动作。
当该第二数据报文中还携带有第二微分段段标识时,网络设备103还获得第二微分段段标识,并根据该第一微分段段标识和第二微分段段标识对第二数据报文执行处理动作。
对应于网络设备101携带第二微分段段标识的三种方式,以及第二数据报文中对该携带方式的标识:网络设备103根据该标识的指示,从第二数据报文的相应位置获得第二微分段段标识。如,当第二数据报文的SRH的Flags字段的第8比特位为1时,网络设备103从第二数据报文的SRH的段标识列表的segment[0]中获得该第二微分段段标识。当Flags字段的第7比特位为1时,则网络设备103从第二数据报文的SRH的元数据中获得该第二微分段段标识。当Flags字段的第6比特位为1时,则网络设备103从第二数据报文的IPv6报文头的源IP地址中获得该第二微分段段标识。
在一种可能的实现方式中,网络设备直接按照默认的规则,例如如从元数据中获取第二微分段段标识。
网络设备103根据第一微分段段标识和第二微分段段标识确定对第二数据报文的处理动作的方式与网络设备101根据第一微分段段标识和第二微分段段标识确定对第一数据报文的处理动作的方式一致,详情请参见网络设备101根据第一微分段段标识和第二微分段段标识确定对第一数据报文的处理动作处的详细描述,本申请在此不再赘述。
在一种可能的方式中,当网络设备103接收到的第二数据报文中还携带有第二微分段段标识时,网络设备103可以仅根据第二微分段段标识确定对第二数据报文的处理动作。网络设备103根据第二微分段段标识确定对第二数据报文的处理动作的方法和可选方式与网络设备101仅根据第一微分段段标识确定对第一数据报文的处理的方法和可选方式相同,在此不再赘述。
S325:网络设备103对第二数据报文执行确定的处理动作。
当网络设备103确定的对第二数据报文的处理动作为丢弃时,网络设备103丢弃第二数据报文。
当网络设备103确定的对第二数据报文的处理动作为镜像时,网络设备103向指定的地址镜像该第一数据报文。
当网络设备103确定的对第二数据报文的处理动作为重定向时,网络设备103更改该第一数据报文的转发目的地址。
S327:当网络设备103确定的处理动作为转发或标记时,网络设备103根据第二数据报文生成第三数据报文。
对应于网络设备101携带第二微分段段标识的三种方式,以及第二数据报文中对该携带方式的标识:网络设备103根据该标识的指示,根据第二数据报文生成第三数据报文。当第二数据报文的SRH的Flags字段的第8比特位为1时,网络设备在根据第二报文生成第三报文时,则将第二数据报文的SRH剥离,生成第三数据报文。当Flags字段的第7比特位为1时,则网络设备103将第二数据报文的SRH和元数据剥离,生成第三数据报文。当Flags字段的第6比特位为1时,则网络设备103将第二数据报文的IPv6报文头替换为复制的IPv6报文头(即第一报文的IPv6报文头),并将第二数据报文的SRH进行剥离,生成第三数据报文,第三数据报文的IPv6报文头即第一报文的IPv6报文头。
或网络设备按照默认的规则,如将第二数据报文的SRH剥离,得到第三数据报文。
S329:网络设备103发送第三数据报文。
网络设备根据第一微分段段标识所标识的微分段EPG3,向其对应的端点组中的端点VM5发送该第三数据报文。如,网络设备103向第三数据报文的目的IP地址(即VM5的IP地址)发送第三数据报文。
以上是本申请实施例提供的一种方法实施例,该方法实施例提供了一种作用于段路由网络中的头节点和尾节点的,根据微分段段标识进行数据报文处理的方法。
如图3b所示的方法实施例,提供了一种数据报文的处理方法流程图,该流程图与图3a所示的方法实施例主要差别在于,第一网络设备和第二网络设备根据第一微分段段标识和第二微分段段标识进行报文处理。本实施例是对图3a方法实施例的一个细化表示,相关每个执行步骤的具体内容可具体参考图3a中的相同编号的步骤以及其可选方式的实现,为了简洁,不再在此处赘述图3b实施例的详细步骤。
以下介绍另一种方法实施例,该方法实施例提供了一种作用于段路由网络中的头节点、中间节点和尾节点的,根据微分段段标识进行数据报文处理的方法。在本申请实施例中,头节点和尾节点执行的根据微分段段标识进行数据报文处理的方法与上一个方法实施例中的方法类似。本申请实施例将重点针对于上一方法实施例差异的地方进行详细讲解。
以下,结合图1和图4a对该方法主要包括的步骤和可选方式进行讲解,为便于理解,以网络设备101作为第三网络设备,网络设备102作为第二网络设备,网络设备103作为第一网络设备为示例对本方法实施例进行示例性讲解。应理解,这仅是一种示例,本领域的技术人员也可以参考本实施例,做类似的替换、应用,本申请不再一一举例。
S401:网络设备103发布第一微分段段标识。
网络设备103发布第一微分段段标识的方法和可选方式,以及网络设备103获得第一微分段段标识的方法和可选方式,与图3a所示的实施例中的方法和可选方式一致,详情请见图3a实施例中的步骤S301相关的内容和可选方式,在此不再赘述。
S402:网络设备102发布微分段节点段标识。
由于网络设备102为第一数据报文在图1所示的段路由网络中的转发路径上的中间转发节点,为了使得网络设备102同样具备根据微分段段标识对数据报文执行处理动作的功能,可以采用为网络设备102定义和发布有特定功能的段标识的方式,所述有特定功能的段标识即为微分段节点段标识,使得网络设备102具备该功能。
微分段节点段标识对应一个网络设备,可以表示为End.TEpg SID,End表示endpoint,意为端点;T表示table lookup,意为查表;Epg表示endpoint group,意为端点组;SID意为段标识。端点组段节点标识可以可以满足IPv6地址或MPLS标签的格式。
网络设备102发布微分段节点段标识的方式包括以下三种或更多的发布方式:
方式一、网络设备102发送通告报文,该报文中携带有该微分段节点段标识。
该通告报文可以为边界网关协议(Border Gateway Protocol,BGP)报文,也可以是内部网关协议(Interior Gateway Protocol,IGP)报文,本申请不做具体限定。
可选的,该通告报文中的微分段节点段标识携带在其第二类型长度值(typelength value,TLV)中。该第二TLV的格式示意如图10所示。该图中的类型字段标识表示该第二TLV的类型,该类型字段的取值可以标识该第二TLV是用于发布End.TEpg SID的TLV,该类型字段的取值可以是为发布微分段节点段标识新申请的类型,例如可以是92。长度字段的取值标识该第二TLV的长度。标志字段取值可以为O,也可以取值为1,如,当取值为0时,表示其为端点组类型的TLV。保留字段保留用于后续扩展,如可用于标识转发路径的。微分段节点段标识字段用于承载微分段节点段标识。
方式二、网络设备102可以通过BGP链路状态协议(Border Gateway Protocol-link state,BGP-LS),发布微分段节点段标识。
具体来讲,网络设备102可以通过BGP-LS,向控制器发送微分段节点段标识,控制器可以通过BGP-LS,接收网络设备102发送的微分段节点段标识,并将微分段段标识发送至网络设备101。
方式三、网络设备102可以通过路径计算通信协议(Path Computation ElementCommunication Protocol,PCEP),发布微分段节点段标识。
具体来讲,网络设备102可以通过PCEP,向控制器或路径计算单元(pathcomputation element,PCE)发送微分段节点段标识,控制器可以通过PCEP,接收网络设备102发送的微分段节点段标识,将微分段节点段标识发送至网络设备101。
在一种可能的设计中,在网络设备102发布微分段节点段标识之前,网络设备102需要先获得微分段节点段标识。关于网络设备102如何得到微分段节点段标识,在一些可能的实施例中,可以由网络设备102自动分配微分段节点段标识,也可以人工配置至少微分段节点段标识。具体地,得到微分段节点段标识的方式可以包括下述方式一或方式二中的任一项或多项。
方式一、网络设备102为自己分配微分段节点段标识。
在一个示例中,网络设备102可以自己分配一个或多个微分段节点段标识,如该段标识可以为表示节点类型的段标识,也可以为表示邻接的段标识,网络设备102可以存储有段标识空间,可以从段标识空间中选择未被占用的微分段节点段标识,将微分段节点段标识分配给自身。
方式二、网络设备102接收配置指令,网络设备102从配置指令获取微分段节点段标识,网络设备102还可以从配置指令中获取微分段节点段标识和转发路径的对应关系。其中,配置指令可以由用户在网络设备102上的配置操作触发,配置指令也可能由网管或者控制器(controller)触发。
在一个SRv6的示例中,微分段节点段标识的具体取值包括以下两个部分:位置信息(Locator)以及功能(Function):SRv6 SID是IPv6地址的形式,SRv6 SID可以由位置信息和功能两部分组成,格式为:位置信息:功能。其中,位置信息占据IPv6地址的高比特位,功能占据IPv6地址的低比特位。其中,位置信息可以具有定位功能,可以在SR域唯一,功能代表设备的指令,这些指令由设备预先设定,功能部分用于指示SRv6 SID的生成设备执行相应的功能操作。在一个示例中,网络设备102获得的微分段节点段标识包括位置和function部分,功能部分用于指示网络设备102执行根据微分段段标识对数据报文执行预定义的操作。
可选的:网络设备101和网络设备103也发布微分段节点段标识,网络设备101和网络设备103获得和发布微分段节点段标识的方式与网络设备102的方式一致,在此不再赘述。
S403:网络设备101获得第一微分段段标识。
网络设备101获得第一端点组的方法和可选方式与图3a所示的实施例中的方法和可选方式一致,详情请见图3a实施例中的步骤S303相关的内容和可选方式,在此不再赘述。
S404:网络设备101获得微分段节点段标识。
对应于网络设备102发布微分段节点段标识的方式,网络设备101获得该微分段节点段标识的方式可以为以下两种方式。
方式一、网络设备101接收网络设备102发送的通告报文,该报文中携带有该微分段节点段标识。
具体来说,当网络设备102通过BGP报文发送微分段节点段标识时,网络设备101接收到网络设备103发送的BGP报文,并从该报文中获得该微分段节点段标识;当网络设备102通过IGP报文发送微分段节点段标识,则网络设备101接收到网络设备102发送的IGP报文,并从该报文中获得该微分段节点段标识。
进一步来说,当该微分段节点段标识携带在BGP报文或IGP报文的第二TLV中时,网络设备101从该BGP报文或IGP报文的第二TLV中获得微分段节点段标识。
方式二、网络设备101接收来自控制器或路径计算单元发送的微分段节点段标识。
具体来讲,当网络设备102通过BGP-LS向控制器发送微分段节点段标识时,控制器可以通过BGP-LS协议,接收网络设备102发送的微分段节点段标识,并将微分段节点段标识发送至网络设备101。当网络设备102通过发送PCEP报文,向控制器或PCE发送微分段节点段标识时,控制器或PCE可以接收网络设备102发送的微分段节点段标识,并将微分段节点段标识发送至网络设备101。上述控制器或PCE执行向网络设备101发送微分段节点段标识的时间可以是在接收到微分段节点段标识之后即发送,也可以是在一段时间,或当网络设备101向控制器或PCE请求一条转发路径的时候再发送给网络设备101。
以上步骤S401和S402的执行没有先后顺序,S403和S404的执行步骤也没有先后顺序。
S405:网络设备101接收第一数据报文,并根据该第一数据报文确定第一微分段段标识,该第一数据报文中不包括第一微分段段标识。
网络设备101根据该第一数据报文确定第一微分段段标识的方法和可选方式与图3a所示的实施例中的方法和可选方式一致,详情请见图3a实施例中的步骤S305相关的内容和可选方式,在此不再赘述。
S407:网络设备101根据第一微分段段标识确定对第一数据报文的处理动作。
网络设备101根据第一微分段段标识确定对第一数据报文的处理动作的方法和可选方式与图3a所示的实施例中的方法和可选方式一致,详情请见图3a实施例中的步骤S307相关的内容和可选方式,在此不再赘述。
S408:网络设备101对第一数据报文执行确定的处理动作。
网络设备101根据第一微分段段标识对第一数据报文执行确定的处理动作的方法和可选方式与图3a所示的实施例中的方法和可选方式一致,详情请见图3a实施例中的步骤S308相关的内容和可选方式,在此不再赘述。
S409:当网络设备101根据第一数据报文确定的处理动作包括转发或标记时,网络设备101根据第一数据报文生成第二数据报文。
网络设备101根据获得的针对第一数据报文的段路由网络转发路径和第一数据报文,生成第二数据报文。网络设备101获得该段路由网络转发路径的方式可以包括:一、网络设备101自身具备计算段路由网络转发路径的能力,网络设备101确定该段路由网络转发路径。二、网络设备101从控制器或路径计算单元处获得该段路由网络转发路径。
在一个示例中,网络设备101获得的转发路径对应的段标识列表为:End.TEpgSID1021,End.XTEpg SID3。
网络设备101根据该转发路径和第一数据报文生成第二数据报文。以下SRv6作为示例,SR-MPLS的方案也与此类似,在此不再赘述。
网络设备101生成第二数据报文,该第二数据报文包括SRH,该SRH中包括段标识列表,该段标识列表包括第一微分段段标识和微分段节点段标识,如End.TEpg SID1021,End.XTEpg SID3。当该段标识列表不包括第二微分段段标识时,该第一微分段段标识携带在SRH的Segment List[0]的位置,该微分段节点段标识携带在SRH的Segment List[n]的位置,其中n>0,n是指定路径上的中间节点的数量。
可选的,该第二数据报文中还包括第二微分段段标识。当该段标识列表包括第二微分段段标识时,该第一微分段段标识携带在SRH的Segment List[1]的位置,该第二微分段段标识携带在SRH的Segment List[0]的位置,该微分段节点段标识携带在SRH的SegmentList[n+1]的位置,其中n>1。在本方法实施例中所述的网络设备101生成第二数据报文中携带第二微分段段标识的方法和可选方式与图3a所示的实施例中的第二报文中文中携带第二微分段段标识的方法和可选方式一致,详情请见图3a所示的实施例中的S309部分相关内容,本申请在此不再赘述。
S411:网络设备101向网络设备102发送第二数据报文。
网络设备101根据路由转发信息,向网络设备102发送第二数据报文,该第二数据报文中携带有第一微分段段标识和微分段节点段标识。
可选的,该第二数据报文还携带有第二微分段段标识。
S413:网络设备102接收到网络设备101发送的第二数据报文后,从第二数据报文中获得第一微分段段标识。
网络设备102接收到网络设备101发送的第二数据报文,该数据报文的SRH中的目的地址为网络设备102发布的微分段节点段标识,如End.TEpg SID1021。网络设备102执行该微分段节点段标识指示的功能,即,根据微分段段标识对数据报文执行处理动作。
网络设备102从第二数据报文中获得第一微分段段标识,如:End.XTEpg SID3。在此实施中,网络设备102执行End.TEpg SID1021指示的功能,即,根据End.XTEpg SID3对数据报文执行处理动作。
该网络设备102在根据第一微分段段标识确定对所述数据报文的处理动作之前,所述网络设备102还需要获得处理策略,该处理策略中包括匹配条件和处理动作。该处理策略中的处理动作包括以下一项或多项:转发、丢弃、标记、重定向和镜像。其中,标记为一种特殊的转发,即,网络设备在转发数据报文前,先对该数据报文进行标记。网络设备对数据报文可做的标记动作可包括,如重新标记该数据报文的DSCP,或修改该数据报文的优先级等。
网络设备102获得处理策略的方式与处理策略的内容与图3a所示的方法实施例中的网络设备101获得处理策略的方式与处理策略的内容一致,详情请参见图3a所示的网络设备101步骤S307获得处理策略处的详细描述,本申请在此不再赘述。
S415:网络设备102根据该第一微分段段标识确定对第二数据报文的处理动作。
网络设备102根据第一微分段段标识确定对第二数据报文的处理动作的方式与图3a所示的方法实施例中的网络设备103根据第一微分段段标识确定对第一数据报文的处理动作的方式一致,详情请参见图3a所示的方法实施例中的网络设备103根据第一微分段段标识确定对第一数据报文的处理动作处的详细描述(如步骤323),本申请在此不再赘述。
S416:网络设备102对第二数据报文执行确定的处理动作。
当网络设备102确定的对第二数据报文的处理动作为丢弃时,网络设备102丢弃第二数据报文,结束流程。
当网络设备102确定的对第二数据报文的处理动作为镜像时,网络设备102向指定的地址镜像该第一数据报文,结束流程。
当网络设备102确定的对第二数据报文的处理动作为重定向时,网络设备102更改该第一数据报文的转发目的地址,结束流程。
当网络设备102确定的处理动作为转发或标记时,执行S417。
S417:网络设备102根据第二数据报文生成第三数据报文。
网络设备102修改第二数据报文得到第三数据报文,包括:1.网络设备102将SRH的SL字段值置为SL-1的值,即,当SL=1时,将SL值修改为0,当SL=2时,将SL值修改为1。2.网络设备102将第二数据报文中的IPv6头的目的地址修改为Segmentlist[SL]。在一个示例中,网络设备102将SRH的SL字段值置为0,并将IPv6头内的目的地址修改为:End.XTEpgSID3。
S419:网络设备102发送第三数据报文。
网络设备102根据IPv6目的地址查找转发表项发送该第三数据报文。
在一个示例中,网络设备102向网络设备103发送第三数据报文。
S421:网络设备103接收到网络设备102发送的第三数据报文后,从第三数据报文中获得第一微分段段标识。
网络设备103从第三数据报文中获得第一微分段段标识的方法和可选方式与图3a所示的方法实施例中的网络设备103获得第一微分段段标识的方法和可选方式一致,详情请参见图3a所示的方法实施例中的S321处的详细描述,本申请在此不再赘述。
S423:网络设备103根据该第一微分段段标识确定对第三数据报文的处理动作。
网络设备103根据该第一微分段段标识确定对第三数据报文的处理动作的方法和可选方式与图3a所示的方法实施例中的网络设备103根据第一微分段段标识确定对第二数据报文的处理动作的方式一致,详情请参见图3a所示的方法实施例中的S323处的详细描述,本申请在此不再赘述。
S425:网络设备103对第三数据报文执行确定的处理动作。
网络设备103对第三数据报文执行确定的处理动作的方法和可选方式与图3a所示的方法实施例中的网络设备103对第二数据报文执行确定的处理动作方式一致,详情请参见图3a所示的方法实施例中的S325处的详细描述,本申请在此不再赘述。
S427:当网络设备103确定的处理动作为转发或标记时,网络设备103根据第三数据报文生成第四数据报文。
网络设备103根据第三数据报文生成第四数据报文的方法和可选方式与图3a所示的方法实施例中的网络设备103根据第二数据报文生成第三数据报文的处理动作方式一致,详情请参见图3a所示的方法实施例中的S327处的详细描述,本申请在此不再赘述。
S429:网络设备103发送第四数据报文。
网络设备103网发送第四数据报文的方法和可选方式与图3a所示的方法实施例中的网络设备103发送第三数据报文的方式一致,详情请参见图3a所示的方法实施例中的S329处的详细描述,本申请在此不再赘述。
如图4b所示的方法实施例,提供了一种数据报文的处理方法流程图,该流程图与图4a所示的方法实施例主要差别在于,第一网络设备、第二网络设备和第三网络设备根据第一微分段段标识和第二微分段段标识进行报文处理。本实施例是对图4a方法实施例的一个细化表示,相关每个执行步骤的具体内容可具体参考图4a中的相同编号的步骤以及其可选方式的实现,为了简洁,不再在此处赘述图4b实施例的详细步骤。
以上介绍了本申请提供的数据报文的处理方法实施例,以下介绍本申请提供的第一网络设备和第二网络设备。
图11是本申请实施例提供的一种第二网络设备结构示意图,该网络设备1100可以执行图3a所示的第二网络设备(网络设备101)和图4a所示的第二网络设备(网络设备101)执行的方法。该网络设备1100包括接收单元1101,处理单元1102,发送单元1103。该接收单元1101可用于执行例如图3a实施例中的步骤S303和S305中的接收第一数据报文的相关方法,还可用于执行例如图4a实施例中的步骤S403、S404和S405中的接收第一数据报文的相关方法。处理单元1102,可用于执行例如图3a实施例中的步骤S307、S308、S309和S305中的确定第一微分段段标识的相关方法,还可用于执行例如图4a实施例中的步骤S407、S408、S409和S405中的确定第一微分段段标识的相关方法;发送单元1103,可用于执行例如图3a实施例中的步骤S311,还可用于执行例如图4a实施例中的步骤S411。
需要说明的一点是,图11实施例提供的第二网络设备在进行如上所述的数据报文的处理时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将第二网络设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能;或者用统一个功能单元完成上述多个单元的功能。应理解,上述实施例提供的第二网络设备与上述转发路径的确定方法实施例属于同一构思,在此仅针对该第二网络设备的各单元执行的步骤进行了举例说明,但并不代表其就不执行上述实施例中的其他步骤或可选方法,其具体实现过程详见方法实施例,这里不再赘述。
图12是本申请实施例提供的一种第一网络设备结构示意图,该网络设备1200可以执行图3a所示的第一网络设备(网络设备103)和图4a所示的第一网络设备(网络设备102)和第二网络设备(网络设备103)执行的方法。该网络设备1200包括接收单元1201,处理单元1202,发送单元1203。该接收单元1201可用于执行例如图3a所示的实施例中的步骤S321中的接收第二数据报文的相关方法。处理单元1202可用于执行例如图3a所示的实施例中的步骤S323、S325、S337和S321中的获得第一微分段段标识的方法。发送单元1203可用于执行例如图3a所示的实施例中的步骤S301和S319。该接收单元1201可用于执行例如图4a所示的实施例中的步骤S413中的接收第二数据报文的相关方法和S421中的接收第三数据报文的相关方法。处理单元1202可用于执行例如图4a所示的实施例中的步骤S415、S416、S417、S423、S425、S427、S413中的获得第一微分段段标识的相关方法和S421中的获得第一微分段段标识的相关方法。发送单元1203可用于执行例如图4a所示的实施例中的步骤S401、S402、S419和S429。
需要说明的一点是,图12实施例提供的第一网络设备在进行如上所述的数据报文的处理时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将第一网络设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能;或者用统一个功能单元完成上述多个单元的功能。应理解,上述实施例提供的第一网络设备与上述数据报文的处理方法实施例属于同一构思,在此仅针对该第一网络设备的各单元执行的步骤进行了举例说明,但并不代表其就不执行上述实施例中的其他步骤或可选方法,其具体实现过程详见方法实施例,这里不再赘述。
以上介绍了本申请实施例的第一网络设备和第二网络设备,以下介绍该第一网络设备和第二网络设备可能的产品形态。应理解,但凡具备上述图11中的第二网络设备的特征的任何形态的产品,和但凡具备上述图12中的第一网络设备的特征的任何形态的产品,都落入本申请的保护范围。还应理解,以下介绍仅为举例,不限制本申请实施例的第一网络设备和第二网络设备的产品形态。
图13是本申请实施例提供的一种设备1300的结构示意图。图3a实施例所示的第一网络设备或第二网络设备,或图4a实施例所示的第一网络设备、第二网络设备或第三网络设备,均可以通过图13所示的设备来实现。参见图13所示的设备结构示意图。设备1300包括主控板和一个或多个接口板,主控板与接口板通信连接。主控板也称为主处理单元(mainprocessing unit,MPU)或路由处理卡(route processor card),主控板负责对设备1300中各个组件的控制和管理,包括路由计算、设备管理和维护功能。接口板也称为线卡(lineprocessing unit,LPU)或线卡(line card),用于转发数据。在一些实施例中,设备1300也可以包括交换网板,交换网板与主控板、接口板通信连接,交换网板用于转发接口板之间的数据,交换网板也可以称为交换网板单元(switch fabric unit,SFU)。接口板包括中央处理器、存储器、转发芯片和物理接口卡(physical interface card,PIC)。中央处理器与存储器、网络处理器和物理接口卡分别通信连接。存储器用于存储转发表。转发芯片用于基于存储器中保存的转发表转发接收到的数据报文,如果数据报文的目的地址为设备1300的地址,则将该数据报文上送至中央处理器(central processing unit,CPU),如中央处理器1331处理;如果数据报文的目的地址不是设备1300的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该数据报文转发到该目的地址对应的出接口。转发芯片可以是网络处理器(network processor,NP)。PIC也称为子卡,可安装在接口板上,负责将光电信号转换为数据报文并对数据报文进行合法性检查后转发给转发芯片处理。在一些实施例中,中央处理器也可执行转发芯片的功能,比如基于通用CPU实现软件转发,从而接口板中不需要转发芯片。主控板、接口板、交换网板之间的通信连接可以通过总线来实现。在一些实施例中,转发芯片可以通过专用集成电路(application-specificintegrated circuit,ASIC)或现场可编程门阵列(field programmable gate array,FPGA)实现。
在逻辑上,设备1300包括控制面和转发面,控制面包括主控板和中央处理器,转发面包括执行转发的各个组件,比如存储器、PIC和NP。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,NP基于控制面下发的转发表对设备1300的PIC收到的报文查表转发。控制面下发的转发表可以保存在存储器中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。下面将结合图3a和图4a的实施例对上述过程进行简要说明。
如图3a或图4a所述的方法所示,分段路由网络中的第二网络设备可以通过物理接口卡1333接收第一数据报文,判断当该第一数据报文的目的IP地址为网络设备1300的地址,则将该数据报文上送至CPU1331进行处理。该CPU1331可以根据该第一数据报文确定第一微分段段标识。可选的,该CPU1331还用于根据第一数据报文确定第二微分段段标识。该CPU1331还用于根据第一微分段段标识对第一数据报文执行对应的处理动作和生成第二数据报文;或者根据第一微分段段标识和第二微分段段标识对第一数据报文执行对应的处理动作和生成第二数据报文。CPU1311可被配置用于接收控制器或者计算单元的发送的配置指令。物理接口卡1333可用于向第一网络设备发送第二数据报文。
如图3a或图4a所述的方法所示,分段路由网络中的第二网络设备或第一网络设备可以通过物理接口卡1333第一数据报文,判断当该第一数据报文的目的IP地址为网络设备1300的地址,则将该数据报文上送至CPU1331进行处理,该第一数据报文中携带有第一微分段段标识,可选的,该第一数据报文还携带有第二微分段段标识。该CPU1331用于根据第一微分段段标识对第一数据报文执行对应的处理动作和生成第二数据报文;或者根据第一微分段段标识和第二微分段段标识对第一数据报文执行对应的处理动作和生成第二数据报文。CPU1311可被配置用于接收控制器或者计算单元的发送的配置指令。物理接口卡1333可用于向第一网络设备发送第二数据报文。
本发明实施例提供的网络设备可对应于上述图3a或图4a所述方法实施例中的第一网络设备、第二网络设备或第三网络设备,可以实现上述各个方法实施例中的第一网络设备、第二网络设备或第三网络设备所具有的功能和/或所实施的各种步骤和方法。以上仅为简要的示例性描述,为了简洁,在此不再赘述。
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
图14是本申请实施例提供的一种设备1400的结构示意图。图3a实施例所示的第一网络设备或第二网络设备,或图4a实施例所示的第一网络设备、第二网络设备或第三网络设备,均可以通过图14所示的设备来实现。参见图14所示的设备结构示意图。该设备1400包括至少一个处理器1401,通信总线1402以及至少一个通信接口1404,可选地,该设备1400还可以包括存储器1403。
处理器1401可以是一个通用中央处理器(central processing unit,CPU)、特定应用集成电路(application-specific integrated circuit,ASIC)或一个或多个用于控制本申请方案程序执行的集成电路。处理器可以用于对接收到的报文进行处理,以实现本申请实施例中提供的报文处理的方法。
比如,当图3a或图4a中的第二网络设备通过图14所示的设备1400来实现时,该处理器可以用于在接收到的报文中添加包括第一微分段段标识和第二微分段段标识的SRH,以便于后续分段路由网络中的其他网络设备可以根据第一微分段段标识和第二微分段段标识对数据报文进行处理,具体功能实现可参考方法图3a或图4a方法实施例中对应第二网络设备的处理部分。又比如,当图3a或图4a中的第一网络设备,或图4a中的第二网络设备通过图14所示的网络设备来实现时,该处理器可以用于在接收到的数据报文中获取第一微分段段标识、第二微分段段标识,并根据第一微分段段标识和第二微分段段标识对数据报文进行处理,具体功能实现可参考方法实施例中第二网络设备和第一网络设备的处理部分。
通信总线1402用于在处理器1401、通信接口1404和存储器1403之间传送信息。
存储器1403可以是只读存储器(read-only memory,ROM),如:电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only Memory,CD-ROM)或其它光盘、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)。或者存储器1403也可以是随机存取存储器(randomaccess memory,RAM)或者可存储信息和指令的其它类型的动态存储设备。
存储器1403可以是独立存在,通过通信总线1402与处理器1401相连接。存储器1403也可以和处理器1401集成在一起。
可选地,存储器1403用于存储执行本申请方案的程序代码或指令,并由处理器1401来控制执行。处理器1401用于执行存储器1403中存储的程序代码。程序代码中可以包括一个或多个软件模块。可选地,处理器1401自身也可以存储执行本申请方案的程序代码或指令。
通信接口1404,使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(RAN)或无线局域网(wireless local area networks,WLAN)等。在本申请实施例中,通信接口1404可以用于接收分段路由网络中的其他网络设备发送的报文,也可以向分段路由网络中的其他网络设备发送报文。通信接口1404可以为以太接口(Ethernet)接口、快速以太(Fast Ethernet,FE)接口或千兆以太(GigabitEthernet,GE)接口。
在具体实现中,作为一种实施例,设备1400可以包括多个处理器,例如图14中所示的处理器1401和处理器1405。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
应理解,上述各种产品形态的网络设备,分别具有上述数据报文的处理方法实施例中的网络设备的任意功能,此处不再赘述。
参见图15,该图为本申请实施例提供的一种网络系统1500的示意图。
本申请实施例提供的网络系统可以包括第一网络设备1510和第二网络设备1520,第一网络设备1510和第二网络设备1520之间进行通信。在一种可能的方式中,第二网络设备1520可执行如上述图3a和图3b所示的实施例中的网络设备101所执行的方法步骤和相关可选方式,第一网络设备1510可执行如上述图4a或图4b所示的实施例中的网络设备102所执行的方法步骤和相关可选方式。在一种可能的方式中,第一网络设备1510和第二网络设备1520之间进行通信,第二网络设备1520可执行如上述图3a和图3b所示的实施例中的网络设备101所执行的方法步骤和相关可选方式,第一网络设备1510可执行如上述图4a或图4b所示的实施例中的网络设备103所执行的方法步骤和相关可选方式。在一种可能的方式中,该网络系统中还包括第三网络设备1530,第一网络设备1510、第二网络设备1520和第三网络设备之间进行通信,第二网络设备1520可执行如上述图3a和图3b所示的实施例中的网络设备101所执行的方法步骤和相关可选方式,第一网络设备1510可执行如上述图4a或图4b所示的实施例中的网络设备102所执行的方法步骤和相关可选方式,第一网络设备1530可执行如上述图4a或图4b所示的实施例中的网络设备103所执行的方法步骤和相关可选方式。网络设备101、网络设备102和网络设备103的具体产品形态如上所述,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的或其它的形式连接。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的处理单元可以分散到多个功能单元中,也可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件、固件或者其组合实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何介质或者是包含一个或多个介质集成的服务器、数据中心等数据存储设备。所述介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如,光盘)、或者半导体介质(例如固态硬盘)等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (38)
1.一种数据报文的处理方法,其特征在于,包括:
段路由网络中的第一网络设备接收第一数据报文,所述第一数据报文包括第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文是发送向所述第二网络设备的数据报文;
所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作;
所述第一网络设备对所述第一数据报文执行所述处理动作。
2.根据权利要求1所述的方法,其特征在于,所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:
所述第一网络设备根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
3.根据权利要求1或2所述的方法,其特征在于,所述第一网络设备和所述第二网络设备为同一网络设备,所述第一微分段段标识包括功能部分,
在所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作之前,所述方法还包括:
所述第一网络设备确定所述功能部分用于指示:所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
4.根据权利要求3所述的方法,其特征在于,当所述处理动作包括转发或标记时,所述第一网络设备对所述第一数据报文执行所述处理动作,包括:
所述第一网络设备生成第二数据报文,所述第二数据报文不包括所述第一微分段段标识;
所述第一网络设备发送所述第二数据报文。
5.根据权利要求1或2所述的方法,其特征在于,所述第一网络设备和所述第二网络设备为不同的设备,所述第一数据报文还包括微分段节点段标识,所述微分段节点段标识为所述第一网络设备的段标识,所述微分段节点段标识包括功能部分,所述功能部分用于指示:
所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第一数据报文还包括第二微分段段标识,所述第二微分段段标识用于标识所述段路由网络中的第三网络设备的一个微分段,所述第一微分段段标识和所述第二微分段段标识为由所述第三网络设备添加到所述第一数据报文中,所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:
所述第一网络设备根据匹配条件和所述处理动作的对应关系,确定对所述第一数据报文的处理动作,所述匹配条件包括所述第一微分段段标识和所述第二微分段段标识。
7.根据权利要求6所述的方法,其特征在于,
所述第一数据报文的段标识列表中包括所述第二微分段段标识,或
所述第一数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
8.根据权利要求1-7任一项所述的方法,其特征在于,
所述第一数据报文的段标识列表中包括所述第一微分段段标识。
9.根据权利要求7或8所述的方法,其特征在于,所述段标识列表携带在所述第一数据报文的段路由头或多协议标签交换标签栈中。
10.一种数据报文的处理方法,其特征在于,包括:
段路由网络中的第一网络设备接收第一数据报文;
所述第一网络设备根据所述第一数据报文确定第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文不包括所述第一微分段段标识,所述第一数据报文为发送向所述第二网络设备的数据报文;
所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作;
所述第一网络设备对所述第一数据报文执行所述处理动作。
11.根据权利要求10所述的方法,其特征在于,所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:
所述第一网络设备根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
12.根据权利要求10或11所述的方法,其特征在于,所述第一微分段段标识包括功能部分,所述功能部分用于指示:所述第二网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
13.根据权利要求10或11所述的方法,其特征在于,当所述处理动作包括转发或标记时,所述第一网络设备对所述第一数据报文执行所述处理动作,包括:
所述第一网络设备根据所述第一数据报文生成第二数据报文,所述第二数据报文包括所述第一微分段段标识;
所述第一网络设备向所述第二网络设备发送所述第二数据报文。
14.根据权利要求10-12任一项所述的方法,其特征在于,
所述方法还包括:所述第一网络设备还根据所述接收第一数据报文确定所述第二微分段段标识,所述第二微分段段标识用于标识所述第一网络设备的一个微分段;
所述第一网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作,包括:
所述第一网络设备根据匹配条件和所述处理动作的对应关系,确定对所述第一数据报文的处理动作,所述匹配条件包括所述第一微分段段标识和所述第二微分段段标识。
15.根据权利要求14所述的方法,其特征在于,当所述处理动作包括转发或标记时,所述第一网络设备对所述第一数据报文执行所述处理动作,包括:
所述第一网络设备根据所述第一数据报文生成第二数据报文,所述第二数据报文包括所述第一微分段段标识和所述第二微分段段标识;
所述第一网络设备向所述第二网络设备发送所述第二数据报文。
16.根据权利要求15所述的方法,其特征在于,
所述第二数据报文的段标识列表包括所述第二微分段段标识,或
所述第二数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
17.根据权利要求14-16任一项所述的方法,其特征在于,所述第二微分段段标识包括功能部分,所述功能部分用于指示:所述第一网络设备根据所述第二微分段段标识确定对所述第一数据报文的处理动作。
18.根据权利要求13、15或16所述的方法,其特征在于,所述第二数据报文还包括微分段节点段标识,所述微分段节点段标识为所述段路由网络中的第三网络设备的段标识,所述微分段节点段标识用于指示所述第三网络设备根据所述第一微分段段标识对所述第二数据报文进行处理。
19.一种第一网络设备,应用于段路由网络中,其特征在于,包括:
接收单元,用于接收第一数据报文,所述第一数据报文包括第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文是发送向所述第二网络设备的数据报文;
处理单元,用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作;
所述处理单元,用于对所述第一数据报文执行所述处理动作。
20.根据权利要求19所述的第一网络设备,其特征在于,所述处理单元,用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:
所述处理单元,用于根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
21.根据权利要求19或20所述的第一网络设备,其特征在于,所述第一网络设备和所述第二网络设备为同一网络设备,所述第一微分段段标识包括功能部分,
在所述处理单元用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作之前,所述处理单元还具体用于:
确定所述功能部分用于指示:所述处理单元根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
22.根据权利要求21所述的第一网络设备,所述第一网络设备还包括发送单元,其特征在于,当所述处理动作包括转发或标记时,所述处理单元对所述第一数据报文执行所述处理动作,具体为:
所述处理单元生成第二数据报文,所述第二数据报文不包括所述第一微分段段标识;
所述发送单元,用于发送所述第二数据报文。
23.根据权利要求19或20所述的第一网络设备,其特征在于,所述第一网络设备和所述第二网络设备为不同的设备,所述第一数据报文还包括微分段节点段标识,所述微分段节点段标识为所述第一网络设备的段标识,所述微分段节点段标识包括功能部分,所述功能部分用于指示:
所述处理单元根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
24.根据权利要求19-23任一项所述的第一网络设备,其特征在于,所述第一数据报文还包括第二微分段段标识,所述第二微分段段标识用于标识所述段路由网络中的第三网络设备的一个微分段,所述第一微分段段标识和所述第二微分段段标识为由所述第三网络设备添加到所述第一数据报文中,所述处理单元,用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:
所述处理单元,用于根据匹配条件和所述处理动作的对应关系,确定对所述第一数据报文的处理动作,所述匹配条件包括所述第一微分段段标识和所述第二微分段段标识。
25.根据权利要求24所述的第一网络设备,其特征在于,
所述第一数据报文的段标识列表中包括所述第二微分段段标识,或
所述第一数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
26.根据权利要求19-25任一项所述的第一网络设备,其特征在于,
所述第一数据报文的段标识列表中包括所述第一微分段段标识。
27.根据权利要求25或26所述的方法,其特征在于,所述段标识列表携带在所述第一数据报文的段路由头或多协议标签交换标签栈中。
28.一种第二网络设备,应用于段路由网络中,其特征在于,包括:
接收单元,用于接收第一数据报文;
处理单元,用于根据所述第一数据报文确定第一微分段段标识,所述第一微分段段标识用于标识所述段路由网络中的第二网络设备的一个微分段,所述第一数据报文不包括所述第一微分段段标识,所述第一数据报文为发送向所述第二网络设备的数据报文;
所述处理单元,还用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作;
所述处理单元,还用于对所述第一数据报文执行所述处理动作。
29.根据权利要求28所述的第二网络设备,其特征在于,所述处理单元还用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:
所述处理单元,用于根据所述第一微分段段标识和所述处理动作的对应关系,确定对所述第一数据报文的处理动作。
30.根据权利要求28或29所述的第二网络设备,其特征在于,所述第一微分段段标识包括功能部分,所述功能部分用于指示:所述第二网络设备根据所述第一微分段段标识确定对所述第一数据报文的处理动作。
31.根据权利要求28或29所述的第二网络设备,所述第二网络设备还包括发送单元,其特征在于,当所述处理动作包括转发或标记时,所述处理单元还用于对所述第一数据报文执行所述处理动作,具体为:
所述处理单元,用于根据所述第一数据报文生成第二数据报文,所述第二数据报文包括所述第一微分段段标识;
所述发送单元,用于向所述第二网络设备发送所述第二数据报文。
32.根据权利要求28-30任一项所述的第二网络设备,其特征在于,
还包括:所述处理单元,还用于根据所述接收第一数据报文确定所述第二微分段段标识,所述第二微分段段标识用于标识所述第一网络设备的一个微分段;
所述处理单元,还用于根据所述第一微分段段标识确定对所述第一数据报文的处理动作,具体为:
所述处理单元根据匹配条件和所述处理动作的对应关系,确定对所述第一数据报文的处理动作,所述匹配条件包括所述第一微分段段标识和所述第二微分段段标识。
33.根据权利要求30所述的第二网络设备,所述第二网络设备还包括发送单元,其特征在于,当所述处理动作包括转发或标记时,所述处理单元,还用于对所述第一数据报文执行所述处理动作,包括:
所述处理单元,用于根据所述第一数据报文生成第二数据报文,所述第二数据报文包括所述第一微分段段标识和所述第二微分段段标识;
所述处理单元,用于向所述第二网络设备发送所述第二数据报文。
34.根据权利要求33所述的第二网络设备,其特征在于,
所述第二数据报文的段标识列表包括所述第二微分段段标识,或
所述第二数据报文还包括元数据,所述元数据包括所述第二微分段段标识。
35.根据权利要求32-34任一项所述的第二网络设备,其特征在于,所述第二微分段段标识包括功能部分,所述功能部分用于指示:所述第一网络设备根据所述第二微分段段标识确定对所述第一数据报文的处理动作。
36.根据权利要求31、33或34所述的第二网络设备,其特征在于,所述第二数据报文还包括微分段节点段标识,所述微分段节点段标识为所述段路由网络中的第三网络设备的段标识,所述微分段节点段标识用于指示所述第三网络设备根据所述第一微分段段标识对所述第二数据报文进行处理。
37.一种网络系统,其特征在于,所述网络系统包括第一网络设备和第二网络设备,所述第一网络设备为权利要求19至24任一项的所述第一网络设备,所述第二网络设备为权利要求25至30任一项的所述第二网络设备。
38.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序用于执行权利要求1-18任一项的所述方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911122088.3A CN112822104A (zh) | 2019-11-15 | 2019-11-15 | 一种数据报文的处理方法、设备、存储介质及系统 |
PCT/CN2020/105056 WO2021093372A1 (zh) | 2019-11-15 | 2020-07-28 | 一种数据报文的处理方法、设备、存储介质及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911122088.3A CN112822104A (zh) | 2019-11-15 | 2019-11-15 | 一种数据报文的处理方法、设备、存储介质及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112822104A true CN112822104A (zh) | 2021-05-18 |
Family
ID=75851892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911122088.3A Pending CN112822104A (zh) | 2019-11-15 | 2019-11-15 | 一种数据报文的处理方法、设备、存储介质及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112822104A (zh) |
WO (1) | WO2021093372A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113438208A (zh) * | 2021-06-03 | 2021-09-24 | 新华三技术有限公司 | 报文处理方法、装置及设备 |
CN113542213A (zh) * | 2021-05-27 | 2021-10-22 | 新华三大数据技术有限公司 | 一种访问控制策略生成方法及装置、编排器 |
US11831548B1 (en) * | 2022-11-29 | 2023-11-28 | Ciena Corporation | Distinguishing SRv6 micro-SID destination address from IPv6 destination address |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124839B (zh) * | 2021-09-07 | 2023-06-06 | 中国联合网络通信集团有限公司 | 接口板和数据处理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429685A (zh) * | 2018-04-28 | 2018-08-21 | 电子科技大学 | 一种基于分段路由技术的服务功能链寻路方法 |
US20190081897A1 (en) * | 2017-09-12 | 2019-03-14 | Google Llc | Mechanism and apparatus for path protection when using compressed segment routing label stacks |
CN109981457A (zh) * | 2017-12-27 | 2019-07-05 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9807019B2 (en) * | 2015-03-30 | 2017-10-31 | Alcatel Lucent | Offline optimization for traffic engineering with segment routing |
CN109962847B (zh) * | 2017-12-14 | 2021-07-30 | 中国电信股份有限公司 | 业务功能链报文的封装方法和装置及计算机可读存储介质 |
CN109981458B (zh) * | 2019-03-08 | 2022-07-26 | 华为技术有限公司 | 一种确定报文转发路径的方法、网络节点及系统 |
-
2019
- 2019-11-15 CN CN201911122088.3A patent/CN112822104A/zh active Pending
-
2020
- 2020-07-28 WO PCT/CN2020/105056 patent/WO2021093372A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190081897A1 (en) * | 2017-09-12 | 2019-03-14 | Google Llc | Mechanism and apparatus for path protection when using compressed segment routing label stacks |
CN109981457A (zh) * | 2017-12-27 | 2019-07-05 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
CN108429685A (zh) * | 2018-04-28 | 2018-08-21 | 电子科技大学 | 一种基于分段路由技术的服务功能链寻路方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542213A (zh) * | 2021-05-27 | 2021-10-22 | 新华三大数据技术有限公司 | 一种访问控制策略生成方法及装置、编排器 |
CN113542213B (zh) * | 2021-05-27 | 2023-09-22 | 新华三大数据技术有限公司 | 一种访问控制策略生成方法及装置、编排器 |
CN113438208A (zh) * | 2021-06-03 | 2021-09-24 | 新华三技术有限公司 | 报文处理方法、装置及设备 |
US11831548B1 (en) * | 2022-11-29 | 2023-11-28 | Ciena Corporation | Distinguishing SRv6 micro-SID destination address from IPv6 destination address |
Also Published As
Publication number | Publication date |
---|---|
WO2021093372A1 (zh) | 2021-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11102033B2 (en) | Method and apparatus for implementing a flexible virtual local area network | |
US10826829B2 (en) | Scalable handling of BGP route information in VXLAN with EVPN control plane | |
US10320664B2 (en) | Cloud overlay for operations administration and management | |
EP3985929B1 (en) | Rule-based network identifier mapping | |
CN108632098B (zh) | 流分类器、业务路由触发器、报文处理的方法和系统 | |
US9755959B2 (en) | Dynamic service path creation | |
US10193707B2 (en) | Packet transmission method and apparatus | |
US9294349B2 (en) | Host traffic driven network orchestration within data center fabric | |
CN112822104A (zh) | 一种数据报文的处理方法、设备、存储介质及系统 | |
EP3069471B1 (en) | Optimized multicast routing in a clos-like network | |
US10911354B2 (en) | Packet processing method and system, and device | |
EP4037265A1 (en) | Packet forwarding method, apparatus, storage medium, and system | |
CN107968749B (zh) | 实现QinQ路由终结的方法、交换芯片及交换机 | |
CN110474829B (zh) | 传输报文的方法和装置 | |
CN106331206A (zh) | 域名管理方法及装置 | |
CN113973082A (zh) | 一种报文处理方法及网络设备 | |
US20200314016A1 (en) | Tunneling inter-domain stateless internet protocol multicast packets | |
KR20230035674A (ko) | 경로 광고 방법 및 관련 디바이스 | |
US20230155930A1 (en) | Packet Processing Method and Network Device | |
CN114024900A (zh) | 一种数据处理方法及相关设备 | |
CN111404797B (zh) | 控制方法、sdn控制器、sdn接入点、sdn网关及ce | |
CN115550252A (zh) | 路由发布和转发报文的方法、装置、设备和存储介质 | |
US9521065B1 (en) | Enhanced VLAN naming | |
KR20230035673A (ko) | 경로 광고 방법 및 관련 디바이스 |
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 |