CN116980341A - 报文发送的方法、网络设备及通信系统 - Google Patents
报文发送的方法、网络设备及通信系统 Download PDFInfo
- Publication number
- CN116980341A CN116980341A CN202210430611.4A CN202210430611A CN116980341A CN 116980341 A CN116980341 A CN 116980341A CN 202210430611 A CN202210430611 A CN 202210430611A CN 116980341 A CN116980341 A CN 116980341A
- Authority
- CN
- China
- Prior art keywords
- network device
- message
- shortest path
- network
- path
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 133
- 238000004891 communication Methods 0.000 title claims abstract description 16
- 241000238633 Odonata Species 0.000 claims description 39
- 230000008569 process Effects 0.000 abstract description 19
- 235000008694 Humulus lupulus Nutrition 0.000 abstract description 10
- 238000012545 processing Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000005641 tunneling Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种通信技术领域,特别涉及一种报文发送的方法、网络设备及通信系统。该报文发送的方法包括:第一网络设备在确定通过非最短路径发送报文,并确定非最短路径上的第二网络设备与第一网络设备属于不同组后,可以向第二网络设备发送该报文并通知第二网络设备按照最短路径发送该报文。第二网络设备在接收到该报文后,可以通过最短路径发送该报文,并通知最短路径上的其他网络设备按照最短路径发送该报文。这样,在发送该报文的过程中,当该报文经过非最短路径中的组间路径后,剩余的路径为发送报文至目的设备的最短路径。如此,可以避免在发送报文的路径中存在跳数过多或出现环路的问题,能够提高报文发送的效率。
Description
技术领域
本申请涉及通信技术领域,特别涉及一种报文发送的方法、网络设备及通信系统。
背景技术
高性能计算机群(High Performance Computing Cluster,HPCC)由大量的网络设备和主机(包括计算设备、存储设备)组成,可用于求解科研、工业界复杂的计算问题。HPCC中的多个网络设备可组成高性能计算机(High Performance Computing,HPC)网络,用于连接HPCC中的主机,实现主机之间的数据传输。其中,蜻蜓(dragonfly)网络是HPC网络中常用的一种网络拓扑类型。在dragonfly网络中网络设备可被划分为多个组,组内的网络设备可建立全连接,任意两组之间可通过网络设备建立至少一条连接。
为了提高报文的发送效率,每个网络设备在发送报文时,可以根据报文中携带的目的地址,确定发送报文的最短路径并对最短路径的拥塞状况进行检测。如果检测到最短路径存在拥塞,则可以选择非最短路径对报文进行发送。
但是当报文的发送任务较多时,HPC网络中可能有大量的路径存在拥塞,这样,网络设备向另一组的网络设备发送报文的过程中,可能会存在发送报文的路径中存在跳数过多或者出现环路的问题,进而导致网络设备发送报文的效率下降。
发明内容
本申请实施例提供了一种报文发送的方法、网络设备及通信系统,可以提高HPC网络中的网络设备发送报文的效率,相应的技术方案如下:
第一方面,提供了一种报文发送的方法,该方法包括:第一网络设备获取发送报文的非最短路径,其中,该非最短路径中包括至少2条组间路径,该非最短路径中的第二网络设备与第一网络设备属于不同组;第一网络设备向第二网络设备发送该报文,并通知第二网络设备按照最短路径发送该报文,该非最短路径包括该最短路径,该最短路径中包括1条组间路径。
其中,组间路径指的是相连且在不同组的两个网络设备传输数据的链路,组内路径指的是相连且在同一组的两个网络设备传输数据的链路。该最短路径是该非最短路径的中的一部分路径。
本申请所示的方案中,第一网络设备向第二网络设备发送的报文可以是由第一网络设备连接的主机发送至第一网络设备的。当该报文是由第一网络设备连接的主机发送至第一网络设备时,第一网络设备可以确定发送该报文的最短路径和非最短路径的拥塞情况。其中,第一网络设备发送该报文的最短路径和非最短路径可分别包括多条。如果第一网络设备确定发送该报文的各最短路径均存在拥塞时,则可以选择一条不拥塞的非最短路径发送该报文。在第一网络设备以非最短路径向其他组的第二网络设备发送报文时,可以通知第二网络设备按照最短路径将该报文发送至目的设备。
也就是说,在本申请中网络设备按照非最短路径发送报文时,如果确定与接收报文的网络设备属于不同组,则可以通知接收报文的网络设备按照最短路径发送该报文。因此报文在非最短路径上经过一次组间路径发送后,对于再接收到该报文的网络终端就会按照最短路径对该报文进行发送。又由于最短路径中仅包括1条组间路径,因此一个报文在通过非最短路径发送的过程中,只需要经过两条组间路径,就会被发送至目的设备。所以可以避免发送报文的路径中出现网络设备的跳数过多或者出现环路的问题,能够在一定程度上提高发送报文的效率。
在一种可能的实现方式中,第一网络设备向第二网络设备发送该报文,并通知第二网络设备按照最短路径发送该报文,包括:第一网络设备在该报文中设置最短路径信息,其中,该最短路径信息用于指示该第二网络设备按照最短路径发送设置最短路径信息的报文;第一网络设备向第二网络设备发送设置最短路径信息的报文。
本申请所示的方案中,第一网络设备可以在报文中设置最短路径信息,以通知第二网络设备以最短路径发送该报文。例如可以通过设置某个扩展字段的字段值,以在报文中设置最短路径信息。这样,第二网络设备可以根据接收到的报文中是否设置最短路径信息,确定是否以最短路径发送接收到的报文。如此通过在报文中设置最短路径信息通知第二网络设备以最短路径发送报文的方式,可以避免额外向第二网络设备发送通知,减少了HPC网络中网络设备之间的数据传输量,能够提高网络设备之间发送报文的效率。
在一种可能的实现方式中,最短路径信息设置在报文中的互联网协议(InternetProtocol,IP)头或隧道头中。如可以将最短路径信息设置在报文的IP头或隧道头的扩展字段中。这样,可以在不更改报文格式的情况下,在报文中设置最短路径信息,设置方式简单,能够提高网络设备发送报文的效率。
在一种可能的实现方式中,第一网络设备获取发送报文的非最短路径,包括:第一网络设备根据在该报文中设置的非最短路径信息,获取发送报文的非最短路径。
本申请所示的方案中,第一网络设备向第二网络设备发送的报文可以是由同组的其他网络设备发送至第一网络设备。如果同组的其他网络设备是按照非最短路径向第一网络设备发送的报文,则在该报文中可以设置有非最短路径信息。例如,可以通过设置报文中某个扩展字段的字段值,在报文中设置非最短路径信息。该扩展字段可以与上述最短路径信息对应的扩展字段为同一个字段,但对应不同的字段值。这样,第一网络设备可以根据接收到的报文中是否设置非最短路径信息,确定是否以非最短路径发送接收到的报文。如此通过在报文中设置非最短路径信息通知第一网络设备以非最短路径发送报文的方式,可以避免额外向第一网络设备发送通知,减少了HPC网络中网络设备之间的数据传输量,能够提高发送网络设备之间发送报文的效率。
在一种可能的实现方式中,非最短路径信息设置在报文中的互联网协议IP头或隧道头中。如可以将非最短路径信息设置在报文的IP头或隧道头的扩展字段中。这样,可以在不更改报文格式的情况下,在报文中设置非最短路径信息,设置方式简单,能够提高网络设备发送报文的效率。
在一种可能的实现方式中,第一网络设备向第二网络设备发送该报文,并通知第二网络设备按照最短路径发送该报文,包括:第一网络设备通过与最短路径对应的第一接口向第二网络设备发送该报文,以指示第二网络设备按照最短路径发送该报文。
本申请所示的方案中,一个网络设备与另一个网络设备建立连接时,可以通过至少两个接口与另一个网络设备建立连接。其中,一个接口可以仅发送或接收最短路径上的报文,另一个接口可以仅发送或接收非最短路径上的报文。如此网络设备可以根据接收报文的接口,确定是以最短路径发送报文还是以非最短路径发送报文。当第一网络设备通过最短路径对应的第一接口向第二网络设备发送该报文时,该第二网络设备可以通过最短路径对应的接口接收该报文,进而可以指示第二网络设备按照最短路径发送该报文。这样,网络设备仅通过不同的接口发送报文,便可以指示接收到的网络设备发送报文时应选择的路径,不需要额外向第一网络设备发送通知,能够减少HPC网络中网络设备之间的数据传输量,能够提高发送网络设备之间发送报文的效率。
在一种可能的实现方式中,第一网络设备获取发送报文的非最短路径,包括:第一网络设备通过与非最短路径对应的第二接口接收报文,确定发送该报文的非最短路径。
本申请所示的方案中,第一网络设备向第二网络设备发送的报文可以是同组的其他网络设备发送至第一网络设备。并且其他网络设备可以通过向第一网络设备中与非最短路径对应的第二接口发送报文。这样,第一网络设备在通过第二接口接收到报文时,不需要再对报文进行解封装或者额外接收通知,便可以确定通过以非最短路径对接收到的报文发送,能够提高网络设备发送报文的效率。
在一种可能的实现方式中,在第一网络设备设置有最短路径转发表和非最短路径转发表,第一网络设备的第一接口通过绑定最短路径转发表,实现与发送或接收最短路径上的报文;第一网络设备的第二接口通过绑定非最短路径转发表,实现与发送或接收非最短路径上的报文。
其中,最短路径转发表中包括以最短路径向HPC网络中的各主机发送的报文的下一跳地址,该下一跳地址可以是下一跳设备对应最短路径的接口的接口地址;非最短路径转发表中包括以非最短路径向HPC网络中的各主机发送的报文的下一跳地址,该下一跳地址可以是下一跳设备对应非最短路径的接口的接口地址。在本申请所示的方案中,通过将不同的接口分别绑定最短路径转发表和非最短路径转发表,可以实现不同的接口对应不同的路径,且将对应最短路径的最短路径转发表和对应非最短路径的非最短路径转发表分开存储,能够提高查表效率。
在一种可能的实现方式中,第二网络设备是非最短路径中第一网络设备的下一跳设备。
在一种可能的实现方式中,第二网络设备不是非最短路径中第一网络设备的下一跳设备。第一网络设备通过第三网络设备向第二网络设备发送报文,第三网络设备与第一网络设备属于同一组并且第三网络设备在非最短路径上。
本申请所示的方案中,第二网络设备在第一网络设备发送报文至目的设备的非最短路径上,但并非第一网络设备在非最短路径上对应的下一跳设备。第一网络设备在非最短路径上对应的下一跳设备可以是与第一网络设备属于同一组的第三网络设备。在这种情况下,第一网络设备向第三网络设备发送该报文时,可以通知第三网络设备按照非最短路径发送该报文,然后再由第三网络设备按照非最短路径将报文发送至第二网络设备。这样,在同一组中一直通过非最短路径发送报文,可以避免组内发送报文的路径出现跳数过多或环路的问题。
在一种可能的实现方式中,第一网络设备向第三网络设备发送该报文,并通知第三网络设备按照非最短路径发送该报文,包括:第一网络设备在该报文中设置非最短路径信息,其中,该非最短路径信息用于指示该第三网络设备按照非最短路径发送设置最短路径信息的报文;第一网络设备向第三网络设备发送设置非最短路径信息的报文。
本申请所示的方案中,第一网络设备通知第三网络设备以非最短路径发送报文的方式,可以是在发送的报文中设置非最短路径信息。例如可以通过设置报文中某个扩展字段值,在报文中设置非最短路径信息。这样,第三网络设备可以根据接收到的报文中是否设置非最短路径信息,确定是否以非最短路径发送接收到的报文。如此通过在报文中设置非最短路径信息通知第三网络设备以非最短路径发送报文的方式,可以避免额外向第三网络设备发送通知,减少了HPC网络中网络设备之间的数据传输量,能够提高发送网络设备之间发送报文的效率。
在一种可能的实现方式中,第一网络设备获取发送报文的非最短路径之前,还包括:第一网络设备接收第二网络设备发送的路由通告消息,其中,该路由通告消息中包括该报文的目的设备的地址、第一网络设备通过第二网络设备到目的设备的路径开销值、以及第一网络设备向目的设备发送该报文的下一跳地址;第一网络设备基于该路径开销值,确定第一网络设备到目的设备的路径为非最短路径。
本申请所示的方案中,HPC网络中的各网络设备在发送报文之前,各网络设备之间可以互相发送路由通告消息,每个网络设备可以根据接收的路由通告消息建立本地的路由表,然后根据路由表生成对应的转发表。其中,第一网络设备可以接收第二网络设备发送的路由通告消息,该路由消息通知中可以包括上述报文对应的目的设备的地址、第一网络设备通过第二网络设备向目的设备发送报文的路径对应的路径开销值、以及第一网络设备向目的设备发送该报文的下一跳地址,该下一跳地址为第二网络设备的地址,如可以是第二网络设备连接第一网络设备的接口对应的接口地址。
其中,第一网络设备在接收到路由通告消息后,可以根据路由通告消息中的路径开销值,确定该路由通告消息对应的路径为最短路径还是非最短路径。第一网络设备中可设置有路径开销阈值。对于路径开销值大于路径开销阈值的路由通告消息,可认为该路由通告消息对应的路径为非最短路径;对于路径开销值小于等于路径开销阈值的路由通告消息,可认为该路由通告消息对应的路径为最短路径。
在一种可能的实现方式中,组间路径的路径开销值大于同一组内所有组内路径的路径开销值之和。
本申请所示的方案中,最短路径和非最短路径可以由组间路径和组内路径组成。将组间路径的路径开销值设置为大于同一组内所有组内路径的路径开销值之和,这样仅通过路径开销值便可以计算出最短路径或非最短路径中包括的组间路径和组内路径的个数。
在一种可能的实现方式中,第一网络设备获取发送报文的最短路径,其中,非最短路径中包括1条组间路径,第一网络设备向第五网络设备发送该报文,并通知第五网络设备按照最短路径发送该报文,第五网络设备为最短路径上的网络设备。
本申请所示的方案中,第一网络设备向第五网络设备发送的报文可以是由第一网络设备连接的主机发送至第一网络设备的。当该报文是由第一网络设备连接的主机发送至第一网络设备时,第一网络设备可以确定发送该报文的最短路径和非最短路径的拥塞情况。其中,第一网络设备发送该报文的最短路径和非最短路径可分别包括多条。如果第一网络设备确定发送该报文的各最短路径存在不拥塞的最短路径,则可以选择一条不拥塞的最短路径发送该报文。
在第一网络设备按照最短路径向第五网络设备发送报文时,可以通知第五网络设备按照最短路径将该报文发送至目的设备。也就是说,在本申请中网络设备只要确定按照最短路径发送报文后,后续接收到该报文的可一直按照该最短路径对报文进行发送,因此可以避免发送报文的路径中出现网络设备的跳数过多或者出现环路的问题,能够在一定程度上提高发送报文的效率。
在一种可能的实现方式中,上述报文发送的方法应用在dragonfly或dragonfly+网络中。
第二方面,提供了一种报文发送的方法,该方法包括:第二网络设备接收第一网络设备按照非最短路径发送的报文,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,其中,非最短路径中包括至少2条组间路径,第二网络设备与第一网络设备属于不同组,非最短路径包括最短路径,最短路径中包括1条组间路径;第二网络设备根据通知,按照最短路径发送该报文。
其中,组间路径指的是相连且在不同组的两个网络设备传输数据的链路,组内路径指的是相连且在同一组的两个网络设备传输数据的链路。最短路径是非最短路径的中的一部分路径。
本申请所示的方案中,报文在通过非最短路径发送的过程中,第二网络设备可以接收第一网络设备发送的通知,确定按照最短路径发送报文。也就是说,报文在非最短路径上经过一次组间路径发送后,对于再接收到该报文的网络终端就会按照最短路径对该报文进行发送。又由于最短路径中包括1条组间路径,因此一个报文在通过非最短路径发送的过程中,只需要经过两条组间路径,所以可以避免发送报文的路径中出现网络设备的跳数过多或者出现环路的问题,能够在一定程度上提高发送报文的效率。
在一种可能的实现方式中,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,包括:第二网络设备根据该报文中设置的最短路径信息,确定按照最短路径发送该报文,其中,最短路径信息用于指示第二网络设备按照最短路径发送该报文。
本申请所示的方案中,最短路径信息可以设置在报文中,第二网络设备可以根据报文中是否设置最短路径信息,确定是否按照最短路径发送接收到的报文。如此通过在报文中设置非最短路径信息通知第二网络设备以非最短路径发送报文的方式,可以避免额外向第二网络设备发送通知,减少了HPC网络中网络设备之间的数据传输量,能够提高发送网络设备之间发送报文的效率。
在一种可能的实现方式中,最短路径信息设置在报文中的互联网协议IP头或隧道头中。如可以将最短路径信息设置在报文的IP头或隧道头的扩展字段中。这样,可以在不更改报文格式的情况下,在报文中设置非最短路径信息,设置方式简单,能够提高网络设备发送报文的效率。
在一种可能的实现方式中,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,包括:第二网络设备通过与最短路径对应的第一接口接收第一网络设备发送的报文,确定按照最短路径发送该报文。
本申请所示的方案中,本申请所示的方案中,一个网络设备与另一个网络设备建立连接时,可以通过至少两个接口与另一个网络设备建立连接。其中,一个接口可以仅发送或接收最短路径上的报文,另一个接口可以仅发送或接收非最短路径上的报文。如此网络设备可以根据接收报文的接口,确定是以最短路径发送报文还是以非最短路径发送报文。这样,第二网络设备在通过最短路径对应的第一接口接收到报文时,不需要再对报文进行解封装或者额外接收通知,便可以确定通过以非最短路径对接收到的报文发送,能够提高网络设备发送报文的效率。
在一种可能的实现方式中,第二网络设备是非最短路径中第一网络设备的下一跳设备。
在一种可能的实现方式中,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,包括:第二网络设备根据第三网络设备发送的按照最短路径发送该报文的通知,确定按照最短路径发送该报文,其中,第三网络设备与第一网络设备属于同一组并且第三网络设备在非最短路径上。
本申请所示的方案中,第二网络设备在第一网络设备发送报文至目的设备的非最短路径上,但并非第一网络设备在非最短路径上对应的下一跳设备。第一网络设备在非最短路径上对应的下一跳设备可以是与第一网络设备属于同一组的第三网络设备。在这种情况下,第一网络设备向第三网络设备发送该报文时,可以通知第三网络设备按照非最短路径发送该报文,然后再由第三网络设备将该报文发送至非最短路径上的第二网络设备,并通知第二网络设备按照最短路径发送的该报文。这样,在第一个组中的网络设备一直按照非最短路径发送报文,当该报文经过组间路径发送后,再接收到该报文的网络设备可按照最短路径发送报文,避免发送报文的路径中出现网络设备的跳数过多或者出现环路的问题,能够在一定程度上提高发送报文的效率。
在一种可能的实现方式中,第二网络设备接收第一网络设备按照非最短路径发送的报文之前,还包括:第二网络设备接收第四网络设备发送的路由通告消息,其中,该路由通告消息中包括该报文的目的设备的地址、第二网络设备通过第四网络设备到目的设备的路径开销值、以及第二网络设备向目的设备发送该报文的下一跳地址;第二网络设备基于该路径开销值,确定第二网络设备到目的设备的路径为最短路径。
本申请所示的方案中,HPC网络中的各网络设备在发送报文之前,各网络设备之间可以进行路由信息的传播,每个网络设备可以根据接收到的路由通告消息建立本地的路由表,然后根据路由表生成对应的转发表。其中,第二网络设备可以接收第四网络设备发送的路由通告消息,该路由消息通知中可以包括上述报文对应的目的设备的地址、第二网络设备通过第四网络设备向目的设备发送报文的路径对应的路径开销值、以及第二网络设备向目的设备发送该报文的下一跳地址,该下一跳地址为第四网络设备的地址,如可以是第四网络设备连接第二网络设备的接口对应的接口地址。
其中,第二网络设备在接收到路由通告消息后,可以根据路由通告消息中的路径开销值,确定该路由通告消息对应的路径为最短路径还是非最短路径。第二网络设备中可设置有路径开销阈值。对于路径开销值大于路径开销阈值的路由通告消息,可认为该路由通告消息对应的路径为非最短路径;对于路径开销值小于等于路径开销阈值的路由通告消息,可认为该路由通告消息对应的路径为最短路径。
在一种可能的实现方式中,组间路径的路径开销值大于同一组内所有组内路径的路径开销值之和。
本申请所示的方案中,最短路径和非最短路径可以由组间路径和组内路径组成。将组间路径的路径开销值设置为大于同一组内所有组内路径的路径开销值之和,这样仅通过路径开销值便可以计算出最短路径或非最短路径中包括的组间路径和组内路径的个数。
在一种可能的实现方式中,该报文发送的方法应用在dragonfly或dragonfly+网络中。
第三方面,提供了一种第一网络设备,该第一网络设备包括一个或多个模块,该一个或多个模块用于实现上述第一方面或第一方面任一种可选方式所提供的报文发送的方法。
第四方面,提供了一种第二网络设备,该第二网络设备包括一个或多个模块,该一个或多个模块用于实现上述第二方面或第二方面任一种可选方式所提供的报文发送的方法。
第五方面,提供了一种网络设备,该网络设备包括存储器和处理器,该存储器用于存储计算机指令,该处理器用于执行该存储器存储的计算机指令,以使该网络设备执行并实现上述第一方面、第二方面、第一方面任一种可选方式、或第二方面任一种可选方式所提供的报文发送的方法。
第六方面,提供了一种通信系统,该通信系统包括第一网络设备和第二网络设备,其中:该第一网络设备,用于实现上述第一方面或第一方面任一种可选方式所提供的报文发送的方法;该第二网络设备,用于实现上述第二方面或第二方面任一种可选方式所提供的报文发送的方法。
第七方面,提供了一种可读存储介质,该可读存储介质存储有程序代码,当该程序代码被网络设备执行时,该网络设备执行并实现上述第一方面、第二方面、第一方面任一种可选方式、或第二方面任一种可选方式所提供的报文发送的方法。
第八方面,提供了一种计算机程序产品,该计算机程序产品包括至少一条计算机指令,该计算机程序产品在模型推理的设备上运行时,使得该设备实现上述第一方面、第二方面、第一方面任一种可选方式、或第二方面任一种可选方式所提供的报文发送的方法。
附图说明
图1是本申请实施例提供的一种dragonfly网络的结构示意图;
图2是本申请实施例提供的一种dragonfly+网络的结构示意图;
图3是本申请实施例提供的一种HPC网络结构示意图;
图4是本申请实施例提供的一种报文发送的方法流程图;
图5是本申请实施例提供的一种FIB的示意图;
图6是本申请实施例提供的一种报文发送的方法流程图;
图7是本申请实施例提供的一种报文发送的方法流程图;
图8是本申请实施例提供的一种网络设备的接口示意图;
图9是本申请实施例提供的一种报文发送的方法流程图;
图10是本申请实施例提供的一种建立路由的方法流程图;
图11是本申请实施例提供的一种HPC网络结构示意图;
图12是本申请实施例提供的一种网络设备的接口示意图;
图13是本申请实施例提供的一种网络设备的接口示意图;
图14是本申请实施例提供的一种VXLAN报文的封装格式示意图;
图15是本申请实施例提供的一种报文发送的方法流程图;
图16是本申请实施例提供的一种报文发送的方法流程图;
图17是本申请实施例提供的一种第一网络设备的结构示意图;
图18是本申请实施例提供的一种第二网络设备的结构示意图;
图19是本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供了一种报文发送的方法,该方法可以应用在HPC网络中。HPC网络中的各网络设备可以组成各种类型的拓扑网络,例如蜻蜓(dragonfly)网络和蜻蜓拓展(dragonfly+)网络等。
图1是dragonfly网络的一种示例,如图1所示,dragonfly网络由多个组(group)全互连组成,每个组内部包括多个网络设备101(路由器或交换机等),多个网络设备101之间可以建立全连接,每个网络设备101可连接有一个或多个主机102(计算设备或存储设备),在图1中示例性的画出了一个主机102。
在图1中,group1中包括网络设备101a、网络设备101b、网络设备101c、网络设备101d、网络设备101e,其中,网络设备101a与主机102a连接。group2中包括网络设备101f、网络设备101g、网络设备101h、网络设备101i、网络设备101j,其中,group2中的网络设备101g可以与group1中的网络设备101e建立连接。group3中包括网络设备101k、网络设备101l、网络设备101m、网络设备101n、网络设备101o,其中,group3中的网络设备101k可以与group1中的网络设备101c建立连接。另外,对于group1、2、3中的其他网络设备还可以与其他group中的网络设备建立连接(图1中未示出),如网络设备101d、网络设备101o、网络设备101h可分别与其他group中的网络设备建立连接。
图2是dragonfly+网络的一种示例,如2所示,dragonfly+网络由多个组全互连组成,每个组包括多个网络设备201(路由器或交换机等),多个网络设备101之间可以建立叶脊拓扑网络,在叶脊拓扑网络中网络设备201可分为叶节点(leaf)2011和脊节点(spine)2012。其中,叶节点可分别与主机202和脊节点2012建立连接,在图2中示例性的画出了一个主机202,脊节点2012可以与其他组的脊节点建立连接。
在图2中,group1中的叶节点2011可包括网络设备2011a、网络设备2011b,脊节点可包括网络设备2012a、网络设备2012b、网络设备2012c,其中,网络设备2011a、网络设备2011b分别与网络设备2012a、网络设备2012b、网络设备2012c建立连接,网络设备2011b与主机202a连接。group2中的叶节点2011可包括网络设备2011c、网络设备2011d,脊节点可包括网络设备2012d、网络设备2012e、网络设备2012f,其中,网络设备2011c、网络设备2011d分别与网络设备2012d、网络设备2012e、网络设备2012f建立连接,其中,group2中网络设备2012d与group1中网络设备2012c建立连接。group3中的叶节点2011可包括网络设备2011e、网络设备2011f,脊节点可包括网络设备2012i、网络设备2012g、网络设备2012h,其中,网络设备2011e、网络设备2011f分别与网络设备2012g、网络设备2012h、网络设备2012i建立连接,其中,group3中网络设备2012h与group1中网络设备2012a建立连接。另外,对于group1、2、3中的其他脊节点还可以与其他group中的脊节点建立连接(图2中未示出),如网络设备2012b、网络设备2021d和网络设备2021i可分别与其他group中的脊节点建立连接。
下面对本申请可能涉及的一些名词进行介绍:
链路:相互连接的两个网络设备或相互连接的网络设备和主机之间的数据传输线路称为链路。
其中,如果相互连接的两个网络设备属于同一组,则该两个网络设备之间的链路为组内链路(local link);如果相互连接的两个网络设备不属于同一组,则该两个网络设备之间的链路为组间链路(global link);如果相互连接为网络设备和主机,则网络设备和主机之间的链路为入口链路(access link)。
路径:任意两个节点(网络设备或主机)之间的数据传输线路称为路径,一条路径可以包括一条或多条链路。
最短路径:在包括的至少一条链路中仅包括一条组间链路的路径。
非最短路径:在包括的至少一条链路中包括两条及以上组间链路的路径。
链路开销值:根据HPC网络的特点,不同的链路类型对应有不同的链路开销值,组间链路的链路开销值大于组内链路的链路开销值。一般情况下,入口链路对应的链路开销值小于组内链路对应的链路开销值,组内链路对应的链路开销值小于组间链路对应的链路开销值。
路径开销值:路径对应的路径开销值为路径包括的各链路对应的链路开销值之和。如果路径中只包括一条链路,则该路径对应的路径开销值为其包括的链路对应的链路开销值。
其中,技术人员可以预先设置开销阈值,通过开销阈值区分最短路径和非最短路径。
边界网关协议(Border Gateway Protocol,BGP):一种自治系统(autonomoussystem,AS)间的路由协议,既可以应用在AS内,也可以应用在AS间。
AS:一个有权自主地决定在本系统中应采用各种路由协议的小型单位。
虚拟扩展局域网(Virtual Extensible Local Area Network,VXLAN):一种网络虚拟化技术,本质上是一种隧道技术,从逻辑上将网络划分为Underlay Network(基础网络)和Overlay Network(业务网络)两个部分。
为便于理解本申请提供的实施例,下面再对现有的报文发送的方法进行简单介绍:
在HPC网络中的某个主机向另外一个组的目的主机发送报文时,可以将报文先发送至HPC网络中网络设备,网络设备在接收到报文后,可以根据报文中携带的目的地址,确定向该报文对应的目的主机发送的最短路径和非最短路径,然后根据最短路径和非最短路径的拥塞状况,选择相应的路径,将该报文发送至与所选路径上连接的网络设备(后续可称为下一跳设备)。当下一跳设备在接收到报文,可继续确定向该报文对应的目的主机发送的最短路径和非最短路径,然后根据最短路径和非最短路径的拥塞状况,选择相应的路径,并将该报文发送至该下一跳设备对应的下一跳设备,直到将报文发送至目的主机。
但由于转发报文的每个网络设备都会重新选择发送报文的路径,就可能导致发送报文的路径中出现多跳,如发送报文的路径中经过了多个属于不同组的网络设备。如图3所示主机S向主机D发送的路径可能是主机S-node1-node4-node8-node6-node5-node15-node13-node14-node9-node10-主机D。或者还可能导致发送报文的路径中出现环路,尤其是在多个不同的组中出现了环路,如图3中,主机S向主机D发送的路径可能是主机S-node1-node4-node8-node5-node15-node16-node1-node4-……-主机D。如此,导致报文在HPC网络中的发送效率较低。
本申请实施例在转发面提供了一种报文发送的方法,网络设备可以根据最短路径或非最短路径对报文进行发送,能够提高转发报文的效率,可选地,在控制面提供了一种建立路由的方法,可以确定节点(网络设备或主机)之间发送报文的最短路径和非最短路径。
图4是本申请实施例提供的一种报文发送的方法,下面将结合具体实施方式,对图4所示的处理流程进行详细的说明,内容如下:
步骤401、第一网络设备接收报文,并确定转发报文的路径。
第一网络设备接收到的报文可以是第一网络设备连接的主机发送的,或者是第一网络设备连接的其他网络设备发送的。
在第一网络设备接收到的报文是由第一网络设备连接的其他网络设备发送的情况下,可以根据其他网络设备的通知,确定转发报文的路径。在第一网络设备接收到的报文是由第一网络设备连接的主机发送的情况下,第一网络设备可以执行自适应路由(adaptive routing)算法以确定转发报文的路径,如下:
第一网络设备获取接收到的报文中的目的地址,其中,该报文可以为IP报文,目的地址为目的主机对应的IP地址。在一种可能的情况中,该IP地址为目标主机对应的网段路由。之后第一网络设备可以查询本地的转发信息表(Forwarding Information Base,FIB),确定发送该报文的最短路径和非最短路径,如可以确定发送该报文的最短路径上的下一跳地址和发送该报文的非最短路径上的下一跳地址。
第一网络设备根据报文中携带的目的地址,在FIB(即转发表)中确定发送该报文的下一跳地址以及每个下一跳地址对应的路径类型后,可以检测每个下一跳地址对应的网络设备的拥塞状态。如果存在对应最短路径的下一跳地址所属的网络设备不拥塞,则可以确定以最短路径对该报文进行发送;如果对应最短路径类型的下一跳地址所属的网络设备均拥塞,且存在对应非最短路径的下一跳地址所属的网络设备不拥塞,则可以确定以非最短路径对该报文进行发送。其中,对于对网络设备拥塞状态的检测,可以根据是否接收到相应网络设备发送的自适应路由通知(Adaptive Routing Notification,ARN)确定。如果第一网络设备接收到某个网络设备发送的ARN,则可以确定该网络设备处于拥塞状态,也就说明该网络设备对应的最短路径或非最短路径处于拥塞状态。
其中,FIB是由第一网络设备根据第一网络设备中的路由表生成的,该路由表可以由第一网络设备在控制面的处理得到,此处先不进行介绍。在FIB中包括IP地址前缀(IPPrefix)、IP Prefix对应的下一跳地址、以及下一跳地址对应的路径类型。其中,IP Prefix为不同的主机对应的目的地址。IP Prefix对应的下一跳地址为存储FIB的网络设备向对应的目的地址发送报文的下一跳设备的地址。如下表1,该表1为FIB的一种示例性展示。
表1
IP Prefix | next-hop | 路径类型 |
IP Prefix1 | next-hop1 | non min |
IP Prefix2 | next-hop2 | min |
IP Prefix3 | next-hop3 | non min |
IP Prefix4 | next-hop4 | min |
IP Prefixn | next-hop5 | min |
在一种可能的情况中,可以将对应指定的多个IP Prefix的next-hop(下一跳)组织到同一个等价路由(Equal Cost Multi-path,ECMP)组中,并设置每个next-hop对应的路径类型。可参见图5,图5是一种FIB的示意图。如图5所示,Prefix1-Prefix n对应ECMPGroup1中的next-hop,Prefix1 n+1至Prefix n+k对应ECMP Group2中的next-hop,Prefixm对应ECMP Group3中的next-hop。对于每个ECMP Group中每个next-hop可以设置对应的路径类型,min为最短路径类型,non-min为非最短路径类型,对应non-min的next-hop为非最短路径上的下一跳地址,对应min的next-hop为最短路径上的下一跳地址。
步骤402、第一网络设备向下一跳设备发送报文,并通知下一跳设备转发报文时所选的路径。
在本申请中,网络设备在接收到连接的主机发送的报文时,可以执行自适应路由算法,即可以选择发送报文的路径对应的路径类型,之后每个网络设备向其他的网络设备发送该报文时,可以向下一跳设备通知发送该报文的路径应对应的路径类型。
其中,网络设备向下一跳设备通知发送报文的路径对应的路径类型时,可遵循以下发送规则:如果下一跳设备与该网络设备属于同一组,则通知下一跳设备与该网络设备选择相同路径类型的路径转发报文,如果下一跳设备与该网络设备不属于同一组,则通知下一跳设备选择最短路径类型的路径转发报文。从该发送规则中可以看出,在本申请中网络设备按照非最短路径发送报文时,如果确定与接收报文的网络设备属于不同组,则可以通知接收报文的网络设备按照最短路径发送该报文。因此报文在非最短路径上经过一次组间路径发送后,对于再接收到该报文的网络终端就会按照最短路径对该报文进行发送。又由于最短路径中仅包括1条组间路径,因此一个报文在通过非最短路径发送的过程中,只需要经过两条组间路径,就会被发送至目的设备。所以可以避免发送报文的路径中出现网络设备的跳数过多或者出现环路的问题,能够在一定程度上提高发送报文的效率。
在上述发送规则下,第一网络设备向下一跳设备发送报文可以包括如下三种发送情况:
发送情况一:确定转发报文的路径为非最短路径,且非最短路径上的下一跳设备与第一网络设备不属于同一组。
发送情况二:确定转发报文的路径为非最短路径,且非最短路径上的下一跳设备与第一网络设备属于同一组。
发送情况三:确定转发报文的路径为最短路径。
图6为发送情况一时,本申请实施例提供的报文发送的方法,参见图6,该方法包括:
步骤601、第一网络设备获取发送报文的非最短路径。
第一网络设备确定以非最短路径发送报文后,可以从FIB中获取对应非最短路径的下一跳地址。该下一跳地址为第一网络设备向目的主机发送报文的非最短路径上的下一跳设备对应的地址。该下一跳设备可称为第二网络设备,该第二网络设备与第一网络设备属于不同组。
步骤602、第一网络设备向第二网络设备发送报文,并通知第二网络设备按照最短路径发送报文。
第一网络设备可以根据获取的非最短路径对应的下一跳地址,将报文发送至第二网络设备,并通知第二网络设备按照最短路径发送该报文。
其中,第一网络设备发送报文的非最短路径可认为是通过一个中转组中的网络设备向目的设备发送报文的路径,该中转组是与发送报文的主机所属的组和目标设备所属的组均不同的组。当第一网络设备将报文发送至中转组中的网络设备(如第二网络设备)后,中转组中的网络设备可再通过最短路径向目的主机发送报文。该最短路径可认为是第一网络设备发送报文的非最短路径上,由中转组的网络设备向目的主机发送报文的路径。因此,第一网络设备向目的主机发送报文的非最短路径中,包括第二网络设备向目的主机发送报文的最短路径。
参见图3,图3为一种HPC网络结构示意图,如可以上述图1中的dragonfly网络。在图3中,在主机S向主机D发送目标报文时,主机S可以将报文A发送至node1,node1可以查询FIB确定转发报文A的最短路径和非最短路径。由图3可以看出,主机S向主机D发送报文A的最短路径为主机S-node1-node2-node12-node10-主机D。在node1中,可以确定最短路径上的下一跳设备node2,以及非最短路径上的下一跳设备node4和node16。如果node1检测到node2的拥塞状态为拥塞,则可以选择向node4或node16发送报文A,即选择非最短路径对报文进行转发。
以node1向node16发送报文A为例,其中,node1可认为是第一网络设备,node16可认为是第二网络设备。node1向主机D发送报文A的非最短路径为node1-node16-node14-node9-node10-主机D。node1向node16发送报文A时,由于node16与node1属于不同组,则node1可以还通知node16按照最短路径对报文A进行转发。其中,node16发送报文A的最短路径为node16-node14-node9-node10-主机D。
其中,对于第一网络设备通知第二网络设备按照最短路径转发报文的方式可至少包括:
方式一:第一网络设备在报文中设置最短路径信息。
其中,最短路径信息用于指示第二网络设备按照最短路径转发报文。该最短路径信息可以是一个特定的值,该值由技术人员预先设定,例如可以为“0”。最短路径信息可以设置在IP头或隧道头中,如可以设置在IP头或隧道头中的某个扩展字段,如可以设置在IP头的flag字段,或者,在采用vxlan协议发送报文时,可以最短路径信息设置在隧道头中VXLAN网络标识符(VXLAN Network Identifier,VNI)字段中。如此通过在报文中设置非最短路径信息通知第一网络设备以非最短路径发送报文的方式,可以避免额外向第一网络设备发送通知,减少了HPC网络中网络设备之间的数据传输量,能够提高发送网络设备之间发送报文的效率。且通过更改IP头或隧道头扩展字段的字段值,在报文中设置最短路径信息,设置方式简单,不需要更改报文格式。
方式二:第一网络设备通过与最短路径对应第一接口向第二网络设备发送报文,以指示第二网络设备按照最短路径转发报文。
在本申请中每个网络设备通过至少两个接口与其他的网络设备建立连接。该至少两个子接口可以是两个不同的物理接口,或者可以是在一个物理接口上创建的两个逻辑接口(如三层子接口),或者还可以是一个物理接口以及在该物理接口上创建的一个逻辑接口。其中,该至少两个子接口中,一个接口可以仅发送或接收最短路径上的报文,另一个接口可以仅发送或接收非最短路径上的报文。
当第一网络设备通过最短路径对应的第一接口向第二网络设备发送报文时,第二网络设备可以通过最短路径对应的接口接收该报文,并确定以最短路径发送该报文。这样,网络设备仅通过不同的接口发送报文,便可以指示接收到的网络设备发送报文时应选择的路径,不需要额外向第一网络设备发送通知,能够减少HPC网络中网络设备之间的数据传输量,可以提高发送网络设备之间发送报文的效率。
步骤603、第二网络设备根据第一网络设备的通知,按照最短路径转发报文。
第二网络设备可以接收第一网络设备发送的报文和通知,并根据通知确定发送该报文的最短路径,并按照确定的最短路径对报文进行转发。
对应上述第一网络设备通知第二网络设备按照最短路径转发报文的方式一:第二网络设备根据报文中设置的最短路径信息,确定按照最短路径发送所述报文。
第二网络设备在接收到第一网络设备发送的报文后,可以确定接收到的报文中是否携带有最短路径信息。例如确定报文中IP头的扩展字段的字段值是否为0。在确定报文中携带有最短路径信息后,可以确定发送该报文的最短路径,并按照确定的最短路径对报文进行转发。
对应上述第一网络设备通知第二网络设备按照最短路径转发报文的方式二:第二网络设备通过与最短路径对应的第一接口接收第一网络设备发送的报文,确定按照最短路径发送所述报文。
如果第二网络设备是通过最短路径对应的第一接口接收到第一网络设备发送的报文,则可以确定发送该报文的最短路径,并按照确定的最短路径对报文进行转发。
在一种可能的情况中,第一网络设备在接收到的报文可以是第一网络设备连接的其他网络设备发送的,在这种情况下,其他网络设备可以通知第一网络设备以非最短路径。具体的通知方式与步骤602中的两种方式相同,此处不再赘述。对应的,步骤601中第一网络设备获取发送报文的非最短路径的处理,包括:第一网络设备根据在报文中设置的非最短路径信息,获取发送报文的非最短路径;或者,第一网络设备通过与非最短路径对应的第二接口接收报文,确定发送报文的非最短路径,其具体处理可参见步骤603,此处不再赘述。。
另外需要说明的是,上述步骤601-603的处理为第一网络设备向第二网络设备发送报文的处理,属于HPC网络中的网络设备在转发面的处理。在此之前,第二网络设备可以向第一网络设备发送对应上述报文的目的设备的路由通告消息,以使第一网络设备的转发表中存储有第二网络设备的地址,相应的处理如下:
第一网络设备接收第二网络设备发送的路由通告消息,其中,该路由通告消息中包括报文的目的设备的地址、第一网络设备通过第二网络设备到目的设备的路径开销值、以及第一网络设备向目的设备发送该报文的下一跳地址;第一网络设备基于该路径开销值,确定第一网络设备到目的设备的路径为非最短路径。其中,该处理属于HPC网络中的网络设备在控制面的处理,此处先不进行详细介绍。
图7为发送情况二时,本申请实施例提供的报文发送的方法,参见图7,该方法包括:
步骤701、第一网络设备获取发送报文的非最短路径。
其中,非最短路径中下一跳设备可称为第三网络设备。该第三网络设备是与第一网络设备属于同一组,且该第三网络设备在第一网络设备向目的主机发送报文的非最短路径上。
步骤702、第一网络设备按照非最短路径将报文发送至第三网络设备,并通知第三网络设备按照非最短路径发送该报文。
继续参见图3,在主机S向主机D发送目标报文时,主机S可以将报文发送至中node1,node1可以查询FIB确定转发目标报文的最短路径和非最短路径。由图3可以看出,主机S向主机D发送报文B的最短路径为主机S-node1-node2-node12-node10-主机D。在node1中,可以确定最短路径上的下一跳设备node2,以及非最短路径上的下一跳node4和node16。如果node1检测到node2的拥塞状态为拥塞,则可以选择向node4或node16发送目标报文,即选择非最短路径对报文进行转发。
以如果node1向node4发送报文B为例,其中,node1可认为是第一网络设备,node4可认为是第三网络设备、node8可认为是第二网络设备。由于node4与node1属于同一组,则node1可以通知node4按照非最短路径对报文B进行转发。其中,node4发送报文B的非最短路径为node4-node8-node6-node11-node10-主机D。
对于第一网络设备通知第三网络设备按照非最短路径转发报文的方式可至少包括如下两种:
方式一:第一网络设备在报文中设置非最短路径信息。
其中,非最短路径信息用于指示第二网络设备按照最短路径转发报文。该最短路径信息可以是一个特定的值,该值由技术人员预先设定,例如“1”。该值可以与最短路径信息设置在属于同一个字段,但通过不同的值表示。与最短路径信息相同,非最短路径信息可以设置在IP头或隧道头中,如可以设置在IP头或隧道头中的某个扩展字段,如可以设置在IP头的flag字段,或者,在采用vxlan协议发送报文时,可以最短路径信息设置在隧道头中VNI字段中。
方式二:第一网络设备通过与最短路径对应第二接口向第二网络设备发送报文,以指示第二网络设备按照非最短路径转发报文。
在本申请中每个网络设备通过至少两个接口与其他的网络设备建立连接。该至少两个子接口可以是两个不同的物理接口,或者可以是在一个物理接口上创建的两个逻辑接口(如三层子接口),或者还可以是一个物理接口以及在该物理接口上创建的一个逻辑接口。其中,该至少两个子接口中,一个接口可以仅发送或接收最短路径上的报文,另一个接口可以仅发送或接收非最短路径上的报文。
当第一网络设备通过非最短路径对应的第二接口向第二网络设备发送报文时,第二网络设备可以通过最短路径对应的接口接收该报文,并确定以非最短路径发送该报文。这样,网络设备仅通过接收报文的接口,便可以确定对报文进行发送的路径,不需要再对报文进行解封装,或者确定最短路径或非最短路径的拥塞状态,能够提高网络设备发送报文的效率。
如图8所示,第一网络设备和第二网络设备之间可通过两对接口建立连接,包括P1、P3和P2、P4。其中,P1和P3为分别对应最短路径,P2和P4为分别对应非最短路径。这样,第一网络设备通过P1向第二网络设备发送报文时,第二网络设备的P3接口就会接收到该报文,并确定以最短路径发送接收到的报文;第一网络设备通过P2向第二网络设备发送报文时,第二网络设备的P4接口就会接收到该报文,并确定以非最短路径发送接收到的报文。
在一种可能的实现方式中,在第一网络设备设置有最短路径转发表和非最短路径转发表,第一网络设备的第一接口通过绑定最短路径转发表,实现与发送或接收最短路径上的报文;第一网络设备的第二接口通过绑定非最短路径转发表,实现与发送或接收非最短路径上的报文。
其中,最短路径转发表中包括以最短路径向HPC网络中的各主机发送的报文的下一跳地址,该下一跳地址可以是下一跳设备对应最短路径的接口的接口地址;非最短路径转发表中包括以非最短路径向HPC网络中的各主机发送的报文的下一跳地址,该下一跳地址可以是下一跳设备对应非最短路径的接口的接口地址。这样,网络设备可以查找与接收报文的接口绑定的最短路径转发表或非最短路径转发表,确定发送报文的最短路径或非最短路径上的下一跳地址。可见,本申请通过将不同的接口分别绑定最短路径转发表和非最短路径转发表,可以实现不同的接口对应不同的路径(如最短路径和非最短路径),且将包括最短路径的最短路径转发表和包括非最短路径转发表的非最短路径转发表分开存储,能够提高查表效率。
另外,需要说明的是在各网络设备中,除了存储有最短路径转发表和非最短路径转发表之外,还可以存储有最短路径转发表和非最短路径转发表对应的合并转发表,该合并转发表中即包括以最短路径向HPC网络中的各主机发送的报文的下一跳地址,也包括以非最短路径向HPC网络中的各主机发送的报文的下一跳地址。对于与主机连接的网络设备接收到主机发送的报文后,可以直接在合并转发表中确定发送报文的最短路径和非最短路径。不需要分别在非最短路径转发表的非最短路径转发表中确定发送报文的最短路径和非最短路径,也能够提高查表效率。
步骤703、第三网络设备按照非最短路径将报文发送至第二网络设备,并通知第二网络设备按照最短路径发送该报文。
其中,第二网络设备与第三网络设备属于不同组,第二网络设备为第三网络设备发送报文的非最短路径上的下一跳设备。第三网络设备在接收到第一网络设备发送的报文以及按照非最短路径发送报文的通知后,可以获取发送报文的非最短路径,并向第二网络设备发送报文。
对应上述第一网络设备通知第三网络设备按照非最短路径转发报文的方式一:第三网络设备根据报文中设置的非最短路径信息,确定按照非最短路径发送报文。
第三网络设备在接收到第一网络设备发送的报文后,可以确定接收到的报文中是否携带有非最短路径信息。例如确定报文中IP头的扩展字段的字段值是否为1。在确定报文中携带有非最短路径信息后,可以确定发送该报文的非最短路径,并按照确定的非最短路径对报文进行转发。
对应上述第一网络设备通知第三网络设备按照非最短路径转发报文的方式二:第三网络设备通过与非最短路径对应的第二接口接收第一网络设备发送的报文,确定按照非最短路径发送报文。
在本步骤703中,第三网络设备通知第二网络设备按照最短路径发送该报文的处理,可参照步骤602中第一网络设备通知第二网络设备按照最短路径发送该报文的处理,此处不再赘述。
步骤704、第二网络设备根据第三网络设备的通知,按照最短路径转发报文。
第二网络设备可以接收第三网络设备发送的报文和通知,并根据通知按照最短路径对报文进行转发。该步骤704的处理与上述步骤603的处理类似,此处不再赘述。
图9为发送情况三时,本申请实施例提供的报文发送的方法,参见图9,该方法包括:
步骤901、第一网络设备获取转发报文的最短路径。
第一网络设备确定以最短路径发送报文后,可以从FIB中获取对应非最短路径的下一跳地址。该下一跳地址为第一网络设备向目的主机发送报文的最短路径上的下一跳设备对应的地址。该下一跳设备可称为第五网络设备,该第五网络设备与第一网络设备可以属于同一组,也可以属于不同组。
其中,第一网络设备确定以最短路径发送报文可包括如下两种情况:
在一种可能的实现方式中,第一网络设备向第五网络设备发送的报文可以是由第一网络设备连接的主机发送至第一网络设备的。当该报文是由第一网络设备连接的主机发送至第一网络设备时,第一网络设备可以确定发送该报文的最短路径和非最短路径的拥塞情况。其中,第一网络设备发送该报文的最短路径和非最短路径可分别包括多条。如果第一网络设备确定发送该报文的各最短路径中存在不拥塞的最短路径,则可以选择一条不拥塞的最短路径发送该报文。
在一种可能的实现方式中,第一网络设备向第五网络设备发送的报文可以是由同组的其他网络设备发送至第一网络设备。如果同组的其他网络设备是按照最短路径向第一网络设备发送的报文,则在该报文中设置有最短路径信息。例如可以通过设置某个扩展字段的字段值,以在报文中设置最短路径信息。第一网络设备在接收到携带最短路径信息的报文后,可以确定以最短路径发送该报文。
步骤902、第一网络设备向第五网络设备发送报文,并通知第五网络设备按照最短路径发送报文。
在第一网络设备向第五网络设备发送报文时,可以通知第五网络设备按照最短路径将该报文发送至目的设备。
继续参见图3,在主机S向主机D发送报文C时,主机S可以将报文发送至node1,node1可以查询FIB确定转发报文C的最短路径和非最短路径。由图6可以看出,主机S向主机D发送报文C的最短路径为主机S-node1-node2-node12-node10-主机D。在node1中,可以确定最短路径上的下一跳设备node2,以及非最短路径上的下一跳设备node4和node16。如果检测到node2不拥塞,则可以选择向node2发送报文C,即选择最短路径对报文进行转发。其中,node1可认为是第一网络设备,node2可认为是第五网络设备。node1向node2发送目标报文时,可以通知node2按照最短路径转发报文。
步骤903、第五网络设备根据第一网络设备的通知,按照最短路径转发报文。
第五网络设备可以接收第一网络设备发送的报文和通知,并根据通知按照最短路径对报文进行转发。其中,对于接收到按照最短路径发送报文通知的网络设备,该设备向下一跳设备发送报文时,可继续通知下一跳设备按照最短路径发送报文。也就是说,在本申请中网络设备只要确定按照最短路径发送报文后,后续接收到该报文的可一直按照该最短路径对报文进行发送,因此可以避免发送报文的路径中出现网络设备的跳数过多或者出现环路的问题,能够在一定程度上提高发送报文的效率。
需要说明的是,图4、6、7、9即可以适用于单租户场景也可以适用于多租户场景。其中,单租户场景是指HPC网络中的所有主机提供给一个租户使用。多租户场景是指HPC网络中的主机可分别提供给多个租户。在单租户场景和多租户场景中报文发送的方法相同,只不过在多租户场景需要额外增加对租户进行区分的方法。下面对多租户场景下,区分不同租户的两种方法进行介绍:
方法1:为每个租户在各个网络设备中分配不同的接口,通过接口区分租户。
在租户的数量较少时,可以将每个网络设备的接口划分给不同的租户,这样在报文转发的过程,报文仅通过所属租户对应的接口进行传输。如此既可以实现对租户的区分,又能够实现租户间IP地址的隔离。
方法2:在报文中添加租户标识(Identity document,ID)。
在多租户场景下,不同的租户分配有不同的租户ID,在对每个租户建立路由时,可以在网络设备中可以根据不同租户ID,为每个租户建立相应的路由表,并生成对应的转发表。在主机发送报文时,可以在报文中添加主机对应的租户的租户ID,例如,可以在IP头中的指定字段添加租户ID,或者使用隧道协议,在隧道头中的添加租户ID。这样,网络设备在接收到报文后,可以根据报文中添加的租户ID,查询相应的转发表,实现转发不同租户对应的报文。
图10是本申请实施例提供的一种建立路由的方法示意图,下面将结合具体实施方式,对图10所示的处理流程进行详细的说明,内容可以如下:
步骤1001、第一网络设备获取到目的设备的第一路径开销值。
其中,在本处理流程中,第一网络设备可以是HPC网络中任一网络设备,第二网络设备是与第一网络设备连接的网络设备。
在一种可能的情况中,目的设备为第一网络设备连接的主机。在这种情况下,第一网络设备向目的设备发送报文的路径仅包括一条入口链路,因此可以将入口链路对应的第一链路开销值,确定为第一网络设备到目的设备的第一路径开销值。其中,由于第一链路开销值的具体数值可以由技术人员预先设置。由于入口链路对应的链路开销值最小,因此可以将第一链路开销值设置为0。也就是,当目的设备为第一网络设备连接的主机时,第一网络设备可以将0确定为第一网络设备到目的设备的路径对应的路径开销值。
在另一种可能的情况中,第一网络设备获取到的目的设备的第一路径开销值,可以是其他网络设备向第一网络设备发送的路由通告消息中携带的。对于这种情况,此处先不进行介绍。
步骤1002、第一网络设备基于是否与连接的第二网络设备属于同一组,确定第二网络设备到第一网络设备的第二路径开销值。
其中,与第一网络设备连接的第二网络设备可以有多个,第一网络设备可以根据与第二网络设备建立的链路类型,确定是否与第二网络设备属于同一组。例如,在第一网络设备与第二网络设备之间建立的链路为组内链路时,可以确定第一网络设备与第二网络设备属于同一组;在第一网络设备与第二网络设备之间建立的链路为组间链路时,可以确定第一网络设备与第二网络设备不属于同一组。
如果第一网络设备与第二网络设备属于同一组,则第一网络设备可以将组内链路对应的第二链路开销值确定为第二路径开销值;如果第一网络设备与第二网络设备不属于同一组,则第一网络设备可以组间链路对应的第三链路开销值确定为第二路径开销值,其中,第三链路开销值大于第二链路开销值,第二链路开销值大于第一链路开销值。为了更好的计算路径中包括组内路径和组间路径的个数,第三链路开销值可以是第二链路开销值的整十倍、百倍、千倍等等。例如,第三链路开销值为1000,第二链路开销值为1。
步骤1003、第一网络设备基于第一路径开销值和第二路径开销值,确定第二网络设备通过第一网络设备到目的设备的第三路径开销值。
第一网络设备在确定第一路径开销值和第二路径开销值之后,可以将第一路径开销值与第二路径开销值的和,确定为第二网络设备通过第一网络设备到目的设备的第三路径开销值。
步骤1004、第一网络设备向第二网络设备发送路由通告消息。
在确定第二网络设备通过第一网络设备到目的设备的第三路径开销值后,第一网络设备可以向第二网络设备发送路由通告消息(该路由通告消息可称为路由通告消息)。其中,在路由通告消息中携带有到目的设备的路由信息,包括目的设备的目的地址、第三路径开销值以及第二网络设备向目的设备发送报文的下一跳地址,下一跳地址可以为第一网络设备中与第二网络设备连接的接口对应的接口地址。
步骤1005、第二网络设备基于第三路径开销值,确定第二网络设备到目的设备的路径对应的路径类型。
其中,路径类型为最短路径类型或非最短路径类型。技术人员可以预先设置路径开销值与路径类型的对应关系,并将对应关系存储至各网络设备中。第二网络设备在接收到第一网络设备发送的路由通告消息后,可以根据路由通告消息中包括的第三路径开销值以及存储的对应关系,确定第二网络设备通过第一网络设备向目的设备发送报文的路径对应的路径类型。
以第一链路开销值为0、第二链路开销值为1、第三链路开销值为1000为例,路径开销值与路径类型的对应关系可以如表2所示。
表2
路径类型 | 路径开销值 |
最短路径 | [0,3] |
NA | [3,999] |
最短路径 | [1000,1999] |
非最短路径 | [2000,2999] |
NA | [3000,+∞) |
由表1可以看出,对于最短路径和非最短路径的划分,与路径中包括组间链路的个数相关,当路径中包括2条或2条以上的组间链路时,可认为该路径为非最短路径。其中,NA表示不存在对应路径开销值的路径。
在另一种可能的情况中,对于最短路径和非最短路径的划分,可以与路径中分别包括的组内链路和组间链路的个数均相关。继续以第一链路开销值为0、第二链路开销值为1、第三链路开销值为1000为例,路径开销值与路径类型的对应关系可以如表3所示。
表3
路径类型 | 路径开销值 |
直连路径 | 0 |
组内最短路径 | 1 |
组内非最短路径 | 2 |
NA | [3,999] |
组间最短路径 | [1000,1999] |
组间非最短路径 | [2000,2999] |
NA | [3000,+∞) |
其中,直连路径是网络设备与连接的主机之间发送报文的路径对应的路径类型;组内最短路径是同一组内两个连接的网络设备之间发送报文的路径对应的路径类型;组内非最短路径同一组内两个非直连的网络设备之间通过另外一个网络设备发送报文的路径对应的路径类型;组间最短路径是指不同组的两个的网络设备之间,通过两个的网络设备所属组之间的组间链路发送报文的路径对应的路径类型。组间非最短路径是指不同组的两个的网络设备之间,通过另外一个组的网络设备发送报文的路径(也就是通过两个组间链路发送报文的路径)对应的路径类型。
步骤1006、第二网络设备将目的设备的目的地址、下一跳地址与路径类型对应存储。
第二网络设备在确定到目的设备的路径对应的路径类型之后,可以将目的设备的目的地址、下一跳地址与路径类型对应存储至路由表中。
在一种可能的情况中,网络设备中存储的路由表至少包括最短路径路由表和非最短路径路由表。对应的处理可以如下:
如果路径类型为最短路径类型,则第二网络设备将目的设备的目的地址、下一跳地址与路径类型存储至最短路径路由表。如果路径类型为非最短路径类型,则第二网络设备将目的设备的目的地址、下一跳地址与路径类型存储至非最短路径路由表。
其中,对于上述步骤1001中第一网络设备获取到的目的设备的第一路径开销值,可以是第一网络设备接收其他网络设备发送的对应目的设备的路由通告消息中携带的。在这种情况下,第一网络设备向第二网络设备发送路由通告消息之前,可以执行与第二网络设备在步骤1005、1006相同的处理,然后再执行步骤1002的处理。同样第二网络设备在接收到第一网络设备发送的路由通告消息并执行步骤1005、1006后,可以执行与第一网络设备在步骤1001、1002、1003中相同的处理,以向其他网络设备发送路由通告消息。如此,向每个主机发送报文的路由信息可以在HPC网络中的各网络设备之间进行传播,以使各网络设备学习到不同主机的路由信息。另外,上述步骤1001-1006属于第一网络设备向第二网络设备发送路由通告消息的处理,同样,第二网络设备可以向第一网络设备发送路由通告消息的处理,相应的处理与步骤1001-1006类似,此处不再赘述。
另外,当网络设备确定路由通告消息中的路径开销值大于第一开销阈值时,则可以停止向其他组的网络设备传播该路由通告消息。例如,组间链路的开销值可以等于1000,第一开销阈值可设置为2000。这样,网络设备学习到的路由对应的路径开销值最多不会超过3000,也就是学习到的到不同的主机的路径最多包括两条。相应的,第一网络设备在执行步骤1002之前,可以确定第一路径开销值与第一开销阈值的大小,如果第一路径开销值小于或等于第一开销阈值,则可以继续执行步骤1002,否则,可以不再执行步骤1002,即停止向第二网络设备发送路由通告消息。在另一种可能的情况中,当网络设备确定路由通告消息中的路径开销值大于第一开销阈值时,可以仅向本组的网络设备发送路由通告消息,停止向其他组的网络设备传播该路由通告消息。
可见,通过本申请提供的建立路由的方法,可以使HPC网络中每个网络设备都学习到向不同的主机发送报文的最短路径和非最短路径。
下面以BGP协议为例,对图10所示的建立路由的方法进一步进行说明,参见图11,图11为采用BGP协议时建立路由的方法示意图。
BGP协议可应用于AS间和AS内的路由协议。而本申请的dragonfly或dragonfly+的网络拓扑中的一个组可认为是一个AS。因此,BGP协议也可以在本申请提供的网络拓扑中。其中,在BGP协议下,组间的两个设备可建立外部边界网关协议会话(External BorderGateway Protocol session,EBGP session),组内的两个设备可建立内部边界网关会话(Internal Border Gateway Protocol session,IBGP session)。
另外,需要说明的是,在本申请中对于每个网络设备可以建立多个路由表,分别包括全虚拟路由转发表(Full Virtual Routing Forwarding,Full VRF)、最短路径虚拟路由转发表(min Virtual Routing Forwarding,min VRF)、非最短路径虚拟路由转发表(non-min Virtual Routing Forwarding,non-min VRF)。其中,min VRF用于存储最短路径对应的路由信息,min VRF用于存储最短非路径上的路由信息,Full VRF用于存储所有的路由信息。这样,通过设置对应不同路径类型的路由表,可以提高查表效率。其中,路由信息中可以包括目的设备的地址、下一跳地址、出接口、路由开销值、路径类型等。
参照图11,采用BGP协议时建立路由的方法如下:
Step 1:node 6获取目的主机对应接口的IP地址(10.2.8.1/24),根据IP地址可生成10.2.8.1/32(主机路由)和10.2.8.0/24(网段路由),其中,主机路由用于与其他节点建立IBGP session或EBGP session。对于网段路由,node6可以将网段路由作为目的主机的目的地址并生成对应的第一路由信息存储至Full VRF中。第一路由信息中包括目的地址、下一跳地址、路径开销值以及路径类型等。其中,目的地址和下一跳地址为网段路由,路径开销值为0。
Step 2:node 6从Full VRF中,将第一路由信息引入Min VRF。
Step 3:node 6从Min VRF获取第一路由信息,并将第一路由信息中的路径开销值加1,将第一路由信息中的下一跳地址更改为node 6对应的地址,得到第二路由信息,并将第二路由信息通过IBGP session发送至group 2的其余节点(node 5/7/8)。
其中,node 5/7/8在接收到第二路由信息时,加入本地的Min VRF中,同时引入Full VRF。然后,将第二路由信息中的路径开销值加1,将第二路由信息中的下一跳地址更改为本地对应的地址,得到第三路由信息,然后将第三路由信息反射给group 2内除node 6的其余节点。为避免过大的时延,可以只对路由信息反射一次。
Step 4:group 2的边缘节点(edge node),即连接到其他组的node建立组间链路的node,此处为node 7/8,在接收到第二路由信息时,可以将第二路由信息中的路径开销值加1000,将第二路由信息中的下一跳地址更改为本地对应的地址,得到第四路由信息,然后将第四路由信息发送至node3和node11。
Step 5:group 1的edge node(node 3)和group 3的edge node(node 11)接收到第四路由信息后,可以将第四路由信息加入本地的Min VRF,再引入本地的Full VRF。然后可以将将第四路由信息中的路径开销值加1,将第四路由信息中的下一跳地址更改为本地的地址,得到第五路由信息,将第五路由信息发送至本组的其余node,以生成冗余保护路由。
Step 6:group 3的edge node(node 12)在接收到第五路由信息后,可以将第五路由信息中的路径开销值加1000,将第五路由信息中的下一跳地址更改为node 12的地址,得到第六路由信息,然后将第六路由信息发送至node4。
Step 7:node 4在接收到上述第六路由信息,可以根据第六路由信息中的路径开销值确定该第六路由信息对应的路径类型为非最短路径类型,可以将该第六路由信息加入本地的Full VRF和Non-min VRF。
Step 8:node 4将上述第六路由信息中的路径开销值加1,将第六路由信息中的下一跳地址更改为node 4对应的地址,得到第七路由信息,然后将第七路由信息反射给group1的其余node(node 1/2/3)。由于第七路由信息中的路径开销值已经超过2000,也就是说group 1中的node到主机D需要经过两条组间链路,group 1中node在接收到第六路由信息或第七路由信息后,可以不再对相应的路由信息发送至其他组的node。
如图12所示,在一种可能的情况中,网络设备中存储的路由表至少包括最短路径路由表和非最短路径路由表,可分别绑定与网络设备不同的接口进行绑定。
对于同组的两个网络设备,可以通过本地接口(local port)连接,如图12中,Group1中的node1与node2之间通过local port P1、P2建立连接。对于不同组的两个网络设备,可以通过全局接口(global port)连接,如图12中,Group1中的node2与Group2中的node3之间通过global port G1、G2建立连接。对于网络设备和主机之间,可以通过入口接口(access port)连接,如图12中,Group1中的node2通过access port A1与主机建立连接。
可见一个网络设备上可以具有三种接口,包括local port、global port和accessport。其中,在local port或global port的基础上,可以增加子接口,通过不同的接口绑定不同的路由表。例如,可以在网络设备的local port或global port的基础上,创建一个或两个L3子接口(三层子接口),用于分别绑定min VRF和non-min VRF,另外可以将网络设备的access port绑定Full VRF。
如图13所示,图13是在图12的基础上创建子接口后的示意图,其中,P3、P4是在P1、P2的基础创建的子接口,P1与P2建立连接并用于绑定non-min VRF,P3与P4建立连接并用于绑定min VRF;G3、G4是在G1、G2的基础创建的子接口,G1与G2建立连接并用于绑定non-minVRF,G3与G4建立连接并用于绑定min VRF;A1绑定Full VRF。这样,网络设备可以根据路由信息所在的路由表绑定的接口向其他网络设备发送路由信息。其他网络设备可以根据接收路由信息的接口,将路由信息存储至该接口绑定的路由表中。另外,需要说明的是,网络设备在接收到路由信息后,可以根据对应的路径开销值,确定路由信息对应的路径类型。如果确定的路径类型与接收该路由信息的接口绑定的路由表不符,则可以将该路由信息再引入对应的路由表中。例如,node3中min VRF中包括一条对应路径开销值为1001的路由消息,node3通过G4接口向node2发送该路由消息,不过在发送该路由信息之前,会在该路由信息中的路径开销值加上1000。这样node2在通过绑定min VRF的G3接口接收到路由信息后,可以先将路由信息存储至min VRF,又由于该路由信息中的路径开销值大于2000,则可以将该路由信息在存储至non-min VRF。如此,对于接口绑定的min VRF,可生成上述图7对应的实施例内容中的最短路径转发表,对于接口绑定的non-min VRF,可生成上述图7对应的实施例内容中的非最短路径转发表,对于接口绑定的Full VRF,可生成上述图7对应的实施例内容中的合并转发表。
需要说明的是,以上建立路由的方法适用于单租户场景也可以适用于多租户场景。其中,哎在单租户场景和多租户场景中建立路由的方法相同,只不过在多租户场景需要额外增加对租户进行区分的方法,并为每个租户在各网络设备中建立对应的路由表。下面对多租户场景下,区分不同租户的两种方法进行介绍:
方法1:为每个租户在各个网络设备中分配不同的接口,通过接口区分租户。
在租户的数量较少时,可以将每个网络设备的接口划分给不同的租户,在建立路由的过程,报文仅通过所属租户对应的接口进行传输。如此既可以实现对租户的区分,又能够实现租户间IP地址的隔离。
方法2:在路由通告消息中添加租户ID。
在多租户场景下,不同的租户分配有不同的租户ID,因此在对每个租户建立路由时,可以在相应的路由通告消息中添加租户ID,以对不同的租户进行区分。例如,可以在IP头中的指定字段添加租户ID,或者使用隧道协议,在隧道头中的添加租户ID。
其中,隧道协议可以是VXLAN协议,可以将租户ID添加到VXLAN头的VXLAN网络标识符(VXLAN Network Identifier,VNI)字段中。在VXLAN协议中,网络被划分了Underlay网络和Overlay网络,对VXLAN头的封装格式可见图14。在建立路由的过程中,只学习Underlay网络中的IPv4/v6地址,该地址为与目的主机连接的网络设备的loopback接口地址。对于租户ID可以携带于VXLAN字段中的VNI字段中。
图15是本申请实施例提供的一种报文发送的方法,参见图15,该方法包括:
步骤1501、第一网络设备获取发送报文的非最短路径。
其中,非最短路径中包括至少2条组间路径,非最短路径中的第二网络设备与第一网络设备属于不同组。
步骤1502、第一网络设备向第二网络设备发送该报文,并通知第二网络设备按照最短路径发送该报文。
其中,非最短路径包括最短路径,最短路径中包括1条组间路径。
其中,对于上述步骤1501-1502的处理可参见上述步骤601-602对应的实施例内容,此处不再赘述。
可选的,第一网络设备向第二网络设备发送该报文,并通知第二网络设备按照最短路径发送该报文,包括:第一网络设备在该报文中设置最短路径信息,其中,最短路径信息用于指示第二网络设备按照最短路径发送设置最短路径信息的报文;第一网络设备向第二网络设备发送设置最短路径信息的报文。
可选的,第一网络设备获取发送报文的非最短路径,包括:第一网络设备根据在该报文中设置的非最短路径信息,获取发送报文的非最短路径。
可选的,第一网络设备向第二网络设备发送该报文,并通知第二网络设备按照最短路径发送该报文,包括:第一网络设备通过与最短路径对应的第一接口向第二网络设备发送该报文,以指示第二网络设备按照最短路径发送该报文。
可选的,第一网络设备获取发送报文的非最短路径,包括:第一网络设备通过与非最短路径对应的第二接口接收该报文,确定发送报文的非最短路径。
可选的,第二网络设备是非最短路径中第一网络设备的下一跳设备。
可选的,第一网络设备通过第三网络设备向第二网络设备发送该报文,第三网络设备与第一网络设备属于同一组并且第三网络设备在非最短路径上。
可选的,第一网络设备获取发送报文的非最短路径之前,该报文发送的方法还包括:第一网络设备接收第二网络设备发送的路由通告消息,其中,路由通告消息中包括该报文的目的设备的地址、第一网络设备通过第二网络设备到目的设备的路径开销值、以及第一网络设备向目的设备发送该报文的下一跳地址;第一网络设备基于路径开销值,确定第一网络设备到目的设备的路径为非最短路径。
可选的,组间路径的路径开销值大于同一组内所有组内路径的路径开销值之和。
可选的,最短路径信息设置在该报文中的互联网协议IP头或隧道头中。
可选的,该报文发送的方法应用在dragonfly网络或dragonfly+网络中。
其中,对于图15对应的报文发送的方法以及可选方式所提供的报文发送的方法已分别在上述图4、6、7、9对应的实施例内容中说明,具体可参见上述图4、6、7、9对应的实施例内容,此处不再赘述。
图16是本申请实施例提供的一种报文发送的方法,参见图16,该方法包括:
步骤1601、第二网络设备接收第一网络设备按照非最短路径发送的报文。
步骤1602、第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文。
其中,非最短路径中包括至少2条组间路径,第二网络设备与第一网络设备属于不同组,非最短路径包括最短路径,最短路径中包括1条组间路径。
步骤1603、第二网络设备根据通知,按照最短路径发送该报文。
其中,对于上述步骤1601-1603的处理可参见上述步骤603对应的实施例内容,此处不再赘述。
可选的,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,包括:第二网络设备根据该报文中设置的最短路径信息,确定按照最短路径发送该报文,其中,最短路径信息用于指示第二网络设备按照最短路径发送该报文。
可选的,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,包括:第二网络设备通过与最短路径对应的第一接口接收第一网络设备发送的该报文,确定按照最短路径发送该报文。
可选的,第二网络设备是非最短路径中第一网络设备的下一跳设备。
可选的,第二网络设备根据第一网络设备的通知,确定按照最短路径发送该报文,包括:第二网络设备根据第三网络设备发送的按照最短路径发送该报文的通知,确定按照最短路径发送该报文,其中,第三网络设备与第一网络设备属于同一组并且第三网络设备在所述非最短路径上。
可选的,第二网络设备接收第一网络设备按照非最短路径发送的报文之前,所述方法还包括:所述第二网络设备接收第四网络设备发送的路由通告消息,其中,所述路由通告消息中包括该报文的目的设备的地址、所述第二网络设备通过所述第四网络设备到所述目的设备的路径开销值、以及所述第二网络设备向所述目的设备发送该报文的下一跳地址;所述第二网络设备基于所述路径开销值,确定所述第二网络设备到所述目的设备的路径为最短路径。
可选的,组间路径的路径开销值大于同一组内所有组内路径的路径开销值之和。
可选的,最短路径信息设置在该报文中的互联网协议IP头或隧道头中。
可选的,所述方法应用在蜻蜓dragonfly网络或蜻蜓拓展dragonfly+网络中。
其中,对于图16对应的报文发送的方法以及可选方式所提供的报文发送的方法已分别在上述图4、6、7、9对应的实施例内容中说明,具体可参见上述图4、6、7、9对应的实施例内容,此处不再赘述。
图17是本申请实施例提供的一种网络设备,该网络设备可以是上述实施例中的第一网络设备,可用于实现上述实施例中报文发送的方法,参见图17,该网络设备包括:
获取模块1701,用于获取发送报文的非最短路径,其中,所述非最短路径中包括至少2条组间路径,所述非最短路径中的第二网络设备与所述第一网络设备属于不同组。具体可以实现上述步骤501、701、1501中的获取功能,以及其他隐含步骤。
发送模块1702,用于向所述第二网络设备发送所述报文,并通知所述第二网络设备按照最短路径发送所述报文,所述非最短路径包括所述最短路径,所述最短路径中包括1条组间路径。具体可以实现上述步骤502、1502中的接收功能,以及其他隐含步骤。
可选的,所述发送模块1702,用于:在所述报文中设置最短路径信息,其中,所述最短路径信息用于指示所述第二网络设备按照所述最短路径发送设置最短路径信息的报文;
向所述第二网络设备发送所述设置最短路径信息的报文。
可选的,所述获取模块1701,用于:根据在所述报文中设置的非最短路径信息,获取所述发送报文的所述非最短路径。
可选的,所述发送模块1702,用于:通过与所述最短路径对应的第一接口向所述第二网络设备发送所述报文,以指示所述第二网络设备按照所述最短路径发送所述报文。
可选的,所述获取模块1701,用于:通过与所述非最短路径对应的第二接口接收所述报文,确定所述发送报文的所述非最短路径。
可选的,所述第一网络设备通过第三网络设备向所述第二网络设备发送所述报文,所述第三网络设备与所述第一网络设备属于同一组并且所述第三网络设备在所述非最短路径上。
可选的,所述网络设备还包括接收模块,用于:接收所述第二网络设备发送的路由通告消息,其中,路由通告消息中包括所述报文的目的设备的地址、所述第一网络设备通过所述第二网络设备到所述目的设备的路径开销值、以及所述第一网络设备向所述目的设备发送所述报文的下一跳地址;基于所述路径开销值,确定所述第一网络设备到所述目的设备的路径为非最短路径。
可选的,所述网络设备应用在dragonfly网络或dragonfly+网络中。
图17所示的网络设备的执行报文发送的详细过程请参照前面实施例内容的描述,在这里不进行重复说明。
图18是本申请实施例提供的一种网络设备,该网络设备可以是上述实施例中的第二网络设备,可用于实现上述实施例中报文发送的方法,参见图18,该网络设备包括:
接收模块1801,用于接收第一网络设备按照非最短路径发送的报文。具体可以实现上述步骤503、1601中的接收功能,以及其他隐含步骤。
确定模块1802,用于根据所述第一网络设备的通知,确定按照最短路径发送所述报文,其中,所述非最短路径中包括至少2条组间路径,所述第二网络设备与所述第一网络设备属于不同组,所述非最短路径包括所述最短路径,所述最短路径中包括1条组间路径。具体可以实现上述步骤503、1602中的接收功能,以及其他隐含步骤。
发送模块1803,用于根据所述通知,按照所述最短路径发送所述报文。具体可以实现上述步骤503、1603中的接收功能,以及其他隐含步骤。
可选的,所述确定模块1803,用于:根据所述报文中设置的最短路径信息,确定按照最短路径发送所述报文,其中,所述最短路径信息用于指示所述第二网络设备按照最短路径发送所述报文。
可选的,所述确定模块1803,用于:通过与所述最短路径对应的第一接口接收第一网络设备发送的所述报文,确定按照所述最短路径发送所述报文。
可选的,所述确定模块1803,用于:根据第三网络设备发送的按照最短路径发送所述报文的通知,确定按照最短路径发送所述报文,其中,所述第三网络设备与所述第一网络设备属于同一组并且所述第三网络设备在所述非最短路径上。
可选的,所述接收模块1801还用于:接收第四网络设备发送的路由通告消息,其中,所述路由通告消息中包括所述报文的目的设备的地址、所述第二网络设备通过所述第四网络设备到所述目的设备的路径开销值、以及所述第二网络设备向所述目的设备发送所述报文的下一跳地址;基于所述路径开销值,确定所述第二网络设备到所述目的设备的路径为最短路径。
可选的,所述网络设备应用在dragonfly网络或dragonfly+网络中。
图18所示的网络设备的执行报文发送的详细过程请参照前面实施例内容中的描述,在这里不进行重复说明。另外,图17和图18中的模块划分方式是示例性的划分方式,本申请实施例不做限定。
图19是本申请实施例提供的一种网络设备的结构示意图,该网络设备1900可以是上述实施例中的任一网络设备,如可以是上述实施例中的第一网络设备、第二网络设备、第三网络设备等。可用于实现上述实施例中报文发送的方法,可选的,还可以实现上述实施例中建立路由的方法。从硬件组成上来看,该网络设备1900的结构可以如图19所示,包括处理器1901、存储器1902和通信部件303。
处理器1901可以是中央处理器(central processing unit,CPU)或系统级芯片(system on chip,SoC)等,处理器1901可以用于确定发送报文的路径,包括发送报文的最短路径和非最短路径等。存储器1902可以包括各种易失性存储器或非易失性存储器,如固态硬盘(solid state disk,SSD)、动态随机存取存储器(dynamic random access memory,DRAM)内存等。存储器1902可以用于存储有路由表,包括最短路径路由表和非最短路径路由表等。通信部件1903可以是有线网络连接器、无线保真(wireless fidelity,WiFi)模块、蓝牙模块、蜂巢网通信模块等。在本申请实施例中,通信部件1903一般为有线网络连接器。通信部件1903可以用于与其他网络设备或主机等进行数据传输。例如,通信部件1903的某一接口可以接收主机发送的报文,另一接口可以将该报文转发给下一跳设备。
本申请实施例还提供了一种报文发送的系统,该系统包括:第一网络设备和第二网络设备。该第一网络设备和第二网络设备可用于实现上述实施例中报文发送的方法,可选的,该第一网络设备和第二网络设备还可以实现上述实施例中建立路由的方法,该第一网络设备和第二网络设备可以是如图19所示的网络设备1900。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。网络设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该网络设备执行上述报文发送的方法和建立路由的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在设备上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴光缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是设备能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(digital video disk,DVD)等),或者半导体介质(如固态硬盘等)。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种示例的范围的情况下,第一网络设备可以被称为第二网络设备,并且类似地,第二网络设备可以被称为第一网络设备。第一网络设备和第二网络设备都可以是网络设备,并且在某些情况下,可以是单独且不同的网络设备。本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上。
以上描述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (37)
1.一种报文发送的方法,其特征在于,所述方法包括:
第一网络设备获取发送报文的非最短路径,其中,所述非最短路径中包括至少2条组间路径,所述非最短路径中的第二网络设备与所述第一网络设备属于不同组;
所述第一网络设备向所述第二网络设备发送所述报文,并通知所述第二网络设备按照最短路径发送所述报文,所述非最短路径包括所述最短路径,所述最短路径中包括1条组间路径。
2.根据权利要求1所述的方法,其特征在于,所述第一网络设备向所述第二网络设备发送所述报文,并通知所述第二网络设备按照最短路径发送所述报文,包括:
所述第一网络设备在所述报文中设置最短路径信息,其中,所述最短路径信息用于指示所述第二网络设备按照所述最短路径发送设置最短路径信息的报文;
所述第一网络设备向所述第二网络设备发送所述设置最短路径信息的报文。
3.根据权利要求2所述的方法,其特征在于,所述第一网络设备获取发送报文的非最短路径,包括:
所述第一网络设备根据在所述报文中设置的非最短路径信息,获取所述发送报文的所述非最短路径。
4.根据权利要求1所述的方法,其特征在于,所述第一网络设备向所述第二网络设备发送所述报文,并通知所述第二网络设备按照最短路径发送所述报文,包括:
所述第一网络设备通过与所述最短路径对应的第一接口向所述第二网络设备发送所述报文,以指示所述第二网络设备按照所述最短路径发送所述报文。
5.根据权利要求4所述的方法,其特征在于,所述第一网络设备获取发送报文的非最短路径,包括:
所述第一网络设备通过与所述非最短路径对应的第二接口接收所述报文,确定所述发送报文的所述非最短路径。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第二网络设备是所述非最短路径中所述第一网络设备的下一跳设备。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一网络设备通过第三网络设备向所述第二网络设备发送所述报文,所述第三网络设备与所述第一网络设备属于同一组并且所述第三网络设备在所述非最短路径上。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述第一网络设备获取发送报文的非最短路径之前,所述方法还包括:
所述第一网络设备接收所述第二网络设备发送的路由通告消息,其中,路由通告消息中包括所述报文的目的设备的地址、所述第一网络设备通过所述第二网络设备到所述目的设备的路径开销值、以及所述第一网络设备向所述目的设备发送所述报文的下一跳地址;
所述第一网络设备基于所述路径开销值,确定所述第一网络设备到所述目的设备的路径为非最短路径。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述组间路径的路径开销值大于同一组内所有组内路径的路径开销值之和。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述最短路径信息设置在所述报文中的互联网协议IP头或隧道头中。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述方法应用在蜻蜓dragonfly网络或蜻蜓拓展dragonfly+网络中。
12.一种报文发送的方法,其特征在于,所述方法包括:
第二网络设备接收第一网络设备按照非最短路径发送的报文;
所述第二网络设备根据所述第一网络设备的通知,确定按照最短路径发送所述报文,其中,所述非最短路径中包括至少2条组间路径,所述第二网络设备与所述第一网络设备属于不同组,所述非最短路径包括所述最短路径,所述最短路径中包括1条组间路径;
所述第二网络设备根据所述通知,按照所述最短路径发送所述报文。
13.根据权利要求12所述的方法,其特征在于,所述第二网络设备根据所述第一网络设备的通知,确定按照最短路径发送所述报文,包括:
所述第二网络设备根据所述报文中设置的最短路径信息,确定按照最短路径发送所述报文,其中,所述最短路径信息用于指示所述第二网络设备按照最短路径发送所述报文。
14.根据权利要求12所述的方法,其特征在于,所述第二网络设备根据所述第一网络设备的通知,确定按照最短路径发送所述报文,包括:
所述第二网络设备通过与所述最短路径对应的第一接口接收第一网络设备发送的所述报文,确定按照所述最短路径发送所述报文。
15.根据权利要求12-14任一项所述的方法,其特征在于,所述第二网络设备是所述非最短路径中所述第一网络设备的下一跳设备。
16.根据权利要求12-15任一项所述的方法,其特征在于,所述第二网络设备根据所述第一网络设备的通知,确定按照最短路径发送所述报文,包括:所述第二网络设备根据第三网络设备发送的按照最短路径发送所述报文的通知,确定按照最短路径发送所述报文,其中,所述第三网络设备与所述第一网络设备属于同一组并且所述第三网络设备在所述非最短路径上。
17.根据权利要求12-16任一项所述的方法,其特征在于,所述第二网络设备接收第一网络设备按照非最短路径发送的报文之前,所述方法还包括:
所述第二网络设备接收第四网络设备发送的路由通告消息,其中,所述路由通告消息中包括所述报文的目的设备的地址、所述第二网络设备通过所述第四网络设备到所述目的设备的路径开销值、以及所述第二网络设备向所述目的设备发送所述报文的下一跳地址;
所述第二网络设备基于所述路径开销值,确定所述第二网络设备到所述目的设备的路径为最短路径。
18.根据权利要求12-17任一项所述的方法,其特征在于,所述组间路径的路径开销值大于同一组内所有组内路径的路径开销值之和。
19.根据权利要求12-18任一项所述的方法,其特征在于,所述最短路径信息设置在所述报文中的互联网协议IP头或隧道头中。
20.根据权利要求12-19任一项所述的方法,其特征在于,所述方法应用在蜻蜓dragonfly网络或蜻蜓拓展dragonfly+网络中。
21.一种第一网络设备,其特征在于,所述第一网络设备包括:
获取模块,用于获取发送报文的非最短路径,其中,所述非最短路径中包括至少2条组间路径,所述非最短路径中的第二网络设备与所述第一网络设备属于不同组;
发送模块,用于向所述第二网络设备发送所述报文,并通知所述第二网络设备按照最短路径发送所述报文,所述非最短路径包括所述最短路径,所述最短路径中包括1条组间路径。
22.根据权利要求21所述的第一网络设备,其特征在于,所述发送模块,用于:
在所述报文中设置最短路径信息,其中,所述最短路径信息用于指示所述第二网络设备按照所述最短路径发送设置最短路径信息的报文;
向所述第二网络设备发送所述设置最短路径信息的报文。
23.根据权利要求22所述的第一网络设备,其特征在于,所述获取模块,用于:
根据在所述报文中设置的非最短路径信息,获取所述发送报文的所述非最短路径。
24.根据权利要求21所述的第一网络设备,其特征在于,所述发送模块,用于:
通过与所述最短路径对应的第一接口向所述第二网络设备发送所述报文,以指示所述第二网络设备按照所述最短路径发送所述报文。
25.根据权利要求24所述的第一网络设备,其特征在于,所述获取模块,用于:
通过与所述非最短路径对应的第二接口接收所述报文,确定所述发送报文的所述非最短路径。
26.根据权利要求21-25任一项所述的第一网络设备,其特征在于,所述第一网络设备通过第三网络设备向所述第二网络设备发送所述报文,所述第三网络设备与所述第一网络设备属于同一组并且所述第三网络设备在所述非最短路径上。
27.根据权利要求21-26中任一项所述的第一网络设备,其特征在于,所述第一网络设备还包括接收模块,用于:
接收所述第二网络设备发送的路由通告消息,其中,路由通告消息中包括所述报文的目的设备的地址、所述第一网络设备通过所述第二网络设备到所述目的设备的路径开销值、以及所述第一网络设备向所述目的设备发送所述报文的下一跳地址;
基于所述路径开销值,确定所述第一网络设备到所述目的设备的路径为非最短路径。
28.根据权利要求21-27任一项所述的第一网络设备,其特征在于,所述第一网络设备应用在蜻蜓dragonfly网络或蜻蜓拓展dragonfly+网络中。
29.一种第二网络设备,其特征在于,所述第二网络设备包括:
接收模块,用于接收第一网络设备按照非最短路径发送的报文;
确定模块,用于根据所述第一网络设备的通知,确定按照最短路径发送所述报文,其中,所述非最短路径中包括至少2条组间路径,所述第二网络设备与所述第一网络设备属于不同组,所述非最短路径包括所述最短路径,所述最短路径中包括1条组间路径;
发送模块,用于根据所述通知,按照所述最短路径发送所述报文。
30.根据权利要求29所述的第二网络设备,其特征在于,所述确定模块,用于:
根据所述报文中设置的最短路径信息,确定按照最短路径发送所述报文,其中,所述最短路径信息用于指示所述第二网络设备按照最短路径发送所述报文。
31.根据权利要求29所述的第二网络设备,其特征在于,所述确定模块,用于:
通过与所述最短路径对应的第一接口接收第一网络设备发送的所述报文,确定按照所述最短路径发送所述报文。
32.根据权利要求29-31任一项所述的第二网络设备,其特征在于,所述确定模块,用于:
根据第三网络设备发送的按照最短路径发送所述报文的通知,确定按照最短路径发送所述报文,其中,所述第三网络设备与所述第一网络设备属于同一组并且所述第三网络设备在所述非最短路径上。
33.根据权利要求29-32任一项所述的第二网络设备,其特征在于,所述接收模块还用于:
接收第四网络设备发送的路由通告消息,其中,所述路由通告消息中包括所述报文的目的设备的地址、所述第二网络设备通过所述第四网络设备到所述目的设备的路径开销值、以及所述第二网络设备向所述目的设备发送所述报文的下一跳地址;
基于所述路径开销值,确定所述第二网络设备到所述目的设备的路径为最短路径。
34.根据权利要求29-33任一项所述的第二网络设备,其特征在于,所述第二网络设备应用在蜻蜓dragonfly网络或蜻蜓拓展dragonfly+网络中。
35.一种网络设备,其特征在于,所述网络设备包括存储器和处理器,所述存储器用于存储计算机指令;所述处理器用于执行所述存储器存储的计算机指令,以使所述网络设备执行上述权利要求1至20中任一项所述的方法。
36.一种通信系统,其特征在于,所述通信系统包括第一网络设备和第二网络设备,其中:
所述第一网络设备,用于执行权利要求1至11中任一项所述的方法;
所述第二网络设备,用于执行权利要求12至20中任一项所述的方法。
37.一种可读存储介质,其特征在于,所述可读存储介质存储有程序代码,当所述程序代码被网络设备执行时,所述网络设备执行上述权利要求1至20中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210430611.4A CN116980341A (zh) | 2022-04-22 | 2022-04-22 | 报文发送的方法、网络设备及通信系统 |
PCT/CN2023/089304 WO2023202639A1 (zh) | 2022-04-22 | 2023-04-19 | 报文发送的方法、网络设备及通信系统 |
EP23791293.6A EP4398542A4 (en) | 2022-04-22 | 2023-04-19 | MESSAGE SENDING METHOD, NETWORK DEVICE AND COMMUNICATION SYSTEM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210430611.4A CN116980341A (zh) | 2022-04-22 | 2022-04-22 | 报文发送的方法、网络设备及通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116980341A true CN116980341A (zh) | 2023-10-31 |
Family
ID=88419235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210430611.4A Pending CN116980341A (zh) | 2022-04-22 | 2022-04-22 | 报文发送的方法、网络设备及通信系统 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4398542A4 (zh) |
CN (1) | CN116980341A (zh) |
WO (1) | WO2023202639A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118200227A (zh) * | 2024-04-18 | 2024-06-14 | 清华大学 | 路由路径确定的方法、装置、电子设备及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116074236A (zh) * | 2021-10-29 | 2023-05-05 | 华为技术有限公司 | 报文转发方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020049577A1 (en) * | 2018-09-07 | 2020-03-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Network node, first node, second node and methods performed thereby for routing a packet through a path |
CN112187649B (zh) * | 2019-07-01 | 2023-04-18 | 华为技术有限公司 | 一种报文转发方法、报文处理方法及装置 |
CN111711565B (zh) * | 2020-07-01 | 2021-05-04 | 西安电子科技大学 | 面向高速互连蜻蜓+网络的多路径路由方法 |
-
2022
- 2022-04-22 CN CN202210430611.4A patent/CN116980341A/zh active Pending
-
2023
- 2023-04-19 EP EP23791293.6A patent/EP4398542A4/en active Pending
- 2023-04-19 WO PCT/CN2023/089304 patent/WO2023202639A1/zh active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118200227A (zh) * | 2024-04-18 | 2024-06-14 | 清华大学 | 路由路径确定的方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023202639A1 (zh) | 2023-10-26 |
EP4398542A4 (en) | 2024-09-25 |
EP4398542A1 (en) | 2024-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110943924B (zh) | 网络中分段源路由的方法及存储介质 | |
US7471669B1 (en) | Routing of protocol data units within a communication network | |
EP2911348A1 (en) | Control device discovery in networks having separate control and forwarding devices | |
US7466655B1 (en) | Ant-based method for discovering a network path that satisfies a quality of service equipment | |
CN112491701B (zh) | 转发报文方法和装置 | |
EP3985941A2 (en) | Path switching method, device, and system | |
WO2023202639A1 (zh) | 报文发送的方法、网络设备及通信系统 | |
US11962491B2 (en) | Source routing tunnel ingress protection | |
US7096281B2 (en) | Efficient connectivity between multiple topology subnets via common connection network | |
CN112868214B (zh) | 分组内的协调负载转移oam记录 | |
WO2021083341A1 (zh) | 一种报文处理的方法、网络节点和系统 | |
WO2022121707A1 (zh) | 报文传输方法、设备及系统 | |
CN110278156B (zh) | 组播路由处理方法、网络设备以及路由反射器 | |
CN113810274A (zh) | 一种路由处理方法及相关设备 | |
CN112565045A (zh) | Evpn中报文转发方法、装置、设备及存储介质 | |
CN113366804A (zh) | 防止网络拓扑改变期间的微环路的方法和系统 | |
EP4012988A1 (en) | Interior gateway protocol flooding optimization method and device, and storage medium | |
CN112039765B (zh) | 路由信息发送的方法、路由选路的方法和装置 | |
WO2020168982A1 (zh) | 一种发送和获取断言报文的方法和网络节点 | |
US20240250894A1 (en) | Multi-chassis link aggregation routing computation method, switch, system, and storage medium | |
US20190036817A1 (en) | Transport network control apparatus, communication system, forwarding node control method, and program | |
CN115529114A (zh) | 一种信息传输方法及相关设备 | |
CN113568863A (zh) | 数据传输方法、路由节点、众核系统、计算机可读介质 | |
CN113872843A (zh) | 一种路由生成方法、路由处理方法及装置 | |
US9742670B2 (en) | Non-eligible distance vector protocol paths as backup paths |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |