Arrangement of delivering internet protocol datagrams for multimedia services to the same server
First Claim
Patent Images
1. A method of establishing a multi-media call between a first peer identified by a first Internet protocol address and a second peer identified by a second, different Internet protocol address through an intermediate Internet protocol address, comprising the steps of:
- establishing a first control connection between the first Internet protocol address and the second, different Internet protocol address through the intermediate Internet protocol address;
establishing a second control connection between the first Internet protocol address and the second, different Internet protocol address through the intermediate Internet protocol address using an associating device;
establishing a data path between the first Internet protocol address and the second, different Internet protocol address through the intermediate Internet protocol address using the associating device;
transmitting data via the data path; and
maintaining, during the duration of the call, the connection between the first Internet protocol address and the second Internet protocol address.
7 Assignments
0 Petitions
Accused Products
Abstract
A Network Address Translator (NAT) processes multi-media calls between an H.323 multi-media terminal and the same H.323 multi-media server of many H.323 multi-media servers. By using the values of the TCP and UDP ports uniquely identifying the H.323 server responsible for processing a multi-media call, the NAT can calculate the identity of the proper transmission path to the same H.323 multi-media server.
302 Citations
42 Claims
-
1. A method of establishing a multi-media call between a first peer identified by a first Internet protocol address and a second peer identified by a second, different Internet protocol address through an intermediate Internet protocol address, comprising the steps of:
-
establishing a first control connection between the first Internet protocol address and the second, different Internet protocol address through the intermediate Internet protocol address;
establishing a second control connection between the first Internet protocol address and the second, different Internet protocol address through the intermediate Internet protocol address using an associating device;
establishing a data path between the first Internet protocol address and the second, different Internet protocol address through the intermediate Internet protocol address using the associating device;
transmitting data via the data path; and
maintaining, during the duration of the call, the connection between the first Internet protocol address and the second Internet protocol address. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
assigning a TCP port uniquely identifying the second, different Internet protocol address;
creating an association at the application defined by the intermediate Internet protocol address, associating the second, different Internet protocol address with the TCP port uniquely identifying the second, different Internet protocol address.
-
-
8. The method of claim 7, wherein the step of establishing a second control connection further comprises the step of establishing a TCP connection between a second port associated with the first Internet protocol address and the TCP port uniquely identifying the second, different Internet protocol address, via the association created at the intermediate protocol address.
-
9. The method of claim 1, further comprising using the second control connection to perform the steps of:
-
assigning a UDP port uniquely identifying the second, different Internet protocol address;
creating an association at the application defined by the intermediate Internet protocol address, associating the second, different Internet protocol address with the UDP port uniquely identifying the second, different Internet protocol address.
-
-
10. The method of claim 9, wherein said step of establishing data path further comprises establishing a UDP data path between a first UDP port associated with the first Internet protocol address and the UDP port uniquely identifying the second, different Internet protocol address, via the association created at the intermediate Internet protocol address.
-
11. The method of claim 2, further comprising the step of sending UDP data packets between the multimedia service client and the multimedia server through the intermediary.
-
12. A method of establishing a multi-media call between a first Internet protocol address identifying a multimedia service client and a second, different Internet protocol address identifying a multimedia server through an intermediate Internet protocol address identifying an intermediary, comprising the steps of:
-
a) at the intermediate Internet protocol address, assigning the multimedia server having the second, different Internet protocol address to process the multimedia call;
b) establishing a first TCP connection between the multimedia service client and the multimedia server through the intermediary;
c) establishing a second TCP connection between the multimedia service client and the multimedia server through the intermediary;
d) establishing a UDP data path between the multimedia service client and the multimedia server through the intermediary; and
e) maintaining, for the duration of the call, the connection between the first Internet protocol address and the second Internet protocol address. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
assigning the multi-media server to handle the call; and
associating, at the intermediary, a multimedia service client TCP port associated with the first Internet protocol address with the server having the second, different Internet protocol.
-
-
15. The method of claim 12, further comprising the step of assigning a TCP port uniquely identifying the multi-media server, said step occurring between steps b) and c).
-
16. The method of claim 15, further comprising the step of calculating, at the intermediary, the identity of the server from the TCP port uniquely identifying the multi-media server.
-
17. The method of claim 12, further comprising the step of assigning a UDP port uniquely identifying the multi-media server, said step occurring between the occurrence of steps c) and d).
-
18. The method of claim 17, further comprising the step of calculating, at the intermediary, the identity of the server from the UDP port uniquely identifying the server.
-
19. The method of claim 17, wherein step d) further comprises establishing a connectionless UDP data path between the first UDP port associated with the first Internet protocol address identifying the multimedia service client and the UDP port associated with the second, different Internet protocol address identifying the multimedia server.
-
20. A method of establishing a multi-media call between a first Internet protocol address identifying a multimedia service terminal and a second, different Internet protocol address identifying a multimedia server through an intermediate Internet protocol address identifying a Network Address Translator (NAT), comprising the steps of:
-
a) assigning a first TCP port at a multi-media service terminal;
b) at the intermediate Internet protocol address, assigning a multimedia server having the associated second, different Internet protocol address to process the multi-media call;
c) establishing a first TCP connection between the first Internet protocol address using the first TCP port and the second, different Internet protocol address using a well known port, through the intermediate Internet protocol address;
d) assigning a second TCP port at the second, different Internet protocol address uniquely identifying the multimedia server;
e) exchanging control signals using the first TCP connection;
f) assigning a third TCP port at the multi-media terminal;
g) establishing a second TCP connection, through the intermediate Internet protocol address, between the first Internet protocol address using the third TCP port and the second, different Internet protocol address using the second TCP port;
h) assigning a UDP port at the second Internet protocol address associated with and uniquely identifying the multimedia server, i) exchanging control signals using the second TCP connection j) establishing a data path through the intermediary, between the multimedia service client using a first UDP port and the multimedia server using the UDP port identifying the multimedia server. - View Dependent Claims (21, 22, 23, 24, 25, 26)
-
-
27. A method of establishing a multi-media call between an H.323 multi-media service terminal having a first Internet Protocol (IP) address and an H.323 multi-media server having a second IP address through a network address translator (NAT) having a third IP address, comprising the steps of:
-
a) establishing a first TCP connection between the H.323 multi-media service terminal and the H.323 multi-media server by;
i) assigning a first TCP port associated with the H.323 multi-media service terminal;
ii) sending a SYN message from the H.323 multi-media service terminal to the NAT requesting a service on a well known port, the NAT performing the steps of;
A) assigning the H.323 multi-media server to process the call;
B) associating the first IP address and the first TCP port with the second IP address;
C) changing the destination IP address from the intermediate IP address to the second IP address;
D) relaying the SYN message from the NAT to the H.323 multi-media server using the association created in (a)(ii)(B);
iii) sending a SYN+ACK message from the H.323 multi-media server to the NAT which translates the source IP address to its own globally unique IP address and relays the SYN+ACK message to the H.323 service terminal;
iv) sending an ACK message from the H.323 multi-media service terminal to the NAT, the NAT performing the steps of;
A) determining the identity of the H.323 multi-media server using the association made in (a)(ii)(B);
B) changing the destination IP address from the intermediate IP address to the second IP address;
C) relaying the ACK message from the NAT to the H.323 multi-media server using the determination made in (a)(iv)(A);
b) sending a SETUP message from the H.323 multi-media service terminal through the NAT to the H.323 multi-media server over the first TCP connection;
c) at the H.323 server, assigning a second TCP port uniquely identifying the H.323 multi-media server;
d) sending a CONNECT message containing the identity of the second TCP port from the H.323 multi-media server to the H.323 multi-media service terminal over the first TCP connection;
e) establishing a second TCP connection between the H.323 multi-media service terminal and the H.323 multi-media server by;
i) at the H.323 multi-media service terminal, assigning a third TCP port associated with the H.323 multi-media service terminal;
ii) sending a SYN message from the H.323 multi-media service terminal through the NAT to the second TCP port, the NAT performing the steps of;
A) determining the identity of the H.323 multi-media server using a calculation rule;
B) relaying the SYN message from the NAT to the H.323 multi-media server using the determination made in (e)(ii)(B);
iii) sending a SYN+ACK message from the H.323 multi-media server to the NAT which translates the source IP address to its own globally unique Internet protocol address and relays the SYN+ACK message to the H.323 service terminal;
iv) sending an ACK message from the H.323 multi-media service terminal through the NAT to the H.323 multi-media server, the NAT performing the steps of;
A) determining the identity of the H.323 multi-media server using a calculation rule;
B) relaying the SYN message from the NAT to the H.323 multi-media server using the determination made in (e)(iv)(B);
f) assigning a UDP port uniquely identifying the H.323 multimedia server;
g) sending messages over the second TCP connection containing the end point characteristics and the identity of the UDP port uniquely identifying the H.323 multi-media server;
h) establishing a UDP data path between the H.323 multi-media service terminal and the H.323 multi-media server by;
i) sending an OpenLogicalChannel message from the H.323 multi-media server through the NAT to the H.323 multi-media service terminal to establish the UDP data path;
ii) sending an OpenLogicalChannelAck message from the H.323 multi-media service terminal through the NAT to the H.323 multi-media server to acknowledge the establishment of the UDP data path;
i) sending data via the UDP data path. - View Dependent Claims (28, 29, 30)
-
-
31. A method for establishing a multimedia call between a public network and a private network through an address proxy comprising the steps of:
-
a) at the address proxy, associating an Internet Protocol (IP) address and a TCP port of a multimedia terminal connected to the public network with an IP address of a server connected to the private network;
b) at the server, assigning a TCP port uniquely identifying the multimedia server handling the multimedia call;
c) at the address proxy, calculating the identity of the multimedia server from the value of the TCP port uniquely identifying the multimedia server handling the multimedia call. - View Dependent Claims (32, 33, 34)
-
-
35. A method for establishing a multimedia call between a public network and a private network comprising a plurality of H.323 multi-media servers through a Network Address Translator (NAT), the method comprising the steps of:
-
a) at the NAT, associating an Internet Protocol (IP) address and a Transmission Control Protocol (TCP) port of a multimedia terminal connected to the public network with an IP address of one of the plurality of H.323 multi-media servers, the one of the plurality of H.323 multi-media servers being responsible for the multimedia call;
b) at the one of the plurality of H.323 multi-media servers, assigning a TCP port uniquely identifying the one of the plurality of H.323 multi-media servers;
c) at the NAT, calculating the identity of the one of the plurality of H.323 multi-media servers from a value of the TCP port uniquely identifying the one of the plurality of H.323 multi-media servers;
d) the NAT requesting a service on a well known port;
e) the multimedia terminal sending a SYN message to the NAT;
f) the NAT performing the steps of;
i) assigning the one of the plurality of H.323 multi-media servers to process the multimedia call;
ii) changing a destination IP address from an intermediate IP address to the IP address of the one of the plurality of H.323 multi-media servers;
iii) relaying the SYN message from the NAT to the one of the plurality of H.323 multi-media servers using the association created in (a);
g) sending a SYN+ACK message from the one of the plurality of H.323 multi-media servers to the NAT which translates a source IP address to its own globally unique IP address and relays the SYN+ACK message to the multimedia terminal. - View Dependent Claims (36, 37, 38)
-
-
39. An apparatus for establishing a multi-media call between an H.323 terminal having a first Internet protocol address and one of many H.323 servers having a second Internet protocol address though a network address translator (NAT) having a third Internet protocol address, the apparatus comprising:
-
an H.323 multi-media service terminal associated with the second, different Internet protocol address;
an H.323 multimedia server associated with the second, different Internet protocol address;
a network address translator (NAT) associated with an intermediate Internet protocol address, said network address translator operatively coupled to said H.323 multi-media service terminal and to said H.323 multimedia server;
the network address translator requesting service on a well known port;
the H.323 multi-media service terminal sending a SYN message to the network address translator;
said network address translator;
assigning the H.323 multimedia server to process the call;
associating a TCP port with the H.323 multimedia server;
associating a UDP port with the H.323 multimedia server;
associating the first Internet protocol address and the TCP port with the second Internet protocol address;
changing a destination Internet protocol address from the intermediate Internet protocol address to the second Internet protocol address;
relaying the SYN message from the network address translator to the H.323 multimedia server using the association created in the step of associating the first Internet protocol address and the TCP port with the second Internet protocol address;
the H.323 multimedia server sending a SYN+ACK massage to the network address translator which translates a source Internet protocol address to its own globally unique Internet protocol address and relays the SYN+ACK message to the H.323 multi-media service terminal.
-
-
40. A Network Address Translator (NAT), interfaced with a network connected to an H.323 multimedia terminal having a first Internet Protocol (IP) address and a private network connected to one of a plurality of H.323 multimedia servers having a second IP address, for allowing a one-to-many distribution;
-
said NAT calculating an identity of an H.323 multimedia server of the plurality of H.323 multimedia servers in the private network;
the NAT associating an IP address and a Transmission Control Protocol (TCP) port identifying the H.323 multimedia terminal with an IP address identifying the H.323 multimedia server;
the NAT assigning the H.323 multimedia server to process a call;
the NAT requesting service on a well known port;
the H.323 multimedia terminal sending a SYN message to the NAT;
the NAT changing a destination Internet protocol address from an intermediate Internet protocol address to the IP address identifying the H.323 multimedia server;
the H.323 multimedia server sending a SYN+ACK message to the NAT which translates a source Internet protocol address to its own globally unique Internet protocol address and relays the SYN+ACK message to the H.323 multimedia terminal. - View Dependent Claims (41, 42)
-
Specification