End-to-end bidirectional keep-alive using virtual circuits
First Claim
1. A system for providing keep-alive detection between end nodes of a virtual circuit in a data network, the system comprising:
- said virtual circuit including a first end node, a second end node and at least one intermediate router;
said first end node being coupled to a first router of said at least one intermediate router;
said second end node being coupled to a second router of said at least one intermediate router, said second end node further being coupled to said first end node via said virtual circuit;
said virtual circuit being represented by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes;
said first end node including a first keep-alive mechanism configured to send at least one data link-layer keep-alive REQUEST message to said second end node via said virtual circuit;
said second end node including a second keep-alive mechanism configured to respond to reception of said at least one keep-alive REQUEST message by sending at least one data link-layer keep-alive REPLY message to said first end node via said virtual circuit; and
wherein said first end node is configured to take action to alter connectivity of the virtual circuit in response to a failure to receive said at least one keep-alive REPLY message within a timeout period.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention provides a method and system for sending and receiving end-to-end bidirectional keep-alive messages using virtual circuits. Nodes coupled to a network, such as a frame relay network, periodically exchange link-layer “keep-alive” messages which indicate information regarding configuration and status of the virtual circuit, as well as information regarding congestion at sending nodes. Nodes respond to received keep-alive messages, or to timed-out failure to receive keep-alive messages, with follow-on actions, such as attempting to reconnect when a virtual circuit fails. Keep-alive messages may be propagated across multiple networks of either similar or different architecture. Keep-alive messages include sent and received sequence numbers, thus providing receiving nodes with a technique for determining if any keep-alive messages have been lost. Keep-alive messages can also include information regarding configuration of the virtual circuit, status of the virtual circuit (including counts of recent keep-alive message failure or success), and congestion at the sending node.
236 Citations
31 Claims
-
1. A system for providing keep-alive detection between end nodes of a virtual circuit in a data network, the system comprising:
-
said virtual circuit including a first end node, a second end node and at least one intermediate router;
said first end node being coupled to a first router of said at least one intermediate router;
said second end node being coupled to a second router of said at least one intermediate router, said second end node further being coupled to said first end node via said virtual circuit;
said virtual circuit being represented by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes;
said first end node including a first keep-alive mechanism configured to send at least one data link-layer keep-alive REQUEST message to said second end node via said virtual circuit;
said second end node including a second keep-alive mechanism configured to respond to reception of said at least one keep-alive REQUEST message by sending at least one data link-layer keep-alive REPLY message to said first end node via said virtual circuit; and
wherein said first end node is configured to take action to alter connectivity of the virtual circuit in response to a failure to receive said at least one keep-alive REPLY message within a timeout period. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
wherein said at least one keep-alive REQUEST message and said at least one keep-alive REPLY message each include a respective field having a predetermined value which may be used for identifying the frame as a keep-alive message.
-
-
13. A method for providing keep-alive detection between end nodes of a virtual circuit in a data network, the method comprising:
-
sending, via the virtual circuit, at least one data link-layer keep-alive REQUEST message from a first end node to a second end node of the virtual circuit, said first end node including a keep-alive mechanism for detecting a failure of communication with said second end node, said virtual circuit being identified by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes;
waiting for receipt of a data link-layer keep-alive REPLY message from said second end node via said virtual circuit; and
taking action to alter connectivity of said virtual circuit in response to a failure to receive said at least one keep-alive REPLY message within a predetermined timeout period. - View Dependent Claims (14, 15, 16)
receiving at said second end node, via said virtual circuit, said at least one keep-alive REQUEST message; and
responding to said at least one keep-alive REQUEST message by sending at least one data link-layer keep-alive REPLY message over said virtual circuit to said first end node.
-
-
16. The method of claim 13 wherein the data network is a frame relay network.
-
17. A method for providing keep-alive detection between end nodes of a virtual circuit in a data network, the method comprising:
-
receiving at a keep-alive mechanism of a second end node, a plurality of data link-layer keep-alive REQUEST messages, at least one of said keep-alive REQUEST messages being sent from a first end node via said virtual circuit, said at least one keep-alive REQUEST message being used by the first node to detect a failure of communication with the second end node, said virtual circuit being identified by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes; and
responding to each received keep-alive REQUEST message by sending a respective data link-layer keep-alive REPLY message to said first end node over said virtual circuit. - View Dependent Claims (18, 19)
sending, via said virtual circuit, each of said plurality of said at least one keep-alive REQUEST messages from a first keep-alive mechanism at said first node;
waiting for said at least one keep-alive REPLY messages at said first keep-alive mechanism; and
taking action to alter connectivity of said virtual circuit in response to a failure to receive a keep-alive REPLY message within a selected timeout period.
-
-
19. The method of claim 17 wherein said data network is a frame relay network.
-
20. A computer program product for providing keep-alive detection between end nodes of a virtual circuit in a data network, the computer program product comprising:
-
a computer readable medium comprising;
computer code for sending, via the virtual circuit, at least one data link-layer keep-alive REQUEST message from a first end node to a second end node of the virtual circuit, said first end node including a keep-alive mechanism for detecting a failure of communication with said second end node, said virtual circuit being identified by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes;
computer code for waiting for receipt of a data link-layer keep-alive REPLY message from said second end node via said virtual circuit; and
computer code for taking action to alter connectivity of said virtual circuit in response to a failure to receive said at least one keep-alive REPLY message within a predetermined timeout period. - View Dependent Claims (21, 22, 23)
computer code for receiving at said second end node, via said virtual circuit, said at least one keep-alive REQUEST message; and
computer code for responding to said at least one keep-alive REQUEST message by sending at least one data link-layer keep-alive REPLY message over said virtual circuit to said first end node.
-
-
23. The computer program product of claim 20 wherein the data network is a frame relay network.
-
24. A system for providing keep-alive detection between end nodes of a virtual circuit in a data network, the system comprising:
-
means for sending, via the virtual circuit, at least one data link-layer keep-alive REQUEST message from a first end node to a second end node of the virtual circuit, said first end node including a keep-alive mechanism for detecting a failure of communication with said second end node, said virtual circuit being identified by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes;
means for waiting for receipt of a data link-layer keep-alive REPLY message from said second end node via said virtual circuit; and
means for taking action to alter connectivity of said virtual circuit in response to a failure to receive said at least one keep-alive REPLY message within a predetermined timeout period.
-
-
25. A method for providing keep-alive detection between end nodes of a virtual circuit in a data network, the method comprising:
-
sending, via said virtual circuit, a data link-layer keep-alive REQUEST message from a first keep-alive mechanism disposed at a first end node of the virtual circuit, said at least one keep-alive REQUEST message being addressed to a second end node of the virtual circuit, said virtual circuit being identified by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between said first and second end nodes;
receiving said at least one keep-alive REQUEST message at a second keep-alive mechanism disposed at said second end node;
responding to said at least one keep-alive REQUEST message by sending at least one data link-layer keep-alive REPLY message to said first end node via said virtual circuit;
waiting for said at least one keep-alive REPLY message at said first end node; and
taking action to alter connectivity of said virtual circuit in response to a failure to receive said at least one keep-alive REPLY message within a timeout period. - View Dependent Claims (26)
-
-
27. An end node coupled to one or more routers which are part of a virtual circuit of a frame relay network, said end node including:
-
a keep-alive mechanism including;
a send mechanism configured to send at least one data link-layer keep-alive REQUEST message over the virtual circuit, said virtual circuit being represented by an associated data link connection identifier (DLCI) other than that used by a local management interface, and configured to allow transmission of data frames between end nodes of the virtual circuit;
a reply receive mechanism configured to receive, via said virtual circuit, a data link-layer keep-alive REPLY message, responsive to said at least one keep-alive REQUEST message; and
a timeout mechanism configured to initiate at least one action in response to a failure to receive said at least one keep-alive REPLY message at the reply receive mechanism within a timeout period. - View Dependent Claims (28, 29, 30, 31)
a keep-alive receive mechanism in communication with said send mechanism via said virtual circuit, said at least one keep-alive receive mechanism including;
a request receive mechanism configured to receive said at least one keep-alive REQUEST message from the first end node; and
a send reply mechanism configured to send said at least one keep-alive REPLY message responsive to the request receive mechanism.
-
-
29. The node of claim 28, wherein said second end node includes a second keep-alive mechanism.
-
30. The node of claim 27, wherein said at least one keep-alive mechanism further comprises a receive mechanism in communication with a second keep-alive mechanism of a second end node via a second virtual circuit represented by a second DLCI, said receive mechanism including:
-
a request receive mechanism configured to receive said at least one keep-alive REQUEST message from said second node; and
a send reply mechanism configured to send said at least one keep-alive REPLY message to the request receive mechanism in response to receiving said at least one keep-alive REQUEST message.
-
-
31. The node of claim 27, wherein said at least one keep-alive REQUEST message and said at least one keep-alive REPLY message comprise link-level protocol messages.
Specification