[go: up one dir, main page]

CN117118912A - Message transmission method, network equipment and communication system - Google Patents

Message transmission method, network equipment and communication system Download PDF

Info

Publication number
CN117118912A
CN117118912A CN202210988619.2A CN202210988619A CN117118912A CN 117118912 A CN117118912 A CN 117118912A CN 202210988619 A CN202210988619 A CN 202210988619A CN 117118912 A CN117118912 A CN 117118912A
Authority
CN
China
Prior art keywords
network device
keep
protocol
message
flow
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
Application number
CN202210988619.2A
Other languages
Chinese (zh)
Inventor
戈军
王海波
王丽丽
许福太
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to PCT/CN2023/094468 priority Critical patent/WO2023221968A1/en
Publication of CN117118912A publication Critical patent/CN117118912A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the application discloses a message transmission method and network equipment, which are used for transmitting keep-alive messages through a first stream borne by a first transmission layer protocol and transmitting first routing protocol update messages through a second stream borne by a second transmission layer protocol, wherein the priority of the network equipment for receiving and transmitting the keep-alive messages is higher than that of the first routing protocol update messages, so that BGP service interruption caused by incapability of processing the keep-alive messages on time due to the fact that the network equipment receives and transmits the routing protocol update messages can be reduced.

Description

Message transmission method, network equipment and communication system
The present application claims priority from China patent office, application No. 202210540416.7, entitled "method, apparatus and System for resolving massive neighbors Using BGP Over Quaic technology", filed 5.17 of 2022, the entire contents of which are incorporated herein by reference.
Technical Field
The present application relates to the field of communications technologies, and in particular, to a message transmission method, a network device, and a communications system.
Background
The border gateway protocol (border gateway protocol, BGP) is a routing protocol that enables routing exchanges within or between autonomous systems (autonomous system, AS). Two network devices that interwork BGP messages mutually call BGP peers (peers) or BGP neighbors.
A BGP protocol-based Route Reflector (RR) may connect multiple BGP devices (i.e., neighbors). BGP protocol messages include keep-alive (KA) messages, BGP Update (Update) messages, etc. for maintaining BGP connections, and various BGP protocol messages are queued for transmission on a first-in-first-out (first input first output, FIFO) basis.
Because the quantity of various BGP protocol messages transmitted by RR is large, if the condition that the keep-alive messages are not transmitted timely occurs, the RR and the neighbor are disconnected with BGP, and the BGP service is interrupted. Further, since two network devices need to be reconnected after being disconnected, the network devices are disconnected continuously, which causes BGP route oscillation.
Disclosure of Invention
The application provides a message transmission method, which is used for transmitting the keep-alive message through the first stream carried by the first transmission layer protocol with higher priority, so that the disconnection of BGP connection caused by untimely receiving and transmitting of the keep-alive message is reduced, the stability of BGP service can be improved, and the route oscillation is reduced.
The first aspect of the present application provides a message transmission method, including: the first network equipment sends a first keep-alive message to the second network equipment through a first flow direction borne by a first transport layer protocol; the first network device sends a first routing protocol update message to the second network device through a second flow carried by a second transport layer protocol, the first keep-alive message and the first routing protocol update message both correspond to a first routing session, and the priority of the first keep-alive message sent by the first network device through the first flow is higher than the priority of the first routing protocol update message sent by the first network device through the second flow. It should be noted that the first transport layer protocol may be the same as the second transport layer protocol or may be different from the first transport layer protocol.
The application provides a message transmission method, because a first network device respectively transmits a first keep-alive message and a first routing protocol update message corresponding to the same routing session to a second network device through two streams borne by a transport layer protocol, and the priority of the first stream borne by the first transport layer protocol for transmitting the keep-alive message is higher, the first keep-alive message can be preferentially transmitted when the first keep-alive message and the first routing protocol update message exist in the same routing session, thereby reducing BGP service interruption caused by incapability of transmitting the first keep-alive message on time due to the first routing protocol update message transmitted by the first network device and reducing routing oscillation caused by continuous disconnection and reconnection between neighbors.
In a possible implementation manner of the first aspect, a priority of the first network device sending the first keep-alive message through the first flow is higher than a priority of the first network device sending all routing protocol update messages.
In the message transmission method provided by the application, the priority of the first network device for sending the first keep-alive message is higher than the priority of all routing protocol updating messages, that is, when the routing protocol updating messages need to be sent and received by the plurality of second network devices due to route change, the priority of the first network device for sending the first keep-alive message is highest, so that BGP service interruption caused by incapability of sending the first keep-alive message on time due to the fact that the routing protocol updating messages are sent is avoided, and routing oscillation caused by continuous disconnection and reconnection between adjacent places is reduced.
In a possible implementation manner of the first aspect, the first transport layer protocol includes a rapid user datagram protocol internet connection quit protocol, the second transport layer protocol includes a quit protocol, and the first flow identifier of the first flow is different from the second flow identifier of the second flow.
In one possible implementation manner, the first network device sends the first keep-alive message based on the first stream carried by the QUIC protocol and sends the first routing protocol update message based on the second stream carried by the QUIC protocol, so that the scheme can be suitable for the BGP scene carried by the QUIC protocol.
In a possible implementation manner of the first aspect, the first transport layer protocol includes a multi-transmission control protocol muili-TCP or a user datagram protocol UDP, the second transport layer protocol includes muili-TCP or UDP, and the first destination port number of the first flow is different from the second destination port number of the second flow.
In one possible implementation manner, the first transport layer protocol carrying the first stream is a muliti-TCP protocol, and the second transport layer protocol carrying the second stream is a muliti-TCP protocol; in another possible implementation, the first transport layer protocol carrying the first stream and the second transport layer protocol carrying the second stream are UDP protocols; in another possible implementation, the first transport layer protocol carrying the first stream is a TCP protocol and the second transport layer protocol carrying the second stream is a UDP protocol; in another possible implementation, the first transport layer protocol carrying the first stream is the UDP protocol and the second transport layer protocol carrying the second stream is the TCP protocol. In practical application, the transport layer protocol corresponding to the scheme can be flexibly selected based on the requirement, so that the method can be applied to the BGP scene borne in the TCP protocol, the BGP scene borne in the UDP protocol or the BGP scene borne in the mixed transmission of TCP and UDP.
In a possible implementation manner of the first aspect, the first routing protocol update packet includes a BGP update packet.
In a possible implementation manner of the first aspect, the first keep-alive message and the first routing protocol update message correspond to the same routing session, and include: the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
In a possible implementation manner of the first aspect, the first network device includes a standby board; the first network device backs up the first routing protocol updating message in the backup board; and the first network equipment does not backup the first keep-alive message in the backup board.
According to the message transmission method provided by the application, under the scene that the same network device has the main board and the standby board, the first network device does not backup the keep-alive message in the standby board, so that the waste of processing resources of the network device can be reduced, and the processing capacity of the network device can be improved.
In a possible implementation manner of the first aspect, the first network device creates a keep-alive channel after the active-standby switching, where the keep-alive channel is used to transmit the first keep-alive message.
In the message transmission method provided by the application, the first network equipment is provided with the main board and the standby board, and after the main and standby boards are switched, the routing protocol update message can be transmitted based on the original channel, and the first network equipment creates the keep-alive channel for transmitting the first keep-alive message and preferentially transmits the first keep-alive message.
The second aspect of the present application provides a message transmission method, including: the second network equipment receives a first keep-alive message sent by the first network equipment through a first flow borne by a first transport layer protocol; the second network device receives a first routing protocol updating message sent by the first network device through a second flow borne by a second transport layer protocol, the first keep-alive message and the first routing protocol updating message both correspond to a first routing session, and the priority of the second network device for processing the first keep-alive message received through the first flow is higher than the priority of the second network device for processing the first routing protocol updating message.
The second network device receives the first keep-alive message and the first routing protocol update message which are sent by the first network device and correspond to the same routing session respectively through the two streams borne by the transport layer protocol, and processes the keep-alive message received through the first stream, so that the first keep-alive message is preferentially processed when the first keep-alive message and the first routing protocol update message exist in the same routing session, thereby reducing BGP service interruption caused by incapability of receiving the first keep-alive message on time due to the processing of the routing protocol update message by the second network device, and reducing routing oscillation caused by continuous disconnection and reconnection between neighbors.
In a possible implementation manner of the second aspect, the priority of the second network device for processing the first keep-alive message received through the first flow is higher than the priority of the routing protocol update message received through the second flow by the second network device.
In the message transmission method provided by the application, the priority of the second network equipment for receiving and processing the first keep-alive message is higher than the priority of all routing protocol updating messages, that is, when the first network equipment sends the routing protocol updating messages to the second network equipment due to route change, the priority of the second network equipment for processing the first keep-alive message is highest, so that BGP service interruption caused by incapability of sending the first keep-alive message on time due to receiving the plurality of routing protocol updating messages is avoided, and routing oscillation caused by continuous disconnection and reconnection of the neighborhood is reduced.
In a possible implementation manner of the second aspect, the first transport layer protocol includes a rapid user datagram protocol internet connection quit protocol, the second transport layer protocol includes a quit protocol, and the first flow identifier of the first flow is different from the second flow identifier of the second flow.
In one possible implementation manner, the second network device receives the first keep-alive message based on the first flow under the QUIC protocol and receives the first routing protocol update message based on the second flow under the QUIC protocol, so that the scheme can be suitable for the BGP scene borne on the QUIC protocol.
In a possible implementation manner of the second aspect, the first transport layer protocol includes a multi-transmission control protocol muilti-TCP or a user datagram protocol UDP, the second transport layer protocol includes muilti-TCP or UDP, and the first destination port number of the first flow is different from the second destination port number of the second flow.
In one possible implementation manner, the first transport layer protocol carrying the first stream is a muili-TCP protocol, and the second transport layer protocol carrying the second stream is a muili-TCP protocol; in another possible implementation, the first transport layer protocol carrying the first stream and the second transport layer protocol carrying the second stream are UDP protocols; in another possible implementation, the first transport layer protocol carrying the first stream is the TCP protocol and the second transport layer protocol carrying the second stream is the UDP protocol. In practical application, the transport layer protocol corresponding to the specific implementation mode of the scheme can be flexibly selected based on requirements, so that the method can be applied to the BGP scene borne on the TCP protocol, the BGP scene borne on the UDP protocol or the BGP scene borne on the mixed transmission of TCP and UDP.
In a possible implementation manner of the second aspect, the first routing protocol update packet includes a BGP update packet.
In a possible implementation manner of the second aspect, the first keep-alive message and the first BGP update protocol message correspond to the same BGP session.
In the message transmission method provided by the application, the second network equipment sends the message based on the BGP protocol, the first keep-alive message and the first BGP update protocol message both correspond to the same BGP session, and the BGP session is kept through the first keep-alive message.
In a possible implementation manner of the second aspect, the second network device includes a standby board; the second network device backs up the first routing protocol updating message in the backup board; and the second network equipment does not backup the first keep-alive message in the backup board.
According to the message transmission method provided by the application, under the scene that the same network device has the main board and the standby board, the second network device does not backup the keep-alive message at the standby board, so that the waste of processing resources of the network device can be reduced, and the processing capacity of the network device can be improved.
In a possible implementation manner of the second aspect, the second network device creates a keep-alive channel after the active-standby switching, where the keep-alive channel is used to transmit the first keep-alive message.
In the message transmission method provided by the application, the second network equipment is provided with the main board and the standby board, when the main board and the standby board are switched, the routing protocol update message can be transmitted based on the original channel, and the second network equipment creates the keep-alive channel for transmitting the first keep-alive message and preferentially processes the first keep-alive message.
A third aspect of the present application provides a first network device comprising: the receiving and transmitting module is used for transmitting a first keep-alive message to the second network equipment through a first flow carried by the first transport layer protocol; the transceiver module is further configured to send a first routing protocol update packet to the second network device through a second flow carried by a second transport layer protocol, where the first keep-alive packet and the first routing protocol update packet both correspond to a first routing session, and a priority of the first network device sending the first keep-alive packet through the first flow is higher than a priority of the first routing protocol update packet sent by the first network device through the second flow.
In a possible implementation manner of the third aspect, a priority of the first network device sending the first keep-alive message through the first flow is higher than a priority of the first network device sending a routing protocol update message through the second flow.
In a possible implementation manner of the third aspect, the first transport layer protocol includes a rapid user datagram protocol internet connection quit protocol, the second transport layer protocol includes a quit protocol, and the first flow identifier of the first flow is different from the second flow identifier of the second flow.
In a possible implementation manner of the third aspect, the first transport layer protocol includes a multi-transmission control protocol muili-TCP or a user datagram protocol UDP, the second transport layer protocol includes muili-TCP or UDP, and the first destination port number of the first flow is different from the second destination port number of the second flow.
In a possible implementation manner of the third aspect, the first routing protocol update packet includes a BGP update packet.
In a possible implementation manner of the third aspect, the first keep-alive packet and the first BGP update protocol packet correspond to the same BGP session.
In a possible implementation manner of the third aspect, the first network device includes a standby board; the first network device further includes: the backup module is used for backing up the first routing protocol updating message in the backup board; the backup module is further configured to not backup the first keep-alive message in the backup board by the first network device.
In a possible implementation manner of the third aspect, the first network device further includes: and the processing module is used for creating a keep-alive channel after the main/standby switching, and the keep-alive channel is used for transmitting the first keep-alive message.
A fourth aspect of the application provides a second network device comprising: the receiving and transmitting module is used for receiving a first keep-alive message sent by the first network equipment through a first flow borne by the first transport layer protocol; the transceiver module is further configured to receive a first routing protocol update packet sent by the first network device through a second flow carried by a second transport layer protocol, where the first keep-alive packet and the first routing protocol update packet both correspond to a first routing session, and a priority of the second network device for processing the first keep-alive packet received through the first flow is higher than a priority of the second network device for processing the first routing protocol update packet.
In a possible implementation manner of the fourth aspect, the priority of the second network device for processing the first keep-alive message received through the first flow is higher than the priority of the routing protocol update message received through the second flow by the second network device.
In a possible implementation manner of the fourth aspect, the first transport layer protocol includes a rapid user datagram protocol internet connection quit protocol, the second transport layer protocol includes a quit protocol, and the first stream identifier of the first stream is different from the second stream identifier of the second stream.
In a possible implementation manner of the fourth aspect, the first transport layer protocol includes a multi-transmission control protocol muilti-TCP or a user datagram protocol UDP, the second transport layer protocol includes muilti-TCP or UDP, and the first destination port number of the first flow is different from the second destination port number of the second flow.
In a possible implementation manner of the fourth aspect, the first routing protocol update packet includes a BGP update packet.
In a possible implementation manner of the fourth aspect, the first keep-alive packet and the first BGP update protocol packet correspond to the same BGP session.
In a possible implementation manner of the fourth aspect, the second network device includes a standby board; the second network device further includes: the backup module is used for backing up the first routing protocol updating message in the backup board; and the backup module is further configured to not backup the first keep-alive message in the backup board.
In a possible implementation manner of the fourth aspect, the first network device further includes: and the processing module is used for creating a keep-alive channel after the main/standby switching, and the keep-alive channel is used for transmitting the first keep-alive message.
A fifth aspect of the present application provides a network device comprising: a memory having computer readable instructions stored therein; a processor coupled to the memory, the computer readable instructions, when executed by the processor, cause the network device to implement the method of any of the first aspect, the second aspect, and various possible implementations.
A sixth aspect of the application provides a computer program product comprising computer readable instructions which, when run on a computer, cause the computer to perform the method of the first aspect, the second aspect and any of the various possible implementations.
A seventh aspect of the present application provides a computer readable storage medium having instructions stored therein which, when run on a computer, cause the computer to perform the method according to any of the first aspect, the second aspect and various possible implementations.
An eighth aspect of the application provides a chip comprising a processor. The processor is configured to read and execute a computer program stored in the memory to perform the method of the first aspect, the second aspect and any of the various possible implementations. Optionally, the chip includes a memory, and the memory and the processor are connected to the memory through a circuit or a wire. Further optionally, the chip further comprises a communication interface, and the processor is connected to the communication interface. The communication interface is used for receiving data and/or information to be processed, and the processor acquires the data and/or information from the communication interface, processes the data and/or information and outputs a processing result through the communication interface. The communication interface may be an input-output interface.
The ninth aspect of the present application provides a communication system, which includes a first network device and a second network device, where the first network device sends a first keep-alive packet to the second network device through a first flow carried by a first transport layer protocol; the second network device receives the first keep-alive message through the first flow; the first network device sends a first routing protocol update message to the second network device through a second flow carried by a second transport layer protocol; the second network device receives the first routing protocol updating message through the second flow, the first keep-alive message and the first routing protocol updating message both correspond to a first routing session, the priority of the first keep-alive message sent by the first network device through the first flow is higher than the priority of the first routing protocol updating message sent by the first network device through the second flow, and the priority of the first keep-alive message received by the second network device processed by the first flow is higher than the priority of the first routing protocol updating message processed by the second network device.
In a possible implementation manner of the ninth aspect, the first network device is further configured to perform the method of the first aspect and any of the various possible implementation manners, and the second network device is further configured to perform the method of the second aspect and any of the various possible implementation manners.
The technical effects of the second aspect, the third aspect, the fourth aspect, the fifth aspect, the sixth aspect, the seventh aspect, the eighth aspect, or the ninth aspect, and any implementation manner thereof may be referred to technical effects of corresponding implementation manners of the first aspect and the second aspect, and are not described herein.
According to the message transmission method provided by the application, the network equipment respectively transmits the first keep-alive message and the first routing protocol update message through the two streams, wherein the priority of the first keep-alive message is higher than that of the first routing protocol update message, so that the first keep-alive message is preferentially transmitted when the first keep-alive message and the first routing protocol update message exist in the same routing session, BGP service interruption caused by incapability of transmitting and receiving the first keep-alive message on time is reduced, and routing oscillation caused by continuous disconnection and reconnection and disconnection of the adjacent part can be reduced.
Drawings
Fig. 1 is an application scenario architecture diagram of a message transmission method according to an embodiment of the present application;
FIG. 2 is a schematic diagram of an embodiment of a message transmission method according to the present application;
FIG. 3a is a schematic diagram of an embodiment of a network device sending a message according to an embodiment of the present application;
FIG. 3b is a diagram illustrating an embodiment of a network device receiving a message according to an embodiment of the present application;
FIG. 4 is a schematic diagram of another embodiment of a message transmission method according to the present application;
fig. 5 is a schematic diagram of message transmission in a network device according to an embodiment of the present application;
FIG. 6 is a schematic diagram of a primary and secondary scenario in an embodiment of the present application;
fig. 7 is a schematic diagram of a process of receiving a message in a primary and secondary scenario in an embodiment of the present application;
FIG. 8 is a schematic diagram of an embodiment of a network device according to an embodiment of the present application;
fig. 9 is a schematic diagram of another embodiment of a network device according to an embodiment of the present application;
fig. 10 is a schematic diagram of another embodiment of a network device according to an embodiment of the present application.
Detailed Description
The embodiment of the application provides a message transmission method, which is used for respectively transmitting a keep-alive message and a routing protocol update message through two streams, and the keep-alive message is transmitted preferentially, so that BGP service interruption caused by incapability of transmitting and receiving the keep-alive message on time can be reduced.
Embodiments of the present application will now be described with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all embodiments of the present application. As one of ordinary skill in the art can know, with the development of technology and the appearance of new scenes, the technical scheme provided by the embodiment of the application is also applicable to similar technical problems.
The terms first, second and the like in the description and in the claims and in the above-described figures, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments described herein may be implemented in other sequences than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or modules is not necessarily limited to those steps or modules that are expressly listed or inherent to such process, method, article, or apparatus. The naming or numbering of the steps in the present application does not mean that the steps in the method flow must be executed according to the time/logic sequence indicated by the naming or numbering, and the execution sequence of the steps in the flow that are named or numbered may be changed according to the technical purpose to be achieved, so long as the same or similar technical effects can be achieved.
For easy understanding, the following will briefly describe some technical terms related to the embodiments of the present application:
1. border gateway protocol (border gateway protocol, BGP)
BGP is a routing protocol that enables routing exchanges between network devices within an autonomous system (autonomous system, AS) or between ases. Two network devices running BGP can mutually call neighbors, exchange routing information after establishing a neighbor relationship, usually exchange complete information only once at startup, and only need to trigger updating of change information of an advertising network afterwards.
2. BGP message
BGP defines 4 message types for its function:
(1) OPEN (OPEN) message
After the transport layer protocol connection is established between two BGP neighbors, an open message is sent, the respective autonomous system number is declared, and other operating parameters are determined.
When the network device receives an OPEN message from a neighbor, it will send a Keep Alive (KA) message. Before exchanging routing information between network devices, both parties must send an OPEN message and receive a KEEPALIVE message. The KEEPALIVE message may be used as an acknowledgement to the OPEN message.
(2) UPDATE message
And establishing a transmission layer protocol connection between BGP neighbors, and successfully receiving a KEEPALIVE determination message of an OPEN message, wherein the BGP neighbors can use an UPDATE message to announce the reachability information of the network. The content of the advertisement may be a new reachable destination network or the advertisement may revoke the reachability of some of the original destination networks.
(3) Keep alive (KEEP ALIVE) messages
The keep-alive message is used for periodically testing network connectivity between two BGP neighbors and verifying that BGP neighbor devices that send the keep-alive message are working normally. If the transport layer protocol carrying the connection is a TCP protocol, since the TCP protocol itself does not provide an automatic notification mechanism of the connection state, the BGP neighbors can detect whether the TCP connection works normally by exchanging keep-alive messages with each other at regular time.
(4) Notification (NOTIFICATION) message
BGP devices may notify their BGP neighbors with notification messages when errors are discovered (or when control is needed). Once an error is detected, the BGP device sends a notification message to the BGP neighbor and disconnects to terminate the communication.
3. Route reflector (route reflector, RR)
BGP running between two or more BGP devices in the same Autonomous System (AS) is called IBGP (international/inter BGP). BGP running between BGP devices belonging to different ases is called EBGP (External/External BGP). Within an AS, one of the network devices acts AS a route reflector and the other network devices act AS clients (clients) to establish IBGP connections with the route reflector. The route reflector transmits (reflects) route information between network devices, so that BGP connection between network devices is not required to be established, only connection with the route reflector is required to be established, and the number of connections is reduced.
4、QUIC(Quick UDP Internet Connection)
Is a low latency internet transport layer protocol based on UDP.
5. Flow of
In a period of time, a unidirectional message stream is transmitted between a source IP address and a destination IP address, and all messages in the same stream have the same source port number, destination port number, protocol number and source and destination IP addresses, namely five-tuple content is the same.
The following describes an application scenario architecture of a message transmission method in an embodiment of the present application, please refer to fig. 1, which is a diagram of an application scenario architecture of a message transmission method in an embodiment of the present application.
The application scenario architecture diagram includes a network device 1 and a plurality of network devices 2 (including network devices 2a to 2 n). The network device 1 and the plurality of network devices 2 belong to a network device in the same autonomous system, wherein the plurality of network devices 2 are respectively connected to the network device 1 for communication, and the network device 1 is a router or a switch, and in a typical implementation, the network device 1 is a routing reflector, hereinafter referred to as reflector. In one possible implementation, network device 1 and network device 2 communicate via BGP protocol, where network device 1 and network device 2 are peers or neighbors to each other. The network device 2 may in particular be a different device in different application scenarios, for example in a software defined wide area network (software defined wide area network, SD-WAN) the network device 2 may be a customer premise equipment (customer premises equipment, CPE) with an enterprise branch office; in a backbone network or a metropolitan network, the network device 2 may be a router, in particular a Provider Edge (PE).
In general, BGP protocol is based on a transport layer TCP protocol to transmit and receive BGP messages, and after TCP connection is established, BGP messages are transmitted based on the TCP connection. Generally, in BGP messages, except for keep-alive messages, which need to be periodically sent, the rest of BGP messages are triggered. Various BGP messages are queued for transmission on a first-in-first-out (first input first output, FIFO) basis.
In some application scenarios, the network device 1 has a huge number of neighbors (i.e. BGP connections are established with a larger number of network devices 2, and messages may be sent and received between the network devices 1 and 2 based on BGP protocol). For example, if a part of the second network devices are connected to 1000 network devices 2, and the route update is caused by a network change or other reasons, the first network devices need to send 1000 BGP update messages to 1000 network devices 2 respectively, meanwhile, keep-alive messages need to be sent between each pair of the first network devices and the second network devices at regular time, and the BGP update messages and the keep-alive messages are queued to be sent in a FIFO manner through unique message sending queues, which may cause that part of the keep-alive messages are queued after the 1000 BGP update messages, and the BGP connection between the network devices is disconnected due to untimely transmission, so that BGP service is interrupted, and further, routing oscillation is caused due to repeated disconnection and reconnection between the network devices.
In some application scenarios, because the keep-alive time and the protection period between network devices are both shorter (for example, the keep-alive period is 1 second, the keep-alive time is 3 seconds), the timeliness requirement for the keep-alive message transmission is higher. In this scenario, if the keep-alive message is not transmitted timely, the network devices are disconnected, so that BGP service is interrupted, and the network devices are repeatedly disconnected and reconnected, so that routing oscillation is caused.
In view of this, an embodiment of the present application provides a message transmission method and a network device, referring to fig. 2, a first network device sends a keep-alive message and a routing protocol update message respectively through a first flow carried by a first transport layer protocol and a second flow carried by a second transport layer protocol, where the keep-alive message sent by the first flow has a higher priority, and by sending the keep-alive message by splitting preferentially, BGP service interruption and routing oscillation caused by untimely sending of the keep-alive message can be reduced.
Referring to fig. 3a and fig. 3b, a message sending method 310 and a message receiving method 320 in the message transmission method according to the embodiment of the present application are respectively described. The message sending method and the message receiving method may be applied to the scenario shown in fig. 1, where the first network device corresponds to the network device 1 in the application scenario shown in fig. 1, and it should be noted that the second network device may be any one of the network devices 2 (including the network devices 2 a-2 n) in the application scenario shown in fig. 1, and the message sending method 310 includes steps S311-S312:
S311, the first network device sends a first keep-alive message to the second network device through a first flow direction carried by a first transport layer protocol;
the first network device needs to establish a first routing session with the second network device before the first network device sends a message to the second network device.
In one possible implementation, the routing session is embodied as a BGP session. In addition, the routing session may be a BGP monitoring protocol (BGP Monitoring Protocol, BMP) session, a BGP Link-LS (BGP Link-state) protocol session, and a flow rule (BGP Flow Specification, flowspec) session, which is not limited herein.
It should be appreciated that in embodiments of the present application, when a BGP session (sometimes referred to as a BGP connection) is established between a first network device and a second network device, BGP messages are sent or received between the first network device and the second network device via the established BGP session. For the case of other protocol sessions, reference is made to the description of BGP sessions, which are not listed here.
BGP session is established based on a transport layer connection, and TCP is generally used as a transport layer protocol, and after the TCP session is established, BGP packets are transmitted and reliability is guaranteed based on the session of TCP. The first network device and the second network device firstly establish a session of TCP, and then establish a first routing session by receiving and transmitting open messages and confirming neighbor relations.
In general, BGP messages corresponding to a BGP session are transmitted through a TCP session, that is, are carried in a TCP stream.
In the embodiment of the present application, two TCP sessions, that is, two TCP flows, need to be established corresponding to the same BGP session, where a first flow is used to transmit a keep-alive packet, a second flow is used to transmit a route update packet, both the keep-alive packet transmitted through the first flow and the route update packet transmitted through the second flow correspond to a first routing session, and there are multiple possible implementations of the protocol types of a first transport layer protocol carrying the first flow and a transport layer protocol carrying the second flow.
As an example, the first transport layer protocol and the second transport layer protocol are both quit protocols, the first network device sends keep-alive messages and route update messages based on quit protocol shunting, and the first flow identifier of the first flow is different from the second flow identifier of the second flow, so that the method is applicable to the BGP over quit scenario.
As another example, the first transport layer protocol and the second transport layer protocol are each muiliti-TCP, the two flows corresponding to different five-tuple, a first destination port number of the first flow being different from a second destination port number of the second flow. Specifically, the first network device sends a first keep-alive message to the second network device through the first port, and a destination port number carried by the keep-alive message corresponds to the second port of the second network device; the first network device sends a first routing protocol update message to the second network device through the third port, and a destination port number carried by the first routing protocol update message corresponds to a fourth port of the second network device.
As another example, the first transport layer protocol is UDP and the second transport layer protocol is TCP. The method comprises the steps that keep-alive messages are sent based on UDP protocols, routing protocol update messages are sent based on TCP protocols, and first network equipment sends first keep-alive messages to second network equipment through a first port; the destination port number carried by the keep-alive message corresponds to a second port of the second network device; the first network device sends a first routing protocol update message to the second network device through the first port based on the user datagram protocol.
The first network device needs to periodically send keep-alive messages to keep BGP neighbor connection. Similarly, the second network device may also periodically send keep-alive messages to the first network device for BGP neighbor connection maintenance.
S312, the first network device sends a first routing protocol update message to a second network device through a second flow carried by a second transport layer protocol, the first keep-alive message and the first routing protocol update message both correspond to a first routing session, and the priority of the first network device for sending the first keep-alive message through the first flow is higher than the priority of the first network device for sending the first routing protocol update message through the second flow;
In general, the first routing protocol update message is sent by an event trigger, for example, when the network device of the autonomous system changes its network configuration, the first network device will send the first routing protocol update message to the second network device through the second flow, and the second network device receives the first routing protocol update message sent by the first network device through the second flow. In one possible implementation, the first network device establishes a connection with the second network device based on a BGP protocol, the first routing protocol update message is a BGP update message, and the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
It should be noted that, the first keep-alive message and the first routing protocol update message each correspond to a first routing session between the first network device and the second network device. Since the priority of sending the first keep-alive message via the first stream is higher, step S311 is performed prior to step S312.
Optionally, in the first network device, the first keep-alive message is queued and sent in a first queue through a first channel, and the first routing protocol update message is queued and sent in a second queue through a second channel, where it is to be noted that, as a specific example, the queue scheduling method of the first network device is multiple, the first network device sends the message based on a Strict Priority (SP) queue scheduling algorithm, where the keep-alive message of the first queue is sent preferentially, and when the first queue does not have the keep-alive message to be sent, the first routing protocol update message of the second queue is sent. As another specific example, the first network device sends a keep-alive message for the first queue and a first routing protocol update message for the second queue based on a weighted round robin scheduling algorithm (weighted round robin, WRR), wherein the weight of the keep-alive message for the first queue is higher than the weight of the first routing protocol update message for the second queue.
It should be noted that, as shown in the application scenario architecture diagram of fig. 1, the first network device may be connected to a plurality of second network devices, and when the route is updated, the first network device may need to send a first routing protocol update message to the plurality of second network devices, where the priority of the first network device sending a first keep-alive message through the first flow is higher than the priority of the first network device sending the routing protocol update message through the second flow.
According to the message transmission method, the keep-alive message and the first routing protocol update message are respectively sent through the first stream and the second stream, and the keep-alive message is sent based on a higher priority, so that BGP service interruption caused by incapability of sending the first keep-alive message on time due to the fact that the first routing protocol update message is sent by the first network equipment is reduced, and routing oscillation caused by continuous disconnection and reconnection of the adjacent space is reduced.
It can be appreciated that in the short timeout scenario, the time requirement for keep-alive message transmission is higher due to the shorter keep-alive time and protection period. In the message transmission method provided by the embodiment of the application, the priority of the keep-alive message sent by the first network equipment through the first flow to the second network equipment is higher than that of the routing protocol updating message sent by the second flow, so that the first keep-alive message can be preferentially sent when the first keep-alive message and the first routing protocol updating message exist in the same routing session, thereby ensuring the timeliness of the transmission of the keep-alive message, reducing BGP service interruption and reducing routing oscillation caused by continuous disconnection and reconnection between neighbors.
In the message transmission method provided by the embodiment of the application, the priority of the first network device for sending the keep-alive message through the first flow to the second network device is higher than the priority of the first routing protocol updating message through the second flow, so that the timeliness of the keep-alive message sending can be ensured, the BGP service interruption is reduced, and the routing oscillation caused by continuously disconnecting and reconnecting between neighbors is reduced.
Next, a message receiving method provided in an embodiment of the present application is described, where the message receiving method 320 includes steps S321 to S322:
s321, the second network device receives a first keep-alive message sent by the first network device through a first flow borne by a first transport layer protocol;
first, the second network device needs to establish a first routing session with the first network device, in one possible implementation the routing session is in particular a BGP session. In addition, the routing session may be a BGP monitoring protocol (BGP Monitoring Protocol, BMP) session, a BGP Link-LS (BGP Link-state) protocol session, and a flow rule (BGP Flow Specification, flowspec) session, which is not limited herein.
It should be appreciated that in embodiments of the present application, when a BGP session (sometimes referred to as a BGP connection) is established between a first network device and a second network device, BGP messages are sent or received between the first network device and the second network device via the established BGP session. For the case of other protocol sessions, reference is made to the description of BGP sessions, which are not listed here.
BGP session is established based on a transport layer connection, and TCP is generally used as a transport layer protocol, and after the TCP session is established, BGP packets are transmitted and reliability is guaranteed based on the session of TCP. The second network device establishes a session of TCP with the first network device first, and then establishes a first routing session by receiving and transmitting open messages, confirming neighbor relations.
In general, BGP messages corresponding to a BGP session are transmitted through a TCP session, that is, are carried in a TCP stream.
In the embodiment of the present application, two TCP sessions, that is, two TCP flows, need to be established corresponding to the same BGP session, where a first flow is used to transmit a keep-alive packet, a second flow is used to transmit a route update packet, both the keep-alive packet transmitted through the first flow and the route update packet transmitted through the second flow correspond to a first routing session, and there are multiple possible implementations of the protocol types of a first transport layer protocol carrying the first flow and a transport layer protocol carrying the second flow.
As an example, the first transport layer protocol and the second transport layer protocol are both quitc protocols, the second network device receives keep-alive messages and route update messages based on quitc protocol splitting, and the first flow identifier of the first flow is different from the second flow identifier of the second flow, so that the method is applicable to the BGP over quitc scenario.
As another example, the first transport layer protocol and the second transport layer protocol are each muiliti-TCP, the two flows corresponding to different five-tuple, a first destination port number of the first flow being different from a second destination port number of the second flow. Specifically, the second network device receives the first keep-alive message sent by the first network device through the second port; the second network device receives a first routing protocol update message sent by the first network device through the fourth port.
As another example, the first transport layer protocol is UDP and the second transport layer protocol is TCP. The keep-alive message is sent based on a UDP protocol, the routing protocol updating message is sent based on a TCP protocol, and the second network equipment receives a second keep-alive message sent by the first network equipment through the first port; the second network device receives a first routing protocol update message sent by the first network device through the first port based on the user datagram protocol.
The second network equipment needs to periodically send keep-alive messages to keep BGP neighbor connection. Similarly, the first network device may also periodically send keep-alive messages to the second network device for BGP neighbor connection maintenance.
S322, the second network device receives a first routing protocol update message sent by the first network device through a second flow carried by a second transport layer protocol, the first keep-alive message and the first routing protocol update message both correspond to a first routing session, and the priority of the second network device for processing the first keep-alive message received through the first flow is higher than the priority of the second network device for processing the first routing protocol update message;
in general, the first routing protocol update message is sent by an event trigger, for example, when the network device of the autonomous system changes its network configuration, the first network device sends the first routing protocol update message to the second network device, and the second network device receives the first routing protocol update message through the second flow. In one possible implementation, the second network device establishes a connection with the first network device based on a BGP protocol, the first routing protocol update message is a BGP update message, and the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
It should be noted that, the first keep-alive message and the first routing protocol update message each correspond to a first routing session between the second network device and the first network device. Since the priority of sending the first keep-alive message via the first stream is higher, step S321 is performed prior to step S322.
It should be noted that, as a specific example, there are various queue scheduling methods of the second network device, where the second network device receives a packet based on a queue scheduling algorithm of Strict Priority (SP), and the keep-alive packet of the first queue is preferentially received, and when the first flow does not have the keep-alive packet to be received, the first routing protocol update packet transmitted by the second flow is received. As another specific example, the second network device receives keep-alive messages based on the first streaming and receives first routing protocol update messages based on the second streaming based on a weighted round robin scheduling algorithm (weighted round robin, WRR), wherein the weight of the keep-alive messages based on the first streaming is higher than the weight of the first routing protocol update messages based on the second streaming.
It should be noted that, as shown in the application scenario architecture diagram of fig. 1, the first network device may be connected to a plurality of second network devices, and when a route is updated, the first network device may need to send a first routing protocol update packet to the plurality of second network devices, where a priority of the first network device sending a first keep-alive packet through the first flow is higher than a priority of the first network device sending the routing protocol update packet through the second flow, and a priority of the second network device receiving the first keep-alive packet through the first flow is higher than a priority of the second network device receiving the routing protocol update packet.
Referring to fig. 4, an embodiment of the present application proposes a message transmission method. The method may be applied to the scenario shown in fig. 1, where the network device 1 corresponds to the network device 1 in the application scenario shown in fig. 1, and the network device 2 and the network device 3 may be any two network devices 2 (including the network device 2 a-network device 2 n) in the application scenario shown in fig. 1, and the method 400 includes:
s401, the network equipment 1 and the network equipment 2 establish a first routing session;
s402, the network equipment 1 and the network equipment 3 establish a second routing session;
step S401 and step S402 may refer to step S311 in the embodiment corresponding to fig. 3a, and are not described herein.
S403, the network device 1 sends a first keep-alive message to the network device 2 through a first flow carried by a first transport layer protocol;
the specific implementation method of step S403 may refer to step S311 in the embodiment corresponding to fig. 3a, which is not described herein.
S404, the network device 2 receives a first keep-alive message sent by the network device 1 through a first flow 1 borne by a first transport layer protocol;
the specific implementation method of step S404 may refer to step S321 in the embodiment corresponding to fig. 3b, which is not described herein.
S405, the network device 1 sends a second keep-alive message to the network device 3 through a second stream carried by the first transport layer protocol;
The specific implementation method of step S405 may refer to step S311 in the embodiment corresponding to fig. 3a, which is not described herein.
The network device 1 sends a first keep-alive message to the network device 2 via the first stream according to the keep-alive period, and the network device 1 sends a second keep-alive message to the network device 3 via the second stream. It should be understood that the execution order of step S403 and step S405 is not limited herein, and step S403 may be executed first, then step S405 may be executed, or step S405 may be executed first, then step S403 may be executed.
S406, the network device 2 receives a second keep-alive message sent by the network device 1 through a second stream carried by the first transport layer protocol;
the specific implementation method of step S406 may refer to step S321 in the embodiment corresponding to fig. 3b, which is not described herein.
It will be appreciated that the network device 1 may generate and queue via the first queue the first keep-alive message and the second keep-alive message via the same channel.
S407, the network device 1 sends a first routing protocol update message to the network device 2 through a third stream carried by the second transport layer protocol;
when triggering to send the first routing protocol update message, the network device 1 sends the first routing protocol update message to the network device 2 through the third flow, and the specific implementation method may refer to step S312 in the embodiment corresponding to fig. 3a, which is not described herein again.
S408, the network device 2 receives a first routing protocol update message sent by the network device 1 through a third stream carried by a second transport layer protocol;
the specific implementation method of step S408 may refer to step S322 in the embodiment corresponding to fig. 3b, which is not described herein.
S409, the network device 1 sends a second routing protocol update message to the network device 3 through a fourth stream carried by the second transport layer protocol;
when triggering to send the second routing protocol update message, the network device 1 sends the second routing protocol update message to the network device 3 through the fourth flow direction, and the specific implementation method may refer to step S322 in the embodiment corresponding to fig. 3b, which is not described herein again.
S410, the network device 3 receives a second routing protocol update message sent by the network device 1 through a fourth stream carried by a second transport layer protocol;
the specific implementation method of step S410 may refer to step S322 in the embodiment corresponding to fig. 3b, which is not described herein.
It should be noted that, because the priority of sending the keep-alive message by the network device 1 is higher, if there are the first keep-alive message, the second first keep-alive message, the first routing protocol update message and the second routing protocol update message in the sending queue, the first keep-alive message is sent prior to the first routing protocol update message and the second routing protocol update message, and similarly, the second message is sent prior to the first routing protocol update message and the second routing protocol update message. In another possible implementation manner, the keep-alive message is sent in preference to all routing protocol update messages, that is, in this embodiment, the first keep-alive message is sent in preference to the first routing protocol update message and the second routing protocol message, and the second keep-alive message is sent in preference to the first routing protocol update message and the second routing protocol message.
It should be understood that the execution order of the step S407 and the step S409 is not limited herein, and the step S407 may be executed first, then the step S409 may be executed, or the step S409 may be executed first, then the step S407 may be executed.
Referring to fig. 5, a method 500 may correspond to any of the network devices in the scenario shown in fig. 1.
In one possible implementation manner, the network device performs message transmission based on a TCP/IP protocol and a BGP protocol, where the network device processes a message through two channels, where a first channel is used to process a keep-alive message, and a second channel is used to process a routing protocol update message, where the keep-alive message in the first channel is received and sent through a first flow carried by a first transport layer protocol, and the routing protocol update message in the second channel is received and sent through a second flow carried by a second transport layer protocol, where the keep-alive message and the routing protocol update message correspond to the same routing session, and priority of the first channel is higher.
In some possible implementations, the first network device has a main board and a standby board, and the main board of the network device is used for the messages received through the second stream, in the prior art, before sending the messages, all the messages need to be backed up through the standby board, and after the network device receives the messages, all the messages also need to be backed up through the standby board and then processed. Because all messages received and transmitted by the first network device are required to be backed up by the backup board, when the number of the messages is large, the messages are easy to be blocked, the timeliness of the received and transmitted keep-alive messages is affected, and the network devices which are not timely received and transmitted keep-alive messages are possibly disconnected, so that the service is interrupted. Referring to fig. 6 and 7, the processes of sending and receiving messages by the network device in the active-standby scenario are shown,
As shown in fig. 6, fig. 6 is a method 600 of master-slave transmission in a first network device, where the first network device sends a keep-alive message through a first flow carried by a first transport layer protocol via a first channel, backs up a routing protocol update message to a backup board (601) via a second channel, and then sends the keep-alive message through a second flow carried by a second transport layer protocol. It can be understood that the keep-alive message can be directly sent without backup by the backup board, and the sending efficiency of the keep-alive message can be improved. It should be noted that, after the first network device performs the active-standby switching, the first network device creates a keep-alive channel, where the keep-alive channel is used to transmit the keep-alive message.
As shown in fig. 7, fig. 7 is a method 700 of master-slave transmission in a second network device, where the second network device receives a keep-alive message through a first flow carried by a first transport layer protocol, and transmits the keep-alive message in the device through a first channel; the network device receives the routing protocol update message through a second stream carried by the second transport layer protocol, and the routing protocol update message is backed up to the backup board (701) through transmission in the device through a second channel. It can be understood that the keep-alive messages can be directly processed without backup by the backup board, and the processing efficiency of the keep-alive messages is improved. It should be noted that, after the second network device performs the active-standby switching, the second network device creates a keep-alive channel, where the keep-alive channel is used to transmit the keep-alive message.
Because the keep-alive messages can be transmitted without backup by the backup board, the processing efficiency of the keep-alive messages can be improved, and the network equipment which is caused by untimely sending and receiving of the keep-alive messages is reduced to disconnect BGP, thereby reducing BGP service interruption.
The message transmission method provided by the present application is described above, and the first network device and the second network device implementing the message transmission method are described below, referring to fig. 8, which is a schematic diagram of an embodiment of the first network device in the embodiment of the present application.
The first network device 800 may be used to perform the methods 310, 400, 500, 600 of the above embodiments. When the first network device 800 is used to perform the method 310 in the above embodiment, the first network device 800 corresponds to the first network device in the method 310. When the first network device 800 is used to perform the method 400 in the above embodiment, the first network device 800 corresponds to the network device 1 in the method 400, and the first network device 800 may be applied in the application scenario shown in fig. 1, for example, may be the network device 1 in the scenario shown in fig. 1. Comprising the following steps: a transceiver module 801, configured to send a first keep-alive message to a second network device through a first flow carried by a first transport layer protocol; the transceiver module 801 is further configured to send a first routing protocol update packet to the second network device through a second flow carried by a second transport layer protocol, where the first keep-alive packet and the first routing protocol update packet both correspond to a first routing session, and a priority of the first network device sending the first keep-alive packet through the first flow is higher than a priority of the first network device sending the first routing protocol update packet through the second flow.
In one possible implementation, the first network device sends the first keep-alive message with a higher priority than the first network device sends a routing protocol update message with the second flow.
In one possible implementation, the first transport layer protocol comprises a fast user datagram protocol, internet connection, QUIC, protocol and the second transport layer protocol comprises a QUIC protocol, a first flow identification of the first flow being different from a second flow identification of the second flow.
In one possible implementation, the first transport layer protocol comprises a multi-transport control protocol, muilti-TCP, or user datagram protocol, UDP, and the second transport layer protocol comprises muilti-TCP, or UDP, the first destination port number of the first stream being different from the second destination port number of the second stream.
In one possible implementation, the first routing protocol update message includes a BGP update message.
In one possible implementation, the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
In one possible implementation, the first network device includes a standby board; the first network device further includes: a backup module 802, configured to backup the first routing protocol update message in the backup board; the backup module 802 is further configured to not backup the first keep-alive message in the backup board by the first network device.
In one possible implementation, the first network device further includes: and a processing module 803, configured to create a keep-alive channel after the active-standby switching, where the keep-alive channel is used to transmit the first keep-alive message.
Referring to fig. 9, an embodiment of a second network device according to an embodiment of the application is shown.
The second network device 900 may be used to perform the method 320, the method 400, the method 500, or the method 700 in the above embodiments. When the second network device 900 is used to perform the method 320 in the above embodiment, the second network device 900 corresponds to the second network device in the method 320. When the second network device 900 is used to perform the method 400 in the above embodiment, the second network device 900 corresponds to the network device 2 or the network device 3 in the method 400, and the second network device 900 may be applied in the application scenario shown in fig. 1, for example, may be the network device 2a in the scenario shown in fig. 1. Comprising the following steps: a transceiver module 901, configured to receive a first keep-alive packet sent by a first network device through a first flow carried by a first transport layer protocol; the transceiver module 901 is further configured to receive a first routing protocol update packet sent by the first network device through a second flow carried by a second transport layer protocol, where the first keep-alive packet and the first routing protocol update packet both correspond to a first routing session, and a priority of the second network device for processing the first keep-alive packet received through the first flow is higher than a priority of the second network device for processing the first routing protocol update packet.
In one possible implementation, the second network device processes the first keep-alive messages received via the first flow with a higher priority than routing protocol update messages received via the second flow by the second network device.
In one possible implementation, the first transport layer protocol comprises a fast user datagram protocol, internet connection, QUIC, protocol and the second transport layer protocol comprises a QUIC protocol, a first flow identification of the first flow being different from a second flow identification of the second flow.
In one possible implementation, the first transport layer protocol comprises a multi-transport control protocol, muilti-TCP, or user datagram protocol, UDP, and the second transport layer protocol comprises muilti-TCP, or UDP, the first destination port number of the first stream being different from the second destination port number of the second stream.
In one possible implementation, the first routing protocol update message includes a BGP update message.
In one possible implementation, the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
In one possible implementation, the second network device includes a backup board; the second network device further includes: the backup module is used for backing up the first routing protocol updating message in the backup board; the backup module 902 is further configured to not backup the first keep-alive packet in the backup board.
In one possible implementation, the first network device further includes: the processing module 903 is configured to create a keep-alive channel after the active-standby switching, where the keep-alive channel is used to transmit the first keep-alive message.
It should be understood that the above division of the respective modules of the first network device or the second network device is merely a division of a logic function, and may be fully or partially integrated into a physical entity or may be physically separated. And these modules may all be implemented in software in the form of calls by the processing element; or can be realized in hardware; it is also possible that part of the modules are implemented in the form of software called by the processing element and part of the modules are implemented in the form of hardware. For example, the modules above may be one or more integrated circuits configured to implement the methods above, such as: one or more specific integrated circuits (application specific integrated circuit, ASIC), or one or more microprocessors (digital signal processor, DSP), or one or more field programmable gate arrays (field programmable gate array, FPGA), or the like. For another example, when a module above is implemented in the form of a processing element scheduler, the processing element may be a general purpose processor, such as a central processing unit (central processing unit, CPU) or other processor that may invoke the program. For another example, the modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
Referring to fig. 10, another embodiment of a network device according to an embodiment of the present application is shown;
the network device 1000 provided in this embodiment may be a switch, a router or other network devices, and the specific device configuration is not limited in the embodiment of the present application.
The network device 1000 may be used to perform the method 310, the method 320, the method 400, the method 500, the method 600 or the method 700 in the above embodiments. When the network device 1000 is used to perform the method 320 in the above embodiment, the network device 1000 corresponds to a second network device in the method 320. When the network device 1000 is used to perform the method 400 in the above embodiment, the network device 1000 corresponds to the network device 1, the network device 2 or the network device 3 in the method 400, and the network device 1000 may be applied in the application scenario shown in fig. 1, for example, may be the network device 2a in the scenario shown in fig. 1. A relatively large difference may be made due to configuration or performance, and may include one or more processors 1001 and memory 1002, with programs or data stored in the memory 1002.
The memory 1002 may be volatile or nonvolatile storage. The processor 1001 is optionally one or more central processing units (central processing unit, CPU), which may be a single-core CPU or a multi-core CPU. The processor 1001 may be in communication with the memory 1002, executing a series of instructions in the memory 1002 on the network device 1000.
The network device 1000 also includes one or more wired or wireless network interfaces 1003, such as an ethernet interface.
Optionally, although not shown in fig. 10, network device 1000 may also include one or more power sources; the input/output interface may be used to connect a display, a mouse, a keyboard, a touch screen device, a sensing device, or the like, and the input/output interface may be an optional component, may or may not be present, and is not limited herein.
The flow executed by the processor 1001 in the network device 1000 in this embodiment may refer to the method flow described in the foregoing method embodiment, and will not be described herein.
Reference is made to the description of relevant parts of the method embodiments for what is not described in detail with respect to fig. 8 to 10.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, which are not repeated herein.
In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied essentially or in part or all of the technical solution or in part in the form of a software product stored in a storage medium, including instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a read-only memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the application.

Claims (37)

1. A method for transmitting a message, comprising:
the first network equipment sends a first keep-alive message to the second network equipment through a first flow direction borne by a first transport layer protocol;
the first network device sends a first routing protocol update message to the second network device through a second flow carried by a second transport layer protocol, the first keep-alive message and the first routing protocol update message both correspond to a first routing session, and the priority of the first keep-alive message sent by the first network device through the first flow is higher than the priority of the first routing protocol update message sent by the first network device through the second flow.
2. The method of claim 1, wherein the first network device sends the first keep-alive message via the first stream with a higher priority than the first network device sends routing protocol update messages via the second stream.
3. Method according to claim 1 or 2, wherein said first transport layer protocol comprises a fast user datagram protocol internet connection, quit, protocol and said second transport layer protocol comprises a quit protocol, a first flow identity of said first flow being different from a second flow identity of said second flow.
4. A method according to claim 3, wherein the first transport layer protocol comprises a multi-transport control protocol, muilti-TCP, or a user datagram protocol, UDP, and the second transport layer protocol comprises muilti-TCP or UDP, a first destination port number of the first stream being different from a second destination port number of the second stream.
5. The method according to any one of claims 1 to 4, wherein the first routing protocol update message comprises a border gateway protocol BGP update message.
6. The method of claim 5, wherein the first keep-alive message corresponds to the same routing session as the first routing protocol update message, comprising:
The first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
7. The method according to any one of claims 1 to 6, wherein the first network device comprises a backup board;
the first network device backs up the first routing protocol updating message in the backup board;
and the first network equipment does not backup the first keep-alive message in the backup board.
8. The method according to any one of claims 1 to 7, wherein the first network device creates a keep-alive channel after the active-standby switching, and the keep-alive channel is used for transmitting the first keep-alive message.
9. A method for transmitting a message, comprising:
the second network equipment receives a first keep-alive message sent by the first network equipment through a first flow borne by a first transport layer protocol;
the second network device receives a first routing protocol updating message sent by the first network device through a second flow borne by a second transport layer protocol, the first keep-alive message and the first routing protocol updating message both correspond to a first routing session, and the priority of the second network device for processing the first keep-alive message received through the first flow is higher than the priority of the second network device for processing the first routing protocol updating message.
10. The method of claim 9, wherein the second network device processes the first keep-alive messages received via the first flow with a higher priority than routing protocol update messages received via the second flow by the second network device.
11. Method according to claim 9 or 10, wherein said first transport layer protocol comprises a fast user datagram protocol internet connection, quit, protocol and said second transport layer protocol comprises a quit protocol, a first flow identity of said first flow being different from a second flow identity of said second flow.
12. The method of claim 11, wherein the first transport layer protocol comprises a multi-transport control protocol, muilti-TCP, or user datagram protocol, UDP, and the second transport layer protocol comprises muilti-TCP, or UDP, a first destination port number of the first stream being different from a second destination port number of the second stream.
13. The method according to any one of claims 9 to 12, wherein the first routing protocol update message comprises a border gateway protocol BGP update message.
14. The method of claim 13, wherein the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
15. The method according to any of claims 9 to 14, wherein the second network device comprises a backup board;
the second network device backs up the first routing protocol updating message in the backup board;
and the second network equipment does not backup the first keep-alive message in the backup board.
16. The method according to any one of claims 9 to 15, wherein the second network device creates a keep-alive channel after the active-standby switching, and the keep-alive channel is used for transmitting the first keep-alive message.
17. A first network device, comprising:
the receiving and transmitting module is used for transmitting a first keep-alive message to the second network equipment through a first flow carried by the first transport layer protocol;
the transceiver module is further configured to send a first routing protocol update packet to the second network device through a second flow carried by a second transport layer protocol, where the first keep-alive packet and the first routing protocol update packet both correspond to a first routing session, and a priority of the first network device sending the first keep-alive packet through the first flow is higher than a priority of the first routing protocol update packet sent by the first network device through the second flow.
18. The first network device of claim 17, wherein the first network device sends the first keep-alive message via the first stream with a higher priority than the first network device sends a routing protocol update message via the second stream.
19. The first network device of claim 17 or 18, wherein the first transport layer protocol comprises a fast user datagram protocol, internet connection, quit, protocol and the second transport layer protocol comprises a quit protocol, a first flow identity of the first flow being different from a second flow identity of the second flow.
20. The first network device of claim 19, wherein the first transport layer protocol comprises a multi-transport control protocol, muili-TCP, or a user datagram protocol, UDP, and the second transport layer protocol comprises muili-TCP or UDP, a first destination port number of the first flow being different from a second destination port number of the second flow.
21. The first network device of any of claims 17 to 20, wherein the first routing protocol update message comprises a BGP update message.
22. The first network device of claim 21, wherein the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
23. The first network device of any of claims 17 to 22, wherein the first network device comprises a backup board;
the first network device further includes:
the backup module is used for backing up the first routing protocol updating message in the backup board;
the backup module is further configured to not backup the first keep-alive message in the backup board by the first network device.
24. The first network device of any one of claims 17 to 23, wherein the first network device further comprises:
and the processing module is used for creating a keep-alive channel after the main/standby switching, and the keep-alive channel is used for transmitting the first keep-alive message.
25. A second network device, comprising:
the receiving and transmitting module is used for receiving a first keep-alive message sent by the first network equipment through a first flow borne by the first transport layer protocol;
the transceiver module is further configured to receive a first routing protocol update packet sent by the first network device through a second flow carried by a second transport layer protocol, where the first keep-alive packet and the first routing protocol update packet both correspond to a first routing session, and a priority of the second network device for processing the first keep-alive packet received through the first flow is higher than a priority of the second network device for processing the first routing protocol update packet.
26. The second network device of claim 25, wherein the second network device processes the first keep-alive messages received via the first flow with a higher priority than routing protocol update messages received via the second flow by the second network device.
27. Second network device according to claim 25 or 26, wherein said first transport layer protocol comprises a fast user datagram protocol internet connection, quit protocol, said second transport layer protocol comprises quit protocol, a first flow identity of said first flow being different from a second flow identity of said second flow.
28. The second network device of claim 27, wherein the first transport layer protocol comprises a multiple transmission control protocol, muili-TCP, or user datagram protocol, UDP, the second transport layer protocol comprises muili-TCP or UDP, and the first destination port number of the first flow is different from the second destination port number of the second flow.
29. The second network device according to any of claims 25 to 28, wherein the first routing protocol update message comprises a BGP update message.
30. The second network device of claim 29, wherein the first keep-alive message corresponds to the same BGP session as the first BGP update protocol message.
31. The second network device according to any one of claims 25 to 30, wherein the second network device comprises a backup board;
the second network device further includes:
the backup module is used for backing up the first routing protocol updating message in the backup board;
and the backup module is further configured to not backup the first keep-alive message in the backup board.
32. The second network device according to any one of claims 25 to 31, wherein the first network device further comprises:
and the processing module is used for creating a keep-alive channel after the main/standby switching, and the keep-alive channel is used for transmitting the first keep-alive message.
33. A network device, comprising:
a memory having computer readable instructions stored therein;
a processor coupled to the memory, the computer readable instructions, when executed by the processor, cause the network device to implement the method of any one of claims 1 to 16.
34. A computer program product comprising computer readable instructions which, when run on a processor, implement the method of any one of claims 1 to 16.
35. A computer readable storage medium having instructions stored therein which, when executed on a processor, implement the method of any one of claims 1 to 16.
36. A communication system comprising a first network device and a second network device, wherein,
the first network device sends a first keep-alive message to the second network device through a first flow carried by a first transport layer protocol;
the second network device receives the first keep-alive message through the first flow;
the first network device sends a first routing protocol update message to the second network device through a second flow carried by a second transport layer protocol;
the second network device receives the first routing protocol updating message through the second flow, the first keep-alive message and the first routing protocol updating message both correspond to a first routing session, the priority of the first keep-alive message sent by the first network device through the first flow is higher than the priority of the first routing protocol updating message sent by the first network device through the second flow, and the priority of the first keep-alive message received by the second network device through the first flow is higher than the priority of the first routing protocol updating message processed by the second network device.
37. The communication system of claim 36, the first network device further configured to perform the method of any of claims 2 to 8, the second network device further configured to perform the method of any of claims 10 to 16.
CN202210988619.2A 2022-05-17 2022-08-17 Message transmission method, network equipment and communication system Pending CN117118912A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2023/094468 WO2023221968A1 (en) 2022-05-17 2023-05-16 Message transmission method, and network device and communication system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210540416 2022-05-17
CN2022105404167 2022-05-17

Publications (1)

Publication Number Publication Date
CN117118912A true CN117118912A (en) 2023-11-24

Family

ID=88807920

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210988619.2A Pending CN117118912A (en) 2022-05-17 2022-08-17 Message transmission method, network equipment and communication system

Country Status (2)

Country Link
CN (1) CN117118912A (en)
WO (1) WO2023221968A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491011B (en) * 2013-09-05 2017-02-08 杭州华三通信技术有限公司 BGP conversation changing method and device
US9491107B1 (en) * 2014-06-30 2016-11-08 Juniper Networks, Inc. Non-stop routing with internal session mirroring and adaptive application-level rate limiting
CN106656857B (en) * 2016-12-29 2020-06-09 杭州迪普科技股份有限公司 Message speed limiting method and device
CN110505176B9 (en) * 2018-05-16 2023-04-11 中兴通讯股份有限公司 Method and device for determining and sending message priority, and routing system

Also Published As

Publication number Publication date
WO2023221968A1 (en) 2023-11-23

Similar Documents

Publication Publication Date Title
CN1937569B (en) Message processing method and relative apparatus in local area network
CN101471885B (en) Virtual multicast routing for a cluster having state synchronization
US7801135B2 (en) Transport protocol connection synchronization
JP7292427B2 (en) Method, apparatus and system for communication between controllers in TSN
US8135771B2 (en) Digital signal processor clustering in integrated media-services gateways
Sidki et al. Fault tolerant mechanisms for SDN controllers
CN100466536C (en) Systems and methods for managing protocol network failures in a clustered system
JP4065411B2 (en) Managing access to streams handled on the replication switch
KR102271639B1 (en) Method and device for modular orientation of AVB streams
EP2553870B1 (en) An operations, administrations and management proxy and a method for handling operations, administrations and management messages
JP2022532731A (en) Avoiding congestion in slice-based networks
Thean et al. Container-based MQTT broker cluster for edge computing
US8462952B2 (en) Synchronizing management signaling in a network
US9065678B2 (en) System and method for pinning virtual machine adapters to physical adapters in a network environment
CN106357542A (en) Method for providing multicast service and software defined network controller
RU2687215C1 (en) Method and device for transmitting information on openflow switch functions
CN110601989A (en) Network traffic balancing method and device
CN117118912A (en) Message transmission method, network equipment and communication system
JP2006165879A (en) Call control system, call control method and call control program
CN103414646B (en) A kind of multicast service negotiation method and device
CN113452543B (en) Detection of multi-host misconfiguration
Shih et al. Service recovery for large scale distributed publish and subscription services for cyber-physical systems and disaster management
CN114363342A (en) Fault convergence method and related device and load balancing cluster
CN105515807A (en) Up cfm message processing method and system and network data exchange device
JP2020129783A (en) Router system and packet transmission determination method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication