Processing communication flows in asymmetrically routed networks
First Claim
1. A method comprising:
- establishing network tunnels between at least three intermediate processing devices located between a first device and a second device separated by a network having asymmetric routes in which traffic forwarded in a first direction from the first device to the second device travels a different route than traffic forwarded in a second direction from the second device to the first device, wherein the at least three intermediate processing devices includes a first intermediate processing device associated with the first device, and second and third intermediate processing devices associated with the second device, and wherein establishing network tunnels comprises establishing a first tunnel between the first intermediate processing device and the second intermediate processing device and establishing a second tunnel between the first intermediate processing device and the third intermediate processing device;
intercepting, with the first intermediate processing device, a request for a communication flow between the first device and the second device, wherein the communication flow includes communications from the first device to the second device and return communications from the second device to the first device;
after intercepting the request with the first intermediate processing device, forwarding the request from the first intermediate processing device to the third intermediate device via the second tunnel;
when the third intermediate processing device receives the request, forwarding a notification from the third intermediate processing device to the second intermediate processing device to inform the second intermediate processing device of the communication flow being requested, wherein the notification includes information specifying the requested flow and information identifying the first intermediate processing device that intercepted the request;
forwarding the request from the third intermediate device to the second device;
intercepting, with the second intermediate processing device, a response from the second device that acknowledges the request for the communication flow; and
encapsulating, with the intermediate processing devices, the communications of the communication flow within the network tunnels so that the communications associated with the communication flow are forwarded through the network between the first intermediate processing device that intercepted the request and the second intermediate processing device that intercepted the response.
1 Assignment
0 Petitions
Accused Products
Abstract
A network system includes a first device and a second device separated by a network having asymmetric routes in which traffic forwarded in a first direction from the first device to the second device may travel a different route than traffic forwarded in a second direction from the second device to the first device. At least three intermediate processing devices are located between the first device and the second device, wherein at least two of the intermediate processing devices are located along different asymmetric routes. The intermediate processing devices intercept a communication flow between the first device and the second device, and encapsulate the communication flow within network tunnels so that communications associated with the communication flow in the first direction and the second direction are forwarded between a same set of at least two of the intermediate processing devices.
33 Citations
8 Claims
-
1. A method comprising:
-
establishing network tunnels between at least three intermediate processing devices located between a first device and a second device separated by a network having asymmetric routes in which traffic forwarded in a first direction from the first device to the second device travels a different route than traffic forwarded in a second direction from the second device to the first device, wherein the at least three intermediate processing devices includes a first intermediate processing device associated with the first device, and second and third intermediate processing devices associated with the second device, and wherein establishing network tunnels comprises establishing a first tunnel between the first intermediate processing device and the second intermediate processing device and establishing a second tunnel between the first intermediate processing device and the third intermediate processing device; intercepting, with the first intermediate processing device, a request for a communication flow between the first device and the second device, wherein the communication flow includes communications from the first device to the second device and return communications from the second device to the first device; after intercepting the request with the first intermediate processing device, forwarding the request from the first intermediate processing device to the third intermediate device via the second tunnel; when the third intermediate processing device receives the request, forwarding a notification from the third intermediate processing device to the second intermediate processing device to inform the second intermediate processing device of the communication flow being requested, wherein the notification includes information specifying the requested flow and information identifying the first intermediate processing device that intercepted the request; forwarding the request from the third intermediate device to the second device; intercepting, with the second intermediate processing device, a response from the second device that acknowledges the request for the communication flow; and encapsulating, with the intermediate processing devices, the communications of the communication flow within the network tunnels so that the communications associated with the communication flow are forwarded through the network between the first intermediate processing device that intercepted the request and the second intermediate processing device that intercepted the response. - View Dependent Claims (2, 3, 4)
-
-
5. A method comprising:
-
establishing network tunnels between at least three intermediate processing devices located between a first device and a second device separated by a network having asymmetric routes in which traffic forwarded in a first direction from the first device to the second device travels a different route than traffic forwarded in a second direction from the second device to the first device, wherein the at least three intermediate processing devices includes a first intermediate processing device associated with the first device, and second and third intermediate processing devices associated with the second device, and wherein establishing network tunnels comprises establishing a first tunnel between the first intermediate processing device and the second intermediate processing device and establishing a second tunnel between the first intermediate processing device and the third intermediate processing device; intercepting, with the first intermediate processing devices, a request for a communication flow between the first device and the second device, wherein the communication flow includes communications from the first device to the second device and return communications from the second device to the first device; after intercepting the request with the first intermediate processing device, updating flow data stored within the first intermediate processing device to add the flow being requested and forwarding the request from the first intermediate processing device in accordance with a local routing table of the first intermediate device; when the third intermediate processing device receives the request, forwarding a notification from the third intermediate processing device to the second intermediate processing device to inform the second intermediate processing device of the communication flow being requested; receiving the notification with the second intermediate processing device; in response to the notification, determining an identity of the first intermediate processing device that intercepted the request based on the notification; intercepting, with the second intermediate processing device, a response from the second device that acknowledges the request for the communication flow; forwarding the intercepted response from the second intermediate processing device to the first intermediate processing device via the first tunnel; updating flow data stored within the second intermediate processing device to add the flow being requested and to specify that communications of the flow are to be forwarded via the first tunnel; forwarding, as encapsulated packets via the first tunnel, communications of the flow from the second intermediate processing device to the first intermediate processing device. - View Dependent Claims (6)
-
-
7. A network system comprising:
-
a first device and a second device separated by a network having asymmetric routes in which traffic forwarded in a first direction from the first device to the second device travels a different route than traffic forwarded in a second direction from the second device to the first device; at least three intermediate processing devices located between the first device and the second device, wherein the at least three intermediate processing devices includes a first intermediate processing device associated with the first device, and second and third intermediate processing devices associated with the second device, wherein the second and third intermediate processing devices are each located on a different one of the asymmetric routes; and a first tunnel between the first intermediate processing device and the second intermediate processing device and a second tunnel between the first intermediate processing device and the third intermediate processing device; wherein the first intermediate processing device is configured to intercept a request for a communication flow between the first device and the second device and forward the request to the third intermediate device via the second tunnel, wherein, the third intermediate processing device is configured to receive the request, forward the request from the third intermediate device to the second device, and forward a notification to the second intermediate processing device to inform the second intermediate processing device of the communication flow being requested, wherein the notification includes information specifying the requested flow and information identifying the first intermediate processing device that intercepted the request, and wherein the second intermediate device is configured to intercept a response from the second device that acknowledges the request for the communication flow and encapsulate communications of the communication flow within the first network tunnel so that the communications associated with the communication flow are forwarded through the network between the first intermediate processing device that intercepted the request and the second intermediate processing device that intercepted the response. - View Dependent Claims (8)
-
Specification