Network packet flow controller
First Claim
1. A packet routing method for directing packets of a bi-directional session from an originating node toward a destination node in an IP network, the method comprising:
- an intermediate node obtaining a lead packet of a plurality of packets in a bi-directional session originating at the originating node, the packets in the plurality of packets in the bi-directional session having a unique session identifier, the intermediate node having an IP address;
modifying the lead packet to include the IP address of the intermediate node;
forwarding the lead packet toward the destination node though an intermediate node electronic output interface to the IP network, the electronic output interface being in communication with the IP network, including preserving IP-routability of the lead packet, the lead packet eventually being delivered to the destination node;
receiving, through an electronic input interface of the intermediate node, an IP-routable backward message from a subsequent node, the subsequent node having a subsequent node IP address, the backward message including the subsequent node IP address and the session identifier, the electronic input interface being in communication with the IP network;
forming an association between the subsequent node IP address and the session identifier;
storing, in memory, the association to maintain state information for the bi-directional session;
obtaining additional IP-routable packets of the bi-directional session originating at the originating node;
forwarding, through the electronic output interface of the intermediate node, all of the additional IP-routable packets in the bi-directional session toward the subsequent node using the stored association, including preserving IP-routability of the additional packets, the additional packets eventually being delivered to the destination node;
the intermediate node obtaining IP-routable packets of the bi-directional session originating at the destination node; and
the intermediate node forwarding the IP-routable packets from the destination node toward the originating node, including preserving IP-routability of the packets from the destination node, the packets from the destination node eventually being delivered to the originating node.
2 Assignments
0 Petitions
Accused Products
Abstract
An intermediate node obtains a lead packet of a plurality of packets in a session having a unique session identifier, modifies the lead packet to identify at least the intermediate node, and then forwards the lead packet toward the destination node though an intermediate node electronic output interface to the IP network. The intermediate node also receives, through an intermediate node electronic input interface in communication with the IP network, a backward message from a next node having a next node identifier. The backward message includes the next node identifier and the session identifier. The intermediate node forms an association between the next node identifier and the session identifier, stores the association in memory to maintain state information for the session, and obtains (e.g., receives) additional packets of the session. Substantially all of the additional packets in the session are forwarded toward the next node using the stored association.
90 Citations
22 Claims
-
1. A packet routing method for directing packets of a bi-directional session from an originating node toward a destination node in an IP network, the method comprising:
-
an intermediate node obtaining a lead packet of a plurality of packets in a bi-directional session originating at the originating node, the packets in the plurality of packets in the bi-directional session having a unique session identifier, the intermediate node having an IP address; modifying the lead packet to include the IP address of the intermediate node; forwarding the lead packet toward the destination node though an intermediate node electronic output interface to the IP network, the electronic output interface being in communication with the IP network, including preserving IP-routability of the lead packet, the lead packet eventually being delivered to the destination node; receiving, through an electronic input interface of the intermediate node, an IP-routable backward message from a subsequent node, the subsequent node having a subsequent node IP address, the backward message including the subsequent node IP address and the session identifier, the electronic input interface being in communication with the IP network; forming an association between the subsequent node IP address and the session identifier; storing, in memory, the association to maintain state information for the bi-directional session; obtaining additional IP-routable packets of the bi-directional session originating at the originating node; forwarding, through the electronic output interface of the intermediate node, all of the additional IP-routable packets in the bi-directional session toward the subsequent node using the stored association, including preserving IP-routability of the additional packets, the additional packets eventually being delivered to the destination node; the intermediate node obtaining IP-routable packets of the bi-directional session originating at the destination node; and the intermediate node forwarding the IP-routable packets from the destination node toward the originating node, including preserving IP-routability of the packets from the destination node, the packets from the destination node eventually being delivered to the originating node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An intermediate routing device for directing packets of a bi-directional session from an originating node toward a destination node in an IP network, the intermediate routing device having an IP address, the intermediate routing device comprising:
-
an electronic input interface for receiving IP packets from the IP network; an electronic output interface for forwarding IP packets on the IP network; state memory for storing session state information; a lead packet identifier operatively coupled with the electronic input interface, the lead packet identifier configured to identify a lead packet of a plurality of IP-routable packets in a bi-directional session originating at the originating node, the packets in the plurality of packets in the bi-directional session having a unique session identifier; a lead packet modifier operatively coupled with the lead packet identifier, the lead packet modifier being configured to modify the lead packet to include the IP address of the intermediate routing device; a packet router operatively coupled with the electronic output interface, the packet router being configured to forward the lead packet toward the destination node through the electronic output interface, such that IP-routability of the lead packet is preserved and the lead packet is eventually delivered to the destination node; and an downstream controller identifier operatively coupled with the electronic input interface, the associator being configured to;
a) receive an IP-routable backward message from a subsequent node having a subsequent node IP address, the backward message including the subsequent node IP address and the session identifier, b) form an association between the subsequent node IP address and the session identifier, and c) store in the state memory the association to maintain state information for the bi-directional session;the packet router also being configured to forward, through the electronic output interface, additional packets in the bi-directional session toward the subsequent node using the stored association, such that IP-routability of the additional packets is preserved and the additional packets are eventually delivered to the destination node; and the packet router also being configured to obtain IP-routable packets of the bi-directional session originating at the destination node through the electronic input interface and forward the packets from the destination node toward the originating node, such that IP-routability of the packets from the destination node is preserved and the packets from the destination node are eventually delivered to the originating node. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer program product for use on a computer system for directing packets of a bi-directional session from an originating node toward a destination node in an IP network, the computer program product comprising a tangible, non-transient computer usable medium having computer readable program code thereon, the computer readable program code comprising:
-
program code for causing an intermediate node to obtain a lead packet of a plurality of packets in a bi-directional session, the packets in the plurality of packets in the bi-directional session originating at the originating node and having a unique session identifier, the intermediate node having an IP address; program code for modifying the lead packet to include IP address of the intermediate node; program code for forwarding the lead packet toward the destination node though an intermediate node electronic output interface to the IP network, the electronic output interface being in communication with the IP network, including preserving IP-routability of the lead packet, the lead packet eventually being delivered to the destination node; program code for receiving, through an electronic input interface of the intermediate node, an IP-routable backward message from a subsequent node, the subsequent node having a subsequent node IP address, the backward message including the subsequent node IP address and the session identifier, the electronic input interface being in communication with the IP network; program code for forming an association between the subsequent node IP address and the session identifier; program code for storing, in memory, the association to maintain state information for the bi-directional session; program code for obtaining additional IP-routable packets of the bi-directional session originating at the originating node; program code for forwarding, through the electronic output interface of the intermediate node, all of the additional IP-routable packets in the bi-directional session toward the subsequent node using the stored association, including preserving IP-routability of the additional packets, the additional packets eventually being delivered to the destination node; program code for obtaining IP-routable packets of the bi-directional session originating at the destination node; and program code for forwarding the IP-routable packets from the destination node toward the originating node, including preserving IP-routability of the packets from the destination node, the packets from the destination node eventually being delivered to the originating node. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
Specification