WO2020182177A1 - 路由信息管理方法、装置及计算机存储介质 - Google Patents

路由信息管理方法、装置及计算机存储介质 Download PDF

Info

Publication number
WO2020182177A1
WO2020182177A1 PCT/CN2020/078916 CN2020078916W WO2020182177A1 WO 2020182177 A1 WO2020182177 A1 WO 2020182177A1 CN 2020078916 W CN2020078916 W CN 2020078916W WO 2020182177 A1 WO2020182177 A1 WO 2020182177A1
Authority
WO
WIPO (PCT)
Prior art keywords
generation unit
tcp
route
route generation
main
Prior art date
Application number
PCT/CN2020/078916
Other languages
English (en)
French (fr)
Inventor
徐海军
张旭东
姜戎
郭锋
熊怡
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP20769589.1A priority Critical patent/EP3917094A4/en
Publication of WO2020182177A1 publication Critical patent/WO2020182177A1/zh
Priority to US17/471,668 priority patent/US20220006720A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/247Multipath using M:N active or standby paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • 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/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]

Definitions

  • This application relates to the field of communication technology, and in particular to routing information management methods, devices and computer storage media.
  • the Border Gateway Protocol (BGP) Non-Stop Routing (NSR) technology can ensure that BGP neighbors and BGP routing are not interrupted when equipment fails, so as to improve system reliability.
  • the system reliability can be improved through the hardware level or the software level.
  • the traditional system architecture can deploy two route generation units.
  • the two route generation units include a main route generation unit and a backup route generation unit.
  • the backup route generation unit can Take over the task of the main route generation unit.
  • the main route generation unit senses that the standby route generation unit is online, the main route generation unit needs to actively synchronize the routing information to the standby route generation unit.
  • the synchronization period will occupy the main route for a long time.
  • the system resources of the route generation unit affect the performance of the main route generation unit in processing real-time messages. Based on this, the main route generating unit and the standby route generating unit are coupled with each other, and the software complexity is relatively high.
  • the embodiments of the present invention provide a route information management method, device, and computer storage medium, which can decouple the main route generation unit and the backup route generation unit, reduce software complexity, and improve the performance of the main route generation unit.
  • an embodiment of the present application provides a routing information management method, wherein the main routing generating unit generates routing information related to TCP packets, and sends the routing information and the first identifier of the routing information to the database unit Information, where the first identification information is determined based on the foregoing TCP message.
  • the main route generation unit sends the routing information and the first identification information of the route information to the database unit to realize the synchronization of the routing information of the main route generation unit and the backup route generation unit, without the main route generation unit directly synchronizing the routes.
  • the information is sent to the backup route generation unit, which can decouple the main route generation unit and the backup route generation unit, reduce software complexity, and improve the performance of the main route generation unit.
  • the main TCP transceiver unit may synchronize the foregoing TCP packet with at least one backup route generation unit of the main route generation unit.
  • the main route generating unit sends the TCP message to the standby route generating unit through the main TCP transceiver unit, without the main route generating unit sending the TCP message directly to the standby route generating unit, and the main route generating unit and The backup route generation unit is decoupled to reduce software complexity and improve the performance of the main route generation unit.
  • the first identification information may be the end sequence number of the TCP packet.
  • the first identification information may be a timestamp corresponding to the TCP packet.
  • the routing information is generated by the main route generating unit based on the TCP message.
  • the TCP message includes part or all of the routing information.
  • an embodiment of the present application discloses a routing information management method, characterized in that the backup routing generating unit receives routing information and first identification information of the routing information from the database unit, and receives TCP packets from the main TCP transceiver unit. After determining that the routing information matches the TCP message according to the first identification information and the TCP message, the backup route generating unit may generate new routing information based on the routing information and the TCP message.
  • the backup route generating unit after determining that the routing information matches the TCP message according to the first identification information and the TCP message, the backup route generating unit generates new routing information based on the routing information and the TCP message without continuously receiving routes from the database unit Information, can decouple the main route generation unit and the backup route generation unit, reduce software complexity, and improve the performance of the main route generation unit.
  • the backup route generating unit may stop receiving the routing information from the database unit.
  • the way that the backup route generation unit determines that the routing information matches the TCP packet according to the first identification information and the TCP packet may be: when the first identification information is greater than or equal to the first identification information carried in the TCP packet Second, when identifying information, the backup route generating unit determines that the route information matches the TCP packet.
  • the main route generation unit does not need to perceive the backup route generation unit, and the backup route generation unit can determine whether the delimitation is completed, and does not need to occupy the system resources of the main route generation unit, which can improve the performance of the main route generation unit and reduce software complexity Sex.
  • the backup route generating unit may also calculate a first difference set between the routing information and the new routing information, and a second difference set between the new routing information and the routing information, in the first
  • the backup route generation unit may send a deletion instruction to the routing node, the deletion instruction carries the first difference set, and the deletion instruction is used to instruct the routing node to delete the first difference set.
  • the backup route generation unit calculates the first difference set between the routing information and the new routing information, and the second difference set between the new routing information and the routing information, after the first difference
  • the backup route generation unit may send an update instruction to the routing node.
  • the update instruction carries the first difference set and the second difference set.
  • the update instruction is used to instruct the routing node to set the first difference set. Update to the second difference set.
  • the backup route generating unit may calculate the first difference set between the routing information and the new routing information, and the second difference set between the new routing information and the When the difference set is an empty set and the second difference set is not an empty set, the backup route generation unit sends an adding instruction to the routing node, the adding instruction carries the second difference set, and the adding instruction is used to instruct the routing node to add the second difference set.
  • the difference set can be calculated to prevent the backup route generation unit from being elected as the main route generation unit and send to the routing node. If the routing information is wrong, BGP routing can be realized without interruption.
  • an embodiment of the present application provides a communication device, the device includes a main route generating unit, the main route generating unit includes a routing information generating module and a sending module, the routing information generating module and the sending module are used to implement the first aspect The routing information management method.
  • an embodiment of the present application provides a communication device.
  • the device includes a backup route generation unit.
  • the backup route generation unit includes a routing information receiving module, a message receiving module, a determining module, and a routing information generating module.
  • the module, the message receiving module, the determining module, and the routing information generating module are used to implement the routing information management method described in the second aspect.
  • an embodiment of the present application provides a computer storage medium, wherein the computer storage medium stores a computer program or instruction, and when the program or instruction is executed by a processor, the processor executes The routing information management method as described in the first aspect.
  • an embodiment of the present application provides a computer storage medium, wherein the computer storage medium stores a computer program or instruction, and when the program or instruction is executed by a processor, the processor executes The routing information management method as described in the second aspect.
  • an embodiment of the present application provides a main route generation unit, including a processor, the processor is coupled with a memory, and is characterized in that:
  • the memory is used to store instructions
  • the processor is configured to execute instructions in the memory, so that the main route generation unit executes the route information management method described in the first aspect.
  • an embodiment of the present application provides a backup route generation unit, including a processor, the processor is coupled with a memory, and is characterized in that:
  • the memory is used to store instructions
  • the processor is configured to execute instructions in the memory, so that the backup route generation unit executes the route information management method described in the second aspect.
  • an embodiment of the present application provides a chip system, wherein the chip system includes a processor and an interface circuit, and the interface circuit is coupled with the processor,
  • the processor is configured to execute computer programs or instructions to implement the routing information management method as described in the first aspect
  • the interface circuit is used to communicate with other modules outside the chip system.
  • an embodiment of the present application provides a chip system, wherein the chip system includes a processor and an interface circuit, and the interface circuit is coupled with the processor,
  • the processor is configured to execute computer programs or instructions to implement the routing information management method as described in the second aspect
  • the interface circuit is used to communicate with other modules outside the chip system.
  • Figure 1 is a schematic diagram of the architecture of a PCT message management system disclosed in an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a PCT message management method disclosed in an embodiment of the present application
  • FIG. 3 is a schematic flowchart of another PCT message management method disclosed in an embodiment of the application.
  • FIG. 4 is a schematic structural diagram of a routing information management system disclosed in an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of a routing information management method disclosed in an embodiment of the present application.
  • Fig. 6 is a schematic structural diagram of another routing information management system disclosed in an embodiment of the present application.
  • Fig. 7 is a schematic structural diagram of another routing information management system disclosed in an embodiment of the present application.
  • FIG. 8 is a schematic flowchart of another routing information management method disclosed in an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of another routing information management system disclosed in an embodiment of the present application.
  • FIG. 10 is a schematic flowchart of another routing information management method disclosed in an embodiment of the present application.
  • 11A is a schematic diagram of a state of a first difference set and a second difference set disclosed in an embodiment of the present application;
  • 11B is a schematic diagram of another state of the first difference set and the second difference set disclosed in an embodiment of the present application.
  • 11C is a schematic diagram of another state of the first difference set and the second difference set disclosed in an embodiment of the present application.
  • 11D is a schematic diagram of another state of the first difference set and the second difference set disclosed in an embodiment of the present application.
  • Figure 12 is a schematic structural diagram of a routing information management system disclosed in an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of a main route generating unit disclosed in an embodiment of the present application.
  • FIG. 14 is a schematic structural diagram of a backup route generating unit disclosed in an embodiment of the present application.
  • FIG. 15 is a schematic diagram of a message format of a TCP message disclosed in an embodiment of the present application.
  • Fig. 1 is a schematic structural diagram of a PCT message management system disclosed in an embodiment of the present application.
  • the PCT message management system may include a main route generation unit and at least one backup route generation unit corresponding to the main route generation unit.
  • the main route generating unit and the at least one backup route generating unit may run in different virtual machines of the same communication device, or may run in different communication devices.
  • Each route generation unit (for example, the main route generation unit or the backup route generation unit) can include an application program (APP) and a transmission control protocol (Transmission Control Protocol, TCP) module.
  • APP application program
  • TCP Transmission Control Protocol
  • the TCP module is used to establish a TCP session with the routing node .
  • the main route generation unit corresponds to the Packet Fault-tolerance Service (PFS) 1 (for example, the first TCP transceiver unit), and the PFS1 is independent of the main route generation unit.
  • the backup route generation unit corresponds to PFS2 (for example, the second TCP transceiver unit), and PFS2 is independent of the backup route generation unit.
  • PFS for example, PFS1 or PFS2
  • TCP FTI TCP Fault-tolerance Infrastructure
  • the PFS and the corresponding route generation unit can run in different virtual machines of the same communication device, or in the same virtual machine of the same communication device, or in different communication devices, which are not specifically limited by the embodiments of this application. .
  • the one or more communication devices running the main route generating unit, one or more backup route units, and at least two PFS include a processor and a memory storing computer readable instructions for implementing the route unit and the PFS.
  • One or more processors can execute the computer-readable instructions to implement the routing unit and the PFS.
  • multiple route generation units can be deployed in the PCT message management system, and the leader election service (Leader Election Service, LES) can elect one route generation unit as the leader among the multiple route generation units deployed above.
  • the route generation unit among the multiple route generation units deployed above, other than the main route generation unit serve as the backup route generation unit.
  • the main route generation unit establishes BGP neighbors with routing nodes and sends and receives TCP packets.
  • the TCP packets may include the first TCP packet (that is, the inbound packet) or the second TCP packet.
  • One or more of messages that is, outgoing messages).
  • the main route generating unit receives the first TCP packet from the routing node, and the main route generating unit sends the second TCP packet to the routing node.
  • the LES may also elect a PFS from the PFS corresponding to the multiple route generation units deployed above as the primary PFS (for example, the primary TCP transceiver unit).
  • Figure 1 takes the primary PFS as the PFS1 as an example.
  • the PFS1 can synchronize TCP packets to the at least one backup route generation unit, that is, the primary PFS realizes the consistency of the packets of the multiple route generation units deployed above.
  • the main route generation unit can establish a TCP session with the routing node through a three-way handshake, and the standby route generation unit can synchronously obtain the TCP packets sent and received by the main route generation unit through the main PFS.
  • the primary PFS is PFS1
  • the TCP FTI contained in PFS1 is the primary TCP FTI.
  • the main TCP FTI receives incoming packets from the routing node, and the main TCP FTI sends incoming packets to the main route generating unit and the standby route generating unit.
  • the primary TCP FTI receives the outbound packets from the primary route generation unit, and the primary TCP FTI sends the outbound packets to The main route generating unit and the standby route generating unit.
  • the number of route generation units deployed may be greater than the required number of reliable route generation units.
  • the number of route generation units deployed and the required number of reliable route generation units may be in a proportional relationship, and the difference between the number of deployed route generation units and the required number of reliable route generation units is greater than a preset value.
  • n+1 route generation units are reliable, that is, it is necessary to ensure that at least n backup route generation units are reliable, and m*n+1 route generation units can be deployed, m*n
  • the +1 route generation unit includes a main route generation unit and m*n backup route generation units.
  • the m*n backup route generation units synchronize the messages sent and received by the main route generation unit through the main TCP transceiver unit.
  • n is a positive integer
  • m is a positive number
  • the primary PFS is PFS1
  • the TCP FTI contained in PFS1 is the primary TCP FTI
  • the primary TCP FTI receives the inbound packets from the routing node, and the primary TCP FTI will enter
  • the direction message is sent to the backup route generation unit, and after each backup route generation unit receives the incoming message from the main TCP FTI, the backup route generation unit sends the first confirmation message to the main TCP FTI.
  • the main route generation unit sends a second confirmation message to the main TCP FTI.
  • the primary TCP FTI After the primary TCP FTI receives the first confirmation message from all the backup route generation units, it sends the second confirmation message to the routing node.
  • the primary TCP FTI may perform retransmission, for example, resend incoming packets to the backup route generation unit.
  • the second confirmation message from the autonomous route generation unit is sent to the routing node, and the primary TCP FTI does not receive the second confirmation message from any backup route generation unit.
  • the first confirmation message of the route generation unit is retransmitted, it can realize that the incoming message maintains strong consistency among the route generation units.
  • the primary TCP FTI contained in PFS1 is the primary TCP FTI
  • the primary TCP FTI receives the outbound packets from the primary route generation unit
  • the primary TCP FTI sends the outbound packets to The backup route generation unit.
  • the backup route generation unit may send a third confirmation message to the main TCP FTI.
  • the primary TCP FTI may send outbound packets to the routing node.
  • the primary TCP FTI may retransmit, for example, resend the outbound packet to the backup route generation unit.
  • the main TCP FTI sends outbound packets to the routing node after receiving the third confirmation message from all the backup route generation units, and the main TCP FTI does not receive the third confirmation message from any backup route generation unit. 3. Retransmission is performed when the message is confirmed, so that the outgoing message can maintain strong consistency among the routing generation units.
  • the number of route generation units that maintain strong consistency may be greater than or equal to the first preset number threshold.
  • the first preset number threshold may be the required number of reliable route generating units.
  • n is a positive integer.
  • the above five route generation units include one main route generation unit and four backup route generation units. In order to achieve two-point fault tolerance, it is necessary to ensure that at least three Each route generation unit is reliable.
  • three backup route generation units can be selected from the four backup route generation units to synchronize the messages sent and received by the main route generation unit.
  • the embodiment of the present application controls at least n+1 route generation units to maintain strong consistency, and there is no need to control all deployed route generation units to maintain strong consistency. In the case of achieving n-point fault tolerance, it can reduce the maintenance of strong consistency. The overhead.
  • the main route generation unit synchronizes the TCP messages sent and received by the main route generation unit to the backup route generation unit. Because the main route generation unit needs to synchronize the TCP messages with a large amount of data, During the text synchronization period, the system resources of the main route generation unit will be occupied for a long time, which will affect the performance of the main route generation unit in processing real-time messages. In addition, if the message synchronization process of the main route generation unit fails, the TCP message sent by the main route generation unit to the backup route generation unit will be inconsistent with the TCP message sent and received by the main route generation unit, which reduces the reliability of message synchronization. .
  • the TCP packets sent by the primary route generation unit will be sent to the backup route generation unit and routing node through the primary PFS; the packets sent by the routing node will be sent to the backup route generation unit and the primary route through the primary PFS.
  • the route generation unit ensures that incoming packets and outgoing packets maintain strong consistency between each route generation unit.
  • the embodiment of the present application does not need to occupy the system resources of the main route generation unit for message synchronization, and can improve the performance of the main route generation unit.
  • the packets sent by the primary PFS to the primary route generating unit and the standby route generating unit are always consistent, which improves the reliability of packet synchronization.
  • the backup route generation unit Since incoming packets and outgoing packets maintain strong consistency among the routing generation units, if the main route generation unit fails, the backup route generation unit that is in strong consistency synchronization can replace the main route generation unit to achieve BGP neighbor failure. Interruption, BGP routing is not interrupted. Due to the decoupling of each routing generation unit, the programming complexity is low, the number of backup routing generation units can be expanded, multi-point fault-tolerant protection is supported, and higher reliability is provided.
  • Figure 2 provides a schematic flow diagram of a PCT message management method, which includes but is not limited to the following steps:
  • Step S201 The master TCP FTI receives the first TCP message from the routing node.
  • Step S202 The main TCP FTI sends the first TCP message to at least one backup route generating unit.
  • the backup route generating unit for receiving the first TCP message may be a part of the backup route generating units or all the backup route generating units among the multiple deployed route generating units.
  • the backup route generating unit for receiving the first TCP packet may be greater than or equal to the first preset number threshold, and the first preset number threshold may be the difference of the required number of reliable route generating units minus one.
  • Step S203 When each backup route generating unit receives the first TCP message from the main TCP FTI, it sends a first confirmation message to the main TCP FTI.
  • Step S204 The main TCP FTI sends the first TCP message to the main route generating unit.
  • the main TCP FTI may send the first TCP packet to the main route generation unit after sending the first TCP packet to the backup route generation unit;
  • the main TCP FTI can send the first TCP packet to the main route generation unit and the backup route generation unit at the same time, which is not specifically limited by the embodiment of the present application.
  • Step S205 When receiving the first TCP message from the main TCP FTI, the main route generation unit sends a second confirmation message to the main TCP FTI.
  • Step S206 After receiving the first confirmation message from all backup route generating units, the primary TCP FTI sends a second confirmation message to the routing node.
  • all the backup route generating units refer to all the backup route generating units used to receive the first TCP message.
  • the PCT message management system includes a main route generation unit and n backup route generation units. If you need to ensure that at least three route generation units are reliable, you can configure k route generation units to maintain strong consistency, 2 ⁇ k ⁇ n+ 1. Both k and n are positive integers.
  • the LES can select k-1 backup route generating units from n backup route generating units.
  • the primary TCP FTI After the primary TCP FTI receives the first TCP message from the routing node, it can send the first TCP message to the k-1 backup route generation units.
  • Each backup route generation unit receives the first TCP message from the autonomous TCP FTI. When a TCP message is sent, the first confirmation message is sent to the main TCP FTI, and the main TCP FTI sends the second confirmation message to the routing node after receiving the first confirmation message from the k-1 backup route generating units.
  • the primary TCP FTI may resend the first TCP packet to the backup.
  • the route generation unit in the embodiment of the present application, can ensure that the first TCP packet is successfully transmitted to each standby route generation unit, thereby improving the reliability of packet transmission.
  • the master TCP FTI synchronizes the first TCP message to the backup route generation unit. After receiving the first confirmation messages from all backup route generation units, the master TCP FTI will send the second confirmation from the autonomous route generation unit. The message is sent to the routing node, so that the first TCP message can maintain strong consistency among the routing generating units.
  • Figure 3 provides a schematic flow diagram of another PCT message management method, which includes but is not limited to the following steps:
  • Step S301 The main TCP FTI receives the second TCP message from the main route generating unit.
  • Step S302 The main TCP FTI sends the second TCP message to at least one backup route generating unit.
  • the backup route generating unit for receiving the second TCP packet may be a part of the backup route generating units or all the backup route generating units among the multiple deployed route generating units.
  • the backup route generating unit for receiving the second TCP packet may be greater than or equal to the first preset number threshold, and the first preset number threshold may be the difference of the required number of reliable route generating units minus one.
  • Step S303 When receiving the second TCP message from the main TCP FTI, the standby route generation unit sends a third confirmation message to the main TCP FTI.
  • Step S304 After receiving the third confirmation message from all the backup route generating units, the main TCP FTI sends the second TCP message to the routing node.
  • all the backup route generating units refer to all the backup route generating units used to receive the second TCP message.
  • the PCT message management system includes a main route generation unit and n backup route generation units. If you need to ensure that at least three route generation units are reliable, you can configure k route generation units to maintain strong consistency, 2 ⁇ k ⁇ n+ 1. Both k and n are positive integers.
  • the LES can select k-1 backup route generating units from n backup route generating units.
  • the primary TCP FTI After the primary TCP FTI receives the second TCP message from the autonomous route generation unit, it can send the second TCP message to the k-1 backup route generation units, and each backup route generation unit receives the second TCP message from the autonomous TCP FTI. For the second TCP message, send the third confirmation message to the main TCP FTI, and the main TCP FTI sends the second TCP message to the routing node after receiving the third confirmation message from the k-1 backup route generating units mentioned above .
  • the primary TCP FTI may resend the second TCP packet to the backup.
  • the route generation unit in this embodiment of the application, can ensure that the second TCP packet is successfully transmitted to each standby route generation unit, thereby improving the reliability of packet transmission.
  • the main TCP FTI synchronizes the second TCP packet from the autonomous route generating unit to the standby route generating unit. After receiving the third confirmation message from all standby route generating units, the main TCP FTI sends the second TCP The message is sent to the routing node, so that the second TCP message can maintain strong consistency among the routing generating units.
  • FIG. 4 is a schematic diagram of the architecture of another routing information management system disclosed in an embodiment of the present application.
  • the routing information management system may include a main route generation unit, at least one backup route generation unit, and a data fault-tolerance service (Data Fault-tolerance Service, DFS) (e.g. database unit).
  • DFS data fault-tolerance Service
  • each route generation unit (for example, a main route generation unit or a backup route generation unit) may include a BGP module and a DFS software development kit (Software Development Kit, SDK) module.
  • the BGP module included in the main route generation unit is BGP1
  • the BGP module included in the backup route generating unit is BGP2.
  • the BGP module is used to generate data.
  • the data can include one of BGP neighbor information, routes received from neighbors (Route information base Input, RibIn), routes sent to neighbors (Route information base Output, RibOut), or routing information.
  • BGP neighbor information can include neighbor negotiation results or neighbor status.
  • the DFS SDK module is used to transfer data with DFS.
  • DFS can include message broker (Message Broker) and database (Database, DB), and supports generation by one producer and consumption by multiple consumers.
  • the main route generation unit calls the DFS SDK module in the main route generation unit to write the data generated by the BGP module in the main route generation unit into the DB.
  • the Message Broker receives the data from the DFS SDK module in the autonomous route generation unit, it can send the data to the standby route generation unit through the DFS SDK module in the standby route generation unit.
  • the backup route generation unit can synchronize the data generated by the main route generation unit through DFS: After the newly online backup route generation unit sends registration information to DFS, DFS can determine that the backup route generation unit is new For consumers, the DFS can send the historical data stored in the DB to the backup route generation unit, and the DFS can also send the real-time data generated by the main route generation unit to the backup route generation unit. For the online backup route generating unit, DFS can send the real-time data generated by the main route generating unit to the backup route generating unit.
  • the main route generation unit parses the TCP message to obtain routing information.
  • the main route generation unit decapsulates the TCP message to obtain the data, and then the main route generation unit analyzes the TCP message based on a predefined format. The data is analyzed to obtain routing information.
  • the TCP message consists of TCP header and data.
  • the TCP header includes source port, destination port, sequence number, confirmation sequence number, data offset, reservation, control bit, Window, checksum, emergency pointer, options and filling.
  • Control bits can include emergency pointer flags (Urget, URG), confirmation sequence number flags (Acknowledgement, ACK), push flags (Push, PSH), reset connection flags (Password, PST), synchronization sequence number flags (Synchronous, SYN), and finish Logo (Finish, FIN).
  • the main route generating unit may decapsulate the TCP message to obtain the data contained in the TCP message, and then parse the data based on a predefined format to obtain routing information.
  • the backup route generation unit can read the neighbor status in real time.
  • the routing information management system only the main route generating unit and the routing node establish routing neighbors.
  • the neighbor status is online; when the routing neighbor between the main route generating unit and the routing node is established When disconnected, the neighbor status is offline.
  • the standby route generating unit can determine whether the route neighbor between the main route generating unit and the routing node is disconnected through the neighbor status.
  • the main route generation unit needs to sense the newly online backup route generation unit, and the main route generation unit also needs to back up the historical data generated by the main route generation unit. After sensing the newly online backup route generation unit, The main route generation unit needs to send historical data to the backup route generation unit, that is, the main route generation unit and the backup route generation unit are coupled. In addition, due to the large amount of historical data, the system resources of the main route generation unit will be occupied for a long time during data transmission, which will affect the performance of the main route generation unit to generate data in real time.
  • the data generated by the main route generation unit is cached through DFS, and the data generated by the main route generation unit is sent to the backup route generation unit through DFS, so as to realize the communication between the main route generation unit and the backup route generation unit.
  • Data synchronization the main route generation unit does not need to sense the backup route generation unit, and the main route generation unit and the backup route generation unit are decoupled.
  • Figure 5 provides a schematic flow diagram of another routing information management method, which includes but is not limited to the following steps:
  • Step S501 The main route generating unit generates first data.
  • the main route generating unit may parse the first TCP message from the routing node to generate the first data.
  • the main route generating unit may analyze the second TCP message sent to the routing node to generate the first data.
  • Step S502 The main route generating unit sends the first data to the DFS.
  • Step S503 The DFS stores the first data in the DB.
  • Step S504 The backup route generating unit sends registration information to the DFS.
  • Step S505 The DFS sends the first data stored in the DB to the backup route generating unit.
  • the first data stored in the DB includes the first route, the second route, and the third route.
  • the DFS can send the first route, the second route, and the third route in the DB to the backup route. Route generation unit.
  • Step S506 The DFS receives the second data generated by the main route generating unit.
  • Step S507 The DFS sends the second data to the backup route generating unit.
  • DFS when DFS sends the first route, second route, and third route in the DB to the backup route generation unit, the main route generation unit generates the second data in real time, and the second data is the fourth route, then DFS can The fourth route is sent to the standby route generating unit.
  • the data generated by the main route generation unit is sent to the backup route generation unit through DFS, so as to realize data synchronization between the main route generation unit and the backup route generation unit, and the main route generation unit does not need to perceive the backup route generation unit.
  • FIG. 6 is a schematic structural diagram of another routing information management system disclosed in an embodiment of the present application.
  • the routing information management system may include a main route generation unit, at least one backup route generation unit, and PFS and DFS corresponding to each route generation unit.
  • each route generation unit (for example, a main route generation unit or a backup route generation unit) may include a BGP module and a socket module.
  • the BGP module included in the main route generation unit is BGP1
  • the BGP module included in the backup route generation unit is BGP2.
  • the BGP module is used to generate data.
  • Different route generation units correspond to different PFS, and each PFS can include TCP FTI.
  • the LES can elect a PFS from the PFS corresponding to the multiple route generation units deployed in the routing information management system as the primary PFS, and the primary PFS can synchronize the TCP packets sent and received by the primary route generation unit to the standby route generation unit.
  • the main route generating unit as the DFS generator, writes the data generated by BGP1 into the DB.
  • the Message Broker After the Message Broker receives the data from the DFS SDK module in the autonomous route generation unit, it can send the data to the standby route generation unit through the DFS SDK module in the standby route generation unit.
  • the backup route generation unit can synchronize the data generated by the main route generation unit through DFS: After the newly online backup route generation unit registers with DFS, DFS can determine that the backup route generation unit is a new consumer , The DFS can send the historical data stored in the DB to the backup route generation unit, and the DFS can also send the real-time data generated by the main route generation unit to the backup route generation unit through the Message Broker.
  • the real-time protection state can be achieved through delimitation.
  • the LES can elect a route generation unit as the main route generation unit among the backup route generation units that reach the real-time protection state, establish routing neighbors with routing nodes, and send and receive BGP routes, so that BGP neighbors are not interrupted.
  • the routing is not interrupted.
  • delimitation refers to the seamless connection between the data obtained from the DFS by the backup route generation unit and the TCP packets from the primary PFS received by the backup route generation unit, ensuring that the primary route generation unit and the backup route generation unit maintain final consistency .
  • the main route generating unit receives an inbound packet from a routing node, and BGP1 parses the inbound packet to generate multiple RibIns.
  • the main route generation unit writes RibIn into the DFS in real time in the order of analysis.
  • DFS writes a Dummy route after the last RibIn of the inbound packet.
  • the Dummy route carries the TCP end sequence number corresponding to the inbound packet, and represents the boundary of the inbound packet.
  • One incoming packet corresponds to a TCP end sequence number, and different incoming packets correspond to different TCP end sequence numbers.
  • the dummy route is ESN k or ESN k-1 in the figure, and the route between ESN k and ESN k-1 corresponds to an inbound packet.
  • RibIn may include r k-1,1 , r k-1 , 2 ,..., r k-1,m , r k,1 ,..., r k,m .
  • the RibIn produced after a complete inbound packet parsing includes r k-1,1 , r k-1,2 ,..., r k-1,m , the main route generation unit can be in r k-1,m Then write a Dummy route, which carries ESN k-1 .
  • the RibIn produced after the next complete inbound packet parsing includes r k,1 , r k,2 ,..., r k,m
  • the main route generation unit can write a dummy route after r k,m
  • the Dummy route carries ESN k .
  • DFS stores the RibIn carrying the dummy route in the DB.
  • DFS can send the historical data stored in the DB to the backup route generation unit.
  • the historical data includes RibIn and Dummy routes.
  • the backup route generating unit can receive incoming packets from the main TCP FTI in real time. After the standby route generation unit reads the Dummy route, it can compare the TCP end sequence number in the Dummy route with the smallest TCP end sequence number in the incoming packet received from the main TCP FTI. When the TCP in the Dummy route When the end sequence number is greater than or equal to the above minimum TCP end sequence number, it can be determined that the inbound direction delimitation is completed. Before the delimitation is completed, the backup route generation unit can only buffer the received incoming packets from the main TCP FTI, and cannot parse and process the incoming packets. After the delimitation is completed, the backup route generation unit no longer reads data from the DFS, but receives an inbound packet from the main TCP FTI, analyzes the inbound packet, and generates RibIn.
  • the main route generation unit when it sends an outbound packet to the main TCP FTI, it can carry a timestamp T.
  • BGP1 parses the outbound packet to generate multiple RibOuts.
  • the main route generation unit writes RibOut to DFS in real time in the order of analysis.
  • the DFS writes a Dummy route after the last RibOut of the outbound packet.
  • the Dummy route carries the timestamp T corresponding to the outbound packet and represents the boundary of the outbound packet.
  • DFS stores the RibOut carrying the dummy route in the DB.
  • RibOut may include r k-1,1 , r k-1 ,..., r k-1,m , r k,1 ,..., r k,m .
  • the RibOut produced after parsing a complete outbound packet includes r k-1,1 , r k-1,2 ,..., r k-1,m
  • the main route generation unit can be in r k-1,m
  • write a Dummy route which carries T k-1 .
  • the RibOut produced after the next complete inbound packet parsing includes r k,1 , r k,2 ,..., r k,m
  • the main route generation unit can write a dummy route after r k,m
  • the Dummy route carries T k .
  • DFS can send the historical data stored in the DB to the backup route generation unit.
  • the historical data includes RibOut and Dummy routes.
  • the standby route generating unit reads the Dummy route, it indicates that a complete outbound packet has been read.
  • the backup route generating unit can receive outbound packets from the main TCP FTI in real time.
  • the backup route generation unit After the backup route generation unit reads the dummy route, it can compare the timestamp in the dummy route with the smallest timestamp in the received incoming packet from the main TCP FTI. When the timestamp in the dummy route is greater than or equal to When the above minimum time stamp is used, it can be determined that the delimitation of the outbound direction is completed. Before the delimitation is completed, the backup route generation unit can only buffer the received outbound packets from the main TCP FTI, and cannot analyze and process the outbound packets. After the delimitation is completed, the backup route generation unit no longer reads data from the DFS, but receives the outbound packet from the main TCP FTI, parses the outbound packet, and generates RibOut.
  • the backup route generation unit can only buffer the received outbound packet from the main TCP FTI, and cannot analyze and process the outbound packet. At this time, if BGP neighbors have a large number of route flaps, a large number of TCP packets will be generated. In order to avoid a large number of messages buffered by the backup route generation unit, which will occupy a large amount of memory, the maximum number of messages buffered by the backup route generation unit can be set. When the number of messages buffered by the backup route generating unit is greater than the second preset number threshold, message coverage may be performed, that is, the message with the longest storage time is deleted.
  • the delimitation time is long. In extreme cases, the oscillation frequency exceeds a certain speed and may never be able to catch up.
  • the reason for the need to catch up multiple times is: a TCP message is synchronized to the main route generation unit and the backup route generation unit through PFS, the backup route generation unit buffers the message, the main route generation unit parses the message to generate a route, and writes the route Into the DFS; the backup route generation unit reads the route written by the main route generation unit from the DFS. It can be seen that the backup route generation unit reads the route written by the main route generation unit from the DFS to the route written by the main route generation unit.
  • the text flow is much longer. If the BGP neighbor route oscillates quickly, a large number of TCP packets will be generated, causing the number of packets buffered by the backup route generating unit to be greater than the second preset number threshold, and the packets with the longest storage time need to be deleted, resulting in backup
  • the Dummy route read from the DFS by the route generation unit is less than the minimum TCP end sequence number or timestamp in the cache. This time the catch-up fails, and it can only wait for the next time.
  • the backup route generation unit can parse the cached messages to generate RibIn and RibOut, and then cache the generated RibIn and RibOut; when the route fluctuates, due to the cached It is RibIn and RibOut, RibIn and RibOut can be combined, so it takes up less memory and does not need to be overwritten.
  • the standby route generation unit When the standby route generation unit reads the Dummy route from DFS, if the Dummy route is greater than or equal to the minimum TCP end sequence number of the cached RibIn, the inbound direction delimitation is completed; if the dummy route is greater than or equal to the minimum timestamp of the cached RibOut, Then the delimitation of the outbound direction is completed, and the preparation route generation unit merges the cached RibIn and RibOut with the RibIn and RibOut read from the DFS, and the delimitation is completed after the merger is completed.
  • the main route generation unit needs to sense the newly online backup route generation unit, and the main route generation unit determines whether the newly online backup route generation unit has completed delimitation.
  • the delimitation period will occupy the system resources of the main route generating unit for a long time, which will affect the performance of the main route generating unit to generate data in real time.
  • the main route generation unit does not need to perceive the backup route generation unit, and the backup route generation unit can determine whether the delimitation is completed, and does not need to occupy the system resources of the main route generation unit, which can improve the performance of the main route generation unit and reduce software Complexity.
  • Figure 8 provides a schematic flow diagram of another routing information management method, which includes but is not limited to the following steps:
  • Step S801 The backup route generating unit sends registration information to the DFS.
  • the backup route generation unit may send registration information to the DFS, the registration information may include the unit identifier of the backup route generation unit, and the registration information may be used to indicate that the backup route generation unit is a new consumer.
  • Step S802 The DFS sends the first data in the DB to the backup route generating unit, the last route contained in the first data carries the TCP end sequence number, and the first data is obtained by the main route generating unit after analyzing the first TCP packet of.
  • the main route generating unit may parse the first TCP message to obtain the first data.
  • the first TCP message may include part or all of the first data, and the first data may include At least one route.
  • the main route generating unit stores the first data in the DB of the DFS. After the backup route generation unit sends the registration information to the DFS, the DFS can determine that the backup route generation unit is a new consumer, and then the DFS can send the first data stored in the DB to the backup route generation unit.
  • Step S803 The main TCP FTI receives the third TCP message from the routing node.
  • the routing node After the routing node generates the third TCP packet in real time, it can send the third TCP packet to the main TCP FTI, and the main TCP FTI can send the third TCP packet to the main route generation unit and the backup route generation unit respectively.
  • the third TCP packet may be an incoming packet.
  • the embodiment of the present application does not limit the execution sequence of step S802 and step S803.
  • DFS sends the first data in the DB to the backup route generation unit; and when the main TCP FTI receives the third TCP packet from the routing node, DFS Sending the first data in the DB to the backup route generating unit is not specifically limited by the embodiment of the present application.
  • Step S804 The main TCP FTI sends the third TCP message to the backup route generating unit.
  • Step S805 The backup route generating unit compares the TCP end sequence number carried in the first data with the smallest TCP end sequence number in the third TCP packet.
  • the TCP end sequence number can be used to identify the first TCP packet.
  • the main route generation unit parses the first TCP packet to obtain the first data.
  • the first data includes the first route, the second route, and the third route.
  • the main route generation unit can write a dummy route after the third route.
  • the Dummy route carries the TCP end sequence number.
  • the backup route generating unit can determine that the complete data contained in the first data has been successfully obtained.
  • the primary TCP FTI After the primary TCP FTI receives the third TCP packet from the routing node, it may generate the TCP end sequence number of the third TCP packet. The primary TCP FTI sends the third TCP packet and the TCP end sequence number of the third TCP packet to the backup route generation unit.
  • the backup route generating unit When the backup route generating unit receives the first data, it can obtain the TCP end sequence number carried in the first data. In addition, after the standby route generation unit receives the third TCP message, it can search for the smallest TCP end sequence number among the TCP end sequence numbers of all the received third TCP messages, and combine the TCP end sequence number and the first data carried in the first data. Compare the smallest TCP end sequence numbers in the three TCP packets.
  • Step S806 The DFS sends the second data in the DB to the backup route generating unit, the last route contained in the second data carries a time stamp, and the second data is obtained by the main route generating unit analyzing the second TCP packet.
  • the second TCP packet may be parsed to obtain the second data.
  • the second TCP packet may include part or all of the second data, and the second data may include at least one route.
  • the main route generating unit stores the second data in the DB of the DFS.
  • the DFS can determine that the backup route generation unit is a new consumer, and then the DFS can send the second data stored in the DB to the backup route generation unit.
  • the embodiment of the present application does not limit the execution sequence of steps S802 to S805 and steps S806 to S809.
  • Step S807 The main TCP FTI receives the fourth TCP message from the main route generating unit.
  • the main route generation unit After the main route generation unit generates the fourth TCP message in real time, it may send the fourth TCP message to the main TCP FTI, and the main TCP FTI may send the fourth TCP message to the routing node and the backup route generation unit respectively.
  • the fourth TCP packet may be an outbound packet.
  • Step S808 The main TCP FTI sends the fourth TCP message to the backup route generating unit.
  • Step S809 The backup route generating unit compares the timestamp carried in the second data with the smallest timestamp in the fourth TCP packet.
  • the timestamp may be used to identify the second TCP packet, and the timestamp may be the time when the second data is sent to the DFS by the main route generation unit.
  • the main route generation unit parses the second TCP packet to obtain the second data.
  • the second data includes the fourth route, the fifth route, and the sixth route.
  • the main route generation unit can write a dummy route after the sixth route.
  • the dummy route carries a time stamp, and the main route generating unit sends the second data and the time stamp carried in the second data to the DFS.
  • the backup route generating unit can determine that the complete data contained in the second data has been successfully obtained.
  • the primary TCP FTI After the primary TCP FTI receives the fourth TCP packet from the autonomous route generation unit, it may generate the timestamp of the fourth TCP packet. The primary TCP FTI sends the fourth TCP message and the timestamp of the fourth TCP message to the backup route generation unit.
  • the backup route generation unit When the backup route generation unit receives the second data, it can obtain the timestamp carried in the second data. In addition, after the backup route generation unit receives the fourth TCP message, it can search for the smallest timestamp among the timestamps of all the received fourth TCP messages, and combine the timestamp carried in the first data with the time stamp in the fourth TCP message. The smallest timestamp is compared.
  • Step S810 When the TCP end sequence number carried in the first data is greater than or equal to the minimum TCP end sequence number, and the time stamp carried in the second data is greater than or equal to the minimum time stamp, the backup route generation unit stops acquiring data from the DFS.
  • the main route generation unit does not need to perceive the backup route generation unit, and the backup route generation unit can determine whether the delimitation is completed, and does not need to occupy the system resources of the main route generation unit, which can improve the performance of the main route generation unit and reduce software complexity Sex.
  • the routing information management system may include a main route generating unit 901, at least one backup route generating unit (for example, a backup route generating unit 902 and a backup route Generating unit 903) and routing nodes.
  • each route generation unit (for example, a main route generation unit or a backup route generation unit) may include a BGP module.
  • the BGP module included in the main route generation unit 901 is BGP1
  • the BGP modules included in the backup route generation unit are BGP2, BGP3, ..., BGPn.
  • the BGP module is used to generate data.
  • the LES can elect a route generation unit from at least one backup route generation unit (for example, the backup route generation unit 902) As the main route generation unit, at least one of the backup route generation units other than the main route generation unit serves as the backup route generation unit, and the elected main route generation unit establishes BGP neighbors with routing nodes, so that BGP neighbors are not interrupted. BGP routing is not interrupted.
  • the TCP message sent and received by the main route generation unit 901 and each of the standby routes in at least one standby route generation unit are generated.
  • the TCP messages of the units are the same.
  • the main TCP FTI sends the first TCP message from the routing node to the main route generation unit 901 and at least one backup route generation unit, and the main TCP FTI generates the main route generation unit 901.
  • the second TCP message is sent to the routing node and at least one backup route generating unit respectively.
  • the TCP module in the elected main route generation unit (for example, the backup route generation unit 902) can establish a TCP session with the routing node to avoid discontinuity of TCP packets and cause TCP error disconnection In this case, the TCP connection can be uninterrupted.
  • the backup route generating unit 902 parses the incoming packets from the main PFS to generate RibIn.
  • the backup route generation unit 902 can generate new routing information based on the incoming message and RibIn, and obtain the outgoing message based on the routing information (that is, the backup route generation unit 902 sends the outgoing route of the backup route generation unit 902 to the routing node based on the RibIn simulation Message).
  • the backup route generation unit 902 parses the outbound packet of the backup route generation unit 902 to generate the RibOut set of the backup route generation unit 902.
  • the main route generating unit 901 generates an outbound packet of the main route generating unit 901 in response to an inbound packet from the main PFS, and synchronizes the outbound packet of the main route generating unit 901 to the backup route generating unit 902 through the main PFS.
  • the backup route generating unit 902 may parse the outbound message from the main route generating unit 901 of the main PFS to generate the RibOut set of the main route generating unit 901.
  • the backup route generation unit 902 can calculate the first difference between the RibOut set of the main route generation unit 901 and the RibOut set of the backup route generation unit 902, and the backup route The second difference set between the RibOut set of the generating unit 902 and the RibOut set of the main route generating unit 901. If the first difference set is not an empty set and the second difference set is an empty set, the backup route generation unit 902 may send a deletion instruction to the routing node, the deletion instruction carries the first difference set, and the deletion instruction is used to instruct the routing node to delete The first difference set above.
  • the backup route generation unit 902 may send an update instruction to the routing node.
  • the update instruction carries the first difference set and the second difference set, and the update instruction is used to indicate the route.
  • the node updates the first difference set to the second difference set. If the first difference set is an empty set and the second difference set is not an empty set, the backup route generation unit 902 may send an adding instruction to the routing node, the adding instruction carries the second difference set, and the adding instruction is used to instruct the routing node to increase the first difference set. Two difference set. If the first difference set and the second difference set are both empty sets, the backup route generation unit 902 can determine that the route sent by the main route generation unit 901 to the routing node is correct.
  • the difference set can be calculated to prevent the backup route generation unit from being elected as the main route generation unit and send to the routing node.
  • BGP routing is not interrupted because of incorrect routing.
  • the backup route generating unit is in an active state. Before the main route generation unit fails, the backup route generation unit can parse the packets from the main PFS to generate RibIn and RibOut. After the backup route generation unit is elected as the main route generation unit, the routing node senses the switching of the main route generation unit , Directly switch the Rib route to the elected main route generation unit. Compared with the traditional routing information management system, there is no need to perform full smoothing and improve the processing performance of the routing information management system.
  • the backup route generation unit is in the active state like the main route generation unit. Both the main route generation unit and the backup route generation unit calculate routes, issue routes, and generate routing neighbors. If the data issued by one of the routing generating units is inconsistent with the data issued by other routing generating units, the routing node can determine that the routing generating unit has a business logic failure, and the routing node can generate the business logic description information of the routing generating unit , And output the business logic description information of the route generation unit, and the user can respond to the business logic description information of the route generation unit to perform version upgrades or other repair measures for the route generation unit. If a service logic failure occurs in the main route generation unit, the routing node can trigger the switching of the main route generation unit. The embodiment of the present application can detect the logic failure in time and reduce the service damage delay.
  • the routing information management system deploys multiple route generation units, as long as there is a backup route generation unit in a real-time protection state when there are multiple failures, the BGP service will not be affected.
  • Figure 10 provides a schematic flow diagram of another routing information management method, which includes but is not limited to the following steps:
  • Step S1001 The backup route generating unit receives the first TCP message from the main PFS.
  • Step S1002 The standby route generating unit parses the first TCP message to obtain route information.
  • Step S1003 The standby route generating unit generates new route information based on the first TCP message and the route information.
  • Step S1004 The backup route generating unit obtains the second TCP packet of the backup route generating unit based on the new routing information.
  • Step S1005 The backup route generation unit parses the second TCP packet of the backup route generation unit to generate a RibOut set of the backup route generation unit.
  • Step S1006 The main route generating unit receives the first TCP message from the main PFS.
  • Step S1007 The main route generating unit generates a second TCP packet of the main route generating unit in response to the first TCP packet.
  • Step S1008 The main route generating unit sends the second TCP packet of the main route generating unit to the standby route generating unit through the main PFS.
  • Step S1009 The backup route generating unit parses the second TCP packet of the main route generating unit to generate the RibOut set of the main route generating unit.
  • Step S1010 The backup route generation unit calculates the first difference set between the RibOut set of the main route generation unit and the RibOut set of the backup route generation unit, and the difference between the RibOut set of the backup route generation unit and the RibOut set of the main route generation unit The second difference set.
  • the first difference set refers to a set in which elements that belong to the RibOut set of the main route generation unit and do not belong to the RibOut set of the backup route generation unit are used as elements.
  • the second difference set refers to a set with elements that belong to the RibOut set of the backup route generating unit, but not the RibOut set of the main route generating unit.
  • the first difference set is the shaded part in Figure 11A, and the shape of the shaded part is a ring, that is, the first The difference set is not an empty set.
  • the second difference set is the empty set.
  • the first difference set is an empty set
  • the second difference set is the shaded part in Figure 11B.
  • the shape of is a ring, that is, the second difference set is not an empty set.
  • the first difference set and the second difference set can be as shown in Figure 11C, that is, the first empty set and The second difference set is not an empty set.
  • the first difference set can be M and the second difference set can be N, that is, the first empty set Neither the second difference set nor the empty set.
  • Step S1011 If the first difference set is not an empty set, and the second difference set is an empty set, the backup route generation unit sends a deletion instruction to the routing node. If the first difference set and the second difference set are not empty sets, the backup route generation unit sends an update instruction to the routing node.
  • Step S1012 If the first difference set and the second empty set are not empty sets, the backup route generation unit sends an update instruction to the routing node.
  • Step S1013 If the first difference set is an empty set and the second difference set is not an empty set, the backup route generation unit sends an adding instruction to the routing node.
  • the difference set can be calculated to prevent the backup route generation unit from being elected as the main route generation unit and send to the routing node.
  • BGP routing is not interrupted because of incorrect routing.
  • the routing information management system may include a main route generation unit 1201, at least one backup route generation unit 1202, a database unit 1203, a main TCP transceiver unit 1204, and Routing node 1205.
  • the main route generating unit 1201 may include a routing information generating module 12011 and a sending module 12012.
  • Each backup route generating unit 1202 may include a routing information receiving module 12021, a message receiving module 12022, a determining module 12023, and a routing information generating module.
  • Module 12024 :
  • the routing information generating module 12011 is used to generate routing information related to TCP packets
  • the sending module 12012 is configured to send the routing information and the first identification information of the routing information to the database unit 1203, where the first identification information is determined based on the TCP packet.
  • the routing information receiving module 12021 is configured to receive the routing information and the first identification information of the routing information from the database unit 1203;
  • the message receiving module 12022 is configured to receive the TCP message from the main TCP transceiver unit;
  • the determining module 12023 is configured to determine that the routing information matches the TCP packet according to the first identification information and the TCP packet;
  • the routing information generating module 12024 is configured to generate new routing information based on the routing information and the TCP packet.
  • the routing information is generated by the routing information generating module 12011 based on the TCP packet.
  • the routing information receiving module 12021 is further configured to stop following the routing information after the determining module 12023 determines that the routing information matches the TCP packet according to the first identification information and the TCP packet.
  • the database unit 1203 receives routing information.
  • the determining module 12023 determines that the routing information matches the TCP packet.
  • each backup route generating unit 1202 may further include a difference set calculation module 12025 and a sending module 12026;
  • a difference set calculation module 12025 configured to calculate a first difference set between the routing information and the new routing information, and a second difference set between the new routing information and the routing information;
  • the sending module 12026 is configured to send a deletion instruction to the routing node 1205 when the first difference set is not an empty set and the second difference set is an empty set, where the deletion instruction carries the first difference set, The deletion instruction is used to instruct the routing node to delete the first difference set.
  • the sending module 12026 is further configured to send an update instruction to the routing node when the first difference set and the second difference set are not empty sets, and the update instruction carries the first difference set.
  • the update instruction is used to instruct the routing node 1205 to update the first difference set to the second difference set.
  • the sending module 12026 is further configured to send an adding instruction to the routing node when the first difference set is an empty set and the second difference set is not an empty set.
  • the instruction carries the second difference set, and the adding instruction is used to instruct the routing node 1205 to add the second difference set.
  • FIG. 12 is a schematic structural diagram of a main route generation unit provided by an embodiment of the present invention.
  • the main route generation unit includes a processor 1301, a memory 1302, and a communication interface 1303.
  • the processor 1301, the memory 1302, and the communication interface 1303 Connected via one or more communication buses.
  • the processor 1301 includes one or more general-purpose processors, where the general-purpose processor can be any type of device capable of processing electronic instructions, including a central processing unit (CPU), a microprocessor, a microcontroller, and a main Processor, controller, ASIC (Application Specific Integrated Circuit, application specific integrated circuit) and so on.
  • the processor 1301 executes the generation instruction and the transmission instruction of the routing information, for example, generates routing information related to the TCP packet, or sends the routing information and the first identification information of the routing information to the database unit.
  • the communication interface 1303 may be a wired interface (for example, an Ethernet interface) for communicating with the database unit.
  • the memory 1302 may include volatile memory (Volatile Memory), such as random access memory (Random Access Memory, RAM); the memory may also include non-volatile memory (Non-Volatile Memory), such as read-only memory (Read-Only Memory). Memory, ROM), Flash Memory (Flash Memory), Hard Disk Drive (HDD) or Solid-State Drive (SSD), the memory may also include a combination of the above types of memories.
  • volatile memory such as random access memory (Random Access Memory, RAM); the memory may also include non-volatile memory (Non-Volatile Memory), such as read-only memory (Read-Only Memory).
  • Memory ROM
  • Flash Memory Flash Memory
  • HDD Hard Disk Drive
  • SSD Solid-State Drive
  • the memory 1302 may store program codes, TCP messages, and routing information.
  • processor 1301 is configured to execute the following steps by calling the program code in the memory 1302:
  • the processor 1301 is configured to generate routing information related to the TCP packet
  • the communication interface 1303 is configured to send the routing information and the first identification information of the routing information to the database unit, where the first identification information is determined based on the TCP packet.
  • each module in Figure 12 can be implemented in combination with a processor and a communication interface.
  • 14 is a schematic structural diagram of a backup route generation unit provided by an embodiment of the present invention.
  • the backup route generation unit includes a processor 1401, a memory 1402, and a communication interface 1403.
  • the processor 1401, the memory 1402, and the communication interface 1403 Connected via one or more communication buses.
  • the processor 1401 includes one or more general-purpose processors, where the general-purpose processor may be any type of device capable of processing electronic instructions, including a CPU, a microprocessor, a microcontroller, a main processor, a controller, and an ASIC, etc. .
  • the processor 1401 executes the routing information matching instruction and the routing information generating instruction, for example, determining that the routing information matches the TCP packet according to the first identification information and the TCP packet, or generating new routing information based on the routing information and the TCP packet.
  • the communication interface 1403 may be a wired interface (for example, an Ethernet interface) for communicating with the database unit and the main TCP transceiver unit.
  • the memory 1402 may include a volatile memory, such as RAM; the memory may also include a non-volatile memory, such as ROM, flash memory, HDD or SSD, and the memory may also include a combination of the foregoing types of memory.
  • the memory 1402 may store program codes, routing information, first identification information of the routing information, and TCP packets.
  • processor 1401 is configured to execute the following steps by calling the program code in the memory 1402:
  • the communication interface 1403 is configured to receive routing information and the first identification information of the routing information from the database unit;
  • the communication interface 1403 is also used to receive TCP packets from the main TCP transceiver unit;
  • the processor 1401 is configured to determine, according to the first identification information and the TCP packet, that the routing information matches the TCP packet;
  • the processor 1401 is further configured to generate new routing information based on the routing information and the TCP message.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a dedicated computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server integrating one or more available media.
  • the usable medium may be a magnetic medium, such as a floppy disk, a hard disk, and a magnetic tape; it may also be an optical medium, such as a DVD; it may also be a semiconductor medium, such as a solid state disk (SSD).
  • a magnetic medium such as a floppy disk, a hard disk, and a magnetic tape
  • an optical medium such as a DVD
  • it may also be a semiconductor medium, such as a solid state disk (SSD).
  • SSD solid state disk

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了路由信息管理方法、装置及计算机存储介质,该方法中主路由生成单元生成与TCP报文相关的路由信息,主路由生成单元向数据库单元发送路由信息和路由信息的第一标识信息,其中第一标识信息是基于TCP报文确定的,本申请实施例可以将主路由生成单元和备路由生成单元解耦,降低软件复杂性,提升主路由生成单元的性能。

Description

路由信息管理方法、装置及计算机存储介质
本申请要求于2019年3月13日提交中国专利局、申请号为CN 201910190984.7、发明名称为“路由信息管理方法、装置及计算机存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及路由信息管理方法、装置及计算机存储介质。
背景技术
边界网关协议(Border gateway protocol,BGP)不间断路由(Non-Stop Routing,NSR)技术可以实现在设备故障时,确保BGP邻居不中断,BGP路由不中断,以提高系统可靠性。在具体实现过程中,可以通过硬件层面或者软件层面提高系统可靠性。以软件层面提高系统可靠性为例,传统的系统架构可以部署两个路由生成单元,两个路由生成单元包括主路由生成单元和备路由生成单元,当主路由生成单元故障时,备路由生成单元可以接替主路由生成单元的任务。具体实现中,当主路由生成单元感知备路由生成单元上线后,主路由生成单元需要主动给备路由生成单元同步路由信息,由于需要同步的路由信息的数据量很大,同步期间将长时间占用主路由生成单元的系统资源,从而对主路由生成单元处理实时报文的性能造成影响。基于此,主路由生成单元和备路由生成单元相互耦合,软件复杂性较高。
发明内容
本发明实施例提供了路由信息管理方法、装置及计算机存储介质,可以将主路由生成单元和备路由生成单元解耦,降低软件复杂性,提升主路由生成单元的性能。
第一方面,本申请实施例提供了一种路由信息管理方法,其特征在于,主路由生成单元生成与TCP报文相关的路由信息,向数据库单元发送该路由信息和该路由信息的第一标识信息,其中第一标识信息是基于上述TCP报文确定的。
在该技术方案中,主路由生成单元通过向数据库单元发送路由信息和路由信息的第一标识信息,实现主路由生成单元和备路由生成单元的路由信息的同步,无需主路由生成单元直接同步路由信息给备路由生成单元,可以将主路由生成单元和备路由生成单元解耦,降低软件复杂性,提升主路由生成单元的性能。
在一种可能的实现方式中,主TCP收发单元可以向主路由生成单元的至少一个备路由生成单元同步上述TCP报文。
在该技术方案中,主路由生成单元通过主TCP收发单元将TCP报文发送给备路由生成单元,无需主路由生成单元将TCP报文直接发送给备路由生成单元,可以将主路由生成单元和备路由生成单元解耦,降低软件复杂性,提升主路由生成单元的性能。
在一种可能的实现方式中,第一标识信息可以为TCP报文的结束序列号。
在一种可能的实现方式中,第一标识信息可以为TCP报文对应的时间戳。
在一种可能的实现方式中,路由信息是由主路由生成单元基于TCP报文生成的。
在一种可能的实现方式中,TCP报文包括路由信息的部分或全部。
第二方面,本申请实施例公开一种路由信息管理方法,其特征在于,备路由生成单元从数据库单元接收路由信息和路由信息的第一标识信息,并从主TCP收发单元接收TCP报文。备路由生成单元在根据第一标识信息和TCP报文确定路由信息与TCP报文匹配之后,可以基于路由信息和TCP报文生成新的路由信息。
在该技术方案中,备路由生成单元在根据第一标识信息和TCP报文确定路由信息与TCP报文匹配之后,基于路由信息和TCP报文生成新的路由信息,无需持续从数据库单元接收路由信息,可将主路由生成单元和备路由生成单元解耦,降低软件复杂性,提升主路由生成单元的性能。
在一种可能的实现方式中,备路由生成单元根据第一标识信息和TCP报文确定路由信息与TCP报文匹配之后,可以停止从数据库单元接收路由信息。
在一种可能的实现方式中,备路由生成单元根据第一标识信息和TCP报文确定路由信息与TCP报文匹配的方式可以为:在第一标识信息大于或等于TCP报文所携带的第二标识信息时,备路由生成单元确定路由信息与TCP报文匹配。
在该技术方案中,主路由生成单元无需感知备路由生成单元,可由备路由生成单元判断是否完成定界,无需占用主路由生成单元的系统资源,可提升主路由生成单元的性能,降低软件复杂性。
在一种可能的实现方式中,备路由生成单元还可以计算路由信息和新的路由信息之间的第一差集,以及新的路由信息和路由信息之间的第二差集,在第一差集不为空集,且第二差集为空集时,备路由生成单元可以向路由节点发送删除指令,删除指令携带第一差集,删除指令用于指示路由节点删除第一差集。
在一种可能的实现方式中,备路由生成单元计算路由信息和新的路由信息之间的第一差集,以及新的路由信息和路由信息之间的第二差集之后,在第一差集和第二差集均不为空集时,备路由生成单元可以向路由节点发送更新指令,更新指令携带第一差集和第二差集,更新指令用于指示路由节点将第一差集更新为第二差集。
在一种可能的实现方式中,备路由生成单元计算路由信息和新的路由信息之间的第一差集,以及新的路由信息和路由信息之间的第二差集之后,可以在第一差集为空集,且第二差集不为空集时,备路由生成单元向路由节点发送添加指令,添加指令携带第二差集,添加指令用于指示路由节点增加第二差集。
本申请实施例中,主路由生成单元故障时,在备路由生成单元对路由节点无感知的情况下,通过计算差集的方式可避免备路由生成单元选举为主路由生成单元之后向路由节点发送的路由信息错误,可实现BGP路由不中断。
第三方面,本申请实施例提供了一种通信装置,所述装置包括主路由生成单元,主路由生成单元包括路由信息生成模块和发送模块,路由信息生成模块和发送模块用于实现第一方面所述的路由信息管理方法。
第四方面,本申请实施例提供了一种通信装置,所述装置包括备路由生成单元,备路由生成单元包括路由信息接收模块、报文接收模块、确定模块以及路由信息生成模块,路由信息接收模块、报文接收模块、确定模块以及路由信息生成模块用于实现第二方面所述的路由信息管理方法。
第五方面,本申请实施例提供了一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序或指令,当所述程序或指令被处理器执行时,使所述处理器执行如第一方面所述的路由信息管理方法。
第六方面,本申请实施例提供了一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序或指令,当所述程序或指令被处理器执行时,使所述处理器执行如第二方面所述的路由信息管理方法。
第七方面,本申请实施例提供一种主路由生成单元,包括处理器,所述处理器与存储器耦合,其特征在于,
所述存储器,用于存储指令;
所述处理器,用于执行所述存储器中的指令,使得所述主路由生成单元执行如第一方面所述的路由信息管理方法。
第八方面,本申请实施例提供一种备路由生成单元,包括处理器,所述处理器与存储器耦合,其特征在于,
所述存储器,用于存储指令;
所述处理器,用于执行所述存储器中的指令,使得所述备路由生成单元执行如第二方面所述的路由信息管理方法。
第九方面,本申请实施例提供一种芯片系统,其特征在于,所述芯片系统包括处理器和接口电路,所述接口电路与所述处理器耦合,
所述处理器用于执行计算机程序或指令,以实现如第一方面所述的路由信息管理方法;
所述接口电路用于与所述芯片系统之外的其它模块进行通信。
第十方面,本申请实施例提供一种芯片系统,其特征在于,所述芯片系统包括处理器和接口电路,所述接口电路与所述处理器耦合,
所述处理器用于执行计算机程序或指令,以实现如第二方面所述的路由信息管理方法;
所述接口电路用于与所述芯片系统之外的其它模块进行通信。
附图说明
图1是本申请实施例公开的一种PCT报文管理系统的架构示意图;
图2是本申请实施例公开的一种PCT报文管理方法的流程示意图;
图3是本申请实施例公开的另一种PCT报文管理方法的流程示意图;
图4是本申请实施例公开的一种路由信息管理系统的架构示意图;
图5是本申请实施例公开的一种路由信息管理方法的流程示意图;
图6是本申请实施例公开的另一种路由信息管理系统的架构示意图;
图7是本申请实施例公开的另一种路由信息管理系统的架构示意图;
图8是本申请实施例公开的另一种路由信息管理方法的流程示意图;
图9是本申请实施例公开的另一种路由信息管理系统的架构示意图;
图10是本申请实施例公开的另一种路由信息管理方法的流程示意图;
图11A是本申请实施例公开的一种第一差集和第二差集的状态示意图;
图11B是本申请实施例公开的另一种第一差集和第二差集的状态示意图;
图11C是本申请实施例公开的另一种第一差集和第二差集的状态示意图;
图11D是本申请实施例公开的另一种第一差集和第二差集的状态示意图;
图12是本申请实施例公开的一种路由信息管理系统的结构示意图;
图13是本申请实施例公开的一种主路由生成单元的结构示意图;
图14是本申请实施例公开的一种备路由生成单元的结构示意图;
图15是本申请实施例公开的一种TCP报文的报文格式示意图。
具体实施方式
为了更好的理解本申请实施例公开的路由信息管理方法、装置及计算机存储介质,下面首先对本申请实施的一种PCT报文管理系统进行描述。图1是本申请实施例公开的一种PCT报文管理系统的架构示意图,该PCT报文管理系统可以包括一个主路由生成单元和主路由生成单元对应的至少一个备路由生成单元。
主路由生成单元和至少一个备路由生成单元可以运行在同一通信设备的不同虚拟机中,也可以运行在不同通信设备中。每个路由生成单元(例如主路由生成单元或备路由生成单元)均可以包括应用程序(Application,APP)和传输控制协议(Transmission Control Protocol,TCP)模块,TCP模块用于与路由节点建立TCP会话。
主路由生成单元对应报文容错服务(Packets Fault-tolerance Service,PFS)1(例如第一TCP收发单元),PFS1独立于主路由生成单元。备路由生成单元对应PFS2(例如第二TCP收发单元),PFS2独立于备路由生成单元。每个PFS(例如PFS1或PFS2)均可以包括TCP容错架构(TCP Fault-tolerance Infrastructure,TCP FTI)。PFS和对应的路由生成单元可以运行在同一通信设备的不同虚拟机中,也可以运行在同一通信设备的同一虚拟机中,还可以运行在不同通信设备中,具体不受本申请实施例的限定。运行主路由生成单元、一个或多个备路由单元以及至少两个PFS的一个或多个通信设备包括处理器和存储有用于实现所述路由单元和PFS的计算机可读指令的存储器。一个或多个处理器可以执行所述计算机可读指令实现所述路由单元和PFS。
在该实施例中,可以在PCT报文管理系统中部署多个路由生成单元,主选举服务(Leader Election Service,LES)可以在上述部署的多个路由生成单元中选举出一个路由生 成单元作为主路由生成单元,上述部署的多个路由生成单元中除主路由生成单元以外的其他路由生成单元作为备路由生成单元。在上述部署的多个路由生成单元中,只有主路由生成单元与路由节点建立BGP邻居,并收发TCP报文,TCP报文可以包括第一TCP报文(即入方向报文)或者第二TCP报文(即出方向报文)中的一种或者多种。例如主路由生成单元接收来自路由节点的第一TCP报文,又如主路由生成单元向路由节点发送第二TCP报文。
在上述部署的多个路由生成单元中,不同路由生成单元对应不同PFS,LES还可以在上述部署的多个路由生成单元对应的PFS中选举出一个PFS作为主PFS(例如主TCP收发单元)。图1以主PFS为PFS1为例,PFS1可以将TCP报文同步至上述至少一个备路由生成单元,即主PFS实现了上述部署的多个路由生成单元的报文的一致性。
具体实现中,主路由生成单元可以和路由节点通过三次握手等方式建立TCP会话,备路由生成单元可以通过主PFS同步获取主路由生成单元收发的TCP报文。
在一种实现方式中,以入方向报文为例,假设主PFS为PFS1,PFS1所包含的TCP FTI为主TCP FTI。主TCP FTI接收来自路由节点的入方向报文,主TCP FTI将入方向报文发送给主路由生成单元以及备路由生成单元。以出方向报文为例,假设主PFS为PFS1,PFS1所包含的TCP FTI为主TCP FTI,主TCP FTI接收来自主路由生成单元的出方向报文,主TCP FTI将出方向报文发送给主路由生成单元和备路由生成单元。在该实施例中,由于主TCP FTI未进行报文同步应答确认,因此无法有效确保备路由生成单元成功接收到了主TCP FTI发送的TCP报文。但是为了实现多点故障容错,所部署的路由生成单元的数量可以大于可靠路由生成单元的需求数量。例如所部署的路由生成单元数量和可靠路由生成单元的需求数量可以成正比例关系,又如所部署的路由生成单元数量和可靠路由生成单元的需求数量之间的差值大于预设数值。举例来说,为了实现n点故障容错,需要确保至少n+1个路由生成单元可靠,即需要确保至少n个备路由生成单元可靠,可以部署m*n+1个路由生成单元,m*n+1个路由生成单元包括一个主路由生成单元和m*n个备路由生成单元,m*n个备路由生成单元通过主TCP收发单元同步主路由生成单元收发的报文。其中,n为正整数,m为正数,且m>1。
在一种实现方式中,以入方向报文为例,假设主PFS为PFS1,PFS1所包含的TCP FTI为主TCP FTI,主TCP FTI接收来自路由节点的入方向报文,主TCP FTI将入方向报文发送给备路由生成单元,每个备路由生成单元接收到来自主TCP FTI的入方向报文之后,备路由生成单元向主TCP FTI发送第一确认消息。主路由生成单元接收到来自主TCP FTI的入方向报文之后,主路由生成单元向主TCP FTI发送第二确认消息。主TCP FTI在接收到来自所有备路由生成单元的第一确认消息之后,将第二确认消息发送给路由节点。可选的,主TCP FTI未接收到来自任一备路由生成单元的第一确认消息时,主TCP FTI可以进行重传,例如将入方向报文重新发送给该备路由生成单元。本申请实施例在主TCP FTI接收到来自所有备路由生成单元的第一确认消息之后,才将来自主路由生成单元的第二确认消息发送给路由节点,且主TCP FTI未接收到来自任一备路由生成单元的第一确认消息时进行重传,可实现入方向报文在各个路由生成单元之间保持强一致性。
以出方向报文为例,假设主PFS为PFS1,PFS1所包含的TCP FTI为主TCP FTI,主TCP FTI接收来自主路由生成单元的出方向报文,主TCP FTI将出方向报文发送给备路由生成单元,每个备路由生成单元接收到来自主TCP FTI的出方向报文之后,备路由生成单 元可以向主TCP FTI发送第三确认消息。主TCP FTI在接收到来自所有备路由生成单元的第三确认消息之后,主TCP FTI可以将出方向报文发送给路由节点。可选的,主TCP FTI未接收到来自任一备路由生成单元的第三确认消息时,主TCP FTI可以进行重传,例如将出方向报文重新发送给该备路由生成单元。本申请实施例在主TCP FTI接收到来自所有备路由生成单元的第三确认消息之后,才将出方向报文发送给路由节点,且主TCP FTI未接收到来自任一备路由生成单元的第三确认消息时进行重传,可实现出方向报文在各个路由生成单元之间保持强一致性。
在一种实现方式中,保持强一致性的路由生成单元数量可以大于或等于第一预设数量阈值。其中,第一预设数量阈值可以为对可靠路由生成单元的需求数量。例如,为了实现n点故障容错,需要确保至少n+1个路由生成单元可靠,则可以控制至少n+1个路由生成单元保持强一致性。其中,n为正整数。示例性的,假设在路由信息管理系统部署了五个路由生成单元,则上述五个路由生成单元包括一个主路由生成单元和四个备路由生成单元,为了实现两点故障容错,需要确保至少三个路由生成单元可靠,如果配置四个路由生成单元保持强一致性,则可以在四个备路由生成单元中选取三个备路由生成单元同步主路由生成单元收发的报文。本申请实施例控制至少n+1个路由生成单元保持强一致性,无需控制所部署的所有路由生成单元保持强一致性,在实现n点故障容错的情况下,可减少保持强一致性所带来的开销。
传统的PCT报文管理系统中,是由主路由生成单元将主路由生成单元收发的TCP报文同步给备路由生成单元,由于主路由生成单元需要同步的TCP报文的数据量很大,报文同步期间将长时间占用主路由生成单元的系统资源,从而对主路由生成单元处理实时报文的性能造成影响。另外,如果主路由生成单元的报文同步进程故障,将导致主路由生成单元发送给备路由生成单元的TCP报文和主路由生成单元收发的TCP报文不一致,降低了报文同步的可靠性。
而本申请实施例中,主路由生成单元发送的TCP报文,都会经过主PFS发送给备路由生成单元和路由节点;路由节点发送的报文,都会经过主PFS发送给备路由生成单元和主路由生成单元,保证入方向报文和出方向报文在各个路由生成单元之间保持强一致性。本申请实施例无需占用主路由生成单元的系统资源进行报文同步,可提升主路由生成单元的性能。另外,主PFS发送给主路由生成单元和备路由生成单元的报文始终是一致的,提升了报文同步的可靠性。由于入方向报文和出方向报文在各个路由生成单元之间保持强一致性,如果主路由生成单元故障,处于强一致性同步的备路由生成单元可以接替主路由生成单元,实现BGP邻居不中断,BGP路由不中断。由于各个路由生成单元解耦,编程复杂性较低,可以扩展备路由生成单元的数量,支持多点容错保护,提供更高的可靠性。
结合图1所示的PCT报文管理系统,图2提供了一种PCT报文管理方法的流程示意图,该方法包括但不限于如下步骤:
步骤S201:主TCP FTI接收来自路由节点的第一TCP报文。
步骤S202:主TCP FTI将第一TCP报文发送给至少一个备路由生成单元。
其中,用于接收第一TCP报文的备路由生成单元可以是所部署的多个路由生成单元中的部分备路由生成单元或者所有备路由生成单元。用于接收第一TCP报文的备路由生成单元可以大于或等于第一预设数量阈值,第一预设数量阈值可以为可靠路由生成单元的需求 数量减去1的差值。
步骤S203:每个备路由生成单元在接收到来自主TCP FTI的第一TCP报文时,向主TCP FTI发送第一确认消息。
步骤S204:主TCP FTI将第一TCP报文发送给主路由生成单元。
本申请实施例并不限定步骤S202和步骤S204的执行顺序,例如主TCP FTI可以将第一TCP报文发送给主路由生成单元之后,将第一TCP报文发送给备路由生成单元;又如主TCP FTI可以将第一TCP报文同时发送给主路由生成单元和备路由生成单元,具体不受本申请实施例的限制。
步骤S205:主路由生成单元在接收到来自主TCP FTI的第一TCP报文时,向主TCP FTI发送第二确认消息。
步骤S206:主TCP FTI在接收到来自所有备路由生成单元的第一确认消息之后,将第二确认消息发送给路由节点。
其中,所有备路由生成单元指的是用于接收第一TCP报文的所有备路由生成单元。例如PCT报文管理系统包括一个主路由生成单元和n个备路由生成单元,如果需要确保至少三个路由生成单元可靠,那么可以配置k个路由生成单元保持强一致性,2≤k≤n+1,k和n均为正整数。LES可以在n个备路由生成单元中选取k-1个备路由生成单元。主TCP FTI在接收到来自路由节点的第一TCP报文之后,可以将第一TCP报文发送给上述k-1个备路由生成单元,每个备路由生成单元在接收到来自主TCP FTI的第一TCP报文时,向主TCP FTI发送第一确认消息,主TCP FTI在接收到来自上述k-1个备路由生成单元的第一确认消息之后,将第二确认消息发送给路由节点。
在一种实现方式中,主TCP FTI在第一预设时间段内未接收到来自任一备路由生成单元的第一确认消息时,主TCP FTI可以将第一TCP报文重新发送给该备路由生成单元,本申请实施例可确保第一TCP报文成功传输到各个备路由生成单元中,提高报文传输的可靠性。
本申请实施例中,主TCP FTI将第一TCP报文同步给备路由生成单元,在接收到来自所有备路由生成单元的第一确认消息之后,主TCP FTI将来自主路由生成单元的第二确认消息发送给路由节点,可以实现第一TCP报文在各个路由生成单元之间保持强一致性。
结合图1所示的PCT报文管理系统,图3提供了另一种PCT报文管理方法的流程示意图,该方法包括但不限于如下步骤:
步骤S301:主TCP FTI接收来自主路由生成单元的第二TCP报文。
步骤S302:主TCP FTI将第二TCP报文发送给至少一个备路由生成单元。
其中,用于接收第二TCP报文的备路由生成单元可以是所部署的多个路由生成单元中的部分备路由生成单元或者所有备路由生成单元。用于接收第二TCP报文的备路由生成单元可以大于或等于第一预设数量阈值,第一预设数量阈值可以为可靠路由生成单元的需求数量减去1的差值。
步骤S303:备路由生成单元在接收到来自主TCP FTI的第二TCP报文时,向主TCP FTI发送第三确认消息。
步骤S304:主TCP FTI在接收到来自所有备路由生成单元的第三确认消息之后,将第二TCP报文发送给路由节点。
其中,所有备路由生成单元指的是用于接收第二TCP报文的所有备路由生成单元。例如PCT报文管理系统包括一个主路由生成单元和n个备路由生成单元,如果需要确保至少三个路由生成单元可靠,那么可以配置k个路由生成单元保持强一致性,2≤k≤n+1,k和n均为正整数。LES可以在n个备路由生成单元中选取k-1个备路由生成单元。主TCP FTI在接收到来自主路由生成单元的第二TCP报文之后,可以将第二TCP报文发送给上述k-1个备路由生成单元,每个备路由生成单元在接收到来自主TCP FTI的第二TCP报文时,向主TCP FTI发送第三确认消息,主TCP FTI在接收到来自上述k-1个备路由生成单元的第三确认消息之后,将第二TCP报文发送给路由节点。
在一种实现方式中,主TCP FTI在第二预设时间段内未接收到来自任一备路由生成单元的第三确认消息时,主TCP FTI可以将第二TCP报文重新发送给该备路由生成单元,本申请实施例可确保第二TCP报文成功传输到各个备路由生成单元中,提高报文传输的可靠性。
本申请实施例中,主TCP FTI将来自主路由生成单元的第二TCP报文同步给备路由生成单元,在接收到来自所有备路由生成单元的第三确认消息之后,主TCP FTI将第二TCP报文发送给路由节点,可以实现第二TCP报文在各个路由生成单元之间保持强一致性。
图4是本申请实施例公开的另一种路由信息管理系统的架构示意图,该路由信息管理系统可以包括一个主路由生成单元、至少一个备路由生成单元以及数据容错服务(Data Fault-tolerance Service,DFS)(例如数据库单元)。其中,每个路由生成单元(例如主路由生成单元或者备路由生成单元)可以包括BGP模块和DFS软件开发工具包(Software Development Kit,SDK)模块,例如主路由生成单元包括的BGP模块为BGP1,备路由生成单元包括的BGP模块为BGP2。BGP模块用于生成数据,数据可以包括BGP邻居信息、从邻居收到的路由(Route information base Input,RibIn)、向邻居发送的路由(Route information base Output,RibOut)或者路由信息中的一种或多种,BGP邻居信息可以包括邻居协商结果或者邻居状态等。DFS SDK模块用于与DFS之间传输数据。
DFS可以包括消息中间件(Message Broker)和数据库(Database,DB),支持一个生成者生成,多个消费者消费。主路由生成单元作为DFS生成者,调用主路由生成单元中的DFS SDK模块将主路由生成单元中的BGP模块生成的数据写入DB中。Message Broker接收到来自主路由生成单元中的DFS SDK模块的数据之后,可以将该数据通过备路由生成单元中的DFS SDK模块发送给备路由生成单元。另外,备路由生成单元作为DFS消费者,通过DFS同步主路由生成单元生成的数据的方式可以为:新上线的备路由生成单元向DFS发送注册信息之后,DFS可以确定该备路由生成单元为新消费者,则DFS可以将DB中存储的历史数据发送给备路由生成单元,DFS还可以将主路由生成单元实时生成的数据发送给该备路由生成单元。对于已上线的备路由生成单元,DFS可以将主路由生成单元实时生成的数据发送给该备路由生成单元。
在一种实现方式中,主路由生成单元对TCP报文进行解析得到路由信息的方式可以为:主路由生成单元对TCP报文进行解封装得到数据,然后主路由生成单元对基于预定义的格式对该数据进行解析,得到路由信息。
以图15所示的TCP报文的报文格式示意图为例,TCP报文由TCP首部和数据组成,TCP首部包括源端口、目标端口、序号、确认序号、数据偏移、保留、控制位、窗口、校 验和、紧急指针以及选项和填充组成。控制位可以包括紧急指针标志(Urget,URG)、确认序号标志(Acknowledgement,ACK)、push标志(Push,PSH)、重置连接标志(Password,PST)、同步序号标志(Synchronous,SYN)以及finish标志(Finish,FIN)。主路由生成单元可以对TCP报文进行解封装,得到TCP报文所包含的数据,进而基于预定义的格式对该数据进行解析,得到路由信息。
在一种实现方式中,备路由生成单元可以实时读取邻居状态。由于路由信息管理系统中仅主路由生成单元与路由节点建立路由邻居,当主路由生成单元与路由节点之间的路由邻居建立时,邻居状态为在线;当主路由生成单元与路由节点之间的路由邻居断开时,邻居状态为离线。基于此,备路由生成单元通过邻居状态可以确定主路由生成单元与路由节点之间的路由邻居是否断开。
相对传统的路由信息管理系统,主路由生成单元需要感知新上线的备路由生成单元,主路由生成单元还需要备份主路由生成单元生成的历史数据,在感知到新上线的备路由生成单元之后,主路由生成单元需要将历史数据发送给备路由生成单元,即主路由生成单元和备路由生成单元相耦合。另外,由于历史数据量较大,数据传输期间将长时间占用主路由生成单元的系统资源,从而对主路由生成单元实时生成数据的性能造成影响。
而本申请实施例中,通过DFS缓存主路由生成单元生成的数据,且通过DFS将主路由生成单元生成的数据发送给备路由生成单元,以实现主路由生成单元和备路由生成单元之间的数据同步,主路由生成单元无需感知备路由生成单元,解耦了主路由生成单元和备路由生成单元。另外,无需占用主路由生成单元的系统资源进行数据同步,可提升主路由生成单元的性能。
结合图4所示的路由信息管理系统,图5提供了另一种路由信息管理方法的流程示意图,该方法包括但不限于如下步骤:
步骤S501:主路由生成单元生成第一数据。
例如,主路由生成单元可以对来自路由节点的第一TCP报文进行解析,生成第一数据。又如,主路由生成单元可以对向路由节点发送的第二TCP报文进行解析,生成第一数据。
步骤S502:主路由生成单元将第一数据发送给DFS。
步骤S503:DFS将第一数据存储到DB中。
步骤S504:备路由生成单元向DFS发送注册信息。
步骤S505:DFS将DB中存储的第一数据发送给备路由生成单元。
例如,DB中存储的第一数据包括第一路由、第二路由以及第三路由,DFS在备路由生成单元注册之后,可以将DB中的第一路由、第二路由以及第三路由发送给备路由生成单元。
步骤S506:DFS接收主路由生成单元生成的第二数据。
步骤S507:DFS将第二数据发送给备路由生成单元。
例如,DFS将DB中的第一路由、第二路由以及第三路由发送给备路由生成单元的过程中,主路由生成单元实时生成了第二数据,第二数据为第四路由,则DFS可以将第四路由发送给备路由生成单元。
本申请实施例中,通过DFS将主路由生成单元生成的数据发送给备路由生成单元,以实现主路由生成单元和备路由生成单元之间的数据同步,主路由生成单元无需感知备路由 生成单元,解耦了主路由生成单元和备路由生成单元。另外,无需占用主路由生成单元的系统资源进行数据同步,可提升主路由生成单元的性能。
图6是本申请实施例公开的另一种路由信息管理系统的架构示意图,该路由信息管理系统可以包括一个主路由生成单元、至少一个备路由生成单元、各个路由生成单元对应的PFS以及DFS。其中,每个路由生成单元(例如主路由生成单元或者备路由生成单元)可以包括BGP模块和socket模块,例如主路由生成单元包括的BGP模块为BGP1,备路由生成单元包括的BGP模块为BGP2。BGP模块用于生成数据。不同路由生成单元对应不同PFS,每个PFS均可以包括TCP FTI。LES可以在路由信息管理系统部署的多个路由生成单元对应的PFS中选举出一个PFS作为主PFS,主PFS可以将主路由生成单元收发的TCP报文同步至备路由生成单元。另外,主路由生成单元作为DFS生成者,将BGP1生成的数据写入DB中。Message Broker接收到来自主路由生成单元中的DFS SDK模块的数据之后,可以将该数据通过备路由生成单元中的DFS SDK模块发送给备路由生成单元。另外,备路由生成单元作为DFS消费者,通过DFS同步主路由生成单元生成的数据的方式可以为:新上线的备路由生成单元向DFS注册之后,DFS可以确定该备路由生成单元为新消费者,则DFS可以将DB中存储的历史数据发送给备路由生成单元,DFS还可以通过Message Broker将主路由生成单元实时生成的数据发送给该备路由生成单元。
主路由生成单元和备路由生成单元实现数据同步和报文同步之后,可以通过定界达到实时保护态。如果主路由生成单元故障,LES可以在达到实时保护态的备路由生成单元中选举一个路由生成单元作为主路由生成单元,与路由节点建立路由邻居,并收发BGP路由,实现BGP邻居不中断,BGP路由不中断。其中,定界指的是备路由生成单元从DFS中获取的数据和备路由生成单元接收到的来自主PFS的TCP报文无缝接续,确保主路由生成单元和备路由生成单元保持最终一致性。
以入方向定界为例,主路由生成单元接收来自路由节点的入方向报文,BGP1对该入方向报文进行解析,生成多个RibIn。主路由生成单元按解析顺序将RibIn实时写入DFS。DFS在关于该入方向报文的最后一个RibIn之后写入一个Dummy路由,该Dummy路由携带的是该入方向报文对应的TCP结束序列号,表示的是该入方向报文的边界,其中每一个入方向报文对应一个TCP结束序列号,不同入方向报文对应不同TCP结束序列号。如图6所示,该Dummy路由就是图中的ESN k或ESN k-1等,ESN k和ESN k-1之间的路由对应一个入方向报文。RibIn可以包括r k-1,1,r k-1,2,…,r k-1,m,r k,1,…,r k,m。例如,一个完整的入方向报文解析后生产的RibIn包括r k-1,1,r k-1,2,…,r k-1,m,主路由生成单元可以在r k-1,m之后写入一个Dummy路由,该Dummy路由携带ESN k-1。又如,下一个完整的入方向报文解析后生产的RibIn包括r k,1,r k,2,…,r k,m,主路由生成单元可以在r k,m之后写入一个Dummy路由,该Dummy路由携带ESN k。DFS将携带Dummy路由的RibIn存储到DB中。新上线的备路由生成单元向DFS注册之后,DFS可以将DB中存储的历史数据发送给备路由生成单元,历史数据包括RibIn和Dummy路由。备路由生成单元读取到Dummy路由时,就表明把一个完整的入方向报文读取完了。备路由生成单元在进行数据同步的过程中,可以实时接收来自主TCP FTI的入方向报文。备路由生成单元读取到Dummy路由之后,可以将Dummy路由中的TCP结束序列号和接收到的来自主TCP FTI的入方向报文中的最小TCP结束序列号进行比较,当Dummy路由中的TCP结束序列号大于或等于上述最小TCP 结束序列号时,可以确定完成了入方向定界。在定界完成前,备路由生成单元仅可缓存接收到的来自主TCP FTI的入方向报文,不能对该入方向报文进行解析处理。在定界完成后,备路由生成单元不再从DFS读取数据,而是接收来自主TCP FTI的入方向报文,对该入方向报文进行解析,生成RibIn。
以出方向定界为例,主路由生成单元向主TCP FTI发送一个出方向报文时,可以携带一个时间戳T。BGP1对该出方向报文进行解析,生成多个RibOut。主路由生成单元按解析顺序将RibOut实时写入DFS。DFS在关于该出方向报文的最后一个RibOut之后写入一个Dummy路由,该Dummy路由携带的是该出方向报文对应的时间戳T,表示的是该出方向报文的边界。如图7所示的路由信息管理系统为例,在DFS消息队列中,两个时间戳之间的路由对应一个出方向报文,其中每一个出方向报文对应一个时间戳,不同出方向报文对应不同时间戳。DFS将携带Dummy路由的RibOut存储到DB中。RibOut可以包括r k-1,1,r k-1,2,…,r k-1,m,r k,1,…,r k,m。例如,一个完整的出方向报文解析后生产的RibOut包括r k-1,1,r k-1,2,…,r k-1,m,主路由生成单元可以在r k-1,m之后写入一个Dummy路由,该Dummy路由携带T k-1。又如,下一个完整的入方向报文解析后生产的RibOut包括r k,1,r k,2,…,r k,m,主路由生成单元可以在r k,m之后写入一个Dummy路由,该Dummy路由携带T k。新上线的备路由生成单元向DFS注册之后,DFS可以将DB中存储的历史数据发送给备路由生成单元,历史数据包括RibOut和Dummy路由。备路由生成单元读取到Dummy路由时,就表明把一个完整的出方向报文读取完了。备路由生成单元在进行数据同步的过程中,可以实时接收来自主TCP FTI的出方向报文。备路由生成单元读取到Dummy路由之后,可以将Dummy路由中的时间戳和接收到的来自主TCP FTI的入方向报文中的最小时间戳进行比较,当Dummy路由中的时间戳大于或等于上述最小时间戳时,可以确定完成了出方向定界。在定界完成前,备路由生成单元仅可缓存接收到的来自主TCP FTI的出方向报文,不能对该出方向报文进行解析处理。在定界完成后,备路由生成单元不再从DFS读取数据,而是接收来自主TCP FTI的出方向报文,对该出方向报文进行解析,生成RibOut。
在一种实现方式中,在定界完成前,备路由生成单元仅可缓存接收到的来自主TCP FTI的出方向报文,不能对该出方向报文进行解析处理。此时如果BGP邻居有大量路由震荡,就会产生大量TCP报文。为了避免备路由生成单元缓存的报文的数量较多,导致占用的内存较多,可以设置备路由生成单元缓存报文的最大数量。当备路由生成单元缓存的报文的数量大于第二预设数量阈值时,可以进行报文覆盖,即删除存储时间最长的报文。一旦进行了覆盖,就会导致路由追赶失败,从而要进行多次追赶,定界时间长,极端情况震荡频率超过一定速度,可能永远无法追赶上。需要进行多次追赶的原因是:一个TCP报文通过PFS同步给了主路由生成单元和备路由生成单元,备路由生成单元缓存报文,主路由生成单元解析报文生成路由,并将路由写入DFS;备路由生成单元从DFS读取主路由生成单元写入的路由,可以看出,备路由生成单元从DFS读取到主路由生成单元写入的路由这个流程比备路由生成单元缓存报文流程要长很多。如果BGP邻居路由震荡很快,就会就会产生大量TCP报文,导致备路由生成单元缓存的报文的数量大于第二预设数量阈值,需要删除存储时间最长的报文,从而导致备路由生成单元从DFS读取到的Dummy路由小于缓存的最小TCP结束序列号或者时间戳,这一次追赶就失败了,只能等待下一次。为了解决路由震荡导致追赶时间长的问题,在定界完成前,备路由生成单元可以将缓存的报文进行解析生成RibIn和RibOut,进而缓存生成的RibIn和RibOut;当路由震荡时,由于缓存的是RibIn 和RibOut,RibIn和RibOut可以进行合并,因此占用的内存较少,无需覆盖。备路由生成单元从DFS读取到Dummy路由时,如果Dummy路由大于或等于缓存的RibIn的最小TCP结束序列号,则入方向定界完成;如果Dummy路由大于或等于缓存的RibOut的最小时间戳,则出方向定界完成,进而备路由生成单元把缓存的RibIn、RibOut与从DFS读取到的RibIn、RibOut进行合并,合并完成后即完成定界。
相对传统的路由信息管理系统,主路由生成单元需要感知新上线的备路由生成单元,并由主路由生成单元判断新上线的备路由生成单元是否完成定界。定界期间将长时间占用主路由生成单元的系统资源,从而对主路由生成单元实时生成数据的性能造成影响。
而本申请实施例中,主路由生成单元无需感知备路由生成单元,可由备路由生成单元判断是否完成定界,无需占用主路由生成单元的系统资源,可提升主路由生成单元的性能,降低软件复杂性。
结合图6以及图7所示的路由信息管理系统,图8提供了另一种路由信息管理方法的流程示意图,该方法包括但不限于如下步骤:
步骤S801:备路由生成单元向DFS发送注册信息。
备路由生成单元可以向DFS发送注册信息,注册信息可以包括该备路由生成单元的单元标识,注册信息可以用于指示该备路由生成单元为新消费者。
步骤S802:DFS将DB中的第一数据发送给备路由生成单元,第一数据所包含的最后一个路由携带TCP结束序列号,第一数据是主路由生成单元对第一TCP报文进行解析得到的。
主路由生成单元接收到来自路由节点的第一TCP报文之后,可以对第一TCP报文进行解析得到第一数据,第一TCP报文可以包括部分或者全部第一数据,第一数据可以包括至少一个路由。主路由生成单元将第一数据存储到DFS的DB中。备路由生成单元向DFS发送注册信息之后,DFS可以确定该备路由生成单元为新消费者,然后DFS可以将DB中存储的第一数据发送给备路由生成单元。
步骤S803:主TCP FTI接收来自路由节点的第三TCP报文。
路由节点实时生成第三TCP报文之后,可以将第三TCP报文发送给主TCP FTI,主TCP FTI可以将第三TCP报文分别发送给主路由生成单元和备路由生成单元。第三TCP报文可以为入方向报文。
本申请实施例并不限定步骤S802和步骤S803的执行顺序。例如主TCP FTI接收来自路由节点的第三TCP报文之后,DFS将DB中的第一数据发送给备路由生成单元;又如主TCP FTI接收来自路由节点的第三TCP报文的同时,DFS将DB中的第一数据发送给备路由生成单元,具体不受本申请实施例的限制。
步骤S804:主TCP FTI将第三TCP报文发送给备路由生成单元。
步骤S805:备路由生成单元将第一数据携带的TCP结束序列号和第三TCP报文中的最小TCP结束序列号进行比较。
TCP结束序列号可以用于标识第一TCP报文。例如主路由生成单元对第一TCP报文进行解析得到第一数据,第一数据包括第一路由、第二路由和第三路由,主路由生成单元可以在第三路由之后写入一个Dummy路由,该Dummy路由携带TCP结束序列号。备路由生成单元获取到TCP结束序列号之后,可以确定已成功获取到第一数据所包含的完整数 据。
主TCP FTI每接收到来自路由节点的第三TCP报文之后,可以生成该第三TCP报文的TCP结束序列号。主TCP FTI将第三TCP报文和第三TCP报文的TCP结束序列号发送给备路由生成单元。
备路由生成单元接收第一数据时,可以获取第一数据携带的TCP结束序列号。另外,备路由生成单元接收第三TCP报文之后,可以在接收到的所有第三TCP报文的TCP结束序列号中查找最小TCP结束序列号,将第一数据携带的TCP结束序列号和第三TCP报文中的最小TCP结束序列号进行比较。
步骤S806:DFS将DB中的第二数据发送给备路由生成单元,第二数据所包含的最后一个路由携带时间戳,第二数据是主路由生成单元对第二TCP报文进行解析得到的。
主路由生成单元生成第二TCP报文之后,可以对第二TCP报文进行解析得到第二数据,第二TCP报文可以包括部分或者全部第二数据,第二数据可以包括至少一个路由。主路由生成单元将第二数据存储到DFS的DB中。备路由生成单元向DFS发送注册信息之后,DFS可以确定该备路由生成单元为新消费者,然后DFS可以将DB中存储的第二数据发送给备路由生成单元。
本申请实施例并不限定步骤S802至S805和步骤S806至S809的执行顺序。
步骤S807:主TCP FTI接收来自主路由生成单元的第四TCP报文。
主路由生成单元实时生成第四TCP报文之后,可以将第四TCP报文发送给主TCP FTI,主TCP FTI可以将第四TCP报文分别发送给路由节点和备路由生成单元。第四TCP报文可以为出方向报文。
步骤S808:主TCP FTI将第四TCP报文发送给备路由生成单元。
步骤S809:备路由生成单元将第二数据携带的时间戳和第四TCP报文中的最小时间戳进行比较。
时间戳可以用于标识第二TCP报文,时间戳可以为第二数据由主路由生成单元发送至DFS的时间。例如主路由生成单元对第二TCP报文进行解析得到第二数据,第二数据包括第四路由、第五路由和第六路由,主路由生成单元可以在第六路由之后写入一个Dummy路由,该Dummy路由携带时间戳,主路由生成单元将第二数据以及第二数据携带的时间戳发送给DFS。备路由生成单元获取到时间戳之后,可以确定已成功获取到第二数据所包含的完整数据。
主TCP FTI每接收到来自主路由生成单元的第四TCP报文之后,可以生成该第四TCP报文的时间戳。主TCP FTI将第四TCP报文和第四TCP报文的时间戳发送给备路由生成单元。
备路由生成单元接收第二数据时,可以获取第二数据携带的时间戳。另外,备路由生成单元接收第四TCP报文之后,可以在接收到的所有第四TCP报文的时间戳中查找最小时间戳,将第一数据携带的时间戳和第四TCP报文中的最小时间戳进行比较。
步骤S810:在第一数据携带的TCP结束序列号大于或等于最小TCP结束序列号,且第二数据携带的时间戳大于或等于最小时间戳时,备路由生成单元停止从DFS中获取数据。
本申请实施例中,主路由生成单元无需感知备路由生成单元,可由备路由生成单元判断是否完成定界,无需占用主路由生成单元的系统资源,可提升主路由生成单元的性能, 降低软件复杂性。
图9是本申请实施例公开的另一种路由信息管理系统的架构示意图,该路由信息管理系统可以包括一个主路由生成单元901、至少一个备路由生成单元(例如备路由生成单元902以及备路由生成单元903)以及路由节点。其中,每个路由生成单元(例如主路由生成单元或者备路由生成单元)可以包括BGP模块,例如主路由生成单元901包括的BGP模块为BGP1,备路由生成单元包括的BGP模块为BGP2,BGP3,…,BGPn。BGP模块用于生成数据。
当主路由生成单元901和至少一个备路由生成单元形成实时保护态之后,如果主路由生成单元901故障,LES可以在至少一个备路由生成单元中选举出一个路由生成单元(例如备路由生成单元902)作为主路由生成单元,至少一个备路由生成单元中除主路由生成单元以外的其他路由生成单元作为备路由生成单元,选举出的主路由生成单元和路由节点建立BGP邻居,实现BGP邻居不中断,BGP路由不中断。
具体实现中,通过图2或图3所示的报文管理方法,在主路由生成单元901故障之前,主路由生成单元901收发的TCP报文和至少一个备路由生成单元中的各个备路由生成单元的TCP报文一致,例如主TCP FTI将来自路由节点的第一TCP报文分别发送给主路由生成单元901和至少一个备路由生成单元,又如主TCP FTI将主路由生成单元901生成的第二TCP报文分别发送给路由节点和至少一个备路由生成单元。在主路由生成单元901故障之后,选举出的主路由生成单元(例如备路由生成单元902)中的TCP模块可以和路由节点建立TCP会话,避免出现TCP报文不连续,导致TCP错误断连的情况,可实现TCP连接不中断。
另外,备路由生成单元902在完成定界后,对来自主PFS的入方向报文进行解析生成RibIn。备路由生成单元902可以基于入方向报文和RibIn生成新的路由信息,基于该路由信息得到出方向报文(即备路由生成单元902基于RibIn模拟向路由节点发送备路由生成单元902的出方向报文)。备路由生成单元902对备路由生成单元902的出方向报文进行解析生成备路由生成单元902的RibOut集合。主路由生成单元901响应来自主PFS的入方向报文生成主路由生成单元901的出方向报文,并通过主PFS将主路由生成单元901的出方向报文同步给备路由生成单元902。备路由生成单元902可以对来自主PFS的主路由生成单元901的出方向报文进行解析生成主路由生成单元901的RibOut集合。在该备路由生成单元902选举为主路由生成单元之后,备路由生成单元902可以计算主路由生成单元901的RibOut集合和备路由生成单元902的RibOut集合之间的第一差集,以及备路由生成单元902的RibOut集合和主路由生成单元901的RibOut集合之间的第二差集。如果第一差集不为空集,第二差集为空集,则该备路由生成单元902可以向路由节点发送删除指令,删除指令携带上述第一差集,删除指令用于指示路由节点删除上述第一差集。如果第一差集和第二差集均不为空集,则该备路由生成单元902可以向路由节点发送更新指令,更新指令携带第一差集和第二差集,更新指令用于指示路由节点将第一差集更新为第二差集。如果第一差集为空集,第二差集不为空集,则该备路由生成单元902可以向路由节点发送添加指令,添加指令携带第二差集,添加指令用于指示路由节点增加第二差集。如果第一差集和第二差集均为空集,则该备路由生成单元902可以确定主路由生成单元901向路由节点发送的路由无误。本申请实施例中,主路由生成单元故障时,在备路由生成单元 对路由节点无感知的情况下,通过计算差集的方式可避免备路由生成单元选举为主路由生成单元之后向路由节点发送的路由错误,实现BGP路由不中断。
另外,备路由生成单元处于激活(active)状态。在主路由生成单元故障之前,备路由生成单元可以对来自主PFS的报文进行解析生成RibIn和RibOut,则该备路由生成单元选举为主路由生成单元后,路由节点感知主路由生成单元的切换,直接把Rib路由切换到选举出的主路由生成单元。相比传统的路由信息管理系统,无需进行全量平滑,提升路由信息管理系统的处理性能。
另外,路由信息管理系统中,备路由生成单元和主路由生成单元一样处于active状态,主路由生成单元和备路由生成单元均计算路由,下发路由,生成路由邻居。如果其中一个路由生成单元下发的数据与其他路由生成单元下发的数据都不一致,则路由节点可以确定该路由生成单元出现了业务逻辑故障,路由节点可以生成该路由生成单元的业务逻辑描述信息,并输出该路由生成单元的业务逻辑描述信息,用户可以响应该路由生成单元的业务逻辑描述信息,对该路由生成单元进行版本升级或者其他修复措施。如果主路由生成单元出现了业务逻辑故障,路由节点可以触发主路由生成单元的切换,本申请实施例可及时发现逻辑故障,减小业务受损时延。
本申请实施例中,因为路由信息管理系统部署了多个路由生成单元,只要多点故障时,还有一个备路由生成单元处于实时保护态,则BGP业务不会受到影响。
结合图9所示的路由信息管理系统,图10提供了另一种路由信息管理方法的流程示意图,该方法包括但不限于如下步骤:
步骤S1001:备路由生成单元接收来自主PFS的第一TCP报文。
步骤S1002:备路由生成单元对第一TCP报文进行解析,得到路由信息。
步骤S1003:备路由生成单元基于第一TCP报文和路由信息,生成新的路由信息。
步骤S1004:备路由生成单元基于新的路由信息,得到备路由生成单元的第二TCP报文。
步骤S1005:备路由生成单元对备路由生成单元的第二TCP报文进行解析生成备路由生成单元的RibOut集合。
步骤S1006:主路由生成单元接收来自主PFS的第一TCP报文。
步骤S1007:主路由生成单元响应第一TCP报文生成主路由生成单元的第二TCP报文。
步骤S1008:主路由生成单元通过主PFS将主路由生成单元的第二TCP报文发送给备路由生成单元。
步骤S1009:备路由生成单元对主路由生成单元的第二TCP报文进行解析生成主路由生成单元的RibOut集合。
步骤S1010:备路由生成单元计算主路由生成单元的RibOut集合和备路由生成单元的RibOut集合之间的第一差集,以及备路由生成单元的RibOut集合和主路由生成单元的RibOut集合之间的第二差集。
第一差集指的是以属于主路由生成单元的RibOut集合,而不属于备路由生成单元的RibOut集合的元素为元素的集合。第二差集指的是以属于备路由生成单元的RibOut集合,而不属于主路由生成单元的RibOut集合的元素为元素的集合。
以图11A为例,若主路由生成单元的RibOut集合M完全包含备路由生成单元的RibOut 集合N,则第一差集为图11A中的阴影部分,该阴影部分的形状为环形,即第一差集不为空集。第二差集为空集。
以图11B为例,若备路由生成单元的RibOut集合N完全包含主路由生成单元的RibOut集合M,则第一差集为空集,第二差集为图11B中的阴影部分,该阴影部分的形状为环形,即第二差集不为空集。
以图11C为例,若主路由生成单元的RibOut集合M和备路由生成单元的RibOut集合N部分重叠,则第一差集和第二差集可以如图11C所示,即第一空集和第二差集均不为空集。
以图11D为例,若主路由生成单元的RibOut集合M和备路由生成单元的RibOut集合N完全不重叠,则第一差集可以为M,第二差集可以为N,即第一空集和第二差集均不为空集。
步骤S1011:如果第一差集不为空集,且第二差集为空集,则备路由生成单元向路由节点发送删除指令。如果第一差集和第二差集均不为空集,则备路由生成单元向路由节点发送更新指令。
步骤S1012:如果第一差集和第二空集均不为空集,则备路由生成单元向路由节点发送更新指令。
步骤S1013:如果第一差集为空集,且第二差集不为空集,则备路由生成单元向路由节点发送添加指令。
本申请实施例中,主路由生成单元故障时,在备路由生成单元对路由节点无感知的情况下,通过计算差集的方式可避免备路由生成单元选举为主路由生成单元之后向路由节点发送的路由错误,实现BGP路由不中断。
图12是本申请实施例提供的一种路由信息管理系统的结构示意图,该路由信息管理系统可以包括主路由生成单元1201、至少一个备路由生成单元1202、数据库单元1203、主TCP收发单元1204和路由节点1205,该主路由生成单元1201可包括路由信息生成模块12011和发送模块12012,每个备路由生成单元1202可以包括路由信息接收模块12021、报文接收模块12022、确定模块12023以及路由信息生成模块12024:
所述路由信息生成模块12011,用于生成与TCP报文相关的路由信息;
所述发送模块12012,用于向数据库单元1203发送所述路由信息和所述路由信息的第一标识信息,其中所述第一标识信息是基于所述TCP报文确定的。
路由信息接收模块12021,用于从数据库单元1203接收所述路由信息和所述路由信息的第一标识信息;
报文接收模块12022,用于从主TCP收发单元接收所述TCP报文;
确定模块12023,用于根据所述第一标识信息和所述TCP报文确定所述路由信息与所述TCP报文匹配;
路由信息生成模块12024,用于基于所述路由信息和所述TCP报文生成新的路由信息。
在一种实现方式中,所述路由信息是由所述路由信息生成模块12011基于所述TCP报文生成的。
在一种实现方式中,路由信息接收模块12021,还用于在确定模块12023根据所述第一标识信息和所述TCP报文确定所述路由信息与所述TCP报文匹配之后,停止从所述数 据库单元1203接收路由信息。
在一种实现方式中,在所述第一标识信息大于或等于所述TCP报文所携带的第二标识信息时,确定模块12023确定所述路由信息与所述TCP报文匹配。
在一种实现方式中,每个备路由生成单元1202还可以包括差集计算模块12025和发送模块12026;
差集计算模块12025,用于计算所述路由信息和所述新的路由信息之间的第一差集,以及所述新的路由信息和所述路由信息之间的第二差集;
发送模块12026,用于在所述第一差集不为空集,且所述第二差集为空集时,向路由节点1205发送删除指令,所述删除指令携带所述第一差集,所述删除指令用于指示所述路由节点删除所述第一差集。
在一种实现方式中,发送模块12026,还用于在所述第一差集和第二差集均不为空集时,向所述路由节点发送更新指令,所述更新指令携带所述第一差集和所述第二差集,所述更新指令用于指示所述路由节点1205将所述第一差集更新为所述第二差集。
在一种实现方式中,发送模块12026,还用于在所述第一差集为空集,且所述第二差集不为空集时,向所述路由节点发送添加指令,所述添加指令携带所述第二差集,所述添加指令用于指示所述路由节点1205增加所述第二差集。
需要说明的是,图12对应的实施例中未提及的内容以及各个模块执行步骤的具体实现方式可参见图1至图9所示实施例以及前述内容,这里不再赘述。
在一种实现方式中,图12中的各个模块所实现的相关功能可以结合处理器与通信接口来实现。图13是本发明实施例提供的一种主路由生成单元的结构示意图,该主路由生成单元包括处理器1301、存储器1302以及通信接口1303,所述处理器1301、所述存储器1302以及通信接口1303通过一条或多条通信总线连接。
处理器1301包括一个或者多个通用处理器,其中,通用处理器可以是能够处理电子指令的任何类型的设备,包括中央处理器(Central Processing Unit,CPU)、微处理器、微控制器、主处理器、控制器以及ASIC(Application Specific Integrated Circuit,专用集成电路)等等。处理器1301执行路由信息的生成指令和传输指令,例如生成与TCP报文相关的路由信息,又如将路由信息和路由信息的第一标识信息发送给数据库单元。通信接口1303可以为有线接口(例如以太网接口),用于与数据库单元进行通信。
存储器1302可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器也可以包括非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD),存储器还可以包括上述种类的存储器的组合。存储器1302可以存储有程序代码、TCP报文以及路由信息。
其中,所述处理器1301通过调用存储器1302中的程序代码,用于执行以下步骤:
处理器1301用于生成与TCP报文相关的路由信息;
通信接口1303用于向数据库单元发送所述路由信息和所述路由信息的第一标识信息,其中所述第一标识信息是基于所述TCP报文确定的。
需要说明的是,图13对应的实施例中未提及的内容以及各个器件执行步骤的具体实现方式可参见图1至图9所示实施例以及前述内容,这里不再赘述。
在一种实现方式中,图12中的各个模块所实现的相关功能可以结合处理器与通信接 口来实现。图14是本发明实施例提供的一种备路由生成单元的结构示意图,该备路由生成单元包括处理器1401、存储器1402以及通信接口1403,所述处理器1401、所述存储器1402以及通信接口1403通过一条或多条通信总线连接。
处理器1401包括一个或者多个通用处理器,其中,通用处理器可以是能够处理电子指令的任何类型的设备,包括CPU、微处理器、微控制器、主处理器、控制器以及ASIC等等。处理器1401执行路由信息匹配指令和路由信息生成指令,例如根据第一标识信息和TCP报文确定路由信息与TCP报文匹配,又如基于路由信息和TCP报文生成新的路由信息。通信接口1403可以为有线接口(例如以太网接口),用于与数据库单元以及主TCP收发单元进行通信。
存储器1402可以包括易失性存储器,例如RAM;存储器也可以包括非易失性存储器,例如ROM、快闪存储器、HDD或SSD,存储器还可以包括上述种类的存储器的组合。存储器1402可以存储有程序代码、路由信息、路由信息的第一标识信息以及TCP报文。
其中,所述处理器1401通过调用存储器1402中的程序代码,用于执行以下步骤:
通信接口1403用于从数据库单元接收路由信息和所述路由信息的第一标识信息;
通信接口1403还用于从主TCP收发单元接收TCP报文;
处理器1401用于根据所述第一标识信息和所述TCP报文确定所述路由信息与所述TCP报文匹配;
处理器1401还用于基于所述路由信息和所述TCP报文生成新的路由信息。
需要说明的是,图14对应的实施例中未提及的内容以及各个器件执行步骤的具体实现方式可参见图1至图9所示实施例以及前述内容,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,DVD;还可以是半导体介质,例如,固态硬盘(solid state disk,SSD)。
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
本申请中,“多个”是指两个或两个以上。在本申请的公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。

Claims (21)

  1. 一种路由信息管理方法,其特征在于,包括:
    主路由生成单元生成与TCP报文相关的路由信息;
    所述主路由生成单元向数据库单元发送所述路由信息和所述路由信息的第一标识信息,其中所述第一标识信息是基于所述TCP报文确定的。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    主TCP收发单元向所述主路由生成单元的至少一个备路由生成单元同步所述TCP报文。
  3. 根据权利要求1或2所述的方法,其特征在于,所述第一标识信息为所述TCP报文的结束序列号。
  4. 根据权利要求1或2所述的方法,其特征在于,所述第一标识信息为所述TCP报文对应的时间戳。
  5. 根据权利要求1-4任一项所述的方法,在特征在于,所述路由信息是由所述主路由生成单元基于所述TCP报文生成的。
  6. 根据权利要求5所述的方法,在特征在于,所述TCP报文包括所述路由信息的部分或全部。
  7. 一种路由信息管理方法,其特征在于,包括:
    备路由生成单元从数据库单元接收路由信息和所述路由信息的第一标识信息;
    所述备路由生成单元从主TCP收发单元接收TCP报文;
    所述备路由生成单元根据所述第一标识信息和所述TCP报文确定所述路由信息与所述TCP报文匹配;
    所述备路由生成单元基于所述路由信息和所述TCP报文生成新的路由信息。
  8. 根据权利要求7所述的方法,其特征在于,所述备路由生成单元根据所述第一标识信息和所述TCP报文确定所述路由信息与所述TCP报文匹配之后,还包括:
    所述备路由生成单元停止从所述数据库单元接收路由信息。
  9. 根据权利要求7或8所述的方法,其特征在于,所述备路由生成单元根据所述第一标识信息和所述TCP报文确定所述路由信息与所述TCP报文匹配,包括:
    在所述第一标识信息大于或等于所述TCP报文所携带的第二标识信息时,所述备路由生成单元确定所述路由信息与所述TCP报文匹配。
  10. 根据权利要求7-9任一项所述的方法,其特征在于,所述方法还包括:
    所述备路由生成单元计算所述路由信息和所述新的路由信息之间的第一差集,以及所述新的路由信息和所述路由信息之间的第二差集;
    在所述第一差集不为空集,且所述第二差集为空集时,所述备路由生成单元向路由节点发送删除指令,所述删除指令携带所述第一差集,所述删除指令用于指示所述路由节点删除所述第一差集。
  11. 根据权利要求10所述的方法,其特征在于,所述备路由生成单元计算所述路由信息和所述新的路由信息之间的第一差集,以及所述新的路由信息和所述路由信息之间的第二差集之后,还包括:
    在所述第一差集和第二差集均不为空集时,所述备路由生成单元向所述路由节点发送更新指令,所述更新指令携带所述第一差集和所述第二差集,所述更新指令用于指示所述路由节点将所述第一差集更新为所述第二差集。
  12. 根据权利要求10所述的方法,其特征在于,所述备路由生成单元计算所述路由信息和所述新的路由信息之间的第一差集,以及所述新的路由信息和所述路由信息之间的第二差集之后,还包括:
    在所述第一差集为空集,且所述第二差集不为空集时,所述备路由生成单元向所述路由节点发送添加指令,所述添加指令携带所述第二差集,所述添加指令用于指示所述路由节点增加所述第二差集。
  13. 一种通信装置,其特征在于,所述装置包括主路由生成单元,所述主路由生成单元包括路由信息生成模块和发送模块,
    所述路由信息生成模块,用于生成与TCP报文相关的路由信息;
    所述发送模块,用于向数据库单元发送所述路由信息和所述路由信息的第一标识信息,其中所述第一标识信息是基于所述TCP报文确定的。
  14. 根据权利要求13所述的装置,其特征在于,所述装置还包括主TCP收发单元,
    所述主TCP收发单元,用于向所述主路由生成单元的至少一个备路由生成单元同步所述TCP报文。
  15. 根据权利要求13或14所述的装置,其特征在于,所述第一标识信息为所述TCP报文的结束序列号。
  16. 根据权利要求13或14所述的装置,其特征在于,所述第一标识信息为所述TCP报文对应的时间戳。
  17. 根据权利要求13-16任一项所述的装置,在特征在于,所述路由信息是由所述主路由生成单元基于所述TCP报文生成的。
  18. 根据权利要求17所述的装置,在特征在于,所述TCP报文包括所述路由信息的 部分或全部。
  19. 一种通信装置,其特征在于,所述装置包括备路由生成单元,所述备路由生成单元包括路由信息接收模块、报文接收模块、确定模块以及路由信息生成模块,
    所述路由信息接收模块、报文接收模块、确定模块以及路由信息生成模块用于实现权利要求7-12中任一项所述的路由信息管理方法。
  20. 一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序或指令,当所述程序或指令被处理器执行时,使所述处理器执行如权利要求1-6中任一项所述的路由信息管理方法。
  21. 一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序或指令,当所述程序或指令被处理器执行时,使所述处理器执行如权利要求7-12中任一项所述的路由信息管理方法。
PCT/CN2020/078916 2019-03-13 2020-03-12 路由信息管理方法、装置及计算机存储介质 WO2020182177A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP20769589.1A EP3917094A4 (en) 2019-03-13 2020-03-12 ROUTING INFORMATION MANAGEMENT METHOD AND APPARATUS AND COMPUTER STORAGE MEDIUM
US17/471,668 US20220006720A1 (en) 2019-03-13 2021-09-10 Routing Information Management Method and Apparatus, and Computer Storage Medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910190984.7A CN111698151B (zh) 2019-03-13 2019-03-13 路由信息管理方法、装置及计算机存储介质
CN201910190984.7 2019-03-13

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/471,668 Continuation US20220006720A1 (en) 2019-03-13 2021-09-10 Routing Information Management Method and Apparatus, and Computer Storage Medium

Publications (1)

Publication Number Publication Date
WO2020182177A1 true WO2020182177A1 (zh) 2020-09-17

Family

ID=72427152

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/078916 WO2020182177A1 (zh) 2019-03-13 2020-03-12 路由信息管理方法、装置及计算机存储介质

Country Status (4)

Country Link
US (1) US20220006720A1 (zh)
EP (1) EP3917094A4 (zh)
CN (2) CN115208824A (zh)
WO (1) WO2020182177A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233473A1 (en) * 2002-05-07 2003-12-18 International Business Machines Corporation Method for configuring logical connections to a router in a data communication system
CN101610279A (zh) * 2008-06-19 2009-12-23 中国移动通信集团公司 数据库操作的路由方法、路由实体及数据存储网络
CN106802932A (zh) * 2016-12-28 2017-06-06 华为技术有限公司 一种数据库的路由方法、装置及数据库系统
CN109218202A (zh) * 2018-08-24 2019-01-15 新华三技术有限公司 路由同步方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09275414A (ja) * 1996-04-05 1997-10-21 Hitachi Ltd 通信ネットワークシステム
US6757248B1 (en) * 2000-06-14 2004-06-29 Nokia Internet Communications Inc. Performance enhancement of transmission control protocol (TCP) for wireless network applications
US6910148B1 (en) * 2000-12-07 2005-06-21 Nokia, Inc. Router and routing protocol redundancy
US20020176355A1 (en) * 2001-05-22 2002-11-28 Alan Mimms Snooping standby router
US7286468B2 (en) * 2002-11-12 2007-10-23 Cisco Technology, Inc. Routing system and method for synchronizing a routing system with peers after failover
US20040246902A1 (en) * 2003-06-02 2004-12-09 Weinstein Joseph J. Systems and methods for synchronizing multple copies of a database using datablase digest
JP4789425B2 (ja) * 2004-03-31 2011-10-12 富士通株式会社 経路テーブル同期方法、ネットワーク機器および経路テーブル同期プログラム
US7515525B2 (en) * 2004-09-22 2009-04-07 Cisco Technology, Inc. Cooperative TCP / BGP window management for stateful switchover
CN1859423B (zh) * 2006-02-27 2010-12-08 华为技术有限公司 一种主机和转发设备同步切换的方法
US8154992B2 (en) * 2009-08-11 2012-04-10 Google Inc. System and method for graceful restart
FR2978635A1 (fr) * 2011-07-25 2013-02-01 France Telecom Technique d'acheminement de messages de synchronisation
CN108259356B (zh) * 2017-04-25 2020-08-04 新华三技术有限公司 路由控制方法和装置
US11012367B2 (en) * 2018-03-30 2021-05-18 Intel IP Corporation Technologies for managing TCP/IP packet delivery
US10630568B2 (en) * 2018-09-07 2020-04-21 Qualcomm Incorporated Transmission control protocol timestamp rewriting

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233473A1 (en) * 2002-05-07 2003-12-18 International Business Machines Corporation Method for configuring logical connections to a router in a data communication system
CN101610279A (zh) * 2008-06-19 2009-12-23 中国移动通信集团公司 数据库操作的路由方法、路由实体及数据存储网络
CN106802932A (zh) * 2016-12-28 2017-06-06 华为技术有限公司 一种数据库的路由方法、装置及数据库系统
CN109218202A (zh) * 2018-08-24 2019-01-15 新华三技术有限公司 路由同步方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3917094A4

Also Published As

Publication number Publication date
EP3917094A1 (en) 2021-12-01
CN111698151A (zh) 2020-09-22
CN115208824A (zh) 2022-10-18
CN111698151B (zh) 2022-06-28
US20220006720A1 (en) 2022-01-06
EP3917094A4 (en) 2022-03-23

Similar Documents

Publication Publication Date Title
AU2004306913B2 (en) Redundant routing capabilities for a network node cluster
US7801135B2 (en) Transport protocol connection synchronization
CN111682927B (zh) 一种基于mlag环境的报文同步方法、装置、设备及介质
CN103368840A (zh) 减少多宿主网络连接内的边界网关协议会话的流量损失
US20220353165A1 (en) Determining node behavior in deterministic networks
JP4561800B2 (ja) データ同期システム及び方法
CN109495345A (zh) 一种bfd处理方法及网络设备
CN106878072A (zh) 一种报文传输方法和装置
CN110493129A (zh) 备份标签路径的更新方法、报文转发方法及装置
CN113746733A (zh) 表项同步方法、网关设备、组网系统及存储介质
US11223559B2 (en) Determining connectivity between compute nodes in multi-hop paths
JP2016515361A (ja) アプリケーションにより提供される送信メタデータに基づくネットワーク送信調整
CN115589273A (zh) Epa通信系统
US11985027B2 (en) Systems and methods for seamless failover in branch deployments by superimposing clustering solution on VRRP
WO2018004931A1 (en) Techniques for virtual ethernet switching of a multi-node fabric
WO2020182177A1 (zh) 路由信息管理方法、装置及计算机存储介质
WO2021244588A1 (zh) 处理路由报文的方法、通信设备、存储介质及系统
JP6740683B2 (ja) 並列処理装置及び通信制御方法
CN114760242B (zh) 虚拟路由器的迁移方法、装置、电子设备及存储介质
CN113765783B (zh) 通信方法及装置
CN114051047B (zh) 一种会话消息的备份方法、装置、网络设备和存储介质
WO2022135321A1 (zh) 报文传输方法、设备及系统
WO2023231836A1 (zh) 一种文件同步方法、装置、设备及存储介质
JP2017212487A (ja) Ipフラグメント装置、ipデフラグメント装置、ipフラグメントパケット通信システム、ipフラグメントパケット送信方法、ipフラグメントパケットのデフラグメント方法、ipフラグメントパケットの通信方法及びプログラム
CN116647440A (zh) 防微环的报文发送方法、装置、计算机设备及可读介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20769589

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020769589

Country of ref document: EP

Effective date: 20210825

NENP Non-entry into the national phase

Ref country code: DE