Stateless Transmission Control Protocol Rendezvous Solution For Border Gateway Function
First Claim
1. A method in a network element of brokering a transmission control protocol (TCP) session without maintaining a full TCP stack for establishing the TCP session by a network element between a first and second clients, wherein the first and second clients each transmits a TCP session request to the other client to establish a TCP session between the first and second clients, the first and second clients are each coupled behind a firewall that blocks incoming TCP session requests, and the brokering allows the first and second clients to establish the TCP session to enable forwarding of TCP data between the two clients, the method comprising the steps of:
- receiving a first TCP session request having a first destination descriptor of the network element from the first client, wherein the first destination descriptor includes a first address and a first port of the network element assigned to the first client by a control device to establish the TCP session;
storing information contained in the first TCP session request;
port latching a first source port of the first client;
receiving a second TCP session request having a second destination descriptor of the network element from the second client, wherein the second destination descriptor includes a second address and a second port of the network element assigned to the second client by the control device to establish the TCP session;
storing information contained in the second TCP session request;
port latching a second source port of the second client;
in response to the receiving the second TCP session request, generating, by the network element, a first session response to the second TCP session request using the stored information instead of maintaining a full TCP stack for the TCP session in the network element;
transmitting the first session response to the second client, wherein the first session response is used by the second client to generate an acknowledgment to the first session response to establish the TCP session between the first and second clients; and
translating the second destination descriptor into appropriate address and port in order to forward on TCP data without maintaining a full TCP stack for the TCP session in the network element.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for brokering a transmission control protocol (TCP) session between two clients that are each situated behind a firewall that blocks incoming TCP session requests is described. Each of the two clients transmits a TCP session request to the other client in order to establish a TCP session between these clients. This brokering allows the two clients to establish the TCP session between the two clients.
8 Citations
22 Claims
-
1. A method in a network element of brokering a transmission control protocol (TCP) session without maintaining a full TCP stack for establishing the TCP session by a network element between a first and second clients, wherein the first and second clients each transmits a TCP session request to the other client to establish a TCP session between the first and second clients, the first and second clients are each coupled behind a firewall that blocks incoming TCP session requests, and the brokering allows the first and second clients to establish the TCP session to enable forwarding of TCP data between the two clients, the method comprising the steps of:
-
receiving a first TCP session request having a first destination descriptor of the network element from the first client, wherein the first destination descriptor includes a first address and a first port of the network element assigned to the first client by a control device to establish the TCP session; storing information contained in the first TCP session request; port latching a first source port of the first client; receiving a second TCP session request having a second destination descriptor of the network element from the second client, wherein the second destination descriptor includes a second address and a second port of the network element assigned to the second client by the control device to establish the TCP session; storing information contained in the second TCP session request; port latching a second source port of the second client; in response to the receiving the second TCP session request, generating, by the network element, a first session response to the second TCP session request using the stored information instead of maintaining a full TCP stack for the TCP session in the network element; transmitting the first session response to the second client, wherein the first session response is used by the second client to generate an acknowledgment to the first session response to establish the TCP session between the first and second clients; and translating the second destination descriptor into appropriate address and port in order to forward on TCP data without maintaining a full TCP stack for the TCP session in the network element. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. (canceled)
-
9. A network comprising:
-
plurality of firewall devices; a plurality of clients, wherein each of the plurality of clients transmits transmission control protocol (TCP) session requests to another one of the plurality of clients to establish a TCP session with that client and each of the plurality of clients is coupled behind one of the plurality of firewall devices, wherein each of the plurality of firewall devices blocks incoming TCP session requests to a client coupled behind the firewall device; a network element, coupled to the set of one or more firewall devices, the network element comprising, a session brokering component to broker a TCP session between different pairs of clients from the plurality of clients, the brokering allows each client pair to establish the TCP session between that client pair, wherein the session brokering component, for each client pair, receives a first TCP session request having a first destination descriptor of the network element from a first client of that client pair and a second TCP session request having a second destination descriptor of the network element from the second client of that client pair, wherein the TCP session request is a request to establish a TCP session between the first and second clients, the first destination descriptor includes a first address and a first port of the network element assigned to the first client by a control device to establish the TCP session, and the second destination descriptor includes a second address and a second port of the network element assigned to the second client by the control device to establish the TCP session, stores information contained in the first and second TCP session requests, port latches a first source port of the first client and a second source port of the second client, in response to the received second TCP session request, generates a first session response to the second TCP session request using the stored information instead of maintaining a full TCP stack for establishing the TCP session, and transmits the first session response to the second client, wherein the first session response is used by the second client to generate a first acknowledgment to the first session response to establish the TCP session between the first and second clients; and a forwarding component coupled to the session brokering component, wherein the forwarding component translates destination descriptors into appropriate addresses and ports in order to forward on TCP data without maintaining a full TCP stack for the TCP session in the network element. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A network element adapted to broker transmission control protocol (TCP) sessions without maintaining full TCP stacks for establishing the sessions between different pairs of clients from a plurality of clients, wherein the clients in each client pair are coupled behind different firewalls that block incoming TCP session requests to those clients, the network element comprising:
-
a session brokering component to, for each of the client pairs, receive a first TCP session request having a first destination descriptor of the network element from a first client of that client pair and a second TCP session request having a second destination descriptor of the network element from the second client of that client pair, wherein the first destination descriptor includes a first address and a first port of the network element assigned to the first client by a control device to establish the TCP session between the client pair, and the second destination descriptor includes a second address and a second port of the network element assigned to the second client by the control device to establish the TCP session between the client pair, store information contained in the first and second TCP session requests, port latch source ports of the first and second clients of the client pair, generate, in response to the received second TCP session request, a first session response to the first TCP session request using the stored information instead of maintaining a full TCP stack for establishing the TCP session between the client pair in the network element, and transmit the first session response to the second client, wherein the first session response is used by the second client to generate an acknowledgment to the first session response to establish the TCP session between the first and second clients of the client pair; and a forwarding component coupled to the session brokering component, the forwarding component, for each of the client pairs, to translate destination descriptors into appropriate addresses and ports in order to forward on TCP data without maintaining a full TCP stack for the TCP session between the client pair in the network element. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification