Cooperative proxy auto-discovery and connection interception
First Claim
1. In a network supporting transactions between clients and servers, wherein clients have network nodes from which transactions are requested and servers have network nodes from which to issue responses responsive to client requests, wherein packets between a first client and a first server travel over a first network path that may include one or more additional nodes between a first client network node and a first server network node, a method of probing for node devices on a network path comprising:
- receiving, at a first probe node in the network path, a first packet from a target client wherein the first packet is a packet directed at a target server;
modifying the first packet to signal presence of the first probe node in the network path, thus forming a modified first packet having therein a presence signal;
forwarding the modified first packet onto the network path, directed toward the target server;
monitoring, at the first probe node, a plurality of packets directed at the target client and associated with the target server to detect whether any packets of the plurality of packets contain return signals, wherein a return signal is a signal from a first device at a second probe node that detects the presence signal in the modified first packet and wherein a first return signal is an indication that the first device at the second probe node detected the presence signal as being a probing signal;
acting on a first successful probe if a responsive return signal is received corresponding to a presence signal sent from the first probe node;
updating a mapping table with results of the first successful probe; and
following a current connection, using a mapping from the mapping table in a later connection.
19 Assignments
0 Petitions
Accused Products
Abstract
In a network supporting transactions between clients and servers and proxies that are interposable in a network path between at least one client and at least one server, wherein a pair of proxies can modify a packet stream between a client and a server such that packet data from the client to the server is transformed at a client-side proxy of the proxy pair and untransformed at a server-side proxy of proxy pair and such that packet data from the server to the client is transformed at the server-side proxy and untransformed at the client-side proxy, a method and apparatus for a discovering proxy to transparently discover its position in a proxy pair by using proxy signals to indicate to other proxies that could pair with the discovering proxy. A discovering proxy might determine that it is a client-side proxy by receipt of a packet from client without a proxy signal. A discovering proxy might determine that it is a server-side proxy by receipt of a packet from server without a return proxy signal. Once a proxy pair is discovered, that proxy pair might transform traffic from the server to the client or vice versa, transforming the traffic at one proxy of the proxy pair and untransforming the traffic at the other proxy of the pair.
74 Citations
10 Claims
-
1. In a network supporting transactions between clients and servers, wherein clients have network nodes from which transactions are requested and servers have network nodes from which to issue responses responsive to client requests, wherein packets between a first client and a first server travel over a first network path that may include one or more additional nodes between a first client network node and a first server network node, a method of probing for node devices on a network path comprising:
-
receiving, at a first probe node in the network path, a first packet from a target client wherein the first packet is a packet directed at a target server; modifying the first packet to signal presence of the first probe node in the network path, thus forming a modified first packet having therein a presence signal; forwarding the modified first packet onto the network path, directed toward the target server; monitoring, at the first probe node, a plurality of packets directed at the target client and associated with the target server to detect whether any packets of the plurality of packets contain return signals, wherein a return signal is a signal from a first device at a second probe node that detects the presence signal in the modified first packet and wherein a first return signal is an indication that the first device at the second probe node detected the presence signal as being a probing signal; acting on a first successful probe if a responsive return signal is received corresponding to a presence signal sent from the first probe node; updating a mapping table with results of the first successful probe; and following a current connection, using a mapping from the mapping table in a later connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A networking device, having an interface to a network and a processor for processing packet data, the network supporting clients coupled to the network and servers coupled to the network, whereby clients request transactions and servers issue responses responsive to client requests, wherein packets between a first client and a first server travel over a first network path that may include the networking device between a first client network node and a first server network node, the networking device comprising:
-
logic to receive packets and identify, for a packet, a packet source and a packet destination, logic for receiving a first packet from a target client wherein the first packet is a packet directed at a target server; logic for modifying the first packet to signal presence of the first probe node in the network path, thus forming a modified first packet having therein a presence signal; an interface for forwarding the modified first packet onto the network path, directed toward the target server; storage for information about previously sent presence signals; logic for determining when a received packet is a packet directed at the target client and associated with the target server and also contains a return signal, wherein a return signal is a signal from another device that indicates that the other device detected the presence signal; logic for storing an indication of a successful probe, wherein a responsive return signal is received corresponding to the presence signal; a mapping table for storing results of successful probes; and logic to route packets in a later connection using a mapping from the mapping table. - View Dependent Claims (10)
-
Specification