WO2007093087A1 - Procédé de synchronisation d'état de connexion dans des communications de données et nœud de communication affecté - Google Patents

Procédé de synchronisation d'état de connexion dans des communications de données et nœud de communication affecté Download PDF

Info

Publication number
WO2007093087A1
WO2007093087A1 PCT/CN2006/001520 CN2006001520W WO2007093087A1 WO 2007093087 A1 WO2007093087 A1 WO 2007093087A1 CN 2006001520 W CN2006001520 W CN 2006001520W WO 2007093087 A1 WO2007093087 A1 WO 2007093087A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
connection
local
synchronization
peer
Prior art date
Application number
PCT/CN2006/001520
Other languages
English (en)
French (fr)
Inventor
Ju Wang
Original Assignee
Hangzhou H3C Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co., Ltd. filed Critical Hangzhou H3C Technologies Co., Ltd.
Priority to AU2006338127A priority Critical patent/AU2006338127B2/en
Priority to JP2008552664A priority patent/JP2009525013A/ja
Priority to EP06761331A priority patent/EP1986337A4/en
Priority to US12/094,025 priority patent/US7860985B2/en
Publication of WO2007093087A1 publication Critical patent/WO2007093087A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • 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/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Definitions

  • the present invention relates to the field of network and communication technologies, and in particular, to a method for synchronizing connection states in data communication and a communication node to which the method is applied.
  • Transmission Control Protocol is the most commonly used transport layer protocol used by the world today to provide reliable data transmission between two points on the Internet.
  • the most popular protocols such as Telnet, File Transfer Protocol, and Hyper Text Transfer Protocol (HTTP) are all based on TCP technology.
  • TCP is a connection-oriented protocol. A TCP connection is established between two network nodes before data is transmitted, and data is transmitted according to the current TCP connection status.
  • Node B in Figure 1 is a distributed device that includes a motherboard and a standby board, and establishes a TCP connection with node A.
  • the logical TCP connection between Node A and Node B is actually completed by the motherboards of Node A and Node B.
  • the standby board takes over the work of the motherboard.
  • the standby board For a TCP connection, the standby board must know the connection status when the active/standby switchover occurs. For example, the serial number already used by the sender and receiver can be used to connect to the original TCP connection. Otherwise, the standby board can only re-establish a new relationship with node A. TCP connection. Re-establishing a TCP connection may cause serious problems in some cases. For example, Node A and Node B are two routers. The TCP connection is used to carry the Border Gateway Protocol (BGP) protocol. Once the TCP connection is reestablished, Causes route flapping for a period of time. Therefore, the state synchronization of TCP connections is the key to the problem.
  • Border Gateway Protocol Border Gateway Protocol
  • Node A and Node B in 1 are examples.
  • the first synchronization method is shown in Figure 2. After each TCP packet transmission between Node A and Node B, the motherboard will include TCP in each packet. The connection status information is notified to the standby board by the TCP synchronization message between the main board and the standby board. When a switchover occurs, the standby board can connect to the original TCP connection through the backup connection status information.
  • the second synchronization method is shown in Figure 3.
  • the motherboard of the node B copies a copy of the TCP packet received from the node A to the On the standby board, the packets sent to the node A are also copied to the standby board.
  • the standby board maintains synchronization with the TCP connection status of the main board according to the duplicated packets received from the main board.
  • the main board can only generate the synchronization information or send the packet to the standby board after receiving the TCP packet from the node A. Even if the main board sends a TCP packet to the node A, it sends a duplicate message to the standby board or synchronizes. Information, considering that the motherboard must perform heavy business processing at the same time, it is difficult to ensure that the two sending processes are performed simultaneously according to the process scheduling mechanism of the operating system; in other words, the packet transmission of node A and node B and the state of the active and standby boards are synchronized. There is basically a certain time difference between the two.
  • the timing of the active/standby switchover is uncontrollable.
  • the standby board may take over the work of the motherboard at any time. Therefore, whether the standby board can successfully connect to the original TCP connection depends on the moment when the switchover occurs. Whether the synchronization is consistent with the case of message transmission. Once the two are inconsistent, the original TCP connection state cannot be restored, and only the TCP connection can be reestablished between Node A and Node B.
  • both methods require real-time synchronization of the TCP connection between the motherboard and the standby board, resulting in excessive information transmission between the motherboard and the standby board, consuming a large amount of bandwidth between the motherboard and the standby board and the central processing unit ( The resources of the CPU, Central Process Unit) reduce the performance of the device.
  • the object of the present invention is to provide a connection state synchronization method in data communication and a network node device applying the method, so as to realize timely and reliable active/standby handover, thereby improving the reliability and security of network communication.
  • a method for synchronizing connection states in data communication includes:
  • the node requests connection state information from the peer node connected thereto;
  • the node updates the local connection status according to the connection status information returned by the peer node.
  • the node includes a first communication unit and at least one second communication unit;
  • the first communication unit Before the node requests the connection state information from the correspondent node, the first communication unit notifies the second communication unit of the connection parameter with the correspondent node.
  • the requesting, by the node, the connection state information to the peer node is: a second communication unit, after taking over the connection between the first communication unit and the opposite node, requesting connection state information from the peer node according to the connection parameter;
  • the second communication unit updates the local connection state according to the connection state information returned by the opposite node.
  • connection parameters include a source IP address, a destination IP address, a source port number, and a destination port number.
  • the connection status information includes a local serial number and a peer serial number.
  • the method further comprises:
  • the node sends the local window value while requesting the connection state information from the peer node; the connection state information returned by the peer node includes the window value of the terminal.
  • the node After the node updates the local connection status, the node confirms the connection status synchronization to the correspondent node.
  • the message of the connection status information is requested from the peer node by using the format of the synchronization SY message of the connection established by the transmission control protocol TCP;
  • the message confirming the connection state synchronization adopts the format of the third SYN message that the TCP establishes the connection.
  • the node that has established the connection receives the connection status information request of the opposite end node
  • the node returns the local current connection status information to the peer node.
  • the node suspends the data transmission of the connection after receiving the connection state information request of the peer node.
  • connection status information request of the peer node includes a window size of the end; the node updates the local peer window size according to the window value in the peer connection status information request;
  • the current connection status information returned to the opposite node includes the peer serial number of the local record, the local serial number, and the local window size.
  • the format of the second SY message that establishes the connection by using TCP is the current connection.
  • the status information is returned to the peer node, where the confirmation sequence number field is the peer serial number of the local record.
  • a communication node including a connection module and a synchronization request module, wherein:
  • connection module for communicating through a connection with a peer node
  • the synchronization request module is configured to send a connection status information request to the opposite node through the connection module, and synchronously update the local connection status according to the connection status information received by the connection module from the opposite node.
  • the communication node further includes:
  • connection module Confirm the connection status information synchronization to the correspondent node through the connection module.
  • connection status information request includes a local window size; the received connection status information includes a local serial number recorded by the opposite end node, a peer serial number, and a window size of the opposite end.
  • Still another communication node comprising a first communication unit and at least one second communication unit, wherein:
  • the first communication unit sends the connection parameter with the opposite node to the second communication unit; the second communication unit establishes a connection with the opposite node according to the connection parameter, and sends a connection status information request to the opposite node, and according to the opposite end
  • the connection status information received by the node is updated by the connection status.
  • connection status information of the unit is set to be the same as the received connection status information
  • connection status information received from the opposite end node includes a local serial number and a peer serial number recorded by the opposite end node; and the connection parameters include a source internet protocol IP address, a destination IP address, a source port number, and a destination port number.
  • connection module and a synchronization response module, wherein:
  • connection module is used to communicate through the connection with the opposite node
  • the synchronous response module is configured to receive a connection status information request from the opposite node output by the connection module, and send the local current connection status information to the opposite node through the connection module.
  • the communication node further includes a communication control module for receiving the opposite end section at the connection module W
  • connection status information of the point After the connection status information of the point is requested, the data communication of the connection module is suspended, and the data communication of the connection module is continued after the connection module receives the synchronization confirmation of the connection status of the opposite node.
  • the local current connection state information includes a locally recorded peer serial number, a local serial number, and a local window size.
  • a computer program designed in accordance with the present invention for implementing connection state synchronization in data communication which is stored in a communication node for causing the communication node to perform the following steps:
  • the local connection status is updated according to the connection status information returned by the peer node.
  • the communication node involved includes a primary communication unit and a backup communication unit, and the standby communication unit requests connection status information from the opposite end according to the connection parameter provided by the primary communication unit, and then obtains connection status information according to the obtained connection status information. Update the local connection status.
  • connection parameters involved include source IP address, destination IP address, source port number, and destination port number.
  • connection status information involved includes a local serial number and a peer serial number.
  • connection state information returned by the peer node includes its own window value.
  • the node After the node updates the local connection status, the node confirms the connection status synchronization to the correspondent node. a message in which the format of the first synchronous SYN packet of the connection established by the transmission control protocol TCP is used to request connection state information from the opposite node;
  • the message confirming the connection state synchronization adopts the format of the third SYN message that the TCP establishes the connection.
  • a computer program for implementing connection state synchronization in data communication which is stored in a communication node for causing the communication node to perform the following steps: from a peer end that has established a connection with the communication node Receiving a connection status information request at the node;
  • the communication node returns the local current connection state information to the peer node.
  • the connection state information request of the peer node includes a window size of the end; the node updates the local peer window size according to the window value in the peer connection state information request;
  • the current connection status information returned to the opposite node includes the peer serial number of the local record, the local serial number, and the local window size.
  • the format of the second SYN packet that is established by using the TCP connection returns the current connection status information to the peer node, where the confirmation sequence number field is the peer serial number of the local record.
  • FIG. 1 is a schematic diagram of a TCP connection of a high availability system
  • FIG. 2 is a schematic diagram of a first connection state synchronization method in the prior art
  • FIG. 3 is a schematic diagram of a second connection state synchronization method in the prior art
  • FIG. 4 is a flow chart of a synchronization request node in accordance with an embodiment of the present invention.
  • Figure 5 is a diagram showing the field structure of a TCP packet in the TCP/IP protocol
  • FIG. 6 is a flow chart of a synchronization response node in accordance with an embodiment of the present invention.
  • FIG. 7 is a flowchart of a synchronization request node according to another embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a synchronization request node and a synchronization response node to which a connection state synchronization method provided by the present invention is applied;
  • FIG. 9 is a schematic structural diagram of a synchronization request node and a synchronization response node to which a connection state synchronization method provided by the present invention is applied;
  • FIG. 10 is a schematic diagram of an added TCP state machine according to the present invention.
  • FIG. 11 is a flowchart of a message for connection state synchronization in an application example of the present invention
  • FIG. 12 is a flowchart of a message for connection state synchronization in another application example of the present invention.
  • the connection state synchronization of the high-availability system is focused on achieving strict state synchronization between the active and standby systems, so that the standby board and the main board are kept in synchronization, and the main board and the opposite end node can be successfully replaced when the switching occurs. Communication.
  • connection-oriented data transmission the connection with the peer node can be switched from the motherboard to the standby board, and the data transmission can be continued on the condition that the connection state of the standby board and the opposite node is synchronized, instead of being consistent with the connection state of the motherboard. If, for some reason, the connection status between the motherboard and the peer node is not synchronized when the switchover occurs, even if the connection status between the standby board and the motherboard is completely the same, the connection may be interrupted.
  • connection state of the peer node is actually the target of local synchronization, and the connection state is not related to the local active/standby switchover, and the heavy-duty local state backup, it is also necessary to depend on whether the moment when the handover occurs is exactly When the state of the terminal, the motherboard, and the standby board are synchronized, it is better to directly synchronize the connection state between the standby board and the peer node, thereby solving the problem from the original.
  • the synchronization request node is a node that needs to synchronize the connection state with the peer end
  • the synchronization response node is a node that connects the other end to send local connection state information according to the peer request.
  • the synchronous request node is usually a high-availability system, such as a router including a motherboard and a standby board, a cluster including multiple servers running in a single logical entity, and the like.
  • a synchronous response node can be a single device or a high availability system.
  • the synchronization requesting node is a high availability system, including the first communication unit and the at least one second communication unit
  • the first communication unit is a unit having a connection relationship with the opposite node, and may be a unit that establishes a connection with the opposite node. It may also be a unit that takes over the connection of other units to the correspondent node, and a second communication unit will take over the first communication unit to connect with the correspondent node and continue to carry the data transmission on the connection.
  • Step S410 The local node establishes a connection with the opposite node.
  • the connection state synchronization in the present invention occurs when the connection has been established.
  • IP Internet Protocol
  • the Internet Protocol (IP) address connecting the two parties and the port number used to identify the sending and receiving application processes of the connecting parties can uniquely determine a TCP connection, so the source IP address, destination IP address, source port number, and destination are usually adopted.
  • the port number is used as the connection parameter for the TCP connection.
  • Step S420 At some time after the connection is established, the connection exists between the first communication unit and the opposite node on the node.
  • the first communication unit notifies the second communication unit of the connection parameter of the connection, and the second communication unit restores the connection by the connection parameter when the handover occurs.
  • Step S430 a certain second communication unit takes over the connection between the first communication unit and the opposite node. At this time, the connection parameters of the connection are recorded locally in the second communication unit.
  • the connection by which second communication unit takes over the first communication unit is determined by the switching setting of the synchronization requesting node.
  • the second communication unit replacing the TCP connection of the first communication unit with the same connection parameter means that the second communication unit must use the IP address of the first communication unit, and in the case that the first communication unit is still working normally, the synchronization request node should be Ensure that the two units can use the same
  • IP addresses respectively perform connection-oriented communication with their opposite nodes.
  • Step S440 the second communication unit sends the connection state information to the opposite node according to the connection parameter of the handover connection.
  • the connection status information includes the local serial number and the peer serial number, and may also include the local and peer window sizes.
  • the field structure of the TCP header in the TCP/IP protocol packet is shown in Figure 5.
  • the 16-bit source port number is the port number of the sender application of the packet
  • the 16-bit destination port number is the receiver application of the packet.
  • the port number which is the connection parameter of the TCP connection together with the source IP address and the destination IP address in the IP header.
  • the application of the sender and the receiver exchanges a byte stream of 8 bits (bits) bytes through a TCP connection, and each end node of the TCP connection counts the byte stream received locally and received from the peer end by the sequence number and the acknowledgment sequence number, respectively.
  • the 32-bit serial number indicates that the sender of the message is in the newspaper
  • the serial number used by the first data byte in the text, and the 32-bit acknowledgment serial number indicates the end of the receiving acknowledgment, that is, the serial number of the next data byte that the transmitting end of the message expects to receive.
  • the data byte is the portion of the payload transmitted by the TCP connection.
  • the 16-bit window size is used to provide flow control for the TCP connection. It indicates the buffer size of the sender of the packet, that is, the size of the peer data. Both ends of the TCP connection can also negotiate a window size of more than 16 bits through the window expansion option.
  • the 4-bit header length is the total length of the TCP message, and the 6-bit reserved field is followed by 6 flag bits, where the SYN (synchronization) flag is used in the existing TCP protocol to indicate that a connection is initiated, and the ACK (acknowledgement) flag is set. Indicates that the 32-bit acknowledgment sequence number field is valid. Since the TCP protocol provides an acknowledgment mechanism, the ACK flag is always set if the connection has been established.
  • the second communication unit needs to know that the local serial number and the peer serial number of the current TCP connection can continue the data transmission work between the first communication unit and the opposite node.
  • the current window size of the Hagging can be exchanged during the connection state synchronization to implement the flow control. Therefore, the second communication unit can carry the local current window size in the connection state information request message sent to the opposite node. information.
  • the first communication unit may include the current local serial number of its record in the connection status information request, or may provide the local serial number to be provided by the opposite node.
  • step S450 the second communication unit receives the connection status information returned by the opposite end node.
  • Step S460 the second communication unit updates the local connection state according to the connection state information received from the opposite node.
  • TCP connection the node returns the peer ⁇ : Gen field sequence number in the TCP header packet for the opposite sequence number, acknowledgment sequence number field is the local sequence number, window size field is the end of the window size.
  • Step S470 (optional step) the second communication unit sends a connection status synchronization confirmation to the opposite node.
  • connection status synchronization confirmation may be used to notify the opposite end node to continue data transmission; in the case of not transmitting the connection status synchronization confirmation, the recovery data transmission may be initiated by the synchronization request node, or may be passed by the opposite node after transmitting the connection status information.
  • the timeout mechanism continues the data transfer, or a combination of the two depending on the situation. After the connection state synchronization is completed, the node continues the data transmission of the original connection with the opposite node.
  • the second communication unit may become the current first communication unit after the connection switching is completed, and the communication unit that may replace the current first communication unit in the high availability system may become the current second communication unit.
  • This situation applies to high availability systems with step-by-step backup capabilities or support for load dynamic balancing.
  • step S610 the node establishes a connection with the synchronization request node of the opposite end.
  • Step S620 The node receives a connection status information request of the peer node.
  • the connection state synchronization in the present invention occurs in the case where the connection has been established.
  • Step S630 the node suspends data transmission of the connection. Since the connection-oriented protocol usually adopts the acknowledgment and timeout retransmission mechanism, the synchronous response node suspends the data transmission of the connection to avoid unnecessary network traffic.
  • Step S640 When the connection state information request of the peer node includes the window size of the peer end, the node updates the size of the peer window in the local connection state information according to the received peer window size.
  • Step S650 the node sends the local current connection state information to the peer node as a response to the connection state information request.
  • the local sequence number and the peer serial number confirmed by the peer node recorded by the node are included, so that the data transmission of the TCP connection can send the connection state information request from the opposite node.
  • the previously completed byte stream continues afterwards.
  • the completed partial byte stream can also be retransmitted according to the communication mechanism of the communication client application.
  • the TCP connection status information returned to the peer node may also include the current window size of the node.
  • Step S660 the node receives the connection state synchronization confirmation of the peer node. This step is used to match step S470 and is therefore an optional step.
  • Step S670 the node continues the data transmission of the connection.
  • both the synchronization request node and the synchronization response node may be a single device or a
  • the switching between different connection units inside the synchronization request node is not considered here, and it is regarded as a whole as the connection state is out of step.
  • a plurality of units of the synchronization request node may establish a connection with the synchronization response node, and the transmission process on the current connection unit is interrupted for some reason, and the connection is still valid after the current connection unit restarts the transmission process, but the connection of the connection is lost. Status, no connection switching occurs at this time, but connection status synchronization is still required.
  • connection parameter of the synchronization request node is recorded locally, and the connection parameter of the connection need not be obtained before the connection state synchronization is performed.
  • the flow of the synchronization requesting node in the present embodiment is basically the same as that in the previous embodiment.
  • the flow of the synchronous response node is the same as in the previous embodiment.
  • Step S710 The node establishes a connection with the opposite node.
  • Step S720 the node finds that it may have lost synchronization with the connection state of the opposite node, especially if the node is out of synchronization due to its own reason, and sends a connection status information request to the opposite node.
  • the node can include the local window size in the request message.
  • Step S730 the node receives the connection state information from the peer node.
  • the connection status information returned by the peer node of the TCP connection includes the current serial number of the connection, the serial number of the peer, and the window size of the peer.
  • Step S740 the node updates the local connection status to be consistent with the connection status information returned by the opposite node.
  • Step S750 the node sends a connection status synchronization confirmation to the opposite node. Again, this step is an optional step.
  • the node and the peer node continue the data transmission of the original connection.
  • FIG. 8 is a structural diagram showing a synchronization request node and a synchronization response node to which the connection synchronization method provided by the present invention is applied.
  • the synchronization requesting node 810 includes a first communication unit 811 and a second communication unit 812 that are connected to each other, both of which are connected to the connection module 821 of the synchronization response node 820.
  • the synchronization response node 820 further includes a synchronization response module 822 and a communication control module 823, which are connected to the connection module 821.
  • the synchronization request node 810 and the synchronization response node 820 are mutually opposite nodes.
  • connection parameters of the TCP connection include the source IP address, destination IP address, source port number, and destination port number of the connection.
  • connection status information request is transmitted to the synchronization response node 820 using the connection parameter of the connection received from the first communication unit 811, in the connection status request
  • the window size of the current second communication unit 812 can be filled in.
  • connection module 821 of the synchronization response node 820 performs communication between the two parties through a connection with the synchronization request node 810.
  • connection module 821 receives the connection status information request from the second communication unit 812, it transmits it to the synchronization response module 822. If the sync response node has the communication control module 823, the data transfer of the connection module 821 is suspended by the communication control module 823 at this time.
  • the synchronization response module 822 transmits the locally recorded current connection status information to the connection module 821, which is replied to the second communication unit 812 by the connection module 821.
  • the synchronization response module 821 also updates the size of the peer window in the local connection state to be larger than the received window.
  • the connection status information replied by the synchronization response node 820 includes the local serial number and the opposite serial number of the record, and may also include the local window size.
  • the second communication unit 812 After receiving the connection state information of the synchronization response node 820, the second communication unit 812 performs connection state synchronization according to the connection state information. The second communication unit 812 updates the local connection status to be consistent with the received connection status information, and then can determine whether the connection status synchronization confirmation is sent by the second communication unit 812 to the synchronization response node 820 according to the specific application requirement. . In the case where the second communication unit 812 transmits the connection status synchronization confirmation, after the connection module 821 receives the connection status synchronization confirmation, the data transmission of the connection module 821 can be resumed by the communication control module 823.
  • FIG. 9 is a block diagram showing the structure of a synchronization request node and a synchronization response node to which the connection synchronization method of the present invention is applied.
  • the synchronization request node 830 includes a connection module 831 and a synchronization request module 832 that are connected to each other, wherein the connection module 831 is connected to the connection module 821 of the synchronization response node 820.
  • the synchronization response node 820 includes, in addition to the connection module 821, a synchronization response module 822 and a communication control module 823, which are connected to the connection module 821.
  • the synchronization request node 830 and the synchronization response node 820 are mutually opposite nodes.
  • the connection status information request is transmitted by the synchronization request module 832 to the connection module 831, and the connection module 831 sends the connection status to the synchronization response node 820.
  • the information request may fill in the window size of the current synchronization request node 830 in the connection status request.
  • connection module 821 of the synchronization response node 820 When the connection module 821 of the synchronization response node 820 receives the connection status information request from the synchronization request node 830, it transmits it to the synchronization response module 822. If the synchronous response node has the communication control module 823, the data transmission of the connection module 821 is suspended by the communication control module 823 at this time.
  • the synchronous response module 822 transmits the current connection status information of the local record to the connection module.
  • connection module 821 will reply to the synchronization request node 830.
  • the synchronization response module 822 also updates the peer window size in the local connection state to coincide with the received window size.
  • the connection status information replied by the synchronization response node 820 includes the local serial number and the opposite serial number of the record, and may also include the local window size.
  • the connection module 831 of the synchronization request node 830 After receiving the connection status information of the synchronization response node 820, the connection module 831 of the synchronization request node 830 transmits it to the synchronization request module 832 synchronization request module 832.
  • the synchronization request module 832 performs synchronization of the connection state of the synchronization request node 830 based on the connection state information.
  • the synchronization request module 832 updates the local connection status to be consistent with the received connection status information.
  • the communication partner node can then agree whether to send a connection status synchronization confirmation by the synchronization request module 832 to the synchronization response node 820 according to the specific application needs.
  • the data transmission of the connection module 821 can be resumed by the communication control module 823 after the connection module 821 of the synchronization response node 820 receives the connection status synchronization confirmation.
  • the first communication unit 811 and the second communication unit 812 in the synchronization request node 810 in FIG. 8 may respectively include respective connections.
  • the module and the synchronization request module are used to perform connection recovery of the unit with the synchronization response node 820.
  • connection state information request For the foregoing connection state synchronization method embodiment, and the synchronization request node and the synchronization response node of the application instance, the connection state information request, the response to the connection state information request, and the connection state synchronization confirmation all need to be implemented by the message transmitted on the connection. .
  • the information exchanged between the two nodes at the time of the synchronization of the connection state is similar to that of the connection establishment.
  • the functions of the two nodes are similar. They are used to match the status information of the two parties and prepare for subsequent data transmission. Therefore, the textual invention that performs the connection state synchronization recommends using the message format used to establish the connection, and exchanges the connection state information by filling in different contents in the header field.
  • the TCP protocol uses a three-way handshake process to establish a TCP connection between two communication nodes.
  • the first handshake is sent by the node that initiated the connection to the peer node to send the first SYN message.
  • the first SYN message sets the SYN flag bit, clears the ACK flag bit, and fills in the sequence number field to initialize the node that initiated the connection.
  • Serial number fill in the current window size of the node in the window size field.
  • the peer node After receiving the first SYN packet, the peer node returns a second SYN packet if it wants to establish a connection with the node.
  • the second SYN packet sets the SYN flag bit and the ACK flag bit in the sequence number field.
  • the connection status information request message may be in the format of the first SY message, where the sequence number field is filled in the serial number currently being used by the synchronization request node, if the serial number currently being used is unknown. Fill in the value of 0; confirm that the serial number field is filled with 0 value; set the SYN flag bit, clear the ACK flag bit; fill in the window size field with the current window size of the synchronization request node.
  • the connection status information response message replied by the synchronization response node may adopt the format of the second SYN message, where the sequence number field is filled in the serial number currently being used by the synchronization response node; the confirmation sequence number field is filled in the synchronization request node of the local record.
  • the serial number set the SYN and ACK flags; fill in the window size field with the current window size of the sync response node.
  • connection status synchronization confirmation message of the synchronization request node can be in the format of the third SYN message, and the content filled in each field can also be the same as the third SYN message.
  • connection state synchronization in the present invention occurs when the connection has been established, so that the nodes of the two communication parties can judge the report for establishing the connection by transmitting or receiving the three packets.
  • the text is also a message that synchronizes the connection state, so as to perform corresponding operations.
  • the node at the TCP connection end receives the SYN message of the connection when the connection has been established, and usually terminates the connection by using the reset message, and after the application is applied, when the connection is established.
  • the node that receives the SYN packet shall reply the connection state information to the peer node.
  • the state machine that synchronizes the connection state after the TCP connection is established is shown in Figure 10.
  • the established TCP connection is in the established state, in order to distinguish it from the establishment of the connection (SYN message has received SYN RCVD) and The SYN message has been sent (SYN SENT) status.
  • SYN message has been received (EST SYN RCVD) and the connected SYN message has been sent (EST SYN SENT).
  • the node in the Established state sends the connection state information request message to the EST SYN SENT state when it needs to synchronize the connection state. After receiving the connection state information response message from the peer node, the connection state synchronization is performed, and the connection state synchronization confirmation is sent. Return to the Established state after the message. After receiving the connection status information request message, the node in the Established state enters the EST SYN RCVD state after returning the connection status information response message to the opposite node, and then returns to the connection state synchronization confirmation message after receiving the peer node. To Established ⁇ ).
  • a computer program designed in accordance with the present invention for implementing connection state synchronization in data communication which is stored in a communication node for causing the communication node to perform the following steps:
  • the communication node involved includes a primary communication unit and a backup communication unit, and the standby communication unit requests connection status information from the opposite end according to the connection parameter provided by the primary communication unit, and then obtains connection status information according to the obtained connection status information. Update the local connection status.
  • connection parameters involved include source IP address, destination IP address, source port number, and destination port number.
  • connection status information involved includes a local serial number and a peer serial number.
  • connection state information returned by the peer node includes its own window value.
  • the node After the node updates the local connection status, the node confirms the connection status synchronization to the correspondent node. a message in which the format of the first synchronous SYN packet of the connection established by the transmission control protocol TCP is used to request connection state information from the opposite node;
  • the message confirming the connection state synchronization adopts the format of the third SYN message that the TCP establishes the connection.
  • a computer program for implementing connection state synchronization in data communication which is stored in a communication node for causing the communication node to perform the following steps: from a peer end that has established a connection with the communication node Receiving a connection status information request at the node;
  • the communication node returns the local current connection state information to the peer node.
  • the node Before returning the connection status information to the opposite node, the node suspends the data transmission of the connection after receiving the connection status information request from the opposite node.
  • the connection state information request of the peer node includes a window size of the end; the node updates the local peer window size according to the window value in the peer connection state information request;
  • the current connection status information returned to the opposite node includes the peer serial number of the local record, the local serial number, and the local window size.
  • the format of the second SYN packet that is established by using the TCP connection returns the current connection status information to the peer node, where the confirmation sequence number field is the peer serial number of the local record.
  • connection state synchronization process is shown in Fig. 11.
  • the standby board takes over the work of the main board.
  • the standby board only needs to know the destination IP address, source IP address, destination port number, and source port number of the original TCP connection, and can send a connection status information request to node A.
  • the connection state information response message of the node A is received, and the connection state synchronization confirmation message is sent to the node A to complete the connection state synchronization process.
  • Node B can then continue to transfer data with node A. This process is almost invisible to the upper application.
  • the data transmission is performed between the node C and the node D through a TCP connection.
  • the node C or the process on it is restarted, as long as the destination IP address, source IP address, destination port number, and source port number of the connection are maintained, the status information request message and connection status can be exchanged with the node D.
  • the information response message and the connection status synchronization confirmation message are used to synchronize the connection state, so that the TCP connection can be restored. That is, a short-time restart behavior on Node C does not affect the data transfer based on the connection.
  • the present invention not only can continue the original connection of the high-availability system in various situations and at any time, but also achieves the recovery effect by the out-of-synchronization of the connection state caused by the short-term failure of the centralized system.
  • the present invention does not require real-time synchronization of connection states between the various connection units of the high-availability system, and only needs to transmit the connection parameters of the connection once to the backup connection unit, thereby enabling the processor and internal bandwidth of the high-availability system to be Released to ensure the system's business processing capabilities.

Description

数据通信中连接状态的同步方法及其应用的通信节点
技术领域
本发明涉及网络及通信技术领域, 尤其涉及数据通信中连接状态的 同步方法及应用该方法的通信节点。 背景技术
传输控制协议(TCP, Transmission Control Protocol )是当今网给世 界使用最为普遍的传输层协议, 在互联网 (Internet )上的两点间提供可 靠的数据传输。 现在最流行的协议如远程登录(Telnet )、 文件传输协议 ( FTP, File Transfer Protocol )、 超文本传输协议 ( HTTP, Hyper Text Transfer Protocol )等都基于 TCP技术之上。 TCP是面向连接的协议, 两 个网络节点间在传输数据前要先建立 TCP连接, 并根据当前的 TCP连接 状态进行数据传输。
随着在网络上运行的重要应用越来越多, 各种关键的网络节点普遍 采用以主备切换方式工作的高可用性系统以减少其故障时间。 图 1 中的 节点 B为一台包括主板和备板的分布式设备,与节点 A之间建立 TCP连 接。 在正常工作时, 逻辑上节点 A与节点 B之间的 TCP连接实际由节点 A与节点 B的主板完成。 当主板出现问题后, 由备板接替主板工作。
对 TCP连接, 备板必须知道在主备切换发生时的连接状态, 如发送 和接收方已经使用的序列号等才能接续原有的 TCP连接, 否则, 备板只 能和节点 A重新建立一条新的 TCP连接。而重新建立 TCP连接在一些情 况下可能导致严重的问题, 例如节点 A与节点 B是两台路由器, 该 TCP 连接用来承载边界网关协议(BGP, Border Gateway Protocol )协议, 一 旦重建 TCP连接会在一段时间内造成路由震荡。 因此, TCP连接的状态 同步成为问题的关键。
现有技术中通常采用两种方法来进行 TCP连接状态的同步。 仍以图
1中的节点 A和节点 B为例, 第一种同步方法如图 2所示, 每次节点 A 和节点 B 的主板之间进行 TCP报文传输后, 主板将每个报文中包括的 TCP连接状态信息通过主板与备板间的 TCP同步消息通知备板, 这样当 发生切换时,备板可以通过其备份的连接状态信息接续原有的 TCP连接; 第二种同步方法如图 3所示,节点 B的主板将从节点 A接收的 TCP报文 复制一份传输至备板, 将发送往节点 A的报文也同样复制一份传输给备 板,由备板根据从主板接收的复制报文保持与主板 TCP连接状态的同步。
这两种方法可以在一定程度上解决 TCP连接状态的同步问题, 但无 法做到在所有的情况下都有效。 因为主板只能在接收到节点 A的 TCP报 文后才能生成同步信息或复制该报文发送至备板,即使是主板在向节点 A 发送 TCP报文的同时向备板发送复制报文或同步信息, 考虑到主板同时 要进行繁重的业务处理, 按照操作系统的进程调度机制也很难保证两个 发送进程同时进行; 换言之, 节点 A与节点 B的报文传输和主备板的状 态同步之间基本上无可避免地存在一定的时间差。 而在主板失效的情况 下, 主备切换发生的时机是不可控的, 备板可能在任意时刻接替主板的 工作, 因此, 备板能否成功接续原有的 TCP连接取决于发生切换的时刻 状态同步的情况是否与报文传输的情况一致。一旦两者不一致,原有 TCP 连接状态无法恢复, 节点 A与节点 B之间只能重建 TCP连接。
同时 ,这两种方法都要求主板与备板之间进行 TCP连接的实时同步, 造成了主板与备板间过多的信息传输, 耗用了主板与备板间大量的带宽 与中央处理器(CPU, Central Process Unit )的资源, 降低了设备的性能。 发明内容
本发明的目的是提供数据通信中连接状态同步方法及应用该方法的 网络节点设备, 以实现及时可靠的主备切换, 从而提高网络通信的可靠 性和安全性。
根据本发明的一方面提供的一种数据通信中连接状态的同步方法, 包括:
节点向与其连接的对端节点请求连接状态信息;
节点根据对端节点返回的连接状态信息更新本地的连接状态。
所述节点包括第一通信单元和至少一个第二通信单元;
在节点向对端节点请求连接状态信息之前, 第一通信单元将与对端 节点的连接参数通知第二通信单元。 所述节点向对端节点请求连接状态信息具体为: 一个第二通信单元 在接替第一通信单元与对端节点的连接后, 根据所述连接参数向对端节 点请求连接状态信息;
所述第二通信单元根据对端节点返回的连接状态信息更新本地的连 接状态。
所述连接参数包括源 IP地址、目的 IP地址、源端口号和目的端口号。 所述向对端节点请求连接状态信息和根据返回的连接状态信息更新 本地连接状态由当前与对端节点连接的第一通信单元或第二通信单元进 行。
所述连接状态信息包括本地序列号和对端序列号。
更适宜地, 该方法还包括:
节点向对端节点请求连接状态信息的同时发送本地的窗口值; 所述对端节点返回的连接状态信息中包含该端的窗口值。
在节点更新本地连接状态后, 节点向对端节点确认连接状态同步。 更适宜地,采用传输控制协议 TCP建立连接的笫一个同步 SY 报文 的格式向所述对端节点请求连接状态信息的消息;
所述确认连接状态同步的消息采用 TCP建立连接的第三个 SYN报文 的格式。
根据本发明还提供另一种数据通信中连接状态的同步方法, 包括以 下步骤:
已建立连接的节点接收对端节点的连接状态信息请求;
节点将本地的当前连接状态信息返回给对端节点。
更适宜地, 在向对端节点返回连接状态信息前, 节点接收到对端节 点的连接状态信息请求后 , 暂停该连接的数据传输。
所述对端节点的连接状态信息请求中包括该端的窗口大小; 节点根据对端连接状态信息请求中的窗口值更新本地的对端窗口大 小;
所述返回给对端节点的当前连接状态信息中包括本地记录的对端序 列号、 本地序列号和本地的窗口大小。
优选地,采用 TCP建立连接的第二个 SY 报文的格式将当前连接状 态信息返回给对端节点, 其中确认序列号字段为本地记录的对端序列号。 根据本发明的另一方面, 提供的一种通信节点, 包括连接模块和同 步请求模块, 其中:
连接模块, 用来通过与对端节点的连接进行通信;
同步请求模块, 用来通过连接模块向对端节点发送连接状态信息请 求, 并根据连接模块从对端节点接收的连接状态信息同步更新本地的连 接状态。
所述通信节点还包括:
将本地的连接状态信息置为与接收的连接状态信息相同;
通过连接模块向对端节点确认连接状态信息同步。
所述连接状态信息请求中包括本地窗口大小; 所述接收的连接状态 信息包括对端节点记录的本地序列号、 对端序列号和对端的窗口大小。
根据本发明还提供另一种通信节点, 包括第一通信单元和至少一个 第二通信单元, 其中:
第一通信单元将与对端节点的连接参数发送给第二通信单元; 第二通信单元根据所述连接参数与对端节点建立连接, 向对端节点 发送连接状态信息请求, 并根据从对端节点接收的连接状态信息进行连 接状态更新。
更适宜地, 将本单元的连接状态信息置为与接收的连接状态信息相 同;
向对端节点确认连接状态同步。
所述从对端节点接收的连接状态信息包括对端节点记录的本地序列 号和对端序列号; 所述连接参数包括源网际协议 IP地址、 目的 IP地址、 源端口号和目的端口号。
根据本发明还提供又一种通信节点, 包括连接模块和同步响应模块, 其中:
连接模块用来通过与对端节点的连接进行通信;
同步响应模块, 用来接收连接模块输出的来自对端节点的连接状态 信息请求, 并将本地当前的连接状态信息通过连接模块发送给对端节点。
所述通信节点还包括通信控制模块, 用来在连接模块接收到对端节 W
点的连接状态信息请求后暂停连接模块的数据通信, 在连接模块接收到 对端节点的连接状态同步确认后继续连接模块的数据通信。
所述本地当前的连接状态信息包括本地记录的对端序列号、 本地序 列号和本地的窗口大小。
根据本发明设计的一种计算机程序, 用于数据通信中实现连接状态 同步, 其存储于通信节点中, 用以使得通信节点执行如下步骤:
向与其连接的对端节点请求连接状态信息;
根据对端节点返回的连接状态信息更新本地的连接状态。
所述的计算机程序中, 涉及的通信节点包括主用通信单元以及备用 通信单元, 所述备用通信单元根据主用通信单元提供的连接参数向对端 请求连接状态信息, 然后根据获得的连接状态信息更新本地连接状态。
所涉及的连接参数包括源 IP地址、 目的 IP地址、 源端口号和目的 端口号。
所涉及的连接状态信息包括本地序列号和对端序列号。
所述通信节点向对端节点请求连接状态信息的同时发送本地的窗口 值;
所述对端节点返回的连接状态信息中包含自身的窗口值。
在节点更新本地连接状态后, 节点向对端节点确认连接状态同步。 采用传输控制协议 TCP建立连接的第一个同步 SYN报文的格式向所 述对端节点请求连接状态信息的消息;
所述确认连接状态同步的消息采用 TCP建立连接的第三个 SYN报文 的格式。
根据本发明还提供另一种计算机程序, 用于数据通信中实现连接状 态同步, 其存储于一个通信节点中, 用以使得该通信节点执行以下步骤: 从与本通信节点已经建立连接的对端节点处接收连接状态信息请 求;
该通信节点将本地的当前连接状态信息返回给上述对端节点。
在向对端节点返回连接状态信息前, 节点接收到对端节点的连接状 态信息请求后, 暂停该连接的数据传输。 所述对端节点的连接状态信息请求中包括该端的窗口大小; 节点根据对端连接状态信息请求中的窗口值更新本地的对端窗口大 小;
所述返回给对端节点的当前连接状态信息中包括本地记录的对端序 列号、 本地序列号和本地的窗口大小。
采用 TCP建立连接的第二个 SYN报文的格式将当前连接状态信息返 回给对端节点, 其中确认序列号字段为本地记录的对端序列号。
本发明通过使可能失步的节点与连接对端的节点同步连接状态信 息, 从根本上解决了连接状态同步问题, 只要能够保持连接就可以恢复 同步; 同时, 本发明不再需要高可用性系统内部频繁的连接状态同步, 就能实现及时可靠的主备切换, 节省了系统带宽和处理能力, 并且在任 意时刻发生主备切换均可对原有的连接进行恢复。 从而提高网络通信的 可靠性和安全性。 附图说明 图 1为高可用性系统的 TCP连接示意图;
图 2为现有技术中第一种连接状态同步方法的示意图;
图 3为现有技术中第二种连接状态同步方法的示意图;
图 4为根据本发明的实施例的同步请求节点的流程图;
图 5为 TCP/IP协议中 TCP报文的字段结构图;
图 6为根据本发明的实施例中同步响应节点的流程图;
图 7为根据本发明另一实施例中同步请求节点的流程图;
图 8 为应用本发明提供的连接状态同步方法的同步请求节点和同步 响应节点的结构示意图;
图 9 为应用本发明提供的连接状态同步方法的同步请求节点和同步 响应节点的结构示意图;
图 10为本发明增加的 TCP状态机示意图;
图 11为本发明应用示例中用于连接状态同步的报文的流程图; 图 12为本发明另一应用示例中用于连接状态同步的报文的流程图。 具体实施方式 现有技术中, 高可用性系统的连接状态同步都着眼于在主备之间实 现严格的状态同步, 使备板与主板保持同步, 在切换发生时能够顺利接 替主板与对端节点的通信。 而在面向连接的数据传输中, 与对端节点的 连接能够由主板切换到备板, 数据传输得以继续的条件是备板与对端节 点的连接状态同步, 而不是与主板的连接状态一致。 如果由于某种原因 在切换发生时主板与对端节点的连接状态不同步, 即使备板与主板的连 接状态完全一致也会导致连接中断。 考虑到对端节点的连接状态实际上 是本地同步的目标, 并且该连接状态与本地的主备切换无关, 与其进行 工作量繁重的本地状态备份, 还需要依赖于切换发生的时刻是否正是对 端、 主板和备板三者状态同步的时刻, 不如直接使得备板与对端节点实 现连接状态同步, 从而从才艮本上解决这一问题。
下文中, 同步请求节点为连接一端需要与对端进行连接状态同步的 节点, 同步响应节点为连接另一端根据对端请求发送本地连接状态信息 的节点。 实际应用中同步请求节点通常是一个高可用性系统, 例如一个 包括主板和备板的路由器、 一个包括多个服务器对外以单一逻辑实体运 行的集群等等。 同步响应节点可能是一个单一的设备, 也可能是一个高 可用性系统。
为使本发明的原理、 特性和优点根据清楚, 下面结合具体实施例对 本发明予以进一步描述。
<假定同步请求节点为一个高可用性系统, 包括第一通信单元和至少 一个第二通信单元, 第一通信单元为与对端节点具有连接关系的单元, 既可以是与对端节点建立连接的单元也可以是接替其他单元与对端节点 的连接的单元, 某个第二通信单元将接替第一通信单元与对端节点连接 并继续承载在该连接上的数据传输。
本实施例中的同步请求节点的流程如图 4所示, 操作步骤如下: 步骤 S410, 本节点与对端节点建立连接。 本发明中的连接状态同步 发生在连接已经建立的情况下。 采用 TCP 协议时在进行数据传输前需要在两个通信节点之间建立 TCP连接。 连接双方的互联网协议(IP, Internet Protocol )地址、 用来标 识连接双方发送和接收应用进程的端口号可以唯一地确定一个 TCP 连 接, 因此通常采用源 IP地址、 目的 IP地址、 源端口号和目的端口号作为 TCP连接的连接参数。
步骤 S420, 在连接建立后的某时刻, 节点上该连接存在于第一通信 单元与对端节点之间。 第一通信单元将该连接的连接参数通知第二通信 单元, 供第二通信单元在切换发生时通过该连接参数来恢复该连接。
步驟 S430,某个第二通信单元接替第一通信单元与对端节点的连接。 此时, 该连接的连接参数已记录在第二通信单元本地。
第二通信单元何时接替第一通信单元的连接与同步请求节点的工作 方式相关, 可能发生在第一通信单元失效的情况下, 也可能基于负载均 衡的需要在第一通信节点正常工作时发生。 当存在一个以上第二通信单 元时, 由哪个第二通信单元接替第一通信单元的连接由同步请求节点的 切换设置决定。
第二通信单元以相同的连接参数接替第一通信单元的 TCP连接意味 着第二通信单元必须使用第一通信单元的 IP地址, 在第一通信单元仍正 常工作的情况下, 应当由同步请求节点保证这两个单元能够使用相同的
IP地址分别进行各自与其对端节点面向连接的通信。
步骤 S440, 该第二通信单元根据切换连接的连接参数向对端节点发 送连接状态信息倩求。 对 TCP协议, 连接状态信息包括本地序列号和对 端序列号, 还可以包括本地和对端的窗口大小。
TCP/IP协议报文中 TCP报头的字段结构如图 5所示, 16位源端口号 为该报文的发送端应用程序的端口号, 16位目的端口号为该报文的接收 端应用程序的端口号, 这两个字段与 IP报头中的源 IP地址和目的 IP地 址一同作为该 TCP连接的连接参数。
发送端和接收端的应用程序通过 TCP连接交换 8bit (位)字节的字 节流, TCP 连接的每端节点通过序列号和确认序列号分别为本地发送和 从对端接收的字节流进行计数。 32位序列号表示该报文的发送端在该报 文中第一个数据字节所使用的序号, 而 32位确认序列号表示进行接收确 认的一端, 即该报文的发送端所期望收到对端发送的下一个数据字节的 序列号。 数据字节为该 TCP连接所传输的载荷部分。
16位窗口大小用来为 TCP连接提供流量控制, 表示该报文的发送端 的缓沖区大小, 即能够接收对端数据量的大小。 TCP 连接的两端节点还 可以通过窗口扩大选项协商超过 16位的窗口大小。
4位报头长度为 TCP报文的总长度,6位保留字段之后为 6个标志位, 其中 SYN (同步)标志位在现有的 TCP协议中用来表示发起一个连接, ACK (确认)标志位表示 32位确认序列号字段有效, 由于 TCP协议提供 确认机制, 在连接已经建立的情况下 ACK标志位总是被置位。
可见, 第二通信单元需要知道当前该 TCP连接的本地序列号和对端 序列号才能接续第一通信单元与对端节点进行数据传输工作。 同时, 还 可以在连接状态同步的过程中交换汉方的当前窗口大小来实行流量控 制, 因而, 第二通信单元可以在向对端节点发送的连接状态信息请求报 文中携带本地当前窗口大小的信息。
第一通信单元在连接状态信息请求中可以包括其记录的当前本地序 列号, 也可以将本地序列号空缺而由对端节点提供。
仍参照图 4, 步骤 S450, 该第二通信单元接收对端节点返回的连接 状态信息。
步骤 S460, 该第二通信单元根据从对端节点接收的连接状态信息更 新本地的连接状态。 对 TCP连接, 对端节点返回的^ :艮文中 TCP报头的序 列号字段为对端序列号, 确认序列号字段为本地序列号, 窗口大小字段 为对端的窗口大小。
步骤 S470, (可选步骤)该第二通信单元向对端节点发送连接状态同 步确认。
连接状态同步确认可以用来通知对端节点继续进行数据传输; 在不 发送连接状态同步确认的情况下, 可以由同步请求节点启动恢复数据传 输, 也可以由对端节点在发送连接状态信息后通过超时机制接续数据传 输, 或者根据情况二者结合使用。 在连接状态同步完成后, 节点继续与对端节点进行原连接的数据传 输。
在本实施例中, 第二通信单元在连接切换完成后可以成为当前第一 通信单元, 高可用性系统中可能接替当前第一通信单元的通信单元可以 成为当前第二通信单元。 这种情况适用于具有逐级备份功能或支持负载 动态均衡的高可用性系统。
上述实施例中同步响应节点的流程如图 6所示, 步骤 S610, 节点与 对端的同步请求节点建立连接。
步骤 S620, 节点接收对端节点的连接状态信息请求。 如前所述, 本 发明中的连接状态同步发生在连接已经建立的情况下。
步骤 S630, 节点暂停该连接的数据传输。 由于面向连接的协议通常 都采用确认和超时重传机制 , 同步响应节点暂停该连接的数据传输可以 避免不必要的网络流量。
步骤 S640, 当对端节点的连接状态信息请求中包括对端的窗口大小 时, 节点按照接收的对端窗口大小更新本地连接状态信息中的对端窗口 大小。
步骤 S650, 节点将本地的当前连接状态信息发送至对端节点, 作为 对其连接状态信息请求的响应。
在返回给对端节点的当前 TCP连接状态信息中, 包括节点记录的经 过对端节点确认的本地序列号和对端序列号, 以便该 TCP连接的数据传 输可以从对端节点发送连接状态信息请求前完成的字节流之后继续进 行。 当然, 按照通信欢方应用程序的通信机制, 也可以对已完成的部分 字节流重新传输。 返回至对端节点的 TCP连接状态信息中还可以包括节 点当前的窗口大小。
步骤 S660, 节点接收对端节点的连接状态同步确认。 本步骤用来配 合步驟 S470, 因而也是可选步骤。
步骤 S670, 节点继续该连接的数据传输。
下面描述本发明提供的连接状态同步方法的另一实施例本实施例 中, 同步请求节点和同步响应节点都可以是一个单独的设备或者是一个 高可用性系统 , 在此不考虑同步请求节点内部不同连接单元之间的切换, 而将其作为一个连接状态失步的整体看待。 例如, 同步请求节点的有多 个单元可以与同步响应节点建立连接, 当前连接单元上的发送进程因故 中断, 在当前连接单元重新启动发送进程后该连接仍有效, 然而丟失了 该连接的连接状态, 此时并未发生连接切换, 但仍需要进行连接状态同 步。
本实施例与前述实施例的不同之处在于同步请求节点的连接参数记 录在本地, 在进行连接状态同步前不需要先获得该连接的连接参数。
本实施中同步请求节点的流程与前述实施例中的部分流程基本一 致, 其详细说明请参见前述实施例中的对应步驟, 此处不再重复。 同步 响应节点的流程则与前述实施例中相同。
本实施例中同步请求节点的流程如图 7所示, 具体操作步骤如下: 步骤 S710, 节点与对端节点建立连接。
步骤 S720, 节点发现自己可能或已经与对端节点的连接状态失去同 步, 尤其是在由于本身的原因造成失步的情况下, 向对端节点发送连接 状态信息请求。 节点在发送 TCP连接的连接状态信息请求时, 可以在请 求报文中包括本地的窗口大小。
步骤 S730, 节点从对端节点接收到连接状态信息。 TCP连接的对端 节点返回的连接状态信息中包括当前该连接的本地序列号、 对端序列号, 还可以包括对端的窗口大小。
步骤 S740, 节点将本地的连接状态更新为与对端节点返回的连接状 态信息一致。
步骤 S750, 节点向对端节点发送连接状态同步确认。 同样, 本步骤 为可选步骤。
在连接状态同步完成后, 节点与对端节点继续进行原连接的数据传 输。
不难理解, 前一实施例中同步请求节点在连接切换前, 第一通信单 元可以釆用本实施例中的方法进行连接恢复, 在连接切换后, 第二通信 单元也可以采用后一实施例中的方法进行连接恢复。 图 8 所示为应用本发明提供的连接同步方法的同步请求节点和同步 响应节点的结构图。 同步请求节点 810包括相互连接的第一通信单元 811 和第二通信单元 812, 二者均连接至同步响应节点 820的连接模块 821。 同步响应节点 820除连接模块 821外, 还包括同步响应模块 822和通信 控制模块 823, 这两个模块与连接模块 821相互连接。 同步请求节点 810 与同步响应节点 820互为对端节点。
第一通信单元 811与同步响应节点 820的连接模块 821之间存在连 接, 并将该连接的连接参数传输至第二通信单元 812。 TCP连接的连接参 数包括该连接的源 IP地址、 目的 IP地址、 源端口号和目的端口号。
当第二通信单元 812接替第一通信单元 811与同步响应节点 820的 连接时, 使用从第一通信单元 811 接收的该连接的连接参数向同步响应 节点 820发送连接状态信息请求, 在连接状态请求中可以填入当前第二 通信单元 812的窗口大小。
同步响应节点 820的连接模块 821通过与同步请求节点 810之间的 连接进行双方的通信。 当连接模块 821接收到第二通信单元 812的连接 状态信息请求后, 将其传输至同步响应模块 822。 如果同步响应节点具有 通信控制模块 823,此时由通信控制模块 823暂停连接模块 821的数据传 输。
同步响应模块 822将本地记录的当前连接状态信息传输至连接模块 821 , 由连接模块 821将回复给第二通信单元 812。 对其中包括第二通信 单元 812窗口大小的连接状态信息请求, 同步响应模块 821还将本地连 接状态中的对端窗口大小更新为与接收的窗口大 d、一致。 同步响应节点 820回复的连接状态信息中包括其记录的本地序列号和对端序列号,还可 以包括本地的窗口大小。
第二通信单元 812接收到同步响应节点 820的连接状态信息后, 根 据该连接状态信息进行连接状态同步。 第二通信单元 812将本地的连接 状态更新为与接收的连接状态信息一致, 之后可^^据具体应用需要在通 信双方节点约定是否由第二通信单元 812向同步响应节点 820发送连接 状态同步确认。 在第二通信单元 812发送连接状态同步确认的情况下, 当连接模块 821接收到连接状态同步确认后,可以由通信控制模块 823恢复连接模块 821的数据传输。
图 9 所示为应用本发明的连接同步方法的同步请求节点和同步响应 节点的结构图。 同步请求节点 830包括相互连接的连接模块 831和同步 请求模块 832, 其中连接模块 831连接至同步响应节点 820的连接模块 821。 同步响应节点 820除连接模块 821外, 还包括同步响应模块 822和 通信控制模块 823 , 这两个模块与连接模块 821相互连接。 同步请求节点 830与同步响应节点 820互为对端节点。
同步请求节点 830的连接模块 831与同步响应节点 820的连接模块
821通过其间存在的连接进行两个节点间的通信。 当同步请求节点 830认 为其可能或已经失去与同步响应节点 820 的连接状态同步时, 由同步请 求模块 832将连接状态信息请求传输至连接模块 831, 由连接模块 831向 同步响应节点 820发送连接状态信息请求, 在连接状态请求中可以填入 当前同步请求节点 830的窗口大小。
当同步响应节点 820的连接模块 821接收到同步请求节点 830的连 接状态信息请求后, 将其传输至同步响应模块 822。 如果同步响应节点具 有通信控制模块 823,此时由通信控制模块 823暂停连接模块 821的数据 传输。
同步响应模块 822将本地记录的当前连接状态信息传输至连接模块
821 , 由连接模块 821将回复给同步请求节点 830。 对其中包括同步请求 节点 830窗口大小的连接状态信息请求, 同步响应模块 822还将本地连 接状态中的对端窗口大小更新为与接收的窗口大小一致。 同步响应节点 820回复的连接状态信息中包括其记录的本地序列号和对端序列号,还可 以包括本地的窗口大小。
同步请求节点 830的连接模块 831接收到同步响应节点 820的连接 状态信息后, 将其传输至同步请求模块 832同步请求模块 832。 同步请求 模块 832根据该连接状态信息进行同步请求节点 830的连接状态同步。 同步请求模块 832将本地的连接状态更新为与接收的连接状态信息一致, 之后可根据具体应用需要在通信双方节点约定是否由同步请求模块 832 向同步响应节点 820发送连接状态同步确认。
在同步请求模块 832发送连接状态同步确认的情况下 , 当同步响应 节点 820的连接模块 821接收到连接状态同步确认后, 可以由通信控制 模块 823恢复连接模块 821的数据传输。
当图 8中同步请求节点 810中的第一通信单元 811和第二通信单元 812都支持实施例二的连接状态同步方法时,第一通信单元 811和第二通 信单元 812可以分别包括各自的连接模块和同步请求模块, 用来进行该 单元与同步响应节点 820的连接恢复。
对上述连接状态同步方法实施例、 以及应用实例的同步请求节点和 同步响应节点, 连接状态信息请求、 对连接状态信息请求的响应以及连 接状态同步确认都需要通过在该连接上传输的报文实现。 而连接状态同 步时的两端节点交换的信息与连接建立时类似, 其实现的功能也类似, 都用来匹配连接双方的状态信息, 为后续的数据传输做好准备。 因此进 行连接状态同步的报文本发明推荐采用用来建立连接的报文格式, 通过 在报头字段中填入不同的内容来交换连接状态信息。
TCP协议采用三次握手的过程来建立两个通信节点间的 TCP连接。 第一次握手由发起连接的节点向对端节点发送第一个 SYN报文, 第一个 SYN报文置位 SYN标志位, 清除 ACK标志位, 在序列号字段填入发起 连接的节点的初始序列号, 在窗口大小字段填入当前该节点的窗口大小。 对端节点在接收到第一个 SYN报文后, 如果希望与该节点建立连接则返 回第二个 SYN报文, 第二个 SYN报文置位 SYN标志位和 ACK标志位, 在序列号字段填入对端节点的初始序列号, 在确认序列号字段填入接收 到该节点的初始序列号加 1以对第一个 SYN报文进行确认; 在窗口大小 字段填入当前对端节点的窗口大小。 发起连接的节点接收到第二个 SYN 报文后, 向对端节点发送第三个 SYN报文, 第三个 SY 报文置位 ACK 标志位, 并在确认序列号字段将对端节点的初始序列号加 1 以对第二个 SYN报文进行确认, 在窗口大小字段樓入当前该节点的窗口大小。 上述 三个 SYN报文完成 TCP连接的建立。 在 TCP连接的同步过程中, 连接状态信息请求报文可以采用第一个 SY 报文的格式, 其中序列号字段填入同步请求节点当前正在使用的序 列号, 如果当前正在使用的序列号未知可以填入 0值; 确认序列号字段 填入 0值; 置位 SYN标志位、 清除 ACK标志位; 在窗口大小字段填入 同步请求节点当前的窗口大小。
同步响应节点回复的连接状态信息响应报文可以采用第二个 SYN报 文的格式, 其中序列号字段填入同步响应节点当前正在使用的序列号; 确认序列号字段填入本地记录的同步请求节点的序列号; 置位 SYN和 ACK标志位; 在窗口大小字段填入同步响应节点当前的窗口大小。
同步请求节点的连接状态同步确认报文可以采用第三个 S YN报文的 格式, 并且各字段填入的内容也可以与第三个 SYN报文相同。
需要说明的是, 本发明中的连接状态同步发生在已经建立连接的情 况下, 因而通信双方的节点可以通过发送或接收上述三个报文时该连接 的情况来判断是用于建立连接的报文还是进行连接状态同步的报文, 从 而进行对应的操作。 另外, 现有技术中 TCP连接一端的节点在连接已经 建立的情况下收到该连接的 SYN报文,通常会使用复位报文终止该连接, 而应用本发明后, 在连接已建立的情况下收到 SYN报文的节点应向对端 节点回复连接状态信息。
在 TCP连接建立后进行连接状态同步的状态机如图 10所示,已经建 立的 TCP连接处于已建立连接 ( Established )状态, 为了区别于建立连接 过程中的( SYN报文已接收 SYN RCVD )和 SYN报文已发送( SYN SENT ) 状态, 在连接状态同步过程中为连接后 SYN报文已接收(EST SYN RCVD )和连接后 SYN报文已发送( EST SYN SENT )状态。
处于 Established状态的节点在需要进行连接状态同步时发送连接状 态信息请求报文后进入 EST SYN SENT状态; 在接收到对端节点的连接 状态信息响应报文后进行连接状态同步, 发送连接状态同步确认报文后 重新回到 Established状态。 处于 Established状态的节点在接收到连接状 态信息请求报文, 向对端节点返回连接状态信息响应报文后进入 EST SYN RCVD状态, 在接收到对端节点的连接状态同步确认报文后重新回 到 Established ^)夫态。
根据本发明设计的一种计算机程序, 用于数据通信中实现连接状态 同步, 其存储于通信节点中, 用以使得通信节点执行如下步骤:
向与其连接的对端节点请求连接状态信息;
^^据对端节点返回的连接状态信息更新本地的连接状态。
所述的计算机程序中, 涉及的通信节点包括主用通信单元以及备用 通信单元, 所述备用通信单元根据主用通信单元提供的连接参数向对端 请求连接状态信息, 然后根据获得的连接状态信息更新本地连接状态。
所涉及的连接参数包括源 IP地址、 目的 IP地址、 源端口号和目的 端口号。
所涉及的连接状态信息包括本地序列号和对端序列号。
所述通信节点向对端节点请求连接状态信息的同时发送本地的窗口 值;
所述对端节点返回的连接状态信息中包含自身的窗口值。
在节点更新本地连接状态后, 节点向对端节点确认连接状态同步。 采用传输控制协议 TCP建立连接的第一个同步 SYN报文的格式向所 述对端节点请求连接状态信息的消息;
所述确认连接状态同步的消息采用 TCP建立连接的第三个 SYN报文 的格式。
根据本发明还提供另一种计算机程序, 用于数据通信中实现连接状 态同步, 其存储于一个通信节点中, 用以使得该通信节点执行以下步驟: 从与本通信节点已经建立连接的对端节点处接收连接状态信息请 求;
该通信节点将本地的当前连接状态信息返回给上述对端节点。
在向对端节点返回连接状态信息前, 节点接收到对端节点的连接状 态信息请求后, 暂停该连接的数据传输。
所述对端节点的连接状态信息请求中包括该端的窗口大小; 节点根据对端连接状态信息请求中的窗口值更新本地的对端窗口大 小; 所述返回给对端节点的当前连接状态信息中包括本地记录的对端序 列号、 本地序列号和本地的窗口大小。
采用 TCP建立连接的第二个 SYN报文的格式将当前连接状态信息返 回给对端节点, 其中确认序列号字段为本地记录的对端序列号。
以下通过两个具体的例子说明本发明的应用。
本发明的应用示例 1请见图 1所示分布式系统的 TCP连接, 其连接 状态同步的流程如图 11所示。 节点 B的主板发生故障后, 备板接替主板 工作, 备板只需知道原 TCP连接的目的 IP地址、 源 IP地址、 目的端口 号和源端口号, 就可以向节点 A发送连接状态信息请求报文, 接收节点 A的连接状态信息响应报文, 再向节点 A发送连接状态同步确认报文来 完成连接状态同步的过程。 之后节点 B就可以继续和节点 A进行数据传 输了, 这个过程对上层的应用程序而言几乎是不可见的。
本发明的应用示例 2中,节点 C与节点 D之间通过 TCP连接进行数 据传输。 当节点 C或其上的进程重新启动以后, 只要还保有该连接的目 的 IP地址、 源 IP地址、 目的端口号和源端口号, 就可以通过与节点 D 交互连接状态信息请求报文、 连接状态信息响应报文和连接状态同步确 认报文来进行连接状态同步, 使该 TCP连接得以恢复。 也就是说, 节点 C上短时间内的重新启动行为不会对基于该连接的数据传输造成影响。
可见 , 本发明不仅对高可用性系统在各种情况下和任意时刻的切换 都可以继续原有的连接, 并且对集中式系统短时间故障造成的连接状态 失步也能够实现恢复的效果。 同时, 本发明不需要高可用性系统的各个 连接单元之间进行连接状态的实时同步, 而只需向备份连接单元传输一 次该连接的连接参数, 从而使得高可用性系统的处理器和内部带宽均得 以释放, 确保了系统的业务处理能力。
以上所述的本发明实施方式, 并不构成对本发明保护范围的限定。 任何在本发明的精神和原则之内所作的任何修改、 等同替换和改进等, 均应包含在本发明的权利要求保护范围之内。

Claims

权 利 要 求
1. 一种数据通信中连接状态的同步方法, 其特征在于, 包括: 节点向与其连接的对端节点请求连接状态信息;
节点根据对端节点返回的连接状态信息更新本地的连接状态。
2. 如权利要求 1所述连接状态的同步方法, 其特征在于, 所述节点 包括第一通信单元和至少一个第二通信单元;
在节点向对端节点请求连接状态信息之前, 第一通信单元将与对端 节点的连接参数通知第二通信单元。
3. 如权利要求 2所述连接状态的同步方法, 其特征在于, 所述节点 向对端节点请求连接状态信息具体为: 一个第二通信单元在接替第一通 信单元与对端节点的连接后, 根据所述连接参数向对端节点请求连接状 态吕息;
所述第二通信单元根据对端节点返回的连接状态信息更新本地的连 接状态。
4. 如权利要求 2或 3所述连接状态的同步方法, 其特征在于, 所述 连接参数包括源 IP地址、 目的 IP地址、 源端口号和目的端口号。
5. 如权利要求 2所述连接状态的同步方法, 其特征在于, 所述向对 端节点请求连接状态信息和根据返回的连接状态信息更新本地连接状态 由当前与对端节点连接的第一通信单元或第二通信单元进行。
6. 如权利要求 1至 5任意一项所述连接状态的同步方法, 其特征在 于, 所述连接状态信息包括本地序列号和对端序列号。
7. 如权利要求 6所述连接状态的同步方法, 其特征在于, 还包括: 节点向对端节点请求连接状态信息的同时发送本地的窗口值; 所述对端节点返回的连接状态信息中包含该端的窗口值。
8. 如权利要求 1至 5任意一项所述连接状态的同步方法, 其特征在 于, 在节点更新本地连接状态后, 节点向对端节点确认连接状态同步。
9. 如权利要求 8所述连接状态的同步方法, 其特征在于, 釆用传输控制协议 TCP建立连接的第一个同步 SYN报文的格式向所 述对端节点请求连接状态信息的消息;
所述确认连接状态同步的消息采用 TCP建立连接的第三个 SYN报文 的格式。
10. —种数据通信中连接状态的同步方法, 其特征在于, 包括以下 步驟:
已建立连接的节点接收对端节点的连接状态信息请求;
节点将本地的当前连接状态信息返回给对端节点。
11. 如权利要求 10所述连接状态的同步方法, 其特征在于, 在向对 端节点返回连接状态信息前, 节点接收到对端节点的连接状态信息请求 后, 暂停该连接的数据传输。
12. 如权利要求 10或 11所述连接状态的同步方法, 其特征在于, 所述对端节点的连接状态信息请求中包括该端的窗口大小;
节点根据对端连接状态信息请求中的窗口值更新本地的对端窗口大 所述返回给对端节点的当前连接状态信息中包括本地记录的对端序 列号、 本地序列号和本地的窗口大小。
13.如权利要求 12所述连接状态的同步方法,其特征在于,采用 TCP 建立连接的第二个 SYN报文的格式将当前连接状态信息返回给对端节 点, 其中确认序列号字段为本地记录的对端序列号。
14. 一种通信节点, 其特征在于, 包括连接模块和同步请求模块, 其中:
连接模块, 用来通过与对端节点的连接进行通信;
同步请求模块, 用来通过连接模块向对端节点发送连接状态信息请 求, 并根据连接模块从对端节点接收的连接状态信息同步更新本地的连 接状态。
15. 如权利要求 14所述的通信节点, 其特征在于, 还包括: 将本地的连接状态信息置为与接收的连接状态信息相同;
通过连接模块向对端节点确认连接状态信息同步。
16. 如权利要求 14或 15所述的通信节点, 其特征在于: 所述连接 状态信息请求中包括本地窗口大小; 所述接收的连接状态信息包括对端 节点记录的本地序列号、 对端序列号和对端的窗口大小。
17. —种通信节点, 其特征在于, 包括第一通信单元和至少一个第 二通信单元, 其中:
第一通信单元将与对端节点的连接参数发送给第二通信单元; 第二通信单元根据所述连接参数与对端节点建立连接, 向对端节点 发送连接状态信息请求, 并根据从对端节点接收的连接状态信息进行连 接状态更新。
18. 如权利要求 17所述的通信节点, 其特征在于, 进一步包括: 将本单元的连接状态信息置为与接收的连接状态信息相同; 向对端节点确认连接状态同步。
19. 如权利要求 17或 18所述的通信节点, 其特征在于, 所述从对 端节点接收的连接状态信息包括对端节点记录的本地序列号和对端序列 号; 所述连接参数包括源网际协议 IP地址、 目的 IP地址、 源端口号和目 的端口号。
20. —种通信节点, 其特征在于, 包括连接模块和同步响应模块, 其中:
连接模块用来通过与对端节点的连接进行通信;
同步响应模块, 用来接收连接模块输出的来自对端节点的连接状态 信息请求, 并将本地当前的连接状态信息通过连接模块发送给对端节点。
21. 如权利要求 20所述的通信节点, 其特征在于, 所述通信节点还 包括通信控制模块, 用来在连接模块接收到对端节点的连接状态信息请 求后暂停连接模块的数据通信, 在连接模块接收到对端节点的连接状态 同步确认后继续连接模块的数据通信。
22. 如权利要求 21所述的通信节点, 其特征在于, 所述本地当前的 连接状态信息包括本地记录的对端序列号、 本地序列号和本地的窗口大
23. 一种计算机程序, 用于数据通信中实现连接状态同步, 其存储于 通信节点中, 用以使得通信节点执行如下步骤:
向与其连接的对端节点请求连接状态信息;
根据对端节点返回的连接状态信息更新本地的连接状态。
24. 如权利要求 23所述的计算机程序, 其特征在于, 所述通信节点 包括主用通信单元以及备用通信单元, 所述备用通信单元根据主用通信 单元提供的连接参数向对端请求连接状态信息, 然后根据获得的连接状 态信息更新本地连接状态。
25. 如权利要求 24所述计算机程序, 其特征在于, 所述连接参数包 括源 IP地址、 目的 IP地址、 源端口号和目的端口号。
26. 如权利要求 23所述计算机程序, 其特征在于, 所述连接状态信 息包括本地序列号和对端序列号。
27. 如权利要求 26所述计算机程序, 其特征在于, 还包括: 所述通信节点向对端节点请求连接状态信息的同时发送本地的窗口 值;
所述对端节点返回的连接状态信息中包含自身的窗口值。
28. 如权利要求 23所述计算机程序, 其特征在于, 在节点更新本地 连接状态后, 节点向对端节点确认连接状态同步。
29. 如权利要求 23所述计算机程序, 其特征在于,
采用传输控制协议 TCP建立连接的第一个同步 SYN报文的格式向所 述对端节点请求连接状态信息的消息;
所述确认连接状态同步的消息采用 TCP建立连接的第三个 SYN报文 的格式。
30. 一种计算机程序, 用于数据通信中实现连接状态同步, 其存储 于一个通信节点中, 用以使得该通信节点执行以下步骤:
从与本通信节点已经建立连接的对端节点处接收连接状态信息请 求;
该通信节点将本地的当前连接状态信息返回给上述对端节点。
31. 如权利要求 30所述计算机程序, 其特征在于, 在向对端节点返 回连接状态信息前, 节点接收到对端节点的连接状态信息请求后, 暂停 该连接的数据传输。
32. 如权利要求 30所述计算机程序, 其特征在于, 所述对端节点的 连接状态信息请求中包括该端的窗口大小;
节点根据对端连接状态信息请求中的窗口值更新本地的对端窗口大 小;
所述返回给对端节点的当前连接状态信息中包括本地记录的对端序 列号、 本地序列号和本地的窗口大小。
33. 如权利要求 30所述的计算机程序, 其特征在于, 采用 TCP建立 连接的第二个 SYN报文的格式将当前连接状态信息返回给对端节点, 其 中确认序列号字段为本地记录的对端序列号。
PCT/CN2006/001520 2006-02-14 2006-06-30 Procédé de synchronisation d'état de connexion dans des communications de données et nœud de communication affecté WO2007093087A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AU2006338127A AU2006338127B2 (en) 2006-02-14 2006-06-30 A synchronization method of connection status in data communications and the applied communication node
JP2008552664A JP2009525013A (ja) 2006-02-14 2006-06-30 データ通信における接続状態を同期するための方法および同方法を用いる通信ノード
EP06761331A EP1986337A4 (en) 2006-02-14 2006-06-30 SYNCHRONIZATION METHOD OF CONNECTION STATUS IN DATA COMMUNICATIONS AND AFFECTED COMMUNICATION N UD
US12/094,025 US7860985B2 (en) 2006-02-14 2006-06-30 Method for synchronizing connection state in data communication, and communication node using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200610007491.8 2006-02-14
CN200610007491.8A CN101022451B (zh) 2006-02-14 2006-02-14 数据通信中连接状态的同步方法及其应用的通信节点

Publications (1)

Publication Number Publication Date
WO2007093087A1 true WO2007093087A1 (fr) 2007-08-23

Family

ID=38371170

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2006/001520 WO2007093087A1 (fr) 2006-02-14 2006-06-30 Procédé de synchronisation d'état de connexion dans des communications de données et nœud de communication affecté

Country Status (7)

Country Link
US (1) US7860985B2 (zh)
EP (1) EP1986337A4 (zh)
JP (1) JP2009525013A (zh)
KR (1) KR100990415B1 (zh)
CN (1) CN101022451B (zh)
AU (1) AU2006338127B2 (zh)
WO (1) WO2007093087A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2093936A4 (en) * 2007-11-09 2010-08-18 Huawei Tech Co Ltd METHOD AND NETWORK DEVICE FOR RESOLVING ADDRESS CONFLICTS
JP2012531850A (ja) * 2009-06-30 2012-12-10 アルカテル−ルーセント Aal2経路状態を同期させる方法および装置

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101132347A (zh) * 2006-08-24 2008-02-27 华为技术有限公司 一种实现tcp连接备份的系统及方法
JP4479930B2 (ja) * 2007-12-21 2010-06-09 日本電気株式会社 ノードシステム、サーバ切換え方法、サーバ装置、データ引き継ぎ方法、およびプログラム
JP5088281B2 (ja) * 2008-09-19 2012-12-05 沖電気工業株式会社 パケット同期切替方法及びゲートウェイ装置
WO2011043843A1 (en) * 2009-10-08 2011-04-14 Qualcomm Incorporated Method and apparatus for repeating uplink synchronization in time division synchronous code division multiple access (td-scdma) networks
US9674096B2 (en) * 2010-02-12 2017-06-06 Telefonaktiebolaget L M Ericsson Rate adaptation
CN102572063B (zh) * 2010-12-15 2014-11-05 联想(北京)有限公司 系统状态控制方法及便携终端
CN102035687B (zh) * 2011-01-06 2012-10-17 华为技术有限公司 Tcp连接的备份方法及其设备
CN102780712B (zh) * 2011-05-09 2015-04-15 华为技术有限公司 会话的切换方法及装置
US9210127B2 (en) * 2011-06-15 2015-12-08 Mcafee, Inc. System and method for limiting data leakage
CN102510408B (zh) * 2011-11-30 2015-01-14 武汉烽火网络有限责任公司 实现tcp应用主备热倒换的方法
CN103685043A (zh) * 2012-09-19 2014-03-26 国基电子(上海)有限公司 路由器、网络连接恢复系统及网络连接恢复方法
US9572120B2 (en) * 2012-09-24 2017-02-14 Apple Inc. Synchronization requests to reduce power consumption
CN104580215A (zh) * 2015-01-09 2015-04-29 烽火通信科技股份有限公司 一种tcp连接热备份的实现方法
CN106161355A (zh) * 2015-04-01 2016-11-23 中兴通讯股份有限公司 一种保活报文的处理方法及装置
US11669076B2 (en) 2018-07-27 2023-06-06 Rockwell Automation Technologies, Inc. System and method of communicating unconnected messages over high availability industrial control systems
US11927950B2 (en) 2018-07-27 2024-03-12 Rockwell Automation Technologies, Inc. System and method of communicating safety data over high availability industrial control systems
US11327472B2 (en) 2018-07-27 2022-05-10 Rockwell Automation Technologies, Inc. System and method of connection management during synchronization of high availability industrial control systems
US11221612B2 (en) * 2018-07-27 2022-01-11 Rockwell Automation Technologies, Inc. System and method of communicating data over high availability industrial control systems
CN110011767B (zh) * 2019-04-17 2022-09-27 北京百度网讯科技有限公司 用于tcp连接备份的方法和装置
US11323552B2 (en) * 2019-04-19 2022-05-03 EMC IP Holding Company LLC Automatic security configurations in disaster recovery
CN110149232B (zh) * 2019-05-23 2020-05-29 苏州浪潮智能科技有限公司 分布式存储块升级iscsi服务方法、系统、装置及存储介质
CN110380931A (zh) * 2019-07-17 2019-10-25 上海庆科信息技术有限公司 连接状态的处理方法、装置、存储介质、处理器及系统
CN110493328A (zh) * 2019-08-07 2019-11-22 苏州浪潮智能科技有限公司 一种状态信息处理方法、装置、服务器及可读存储介质
CN111510327B (zh) 2020-04-08 2022-01-21 北京字节跳动网络技术有限公司 用于共同训练模型的训练参与端的网络连接方法、装置、系统和服务器
CN112235370B (zh) * 2020-09-29 2023-04-28 卧安科技(深圳)有限公司 一种设备信息同步方法、同步装置、主设备及存储介质
WO2023219709A1 (en) * 2022-05-13 2023-11-16 Microsoft Technology Licensing, Llc Efficient state replication in sdn networks
CN115150317B (zh) * 2022-06-22 2023-09-12 杭州迪普科技股份有限公司 路由表项下发方法、装置、电子设备及计算机可读介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1558638A (zh) * 2004-01-18 2004-12-29 中兴通讯股份有限公司 一种基于消息的处理器间通信方法
CN1567919A (zh) * 2003-07-02 2005-01-19 西安大唐电信有限公司 一种主备用双机进行tcp连接倒换的方法
CN1606253A (zh) * 2003-10-09 2005-04-13 阿尔卡特公司 在电信网中利用同步冗余机构实现资源的高可用性

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1013429A (ja) * 1996-06-21 1998-01-16 Nec Corp プロトコル状態同期化方法及び装置
JP3602972B2 (ja) * 1998-07-28 2004-12-15 富士通株式会社 通信性能測定装置及びその測定方法
US6219706B1 (en) * 1998-10-16 2001-04-17 Cisco Technology, Inc. Access control for networks
US6237111B1 (en) * 1998-10-29 2001-05-22 International Business Machines Corporation Method for logical connection resynchronization
US6876625B1 (en) * 2000-09-18 2005-04-05 Alcatel Canada Inc. Method and apparatus for topology database re-synchronization in communications networks having topology state routing protocols
US7490161B2 (en) * 2001-08-22 2009-02-10 Nokia Inc. Method and system for implementing OSPF redundancy
US20040078625A1 (en) * 2002-01-24 2004-04-22 Avici Systems, Inc. System and method for fault tolerant data communication
US7114096B2 (en) * 2003-04-02 2006-09-26 International Business Machines Corporation State recovery and failover of intelligent network adapters
EP1628444A1 (en) * 2003-05-29 2006-02-22 NEC Corporation Packet relay device, packet relay method, and program
US7058058B2 (en) * 2003-11-05 2006-06-06 Juniper Networks, Inc. Transparent optimization for transmission control protocol initial session establishment
JP4008432B2 (ja) * 2004-06-02 2007-11-14 富士通株式会社 ネットワーク機器のトポロジを探索する装置および方法
US20050283529A1 (en) * 2004-06-22 2005-12-22 Wan-Yen Hsu Method and apparatus for providing redundant connection services
US7447796B2 (en) * 2004-12-17 2008-11-04 International Business Machines Corporation System, method and program product to route message packets
US7607170B2 (en) * 2004-12-22 2009-10-20 Radware Ltd. Stateful attack protection

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1567919A (zh) * 2003-07-02 2005-01-19 西安大唐电信有限公司 一种主备用双机进行tcp连接倒换的方法
CN1606253A (zh) * 2003-10-09 2005-04-13 阿尔卡特公司 在电信网中利用同步冗余机构实现资源的高可用性
CN1558638A (zh) * 2004-01-18 2004-12-29 中兴通讯股份有限公司 一种基于消息的处理器间通信方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2093936A4 (en) * 2007-11-09 2010-08-18 Huawei Tech Co Ltd METHOD AND NETWORK DEVICE FOR RESOLVING ADDRESS CONFLICTS
JP2012531850A (ja) * 2009-06-30 2012-12-10 アルカテル−ルーセント Aal2経路状態を同期させる方法および装置
US9054897B2 (en) 2009-06-30 2015-06-09 Alcatel Lucent Method and apparatus for synchronizing AAL2 path states

Also Published As

Publication number Publication date
KR20080077210A (ko) 2008-08-21
US7860985B2 (en) 2010-12-28
US20080294784A1 (en) 2008-11-27
EP1986337A1 (en) 2008-10-29
CN101022451B (zh) 2014-07-23
EP1986337A4 (en) 2012-05-02
KR100990415B1 (ko) 2010-10-29
CN101022451A (zh) 2007-08-22
AU2006338127A1 (en) 2007-08-23
JP2009525013A (ja) 2009-07-02
AU2006338127B2 (en) 2010-01-21

Similar Documents

Publication Publication Date Title
WO2007093087A1 (fr) Procédé de synchronisation d&#39;état de connexion dans des communications de données et nœud de communication affecté
US7672223B2 (en) Method and apparatus for replicating a transport layer protocol stream
US7801135B2 (en) Transport protocol connection synchronization
US7929422B2 (en) Method of moving a transport connection among network hosts
EP2752767B1 (en) Transparent TCP connection failover
US9648147B2 (en) System and method for TCP high availability
JP4164365B2 (ja) デュアル・プロキシ装置を設けることによる無線インタフェースを介するtcp性能の改良技術
Marwah et al. TCP server fault tolerance using connection migration to a backup server
US6871296B2 (en) Highly available TCP systems with fail over connections
US20150222444A1 (en) System and method for reliable multicast data transport
EP1829267B1 (en) Redundant l2tp end points
CN110313138B (zh) 使用多个网元实现高可用性的相关方法和装置
WO2009067865A2 (en) Method, router, line card and active master card for realizng a link state database synchronization
US20070086461A1 (en) Method for recovery of a controlled failover of a border gateway protocol speaker
WO2011006324A1 (zh) 文件传输方法及终端
AU2007320794B2 (en) Selective session interception method
EP2692115B1 (en) Sctp endpoint migration
JP3620010B2 (ja) 無線通信システムで用いられる装置とプログラム記録媒体
JP7128288B2 (ja) トランスポートプロトコル上でのポイント・ツー・ポイント・データベース同期
Kalim et al. Enabling Renewed Innovation in TCP by Establishing an Isolation Boundary
JP2001119427A (ja) メッセージ通信方法とそのシステム
Nawrin Ferdous et al. Comparison Between Different Transport Layer Mobility Protocols

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006761331

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 12094025

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1020087014824

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2006338127

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2006338127

Country of ref document: AU

Date of ref document: 20060630

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 2006338127

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 2008552664

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE