CN114301832A - 一种业务处理方法及网络设备 - Google Patents
一种业务处理方法及网络设备 Download PDFInfo
- Publication number
- CN114301832A CN114301832A CN202010997716.9A CN202010997716A CN114301832A CN 114301832 A CN114301832 A CN 114301832A CN 202010997716 A CN202010997716 A CN 202010997716A CN 114301832 A CN114301832 A CN 114301832A
- Authority
- CN
- China
- Prior art keywords
- network device
- network
- message
- path
- network equipment
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 102
- 238000012545 processing Methods 0.000 claims description 36
- 238000004891 communication Methods 0.000 claims description 23
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 26
- 238000004364 calculation method Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 230000008878 coupling Effects 0.000 description 8
- 238000010168 coupling process Methods 0.000 description 8
- 238000005859 coupling reaction Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 6
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000003999 initiator Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 241000465502 Tobacco latent virus Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011664 signaling Effects 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/42—Centralised 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
-
- 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/24—Multipath
-
- 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]
-
- 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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- 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/74—Address processing for routing
- H04L45/741—Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种业务处理方法及网络设备,该方法包括:第一网络设备根据业务需求确定报文的转发路径上的第二网络设备;第一网络设备向第二网络设备发送第一消息,以与第二网络设备建立第一连接;第一网络设备利用第一连接向第二网络设备发送第二消息,第二消息用于请求第二网络设备协助确定与转发路径相关的信息。本方案中,第一网络设备在根据业务需求确定需要第二网络设备协助其确定报文的转发路径的相关信息时,再主动与第二网络设备建立连接,并且利用所建立的连接请求第二网络设备协助其确定该转发路径的相关信息,从而实现了连接的按需建立,避免了产生大量空闲的会话连接,节省了资源的开销。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种业务处理方法及网络设备。
背景技术
路径计算单元(Path Computation Element,PCE)是一种路径计算架构中的计算单元,可以实现基于各种约束条件的集中式路径计算。路径计算客户端(Path ComputationClient,PCC)是一种路径计算架构中的客户端,用于向PCE发送算路请求消息,并在接收到带有算路结果的响应后建立路径连接。PCE则用于接收来自PCC的算路请求消息,根据算路请求消息进行路径计算,并返回算路结果给PCC。
在一些情况下,PCE往往无法独立地确定报文的转发路径的信息。此时,PCE需要向转发路径上的其他PCC发送消息,以请求PCC协助其确定报文的转发路径的信息。由于PCC和PCE之间需要采用专门的路径计算协议(Path Computation Element CommunicationProtocol,PCEP)进行通信。因此,为了保证PCE能够顺利完成算路,通常需要由网络中可能作为PCC的网络设备预先主动与PCE建立PCEP会话连接。
然而,在一些网络场景下,网络中的所有网络设备都有可能作为PCC。在这些网络场景下,网络中的所有网络设备都需要与PCE建立PCEP会话连接,容易产生大量空闲的会话连接,导致了资源开销大。
发明内容
本申请实施例提供了一种业务处理方法及网络设备,第一网络设备在根据业务需求确定需要第二网络设备协助其确定报文的转发路径的相关信息时,第一网络设备向第二网络设备发送第一消息,从而与第二网络设备建立连接,并且利用所建立的连接请求第二网络设备协助其确定该转发路径的相关信息,从而实现了连接的按需建立,避免了产生大量空闲的会话连接,节省了资源的开销。
本申请第一方面提供一种业务处理方法,包括:第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,所述报文属于所述业务,所述第一网络设备可以是具有路径计算能力的设备,例如网络中的控制器或网络中参与报文转发的网络设备。所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接,所述第一连接例如可以为PECP会话连接;所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息用于请求所述第二网络设备协助确定与所述转发路径相关的信息。
本方案中,第一网络设备在根据业务需求确定需要第二网络设备协助其确定报文的转发路径的相关信息时,再主动与第二网络设备建立连接,并且利用所建立的连接请求第二网络设备协助其确定该转发路径的相关信息,从而实现了连接的按需建立,避免了产生大量空闲的会话连接,节省了资源的开销。
可选地,在一种可能的实现方式中,所述方法还包括:所述第一网络设备接收所述第二网络设备发送的第三消息,所述第三消息包括与所述转发路径相关的信息。通过由第一网络设备接收第二网络设备反馈的与转发路径相关的信息,可以使得第一网络设备能够基于第二网络设备确定报文的转发路径。
可选地,在一种可能的实现方式中,所述第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,包括:所述第一网络设备根据所述业务需求,确定所述第一网络设备无法确定与所述报文的所述转发路径相关的信息;所述第一网络设备确定所述第二网络设备,所述第二网络设备用于协助确定与所述转发路径相关的信息。
也就是说,在第一网络设备确定报文的转发路径的过程中,第一网络设备确定其需要第二网络设备来协助其完成转发路径的计算,该第二网络设备可以为转发路径上的网络设备。例如,在需要用到粘连标签来表示转发路径的场景下,第一网络设备可以确定需要第二网络设备来分配相应的粘连标签。又例如,在跨区域转发报文的场景下,第一网络设备可能由于没有另一区域的拓扑而无法计算报文在该另一区域中的转发路径,则第一网络设备可以确定需要第二网络设备来计算报文在该另一区域中的转发路径。
可选地,在一种可能的实现方式中,所述与所述转发路径相关的信息包括用于指示所述转发路径的粘连标签和/或路径标签。
可选地,在一种可能的实现方式中,所述第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,包括:所述第一网络设备根据所述业务需求确定所述报文的转发路径;所述第一网络设备根据所述报文的转发路径确定所述第二网络设备为粘连节点,所述第二网络设备用于分配粘连标签;所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,包括:所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息包括标签栈信息,所述第二消息用于请求所述第二网络设备分配对应于所述标签栈信息的粘连标签。
可选地,在一种可能的实现方式中,所述第一网络设备根据所述报文的转发路径确定所述第二网络设备为粘连节点,包括:所述第一网络设备根据所述报文的转发路径,确定用于指示所述转发路径的需使用的标签数量大于标签栈支持携带标签的最大数量;所述第一网络设备根据所述转发路径确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备。例如,在第一网络设备确定的转发路径所经过的节点或链路的数量大于标签栈所支持携带标签的最大数量时,用于指示转发路径的标签栈无法完全携带转发路径对应的所有标签。在这种情况下,第一网络设备则可以确定需要使用粘连标签来指示报文的转发。
可选地,在一种可能的实现方式中,所述第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,包括:所述第一网络设备根据所述业务需求,确定所述第一网络设备无法计算得到所述报文的转发路径;所述第一网络设备根据网络拓扑确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备,所述第二网络设备用于协助所述第一网络设备计算前往所述目的设备的第一路径。
本方案中,通过在第一网络设备无法计算报文的转发路径时,由第一网络设备请求第二网络设备来协助其计算前往目的设备的路径,能够提高算路的可用性和灵活性。
可选地,在一种可能的实现方式中,所述第一网络设备根据所述业务需求,确定所述第一网络设备无法计算得到所述报文的转发路径,包括:所述第一网络设备根据所述业务需求确定所述报文的目的设备不位于第一区域,所述第一区域为所述第一网络设备所位于的区域;所述第一网络设备根据所述第一区域的拓扑,确定所述第二网络设备,所述第二网络设备为所述第一区域和第二区域的边界设备,所述第二区域为所述目的设备所位于的区域,或者所述第二区域为到达所述目的设备的所述转发路径需经过的区域。
可选地,在一种可能的实现方式中,所述第一网络设备利用所述第一连接向所述第二网络设备发送的第二消息用于请求所述第二网络设备计算前往所述目的设备的第一路径。在第二网络设备发送给第一网络设备的第三消息中则包括有所述第一路径的指示信息。
可选地,在一种可能的实现方式中,所述方法还包括:所述第一网络设备根据所述网络拓扑确定第三网络设备,所述第三网络设备为所述第一区域和所述第二区域的边界设备;所述第一网络设备与所述第三网络设备建立第二连接;所述第一网络设备利用所述第二连接向所述第三网络设备发送第四消息,所述第四消息用于请求所述第三网络设备计算前往所述目的设备的第二路径;所述第一网络设备接收所述第三网络设备发送的第五消息,所述第五消息包括所述第二路径的指示信息;所述第一网络设备根据所述第三消息和所述第五消息,确定所述报文的所述转发路径的部分或全部。
也就是说,第一网络设备在确定第二网络设备和第三网络设备均为第一区域和第二区域的边界设备的情况下,第一网络设备可以与第二网络设备和第三网络设备建立PECP会话连接,从而向第二网络设备和第三网络设备请求计算前往目的设备的路径。在第一网络设备获取到第二网络设备和第三网络设备分别返回的路径指示信息之后,第一网络设备综合两个网络设备返回的路径指示信息确定报文的转发路径,以实现更优路径的选择。
可选地,在一种可能的实现方式中,所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接包括:所述第一网络设备与所述第二网络设备建立传输控制协议(Transmission Control Protocol,TCP)连接;利用所述TCP连接,所述第一网络设备向所述第二网络设备发送所述第一消息,以与所述第二网络设备协商建立所述第一连接。
可选地,在一种可能的实现方式中,所述第一网络设备可以为所述报文的所述转发路径上的头节点设备或控制器。例如,所述第一网络设备为报文端到端转发路径上经过的网络头节点或入口节点,具体可以为隧道的端点设备或网络域的边界节点等。或者,在某些可能的应用场景中,所述第一网络设备为具有网络管理功能的控制器。
可选地,在一种可能的实现方式中,所述第一网络设备和所述第二网络设备均为所述转发路径上的路径计算客户端PCC设备。
可选地,在一种可能的实现方式中,报文的转发路径包括段路由策略(SegementRouting policy,SR policy)路径、基于互联网协议第4版的段路由(Segement RoutingInternet Protocol version 4,SRV4)路径、SRV6路径、基于流量工程的段路由(SegementRouting Traffic Engineering,SR-TE)路径和基于流量工程的多协议标签交换(Multi-protocol label switching Traffic Engineering,MPLS-TE)路径中的一个或多个。
本申请第二方面提供一种网络设备,所述网络设备为第一网络设备,包括:处理单元和收发单元;所述处理单元,用于根据业务需求确定报文的转发路径上的第二网络设备,所述报文属于所述业务;所述收发单元,用于向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接;所述收发单元,还用于利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息用于请求所述第二网络设备协助确定与所述转发路径相关的信息。
可选地,在一种可能的实现方式中,所述收发单元,还用于接收所述第二网络设备发送的第三消息,所述第三消息包括与所述转发路径相关的信息。
可选地,在一种可能的实现方式中,所述处理单元具体用于:根据所述业务需求,确定所述第一网络设备无法确定与所述报文的所述转发路径相关的信息;确定所述第二网络设备,所述第二网络设备用于协助确定与所述转发路径相关的信息。
可选地,在一种可能的实现方式中,所述与所述转发路径相关的信息包括用于指示所述转发路径的粘连标签和/或路径标签。
可选地,在一种可能的实现方式中,所述处理单元,具体用于:根据所述业务需求确定所述报文的转发路径;根据所述报文的转发路径确定所述第二网络设备为粘连节点,所述第二网络设备用于分配粘连标签;所述收发单元,具体用于利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息包括标签栈信息,所述第二消息用于请求所述第二网络设备分配对应于所述标签栈信息的粘连标签。
可选地,在一种可能的实现方式中,所述处理单元,具体用于:根据所述报文的转发路径,确定用于指示所述转发路径的需使用的标签数量大于标签栈支持携带标签的最大数量;根据所述转发路径确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备。
可选地,在一种可能的实现方式中,所述处理单元,具体用于:根据所述业务需求,确定所述第一网络设备无法计算得到所述报文的转发路径;根据网络拓扑确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备,所述第二网络设备用于协助所述第一网络设备计算前往所述目的设备的第一路径。
可选地,在一种可能的实现方式中,所述处理单元,具体用于:根据所述业务需求确定所述报文的目的设备不位于第一区域,所述第一区域为所述第一网络设备所位于的区域;根据所述第一区域的拓扑,确定所述第二网络设备,所述第二网络设备为所述第一区域和第二区域的边界设备,所述第二区域为所述目的设备所位于的区域,或者所述第二区域为到达所述目的设备的所述转发路径需经过的区域。
可选地,在一种可能的实现方式中,所述第一网络设备利用所述第一连接向所述第二网络设备发送的第二消息用于请求所述第二网络设备计算前往所述目的设备的第一路径,所述第三消息包括所述第一路径的指示信息。
可选地,在一种可能的实现方式中,所述处理单元,具体用于:根据所述网络拓扑确定第三网络设备,所述第三网络设备为所述第一区域和所述第二区域的边界设备;所述收发单元,具体用于:与所述第三网络设备建立第二连接;利用所述第二连接向所述第三网络设备发送第四消息,所述第四消息用于请求所述第三网络设备计算前往所述目的设备的第二路径;接收所述第三网络设备发送的第五消息,所述第五消息包括所述第二路径的指示信息;所述处理单元,还用于根据所述第三消息和所述第五消息,确定所述报文的所述转发路径的部分或全部。
可选地,在一种可能的实现方式中,所述第一连接包括路径计算单元通信协议PCEP连接。
可选地,在一种可能的实现方式中,所述收发单元,具体用于与所述第二网络设备建立传输控制协议TCP连接;利用所述TCP连接,向所述第二网络设备发送所述第一消息,以与所述第二网络设备协商建立所述第一连接。
可选地,在一种可能的实现方式中,所述第一网络设备为所述报文的所述转发路径上的头节点设备。或者,在某些可能的允许场景下,所述第一网络设备也可以为控制器。
可选地,在一种可能的实现方式中,所述第一网络设备和所述第二网络设备均为所述转发路径上的路径计算客户端PCC设备。
可选地,在一种可能的实现方式中,报文的转发路径包括SR policy路径、基于SRV4路径、SRV6路径、SR-TE路径和MPLS-TE路径中的一个或多个。
本申请第三方面提供一种网络设备,该网络设备包括:处理器,用于使得网络设备实现如前述第一方面的任一可能的实现方式中描述的方法。该设备还可以包括存储器,存储器与处理器耦合,处理器执行存储器中存储的指令时,可以使得网络设备实现前述第一方面任一种可能的实现方式描述的方法。该设备还可以包括通信接口,通信接口用于该装置与其它设备进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
本申请中存储器中的指令可以预先存储也可以使用该网络设备时从互联网下载后存储,本申请对于存储器中指令的来源不进行具体限定。本申请中的耦合是装置、单元或模块之间的间接耦合或连接,其可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。
本申请第四方面提供一种计算机存储介质,该计算机存储介质可以是非易失性的;该计算机存储介质中存储有计算机可读指令,当该计算机可读指令被处理器执行时实现第一方面中任一项的方法。
本申请第五方面提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如第一方面中任一项的方法。
本申请第六方面提供一种网络系统,该网络系统包括如前述第二方面或第三方面任一实现方式中所述的网络设备以及用于配合所述网络设备计算或获取转发路径相关信息的另一个或多个网络设备。
本申请第七方面提供一种芯片,包括处理器。所述处理器中的部分或全部用于读取并执行存储器中存储的计算机程序,以执行上述任一方面任意可能的实现方式中的方法。可选地,该芯片该包括存储器,该存储器与该处理器通过电路或电线与存储器连接。进一步可选地,该芯片还包括通信接口,处理器与该通信接口连接。通信接口用于接收需要处理的数据和/或信息,处理器从该通信接口获取该数据和/或信息,并对该数据和/或信息进行处理,并通过该通信接口输出处理结果。该通信接口可以是输入输出接口。本申请提供的方法可以由一个芯片实现,也可以由多个芯片协同实现。
上述第二方面至第七方面提供的方案,用于实现或配合实现上述第一方面提供的方法,因此可以与第一方面达到相同或相应的有益效果,此处不再进行赘述。
附图说明
图1为本申请实施例提供的一种网络架构的结构示意图;
图2为本申请实施例提供的一种业务处理方法200的流程示意图;
图3为本申请实施例提供的一种业务处理方法300的流程示意图;
图4(a)为本申请实施例提供的一种报文转发方法400的流程示意图;
图4(b)为本申请实施例提供的一种报文转发方法400的应用网络的架构示意图;
图5(a)为本申请实施例提供的一种报文转发方法500的流程示意图;
图5(b)为本申请实施例提供的一种报文转发方法500的应用网络的架构示意图;
图6为本申请实施例提供的一种业务处理方法600的流程示意图;
图7(a)为本申请实施例提供的一种确定报文的转发路径方法700的流程示意图;
图7(b)为本申请实施例提供的一种确定报文的转发路径方法700的应用网络的架构示意图;
图8(a)为本申请实施例提供的一种确定报文的转发路径方法800的流程示意图;
图8(b)为本申请实施例提供的一种确定报文的转发路径方法800的应用网络的架构示意图;
图9为本申请实施例提供的一种网络设备900的结构示意图;
图10为本申请实施例提供的一种网络设备1000的结构示意图;
图11为本申请实施例提供的一种网络系统1100的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。本申请中所出现的单元的划分,是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个单元可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请中均不作限定。并且,作为分离部件说明的单元或子单元可以是也可以不是物理上的分离,可以是也可以不是物理单元,或者可以分布到多个电路单元中,可以根据实际的需要选择其中的部分或全部单元来实现本申请方案的目的。
PCEP是一种路径计算通信协议,用于PCE和PCC之间的信息交互。PCC可以基于PCEP会话连接向PCE发送算路请求消息;PCE在接收到算路请求消息后,根据算路请求消息进行路径计算,并且基于PCEP会话连接向PCC返回算路结果。
在一些情况下,例如需要采用粘连标签来表示路径的情况下,PCE往往无法独立地确定报文的转发路径的信息。此时,PCE需要向转发路径上的其他PCC发送消息,以请求PCC协助其确定报文的转发路径的信息。上述场景中,PCE可以理解为控制器,而PCC则可以理解为和控制器交互的用于报文转发的网络设备。作为控制器角色的PCE为了实现包括算路在内的各种可能的功能,通常需要和其管理控制的全部PCC之间预先建立通信连接,例如通过PCEP协议建立连接进行通信,否则可能导致控制器的某些功能无法正常实现。
然而,在一些网络场景下,网络中的所有网络设备都有可能作为PCC。在这些网络场景下,网络中的所有网络设备都需要与PCE建立PCEP会话连接,容易产生大量空闲的会话连接,导致了资源开销大。可以参阅图1,图1为本申请实施例提供的一种网络架构的结构示意图。如图1所示,该网络架构中包括控制器、网络设备A、网络设备B、网络设备C以及网络设备D。控制器为PCE,网络设备A为PCC。网络设备A可以作为发起端预先与控制器建立PECP会话连接。这样,在网络设备A需要确定获取到的报文的转发路径时,网络设备A可以通过PCEP会话连接向控制器发送算路请求,以请求控制器计算报文的转发路径。在控制器计算报文的转发路径中,控制器可能需要网络中的其他网络设备协助其确定报文的转发路径的相关信息,例如控制器可能需要网络设备B、网络设备C或网络设备D协助其确定报文的转发路径的相关信息。由于控制器需要基于PCEP会话连接与网络中的其他网络设备进行信息的交互,因此,为了保证控制器能够顺利地完成报文的转发路径的计算,网络设备B、网络设备C以及网络设备D均需要作为发起端提前与控制器建立PCEP会话连接。然而,在实际情况下,控制器可能只需要与网络设备B建立PCEP会话连接。因此,网络中的所有网络设备都与PCE建立PCEP会话连接,容易产生大量空闲的会话连接,导致了资源开销大。
有鉴于此,本申请实施例提供了一种业务处理方法,通过在负责算路的网络设备确定需要另一个网络设备协助其算路时,由负责算路的网络设备向另一个网络设备发起建立连接的请求,以实现连接的按需建立,避免了产生大量空闲的会话连接,节省了资源的开销。
可以参阅图2,图2为本申请实施例提供的一种业务处理方法200的流程示意图。该业务处理方法200可以应用于图1所示的网络结构中。
如图2所示,该报文处理方法200至少包括以下步骤。
步骤201,第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,所述报文属于所述业务。
本实施例中,第一网络设备可以是具有路径计算能力的设备,例如网络中参与报文转发的网络设备或网络中的控制器。在实际部署中,控制器可以独立于网络设备,也可以设置在一个网络设备的内部。该控制器还可以称为网络管理设备。
在第一网络设备为网络中参与报文转发的网络设备的情况下,所述第一网络设备例如可以为报文转发路径上的网络设备。该报文的转发路径可以是报文转发的完整端到端路径上的部分路径,如为第一网络设备所确定的,从第一网络设备开始经过第二网络设备的报文转发路径。即所述第一网络设备也是报文转发路径上的设备,并且报文在到达所述第二网络设备之前先到达第一网络设备。作为可能的示例,所述第一网络设备例如可以是头节点或入口节点角色,例如具体为报文经过的转发路径上的隧道端节点或网络域的边界节点等。在另一些可能的场景中,第一网络设备也可以是报文转发路径上其他位置的节点,但需要通过使用方法200请求路径上的其他节点协助提供与转发路径相关的信息。该第二网络设备为第一网络设备与报文的目的设备之间的网络设备。其中,第一网络设备可以是通过接收待转发的报文来获取业务需求。该业务需求例如可以是将该待转发的报文转发至该待转发的报文指定的目的地址。
在第一网络设备为控制器的情况下,第一网络设备可以是通过接收与其连接的其他网络设备所发送的路径计算请求消息,来获取业务需求。该业务需求例如可以是计算报文从某一网络设备至另一网络设备的转发路径。
也就是说,无论第一网络设备是控制器还是网络中参与报文转发的网络设备,第一网络设备都需要根据获取到的业务需求确定报文的转发路径。
在一个可能的实施例中,第一网络设备可以根据所述业务需求,确定自身无法确定与所述报文的所述转发路径相关的信息;所述第一网络设备确定所述第二网络设备,所述第二网络设备用于协助确定与所述转发路径相关的信息。其中,所述与所述转发路径相关的信息可以包括用于指示所述转发路径的粘连标签和/或路径标签。
也就是说,在第一网络设备确定报文的转发路径的过程中,第一网络设备确定其需要第二网络设备来协助其完成转发路径的计算,该第二网络设备可以为转发路径上的网络设备。例如,在需要用到粘连标签来表示转发路径的场景下,第一网络设备可以确定需要第二网络设备来分配相应的粘连标签。又例如,在跨区域转发报文的场景下,第一网络设备可能由于没有另一区域的拓扑而无法计算报文在该另一区域中的转发路径,则第一网络设备可以确定需要第二网络设备来计算报文在该另一区域中的转发路径。或者,第一网络设备也可以指示第二网络设备发送与所述转发路径相关的其他信息。
在一个可能的实施例中,报文的转发路径可以包括段路由策略(SegementRouting policy,SR policy)路径、基于互联网协议第4版的段路由(Segement RoutingInternet Protocol version 4,SRV4)路径、SRV6路径、基于流量工程的段路由(SegementRouting Traffic Engineering,SR-TE)路径和基于流量工程的多协议标签交换(Multi-protocol label switching Traffic Engineering,MPLS-TE)路径中的一个或多个。也就是说,本实施例所提供的方法可以应用于计算SR policy路径、SRV4路径、SRV6路径、SR-TE路径以及MPLS-TE路径中的一个或多个。
步骤202,所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接。
本实施例中,在第一网络设备确定其需要第二网络设备来确定与所述报文的所述转发路径相关的信息之后,第一网络设备可以向第二网络设备发送第一消息,该第一消息用于请求与第二网络设备建立第一连接。
其中,第一连接可以是用于实现交互路径计算的相关信息的连接。示例性地,该第一连接例如可以为PCEP会话连接。在第一网络设备与第二网络设备建立了第一连接之后,第一网络设备与第二网络设备可以进行路径计算的相关信息的交互,即第一网络设备可以向第二网络设备发送请求消息,以请求第二网络设备确定与所述报文的所述转发路径相关的信息。
可以理解的是,在第一网络设备为报文转发路径上的网络设备的情况下,第一网络设备具有相应的网络拓扑,且第一网络设备与网络中的其他网络设备是链路可达的,第一网络设备能够直接与第二网络设备建立第一连接。在第一网络设备为控制器的情况下,则需要在部署控制器的时候,确定控制器与网络中的其他网络设备链路可达,以保证控制器能够与第二网络设备建立第一连接。
步骤203,所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息用于请求所述第二网络设备协助确定与所述转发路径相关的信息。
在第一连接为PCEP连接的情况下,该第二消息可以例如为路径计算请求(PCEPPath Computation Request,PCReq)消息,可以用于请求所述第二网络设备协助确定与所述转发路径相关的信息。
步骤204,所述第一网络设备接收所述第二网络设备发送的第三消息,所述第三消息包括与所述转发路径相关的信息。
在第二网络设备接收到第一网络设备所发送的第二消息之后,第二网络设备可以根据该第二消息确定与转发路径相关的信息,并且向第一网络设备发送第三消息,该第三消息包括了第二网络设备所确定的与转发路径相关的信息。
在第一连接为PCEP连接的情况下,该第三消息可以例如为路径计算应答(PCEPPath Computation Reply,PCRep)消息,可以反馈与所述转发路径相关的信息。
本实施例中,通过在负责算路的第一网络设备确定需要第二网络设备协助其确定报文的转发路径的相关信息时,由第一网络设备向第二网络设备发起建立连接的请求,以使得第一网络设备能够请求第二网络设备协助确定报文的转发路径的相关信息,从而实现连接的按需建立,避免了产生大量空闲的会话连接,节省了资源的开销。
以上描述了第一网络设备根据业务需求向第二网络设备发起建立第一连接的请求,以实现转发路径的相关信息交互的过程,为便于理解,以下将详细描述第一网络设备与第二网络设备建立第一连接的过程。
以下第一连接为PCEP会话连接为例,第一网络设备与第二网络设备建立第一连接的过程如下所述:
1、第一网络设备作为发起端,通过3次握手与第二网络设备建立传输控制协议(Transmission Control Protocol,TCP)TCP连接。
2、第一网络设备与第二网络设备交互开启(Open)消息,以协商建立PECP会话连接。
3、第一网络设备与第二网络设备交互保活(Keepalive)消息,以维持PECP会话连接。
在过程1中,3次握手的过程包括:第一网络设备作为发起端,向第二网络设备发送连接请求报文,以请求建立TCP连接。第二网络设备接收到连接请求报文之后,向第一网络设备发送应答(acknowledge,ack)报文,并分配相应的资源以建立TCP连接。第一网络设备接收到第二网络设备发送的ack报文之后,同样向第二网络设备发送ack报文,并且分配相应的资源以建立TCP连接。通过3次握手过程,第一网络设备可以与第二网络设备建立TCP连接。
示例性地,第一网络设备向第二网络设备发送的连接请求报文可以为TCP消息,该TCP消息的报文格式可以如下所示:
其中,TCP消息中的各个字段的解释如下:
Source Port:源端口号。
Destination Port:目的端口号。
Sequence Number:序列号。
Acknowledgment Number:确认序号。
Data Offset:头部长度。
Reserved:保留位。
URG:紧急指针有效。
ACK:确认序号有效。
PSH:接收方应该尽快将这个报文段交给应用层。
RST:重建连接。
SYN:同步序号,用于发起一个连接。
FIN:发送端完成发送任务。
Window:窗口大小。
Checksum:校验和。
Urgent Pointer:紧急指针。
Options:可选项。
Data:数据。
Destination Port:目的端口号。
其中,PECO会话连接的端口号为4189,第一网络设备通过向第二网络设备发送目的端口号为4189的TCP消息,可以实现与第二网络设备通过3次握手建立TCP连接。
在过程2中,在第一网络设备与第二网络设备建立TCP连接之后,第一网络设备和第二网络设备可以通过相互发送Open消息,来协商建立PECP会话连接。其中,该Open消息例如可以为上述的第一消息。
其中,Open消息的格式可以如下所示:
<Open Message(Open消息)>::=<Common Header(通用头部)>
<OPEN>
其中,Common Header字段表示通用头部,OPEN对象(object)表示具体的Open消息内容。
通用头部的格式可以如下所示:
其中,通用头部中的各个字段的解释如下:
Ver(Version):PCEP版本号,当前版本号为1。
Flags:预留标记位,尚未定位,设置为全0。
Message-Type:PCEP消息类型,用于当前PECP消息的类型。
Message-Length:PCEP消息总长度,单位字节。
Message-Type字段为不同取值时所对应的含义如下:
1 Open
2 Keepalive
3 路径计算请求(Path Computation Request,PCReq)
4 路径计算应答(Path Computation Reply,PCRep)
5 通知(Notification)
6 错误(Error)
7 关闭(Close)
10 路径计算通告(Path Computation LSP State Report,PCRpt)
11 路径计算更新(Path Computation LSP Update Request,PCUpd)
12 路径计算初始化请求(PCEP Initiate Request,PCInitiate)
OPEN对象的格式具体可以如下所示:
其中,OPEN对象中的各个字段的解释如下:
Ver:PCEP版本号,当前版本号为1。
Flags:预留标记位,尚未定义,设置为全0。
Keepalive:两个连续的PCEP消息发送的最大间隔,单位为秒。
DeadTimer:两个PCEP邻居超时的时间,一般是4倍的Keepalive。
SID(PCEP session ID):标识一个PCEP会话的序列号。
Optional TLVs:OPEN对象里的可选类型长度值(Type Length Value,TLV)。
以上描述了第一网络设备与第二网络设备建立第一连接的过程,以下将结合附图详细描述第一网络设备在不同场景下,请求第二网络设备协助确定与转发路径相关的信息的过程。
可以参阅图3,图3为本申请实施例提供的一种业务处理方法300的流程示意图。如图3所示,该业务处理方法300为需要用到粘连标签来表示转发路径的场景下的方法,包括如下的步骤。
步骤301,第一网络设备根据所述业务需求确定所述报文的转发路径。
本实施例中,第一网络设备根据获取到的业务需求确定报文的转发路径。例如,在第一网络设备为控制器时,第一网络设备可以以向其发送业务需求的网络设备为起始设备,计算由起始设备前往报文的目的设备的转发路径。在第一网络设备为网络中参与报文转发的网络设备时,第一网络设备可以根据接收到的报文,以自身为起始设备,计算从自身前往报文的目的设备的转发路径。
步骤302,所述第一网络设备根据所述报文的转发路径确定所述第二网络设备为粘连节点,所述第二网络设备用于分配粘连标签。
可以理解的是,在采用标签表示转发路径的网络中,例如基于流量工程的多协议标签交换(Multi-protocol label switching Traffic Engineering,MPLS-TE)网络或者段路由-多协议标签交换(Segment Routing-MPLS,SR-MPLS)网络等网络,网络设备通过在标签栈中携带多个标签来表示转发路径上的节点或链路,标签栈中的每个标签均可以表示转发路径上所经过的节点或者链路。然而,网络设备所支持的标签栈深是有限制的,即标签栈支持携带标签的数量是有限制的。例如,在一些网络设备中,标签栈所支持携带标签的最大数量可以为10层、18层或28层等。
因此,在网络设备确定的转发路径所经过的节点或链路的数量大于标签栈所支持携带标签的最大数量时,用于指示转发路径的标签栈无法完全携带转发路径对应的所有标签。在这种情况下,则可以使用粘连标签来指示报文的转发。
也就是说,所述第一网络设备可以根据所述报文的转发路径,确定用于指示所述转发路径的需使用的标签数量大于标签栈支持携带标签的最大数量。然后,所述第一网络设备根据所述转发路径确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备,该第二网络设备可以作为分配粘连标签的粘连节点。
其中,第一网络设备根据转发路径确定第二网络设备的方式可以有多种。示例性地,第一网络设备在确定了转发路径之后,可以得到该转发路径对应的标签栈1。第一网络设备可以以转发面上的标签栈支持携带标签的最大数量为基准,在该标签栈1中,从栈底往栈顶的方向数N个标签,以第N个标签所属的网络设备为第二网络设备,N即为标签栈支持携带标签的最大数量。例如,假设第一网络设备的转发面上的标签栈支持携带标签的最大数量为10,第一网络设备可以在生成的标签栈1中,从栈底往栈顶的方向数10个标签,以第10个标签所属的网络设备为第二网络设备。
此外,第一网络设备也可以是以转发面上的标签栈支持携带标签的最大数量为基准,在该标签栈1中,从栈顶往栈底的方向数N个标签,以第N个标签所属的网络设备为第二网络设备,N即为标签栈支持携带标签的最大数量。
第一网络设备还可以是通过其他的方式来确定第二网络设备,例如确定位于目的设备与起始网络设备之间的中点的网络设备为第二网络设备,只要确保在第一网络设备所生成的标签栈中,第二网络设备对应的标签到栈顶标签以及到栈底标签的标签数均不大于转发面所支持携带标签的最大数量即可。
步骤303,所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接。
其中,步骤303与上述的步骤203类似,具体可以参考步骤203的叙述,在此不再赘述。
步骤304,所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息包括标签栈信息,所述第二消息用于请求所述第二网络设备分配对应于所述标签栈信息的粘连标签。
本实施例中,第一网络设备与第二网络设备建立第一连接之后,第一网络设备可以向第二网络设备发送请求消息,用于请求第二网络设备分配粘连标签。其中,该请求消息包括有标签栈信息,该标签栈信息与请求第二网络设备分配的粘连标签对应。
步骤305,所述第一网络设备接收所述第二网络设备发送的第三消息,所述第三消息包括对应于所述标签栈信息的粘连标签。
本实施例中,第二网络设备接收到第一网络设备发送的第二消息之后,第二网络设备可以从标签池中动态申请一个粘连标签,并且建立该粘连标签与所述标签栈信息之间的对应关系,以便于第二网络设备在接收到携带有粘连标签的报文时,能够将该粘连标签替换为所述标签栈信息。然后,第二网络设备可以将申请到的粘连标签通过第三消息发送给第一网络设备,从而使得第一网络设备可以接收到包括有对应于所述标签栈信息的粘连标签的第三消息。
示例性地,可以参阅图4(a)和图4(b),图4(a)为本申请实施例提供的一种报文转发方法400的流程示意图;图4(b)为本申请实施例提供的一种报文转发方法400的应用网络的架构示意图。如图4(b)所示,第一网络设备可以是指图4(b)中的网络设备1。该报文转发方法400包括以下的步骤。
步骤401,网络设备1计算报文的转发路径,并根据转发路径确定网络设备2。
在第一网络设备为网络设备1的情况下,网络设备1可以从外部网络接收到报文,网络设备1根据该报文的目的地址可以计算到由网络设备1前往网络设备12的路径为“网络设备1-网络设备2-网络设备3-网络设备4-网络设备5-网络设备6-网络设备7-网络设备8-网络设备9-网络设备10-网络设备11-网络设备12”。
假设标签栈支持携带标签的最大数量为10层。在网络设备1计算得到的转发路径为上述路径的情况下,如果标签栈中的标签所表示的是转发路径上的节点,则标签栈需要携带的标签包括{网络设备2-网络设备3-网络设备4-网络设备5-网络设备6-网络设备7-网络设备8-网络设备9-网络设备10-网络设备11-网络设备12},共11层标签;如果标签栈中的标签所表示的是转发路径上的链路,则标签栈需要携带的标签包括{1001-1002-1003-1004-1005-1006-1007-1008-1009-1010-1011},共11层标签。也就是说,用于指示转发路径的标签栈中需要使用的标签数量大于标签栈实际能够支持携带标签的最大数量。因此,网络设备1可以确定转发路径上的某一个网络设备作为粘连节点,以请求该网络设备分配粘连标签。
本实施例中,由于标签栈支持携带标签的最大数量为10层,网络设备1在上述包括11层标签的标签栈中,从栈底往栈顶的方向数10个标签,以第10个标签(即标签1002)所属的网络设备为粘连节点。然后,网络设备1可以基于流量工程数据库(Traffic EngineeringData Base,TEDB)确定该标签1002来自于网络设备2,从而确定网络设备2为粘连节点。
此外,网络设备1也可以是在上述包括11层标签的标签栈中,从栈顶往栈底的方向数10个标签,以第10个标签(即标签1010)所属的网络设备为粘连节点。然后,网络设备1可以基于TEDB确定该标签1010来自于网络设备11,从而确定网络设备11为粘连节点。
可以理解的是,除了通过上述的方式确定粘连节点之外,也可以是通过其他的方式确定粘连节点。例如,网络设备1确定位于网络设备1与网络设备12之间的任意一个满足条件的网络设备为粘连节点,该条件为:确保作为粘连节点的网络设备对应的标签在上述包括11层标签的标签栈中,到栈顶标签以及到栈底标签的数量不大于10层,比如确定网络设备5或网络设备6等网络设备为粘连节点。
步骤402,网络设备1向网络设备2发送请求消息1,该请求消息1用于请求网络设备2分配粘连标签。
可以理解的是,在网络设备1向网络设备2发送请求消息1之前,网络设备1需要作为发起端,主动与网络设备2建立PECP会话连接。其中,网络设备1与网络设备2建立PECP会话连接的过程可以参考上述实施例的描述,在此不再赘述。
在网络设备1向网络设备2发送的请求消息1中,包括有网络设备1指定的需要与粘连标签建立对应关系的标签栈信息。该标签栈信息例如可以为网络设备1从上述的11层标签中从后往前数的10层标签,即该标签栈信息可以包括{1002-1003-1004-1005-1006-1007-1008-1009-1010-1011},共10层标签。
步骤403,网络设备2申请粘连标签,并建立粘连标签与标签栈信息之间的对应关系。
网络设备2接收到网络设备1发送的请求消息之后,网络设备2可以从标签池中动态申请一个粘连标签,该粘连标签例如可以为粘连标签100。网络设备2还可以根据请求消息中的标签栈信息,建立粘连标签100与标签栈信息之间的对应关系。例如,网络设备2可以生成转发表项,在该转发表项中,粘连标签100与标签栈信息{1002-1003-1004-1005-1006-1007-1008-1009-1010-1011}对应;网络设备2基于粘连标签100在该转发表项查表时,可以查找得到对应的10层标签栈信息。
步骤404,网络设备2向网络设备1发送粘连标签。
步骤405,网络设备1向网络设备2发送报文,该报文携带有粘连标签。
网络设备1在接收到网络设备2发送的粘连标签100之后,网络设备1可以将上述的10层标签栈信息替换为该粘连标签100,即网络设备1生成标签栈{1001,100}。因此,网络设备1在转发报文时,可以基于标签栈{1001,100}的指示,向网络设备2转发该报文。并且,在网络设备1转发该报文之前,网络设备1将标签栈中的标签1001剥离,以使得网络设备1转发给网络设备2的报文的标签栈中只包括粘连标签100。
步骤406,网络设备2将报文中的粘连标签替换为对应的标签栈,并且向网络设备3转发报文。
网络设备2在接收到网络设备1转发的报文之后,网络设备2可以根据转发表项确定粘连标签100对应的10层标签栈信息,从而将报文中的粘连标签100替换为标签栈{1002-1003-1004-1005-1006-1007-1008-1009-1010-1011}。类似地,网络设备2可以基于替换得到的标签栈确定向网络设备3转发报文,并且在转发该报文之前,将标签栈中的栈顶标签(即标签1002)剥离,从而使得其转发给网络设备3的报文的标签栈中包括{1003-1004-1005-1006-1007-1008-1009-1010-1011},用于指导后续的网络设备转发该报文。
以上以第一网络设备为网络设备1为例,对报文的转发过程进行了描述。在实际情况下,第一网络设备还可以是控制器,以下将以第一网络设备为控制器对报文的转发过程进行详细的描述。
示例性地,可以参阅图5(a)和图5(b),图5(a)为本申请实施例提供的一种报文转发方法500的流程示意图;图5(b)为本申请实施例提供的一种报文转发方法500的应用网络的架构示意图。如图5(b)所示,第一网络设备可以是指图5(b)中的控制器,该报文转发方法500包括以下的步骤。
步骤501,网络设备1向控制器发送算路请求。
网络设备1在接收到需要转发至网络设备12的报文时,网络设备1向控制器发送算路请求,该算路请求携带有网络设备12的地址,以请求控制器计算由网络设备1前往网络设备12的转发路径。
步骤502,控制器计算报文的转发路径,并根据转发路径确定网络设备2。
本实施例中,步骤502与上述的步骤401类似,具体可以参考上述的步骤401,在此不再赘述。
步骤503,控制器向网络设备2发送请求消息2,该请求消息2用于请求网络设备2分配粘连标签。
可以理解的是,在控制器向网络设备2发送请求消息2之前,控制器需要作为发起端,主动与网络设备2建立PECP会话连接。其中,控制器与网络设备2建立PECP会话连接的过程可以参考上述实施例的描述,在此不再赘述。
本实施例中,步骤503与上述的步骤402类似,具体可以参考上述的步骤402,在此不再赘述。
步骤504,网络设备2申请粘连标签,并建立粘连标签与标签栈信息之间的对应关系。
步骤505,网络设备2向控制器发送粘连标签。
本实施例中,步骤504-505与上述的步骤403-404类似,具体可以参考上述的步骤403-404,在此不再赘述。
步骤506,控制器向网络设备1发送标签栈,该标签栈包括该粘连标签。
在控制器获取到网络设备2返回的粘连标签之后,控制器可以基于该粘连标签生成指示转发路径的标签栈{1001,100},即携带指示网络设备1与网络设备2之间的链路的标签以及该粘连标签100。然后,控制器向网络设备1发送该标签栈,以使得网络设备可以基于该标签栈转发报文。
步骤507,网络设备1向网络设备2发送报文,该报文携带有粘连标签。
步骤508,网络设备2将报文中的粘连标签替换为对应的标签栈,并且向网络设备3转发报文。
本实施例中,步骤507-508与上述的步骤405-406类似,具体可以参考上述的步骤405-406,在此不再赘述。
以上描述了在需要用到粘连标签来表示转发路径的场景下,第一网络设备请求第二网络设备分配粘连标签的过程,以下将描述在另一些场景下,第一网络设备请求第二网络设备协助计算转发路径的过程。
可以参阅图6,图6为本申请实施例提供的一种业务处理方法600的流程示意图。如图6所示,该业务处理方法600例如可以为跨域场景下的方法,包括如下的步骤。
步骤601,所述第一网络设备根据所述业务需求,确定所述第一网络设备无法计算得到报文的转发路径。
本实施例中,第一网络设备可以为控制器或网络中参与报文转发的网络设备。在第一网络设备为控制器的情况下,第一网络设备可以获取到计算报文的转发路径的请求,该业务需求可以为计算前往报文的目的设备或指定设备的转发路径。在第一网络设备为网络中参与报文转发的网络设备时,第一网络设备可以接收到待转发的报文,该业务需求可以为将该待转发的报文转发至目的设备或指定设备。也就是说,第一网络设备均需要根据业务需求,计算报文的转发路径。
其中,第一网络设备基于业务需求,可以确定自身无法独立计算得到报文的转发路径。例如,在第一网络设备中没有保存有与报文的目的设备相关的网络拓扑时,第一网络设备无法计算得到报文的转发路径。又例如,在报文具有一定的转发约束条件,例如具有服务等级协议(Service Level Agreement,SLA)要求,而第一网络设备无法获取网络拓扑中全部或部分的链路对应的SLA的情况下,第一网络设备也可能无法计算得到报文的转发路径。
步骤602,所述第一网络设备根据网络拓扑确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备,所述第二网络设备用于协助所述第一网络设备计算前往所述目的设备的第一路径。
本实施例中,在第一网络设备中可以保存有第一网络设备与报文目的设备之间的全局网络拓扑或局部网络拓扑,第一网络设备根据该全局网络拓扑或局部网络拓扑,可以确定需要第二网络设备协助其计算前往所述目的设备的第一路径。
例如,在第一网络设备中只保存有上述的局部网络拓扑时,第一网络设备无法计算得到前往目的设备的完整转发路径。第一网络设备可以确定前往目的设备的部分转发路径,并且在确定该部分转发路径上的第二网络设备能够计算得到剩余的转发路径的情况下,第一网络设备可以确定该第二网络设备用于协助自身计算前往目的设备的剩余路径,即由第二网络设备前往目的设备的转发路径。
又例如,在报文具有一定的转发约束条件,例如具有服务等级协议(ServiceLevel Agreement,SLA)要求,而第一网络设备无法获取网络拓扑中全部或部分的链路对应的SLA的情况下,第一网络设备可以确定需要第二网络设备协助其计算前往所述目的设备的转发路径,该第二网络设备可以获取到网络拓扑中全部或部分的链路对应的SLA。
在一个可能的实施例中,所述第一网络设备可以根据所述业务需求确定所述报文的目的设备不位于第一区域,所述第一区域为所述第一网络设备所位于的区域,所述第一网络设备只能够获取到第一区域的拓扑。所述第一网络设备根据所述第一区域的拓扑,确定所述第二网络设备,所述第二网络设备为所述第一区域和第二区域的边界设备,所述第二区域为所述目的设备所位于的区域,或者所述第二区域为到达所述目的设备的所述转发路径需经过的区域。
也就是说,在报文转发需要跨区域的情况下,第一网络设备可能无法获取到其他区域的拓扑,因此第一网络设备无法计算得到完整的报文转发路径。此时,第一网络设备可以基于其所在区域的拓扑,确定该区域的边界设备用于协助其计算前往所述目的设备的路径。该边界设备除了位于第一网络设备所在的区域,还可能位于目的设备所在的区域,或者是位于到达所述目的设备的所述转发路径需经过的区域。这样一来,该边界设备可以获取到第一网络设备所在区域之外的区域的拓扑,从而计算得到报文的转发路径。
在其他可能的应用场景中,第一网络设备也可以由于其他原因需要第二网络设备帮助第一网络设备确定与转发路径相关的信息。
步骤603,所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接。
步骤604,所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息。
本实施例中,该二消息可以用于请求所述第二网络设备计算前往所述目的设备的第一路径,该第二消息例如可以包括第一路径的两个端点设备的地址(即第二网络设备的地址以及报文的目的设备的地址)。
步骤605,所述第一网络设备接收所述第二网络设备发送的第三消息,该第三消息包括所述第一路径的指示信息。
该通过第三消息返回的第一路径的指示信息可以用于指示从第二网络设备到达目的设备的完整路径,也可以指示该完整路径中的部分路径。
在一种可能的实现方式中,在第二网络设备接收到第一网络设备发送的第二消息之后,第二网络设备可以确定前往目的设备的第一路径,并且将第一路径对应的指示信息通过第三消息发送给第一网络设备。示例性地,在第二网络设备与报文的目的设备位于同一个区域时,第二网络设备可以基于该区域的拓扑计算从自身前往报文的目的设备的路径,并且将计算得到的指示该路径的标签栈信息作为路径的指示信息,通过第三消息发送给第一网络设备。
在另一种可能的实现方式中,第二网络设备也可以是确定报文需要经过的区域的拓扑,并且将该区域的拓扑通过第三消息发送给第一网络设备。示例性地,在第二网络设备与报文的目的设备位于同一个区域时,第二网络设备可以确定报文需要经过该区域到达目的设备,因此第二网络设备可以将该区域的拓扑作为路径的指示信息,通过第三消息发送给第一网络设备。这样,第一网络设备就可以获取到目的设备所在区域的拓扑,从而基于该区域的拓扑计算得到前往目的设备的路径。
在一个可能的实施例中,第一网络设备还可以是确定多个协助其计算前往目的设备的路径的网络设备,并且与该多个网络设备建立连接,以向该多个网络设备请求协助计算前往目的设备的路径。
示例性地,该报文转发方法600还可以包括:
所述第一网络设备根据所述网络拓扑确定第三网络设备,所述第三网络设备为前述第一区域和前述第二区域的边界设备,即第三网络设备所处的区域与第二网络设备所处的区域相同。所述第一网络设备与所述第三网络设备建立第二连接,该第二连接例如可以为PECP会话连接。所述第一网络设备利用所述第二连接向所述第三网络设备发送第四消息,所述第四消息用于请求所述第三网络设备计算前往所述目的设备的第二路径。所述第一网络设备接收所述第三网络设备发送的第五消息,所述第五消息包括所述第二路径的指示信息。所述第一网络设备根据所述第三消息和所述第五消息,确定所述报文的所述转发路径的部分或全部,例如第一网络设备可以根据预置的路径选择策略,在第二网络设备和第三网络设备所反馈的路径中选择其中的一条,来确定报文的转发路径。
也就是说,第一网络设备在确定第二网络设备和第三网络设备均为第一区域和第二区域的边界设备的情况下,第一网络设备可以与第二网络设备和第三网络设备建立PECP会话连接,从而向第二网络设备和第三网络设备请求计算前往目的设备的路径。在第一网络设备获取到第二网络设备和第三网络设备返回的路径指示信息之后,第一网络设备综合两个网络设备返回的路径指示信息确定报文的转发路径。
为了便于理解,以下将结合具体例子详细描述在跨域场景下确定报文的转发路径的过程。可以参阅图7(a)和图7(b),图7(a)为本申请实施例提供的一种确定报文的转发路径方法700的流程示意图;图7(b)为本申请实施例提供的一种确定报文的转发路径方法700的应用网络的架构示意图。如图7(b)所示,网络设备1、网络设备2和网络设备3处于区域1,网络设备2和网络设备3同时还处于区域2,网络设备4、网络设备5和网络设备6处于区域2。
该确定报文的转发路径方法700包括以下的步骤。
步骤701,网络设备1根据业务需求,确定自身无法计算得到报文的转发路径。
其中,该业务需求可以是将报文转发至网络设备6。由于网络设备6处于区域2,而网络设备1位于区域1,并且网络设备1中不具有区域2的拓扑,因此,网络设备1可以确定自身无法计算得到前往网络设备6的路径。该网络设备6可以是报文的目的设备,也可以不是报文的目的设备,但与目的设备连接。
步骤702,网络设备1根据区域1的拓扑,确定网络设备2和网络设备3。
网络设备1根据区域1的拓扑,可以确定网络设备2和网络设备3为区域1的边界设备,网络设备2和网络设备3可能具有区域2的拓扑。因此,网络设备1可以确定由网络设备2和网络设备3来协助其计算报文的转发路径。
步骤703,网络设备1向网络设备2发送消息1,以与网络设备2建立PECP会话连接1。
步骤704,网络设备1向网络设备3发送消息2,以与网络设备3建立PECP会话连接2。
其中,网络设备1与网络设备2以及网络设备3建立PECP会话连接的过程可以参考上述的实施例,此处不再赘述。
步骤705,网络设备1利用PECP会话连接1向网络设备2发送消息3,该消息3用于请求网络设备2计算前往网络设备6的路径1。
其中,该前往网络设备6的路径1可以是指从网络设备2前往网络设备6的路径。
步骤706,网络设备1利用PECP会话连接2向网络设备3发送消息4,该消息4用于请求网络设备3计算前往网络设备6的路径2。
其中,该前往网络设备6的路径2可以是指从网络设备3前往网络设备6的路径。
步骤707,网络设备2根据消息3,确定路径1的指示信息1。
由于网络设备2为区域2的边界设备,网络设备2可以获得区域2的拓扑,因此,网络设备2可以基于区域2的拓扑确定从自身前往网络设备6的路径1。这样,网络设备2可以根据从自身前往网络设备6的路径1确定指示信息1,该指示信息1例如可以包括指示路径1的标签栈信息。
步骤708,网络设备2向网络设备1发送指示信息1。
步骤709,网络设备3根据消息4,确定路径2的指示信息2。
类似地,由于网络设备3为区域2的边界设备,网络设备3同样可以获得区域2的拓扑,并且能够基于区域2的拓扑确定从自身前往网络设备6的路径2。这样,网络设备3可以根据从自身前往网络设备6的路径2确定指示信息2,该指示信息2例如可以包括指示路径2的标签栈信息。
步骤710,网络设备3向网络设备1发送指示信息2。
步骤711,网络设备1根据指示信息1和指示信息2,确定前往网络设备6的路径。
网络设备1在接收到路径1对应的指示信息1以及路径2对应的指示信息2之后,可以获得从网络设备2前往网络设备6的路径1以及从网络设备3前往网络设备6的路径2。网络设备1可以基于预置的路径选择策略,在路径1和路径2中选择一条路径,从而确定前往网络设备6的路径。例如,网络设备1在路径1和路径2中选择了路径1,则网络设备可以生成从网络设备1前往网络设备2,再从网络设备2前往网络设备6的路径。
以上描述了在报文的转发路径跨一个域的场景下,确定报文的转发路径的过程。以下将结合具体例子详细描述在报文的转发路径跨多个域的场景下,确定报文的转发路径的过程。
可以参阅图8(a)和图8(b),图8(a)为本申请实施例提供的一种确定报文的转发路径方法800的流程示意图;图8(b)为本申请实施例提供的一种确定报文的转发路径方法800的应用网络的架构示意图。
如图8(b)所示,网络设备1、网络设备2和网络设备3处于区域1,网络设备2、网络设备3、网络设备4、网络设备5和网络设备6处于区域2,网络设备6、网络设备7、网络设备8和网络设备9处于区域3。
该确定报文的转发路径方法800包括以下的步骤。
步骤801,网络设备1根据业务需求,确定自身无法计算得到报文的转发路径。
其中,该业务需求可以是将报文转发至网络设备9。由于网络设备9处于区域3,而网络设备1位于区域1,并且网络设备1中不具有区域3的拓扑,因此,网络设备1可以确定自身无法计算得到前往网络设备9的路径。
步骤802,网络设备1根据区域1的拓扑,确定网络设备2。
网络设备1根据区域1的拓扑,可以确定网络设备2为区域1的边界设备,网络设备2可能具有区域3的拓扑。因此,网络设备1可以确定由网络设备2来协助其计算报文的转发路径。
步骤803,网络设备1向网络设备2发送消息5,以与网络设备2建立PECP会话连接3。
步骤804,网络设备1利用PECP会话连接3向网络设备2发送消息6,该消息6用于请求网络设备2计算前往网络设备9的路径3。
其中,该前往网络设备9的路径3可以是指从网络设备2前往网络设备9的路径。
步骤805,网络设备2向网络设备6发送消息7,该消息7用于请求网络设备6计算前往网络设备9的路径4。
由于网络设备9位于区域3中,网络设备2中并没有区域3的拓扑,因此,网络设备2可以确定其无法计算得到前往网络设备9的路径。此时,网络设备2可以根据区域2的拓扑,确定网络设备6为区域2的边界设备,即网络设备6可能具有区域3的拓扑。因此,网络设备2可以确定由网络设备6来协助其计算报文的转发路径,从而向网络设备6发送消息7,该消息7用于请求网络设备6计算前往网络设备9的路径4,该路径4可以为从网络设备6前往网络设备9的路径。
步骤806,网络设备6根据消息7确定路径4对应的指示信息3。
由于网络设备6为区域3的边界设备,网络设备6可以获得区域3的拓扑,因此,网络设备6可以基于区域3的拓扑确定从自身前往网络设备9的路径4。这样,网络设备6可以根据从自身前往网络设备9的路径4确定指示信息3,该指示信息3例如可以包括指示路径4的标签栈信息。
步骤807,网络设备6向网络设备2发送路径4对应的指示信息3。
可以理解的是,网络设备6除了可以是向网络设备2发送路径4对应的指示信息3,网络设备6也可以是直接向网络设备1发送该指示信息3,本实施例并不做具体限定。
步骤808,网络设备2根据指示消息3确定路径3对应的指示信息4。
在网络设备获得指示信息3之后,网络设备2可以根据自身前往网络设备6的路径以及指示信息3所指示的从网络设备6前往网络设备9的路径,得到从自身前往网络设备9的路径3,从而确定路径对应的指示信息4。
步骤809,向网络设备1发送路径3对应的指示信息4。
步骤810,网络设备1根据指示信息4,确定前往网络设备9的路径。
类似地,网络设备1在得到指示信息4之后,网络设备1可以根据从自身前往网络设备2的路径以及指示信息4所指示的路径3,确定得到从自身前往网络设备9的路径。
以上各实施例虽然以为例,对本申请实施例提供的业务处理方法所应用的场景进行了说明。可以理解地,本申请实施例提供的业务处理方法还可以应用于部署有控制器和转发器的网络场景,在此并不对本申请实施例所应用的网络中所部署的控制器类型做唯一限定。
为了实现上述实施例,本申请还提供了一种网络设备。可以参阅图9,图9为本申请实施例提供的一种网络设备900的结构示意图。
图9所示的网络设备900尽管示出了某些特定特征,但是本领域的技术人员将从本申请实施例中意识到,为了简洁起见,图9未示出各种其他特征,以免混淆本申请实施例所公开的实施方式的更多相关方面。为此,作为示例,在一些实现方式中,网络设备900包括一个或多个处理器901、网络接口902、编程接口903、存储器904和一个或多个通信总线909,用于将各种组件互连。在另一些实现方式中,网络设备900也可以在上述示例基础上省略或增加部分功能部件或单元。
在一些实现方式中,网络接口902除其他用途外,用于在网络系统中和一个或多个其他的网络设备/服务器连接。在一些实现方式中,通信总线909包括互连和控制系统组件之间的通信的电路。存储器904可以包括非易失性存储器,例如,只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。存储器904也可以包括易失性存储器,易失性存储器可以是随机存取存储器(randomaccess memory,RAM),其用作外部高速缓存。
在一些实现中,存储器904或存储器904的非暂时性计算机可读存储介质存储以下程序、模块和数据结构,或其子集,具体包括收发单元(图中未示出)和处理单元9041。
在一个可能的实施例中,该网络设备900例如可以为上述实施例中的第一网络设备。该网络设备900中例如可以包括:收发单元和处理单元9041;
在一个可能的实施例中,该网络设备900可以具有上述方法200中的第一网络设备或方法300中的第一网络设备的任意功能。该网络设备900中例如可以包括:收发单元和处理单元9041;收发单元用于执行上述的步骤202、步骤203、步骤204、步骤303、步骤304或步骤305;处理单元9041用于执行上述的步骤201、步骤301或步骤302。
可以理解的是,以上所述的收发单元的功能可以是由处理器调用存储器中的程序代码来实现,并在需要时配合网络接口902;也可以是由网络设备900上的网络接口902来完成数据的收发操作。
在各种实现中,网络设备900用于执行本申请实施例提供的业务处理方法,例如是执行上述图2至图8(b)所示的实施例所对应的业务处理方法。
与本申请提供的方法实施例以及虚拟装置实施例相对应,本申请实施例还提供了一种网络设备,下面对网络设备的硬件结构进行介绍。
可以参阅图10,图10为本申请实施例提供的一种网络设备1000的结构示意图,该网络设备1000可以配置为上述方法实施例中的第一网络设备。
网络设备1000对应于上述方法实施例中的第一网络设备,网络设备1000中的各硬件、模块和上述其他操作和/或功能分别为了实现方法实施例中的第一网络设备所实施的各种步骤和方法,关于网络设备1000如何转发报文的详细流程,具体细节可参见上述方法实施例,为了简洁,在此不再赘述。其中,上述方法200或方法300的各步骤通过网络设备1000处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
网络设备1000对应于上述虚拟装置实施例中的网络设备900,网络设备900中的每个功能模块采用网络设备1000的软件实现。换句话说,网络设备900包括的功能模块为网络设备1000的处理器读取存储器中存储的程序代码后生成的。
网络设备1000包括:主控板1010和接口板1030。
主控板1010也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板1010对网络设备1000中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板1010包括:中央处理器1011和存储器1012。
接口板1030也称为线路接口单元卡(line processing unit,LPU)、线卡(linecard)或业务板。接口板1030用于提供各种业务接口并实现数据包的转发。业务接口包括但不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板1030包括:中央处理器1031、网络处理器1032、转发表项存储器1034和物理接口卡(ph10sical interface card,PIC)1033。
接口板1030上的中央处理器1031用于对接口板1030进行控制管理并与主控板1010上的中央处理器1011进行通信。
网络处理器1032用于实现报文的转发处理。网络处理器1032的形态可以是转发芯片。具体而言,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
物理接口卡1033用于实现物理层的对接功能,原始的流量由此进入接口板1030,以及处理后的报文从该物理接口卡1033发出。物理接口卡1033包括至少一个物理接口,物理接口也称物理口,物理接口卡1033对应于系统架构200中的FlexE物理接口204。物理接口卡1033也称为子卡,可安装在接口板1030上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器1032处理。在一些实施例中,接口板1003的中央处理器1031也可执行网络处理器1032的功能,比如基于通用CPU实现软件转发,从而物理接口卡1033中不需要网络处理器1032。
可选地,网络设备1000包括多个接口板,例如网络设备1000还包括接口板1040,接口板1040包括:中央处理器1041、网络处理器1042、转发表项存储器1044和物理接口卡1043。
可选地,网络设备1000还包括交换网板1020。交换网板1020也可以称为交换网板单元(switch fabric unit,SFU)。在网络设备有多个接口板1030的情况下,交换网板1020用于完成各接口板之间的数据交换。例如,接口板1030和接口板1040之间可以通过交换网板1020通信。
主控板1010和接口板1030耦合。例如,主控板1010、接口板1030和接口板1040,以及交换网板1020之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板1010和接口板1030之间建立进程间通信协议(inter-process communication,IPC)通道,主控板1010和接口板1030之间通过IPC通道进行通信。
在逻辑上,网络设备1000包括控制面和转发面,控制面包括主控板1010和中央处理器1031,转发面包括执行转发的各个组件,比如转发表项存储器1034、物理接口卡1033和网络处理器1032。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器1032基于控制面下发的转发表对物理接口卡1033收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器1034中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。
如果网络设备1000被配置为方法200中的第一网络设备,中央处理器1011获取报文;在报文中添加第一指示信息和第二指示信息,以得到更新的报文。网络处理器1032触发物理接口卡1033向第二网络设备发送更新的报文。
如果网络设备1000被配置为方法300中的第一网络设备,中央处理器1011根据业务需求确定报文的转发路径上的第二网络设备。网络处理器1032触发物理接口卡1033向第二网络设备发送第一消息和第二消息。
应理解,网络设备900中的收发单元相当于网络设备1000中的物理接口卡1033或物理接口卡1043;网络设备900中的获取模块901和处理单元902可以相当于网络设备1000中的中央处理器1011或中央处理器1031。
应理解,本申请实施例中接口板1040上的操作与接口板1030的操作一致,为了简洁,不再赘述。应理解,本实施例的网络设备1000可对应于上述各个方法实施例中的第一网络设备或第二网络设备,该网络设备1000中的主控板1010、接口板1030和/或接口板1040可以实现上述各个方法实施例中的第一网络设备或第二网络设备所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
在一些可能的实施例中,上述第一网络设备或第二网络设备可以实现为虚拟化设备。例如,虚拟化设备可以是运行有用于发送报文功能的程序的虚拟机(英文:VirtualMachine,VM),虚拟机部署在硬件设备上(例如,物理服务器)。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。可以将虚拟机配置为第一网络设备或第二网络设备。例如,可以基于通用的物理服务器结合网络功能虚拟化(Network Functions Virtualization,NFV)技术来实现第一网络设备或第二网络设备。第一网络设备或第二网络设备为虚拟主机、虚拟路由器或虚拟交换机。本领域技术人员通过阅读本申请即可结合NFV技术在通用物理服务器上虚拟出具有上述功能的第一网络设备或第二网络设备。此处不再赘述。
应理解,上述各种产品形态的网络设备,分别具有上述方法实施例中第一网络设备或第二网络设备的任意功能,此处不再赘述。
本申请实施例提供了一种计算机程序产品,当该计算机程序产品在网络设备上运行时,使得网络设备执行上述方法200或方法300中第一网络设备执行的方法。
参见图11,本申请实施例提供了一种网络系统1100,系统1100包括:网络设备1101和网络设备1102。可选的,网络设备1101可以为方法200中的第一网络设备、上述的网络设备900、网络设备1000,网络设备1101为网络中的头节点;网络设备1102可以为方法300中的第一网络设备、上述的网络设备900、网络设备1000,网络设备1102为网络中的中间节点。可选的,系统1100还可以包括网络设备1103,网络设备1103可以为上述的网络设备900、网络设备1000,网络设备1103为网络中的尾节点。
本申请实施例还提供了一种芯片,包括处理器和接口电路,接口电路,用于接收指令并传输至处理器。其中,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
以上对本申请实施例进行了详细介绍,本申请实施例方法中的步骤可以根据实际需要进行顺序调度、合并或删减;本申请实施例装置中的模块可以根据实际需要进行划分、合并或删减。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备/服务器等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (17)
1.一种业务处理方法,其特征在于,包括:
第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,所述报文属于所述业务;
所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接;
所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息用于请求所述第二网络设备协助确定与所述转发路径相关的信息。
2.根据权利要求1所述的业务处理方法,其特征在于,所述方法还包括:
所述第一网络设备接收所述第二网络设备发送的第三消息,所述第三消息包括与所述转发路径相关的信息。
3.根据权利要求1或2所述的业务处理方法,其特征在于,所述第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,包括:
所述第一网络设备根据所述业务需求,确定所述第一网络设备无法确定与所述报文的所述转发路径相关的信息;
所述第一网络设备确定所述第二网络设备,所述第二网络设备用于协助确定与所述转发路径相关的信息。
4.根据权利要求1或2所述的业务处理方法,其特征在于,所述与所述转发路径相关的信息包括用于指示所述转发路径的粘连标签和/或路径标签。
5.根据权利要求1所述的业务处理方法,其特征在于,
所述第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,包括:
所述第一网络设备根据所述业务需求确定所述报文的转发路径;
所述第一网络设备根据所述报文的转发路径确定所述第二网络设备为粘连节点,所述第二网络设备用于分配粘连标签;
所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,包括:
所述第一网络设备利用所述第一连接向所述第二网络设备发送第二消息,所述第二消息包括标签栈信息,所述第二消息用于请求所述第二网络设备分配对应于所述标签栈信息的粘连标签。
6.根据权利要求5所述的业务处理方法,其特征在于,所述第一网络设备根据所述报文的转发路径确定所述第二网络设备为粘连节点,包括:
所述第一网络设备根据所述报文的转发路径,确定用于指示所述转发路径的需使用的标签数量大于标签栈支持携带标签的最大数量;
所述第一网络设备根据所述转发路径确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备。
7.根据权利要求2所述的业务处理方法,其特征在于,所述第一网络设备根据业务需求确定报文的转发路径上的第二网络设备,包括:
所述第一网络设备根据所述业务需求,确定所述第一网络设备无法计算得到所述报文的转发路径;
所述第一网络设备根据网络拓扑确定所述第二网络设备,所述第二网络设备为所述报文的转发路径上的网络设备,所述第二网络设备用于协助所述第一网络设备计算前往所述目的设备的第一路径。
8.根据权利要求7所述的业务处理方法,其特征在于,所述第一网络设备根据所述业务需求,确定所述第一网络设备无法计算得到所述报文的转发路径,包括:
所述第一网络设备根据所述业务需求确定所述报文的目的设备不位于第一区域,所述第一区域为所述第一网络设备所位于的区域;
所述第一网络设备根据所述第一区域的拓扑,确定所述第二网络设备,所述第二网络设备为所述第一区域和第二区域的边界设备,所述第二区域为所述目的设备所位于的区域,或者所述第二区域为到达所述目的设备的所述转发路径需经过的区域。
9.根据权利要求7或8所述的业务处理方法,其特征在于,所述第一网络设备利用所述第一连接向所述第二网络设备发送的第二消息用于请求所述第二网络设备计算前往所述目的设备的第一路径,所述第三消息包括所述第一路径的指示信息。
10.根据权利要求9所述的业务处理方法,其特征在于,所述方法还包括:
所述第一网络设备根据所述网络拓扑确定第三网络设备,所述第三网络设备为所述第一区域和所述第二区域的边界设备;
所述第一网络设备与所述第三网络设备建立第二连接;
所述第一网络设备利用所述第二连接向所述第三网络设备发送第四消息,所述第四消息用于请求所述第三网络设备计算前往所述目的设备的第二路径;
所述第一网络设备接收所述第三网络设备发送的第五消息,所述第五消息包括所述第二路径的指示信息;
所述第一网络设备根据所述第三消息和所述第五消息,确定所述报文的所述转发路径的部分或全部。
11.根据权利要求1至10任意一项所述的业务处理方法,其特征在于,所述第一连接包括路径计算单元通信协议PCEP连接。
12.根据权利要求11所述的业务处理方法,其特征在于,所述第一网络设备向所述第二网络设备发送第一消息,以与所述第二网络设备建立第一连接包括:
所述第一网络设备与所述第二网络设备建立传输控制协议TCP连接;
利用所述TCP连接,所述第一网络设备向所述第二网络设备发送所述第一消息,以与所述第二网络设备协商建立所述第一连接。
13.根据权利要求1至12任意一项所述的业务处理方法,其特征在于,
所述第一网络设备为所述报文的所述转发路径上的头节点设备。
14.根据权利要求13所述的业务处理方法,其特征在于,
所述第一网络设备和所述第二网络设备均为所述转发路径上的路径计算客户端PCC设备。
15.根据权利要求1至14任意一项所述的业务处理方法,其特征在于,报文的转发路径包括段路由策略SR policy路径、基于互联网协议第4版的段路由SRV4路径、基于互联网协议第6版的段路由SRV6路径、基于流量工程的段路由SR-TE路径和基于流量工程的多协议标签交换MPLS-TE路径中的一个或多个。
16.一种网络设备,其特征在于,包括:处理器、存储器;所述存储器用于存储指令;所述处理器用于执行存储器中的指令,使得所述网络设备执行如权利要求1至15任意一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机存储介质中存储有计算机可读指令,当该计算机可读指令被处理器执行时实现如权利要求1至15任意一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010997716.9A CN114301832A (zh) | 2020-09-21 | 2020-09-21 | 一种业务处理方法及网络设备 |
EP21868319.1A EP4207641A4 (en) | 2020-09-21 | 2021-08-05 | SERVICE PROCESSING METHOD AND NETWORK DEVICE |
PCT/CN2021/110707 WO2022057490A1 (zh) | 2020-09-21 | 2021-08-05 | 一种业务处理方法及网络设备 |
US18/187,515 US20230283544A1 (en) | 2020-09-21 | 2023-03-21 | Service Processing Method and Network Device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010997716.9A CN114301832A (zh) | 2020-09-21 | 2020-09-21 | 一种业务处理方法及网络设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114301832A true CN114301832A (zh) | 2022-04-08 |
Family
ID=80777538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010997716.9A Pending CN114301832A (zh) | 2020-09-21 | 2020-09-21 | 一种业务处理方法及网络设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230283544A1 (zh) |
EP (1) | EP4207641A4 (zh) |
CN (1) | CN114301832A (zh) |
WO (1) | WO2022057490A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242552B (zh) * | 2022-09-21 | 2022-12-13 | 北京中科网威信息技术有限公司 | 基于ipsec的报文转发方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9992105B2 (en) * | 2016-03-30 | 2018-06-05 | Juniper Networks, Inc. | Label switched path reporting |
CN110290068B (zh) * | 2018-03-19 | 2021-09-14 | 华为技术有限公司 | 一种粘连标签的发送方法、接收方法及设备 |
CN114070782B (zh) * | 2018-06-30 | 2023-05-16 | 华为技术有限公司 | 一种传输路径故障的处理方法、装置及系统 |
CN111245644B (zh) * | 2019-12-31 | 2022-12-16 | 网络通信与安全紫金山实验室 | 一种sdn场景下扩展pcep协议自动创建隧道的方法及系统 |
-
2020
- 2020-09-21 CN CN202010997716.9A patent/CN114301832A/zh active Pending
-
2021
- 2021-08-05 WO PCT/CN2021/110707 patent/WO2022057490A1/zh unknown
- 2021-08-05 EP EP21868319.1A patent/EP4207641A4/en active Pending
-
2023
- 2023-03-21 US US18/187,515 patent/US20230283544A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022057490A1 (zh) | 2022-03-24 |
EP4207641A4 (en) | 2024-01-24 |
US20230283544A1 (en) | 2023-09-07 |
EP4207641A1 (en) | 2023-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108574616B (zh) | 一种处理路由的方法、设备及系统 | |
US10250459B2 (en) | Bandwidth on-demand services in multiple layer networks | |
US10659290B1 (en) | RSVP local protection signaling reduction | |
CN113395735B (zh) | 一种报文传输方法、装置和网络设备 | |
CN108881017B (zh) | 改变多路径标签交换路径中每跳带宽约束的方法及路由器 | |
CN114374634A (zh) | 报文转发方法以及网络设备 | |
US20230208751A1 (en) | Packet forwarding method, device, and system | |
EP3099010B1 (en) | Network path computation method, apparatus and system | |
US20230283544A1 (en) | Service Processing Method and Network Device | |
CN115865769A (zh) | 报文处理方法、网络设备及系统 | |
US20230412508A1 (en) | Packet processing method and related apparatus | |
EP4207640A1 (en) | Path identifier allocation method, system, apparatus and device, and storage medium | |
CN115967664A (zh) | 自动分组和路由平台 | |
CN114338518A (zh) | 一种路由处理方法及网络设备 | |
CN114531360A (zh) | 一种语义名称获取方法、装置、设备及存储介质 | |
WO2022194193A1 (zh) | 用于获取路径的方法和装置 | |
WO2024104171A1 (zh) | 一种资源配置方法和装置 | |
EP4210290A1 (en) | Packet transmission method and apparatus | |
EP4254881A1 (en) | Routing transmission method and apparatus | |
WO2024087691A1 (zh) | 一种报文处理方法及相关设备 | |
WO2023236880A1 (zh) | 一种报文控制方法以及相关装置 | |
WO2023093786A1 (zh) | 一种引流的方法、设备及系统 | |
CN114915518A (zh) | 一种报文传输方法、系统及设备 | |
CN115865823A (zh) | 流量传输方法、装置、计算机设备及存储介质 | |
CN117792978A (zh) | 一种路径故障检测的方法以及相关装置 |
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 |