Claims
- 1. A network apparatus for performing functions to enhance performance of a communication network, comprising:
a spoofing module configured to selectively spoof a plurality of connections associated with a plurality of hosts based upon corresponding spoofing criteria and to provide local acknowledgement of received messages over the connections; a connection module configured to multiplex the plurality of connections over a common backbone connection; a prioritization module configured to prioritize access to the backbone connection based upon prioritization criteria; and a path selection module configured to determine a path among a plurality of paths to transmit the received messages based upon path selection criteria, wherein the spoofing module is configured to allocate a connection control block among a plurality of connection control blocks corresponding to a spoofed connection, each of the plurality of connection control blocks storing information related to the plurality of connections.
- 2. The network apparatus according to claim 1, further comprising:
a mapping table to store connection control block allocation information.
- 3. The network apparatus according to claim 1, further comprising:
a hash function logic configured to output pointers corresponding to the plurality of connection control blocks.
- 4. The network apparatus according to claim 1, wherein the quantity of connection control blocks is configurable.
- 5. The network apparatus according to claim 1, wherein the backbone connection is a satellite link.
- 6. The network apparatus according to claim 1, wherein the plurality of connections are established according to the Transmission Control Protocol (TCP).
- 7. The network apparatus according to claim 1, wherein the spoofing criteria includes at least one of Destination IP (Internet Protocol) address; Source IP address; TCP port numbers; TCP options; and IP differentiated services (DS) field.
- 8. The network apparatus according to claim 1, wherein the prioritization criteria includes at least one of Destination IP (Internet Protocol) address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 9. The network apparatus according to claim 1, wherein the prioritization module sets priority of one of the received messages, the one message being an IP (Internet Protocol) packet, wherein the path selection criteria includes at least one of the priority of the IP packet, Destination IP address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 10. A method for performing functions to enhance performance of a communication network, the method comprising:
selectively spoofing a plurality of connections associated with a plurality of hosts based upon corresponding spoofing criteria, the step of selectively spoofing including,
allocating a connection control block among a plurality of connection control blocks corresponding to a spoofed connection, each of the plurality of connection control blocks storing information related to the plurality of connections; providing local acknowledgement of received messages over the connections; multiplexing the plurality of connections over a common backbone connection; prioritizing access to the backbone connection based upon prioritization criteria; and
determining a path among a plurality of paths to transmit the received messages based upon path selection criteria.
- 11. The method according to claim 10, further comprising:
storing connection control block allocation information in a mapping table.
- 12. The method according to claim 10, further comprising:
outputting pointers corresponding to the plurality of connection control blocks.
- 13. The method according to claim 10, wherein the quantity of connection control blocks is configurable.
- 14. The method according to claim 10, wherein the backbone connection in the multiplexing step is a satellite link.
- 15. The method according to claim 10, wherein the plurality of connections in the step of selectively spoofing are established according to the Transmission Control Protocol (TCP).
- 16. The method according to claim 10, wherein the spoofing criteria in the step of selectively spoofing includes at least one of Destination IP (Internet Protocol) address; Source IP address; TCP port numbers; TCP options; and IP differentiated services (DS) field.
- 17. The method according to claim 10, wherein the prioritization criteria in the prioritizing step includes at least one of Destination IP address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 18. The method according to claim 10, further comprising:
setting priority of one of the received messages, the one message being an IP (Internet Protocol) packet, wherein the path selection criteria in the includes at least one of the priority of the IP packet, Destination IP address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 19. A network apparatus for performing functions to enhance performance of a communication network, the network apparatus comprising:
means for selectively spoofing a plurality of connections associated with a plurality of hosts based upon corresponding spoofing criteria, the spoofing means including,
means for allocating a connection control block among a plurality of connection control blocks corresponding to a spoofed connection, each of the plurality of connection control blocks storing information related to the plurality of connections; means for providing local acknowledgement of received messages over the connections; means for multiplexing the plurality of connections over a common backbone connection; means for prioritizing access to the backbone connection based upon prioritization criteria; and means for determining a path among a plurality of paths to transmit the received messages based upon path selection criteria.
- 20. The network apparatus according to claim 19, further comprising:
means for storing connection control block allocation information in a mapping table.
- 21. The network apparatus according to claim 19, further comprising:
means for outputting pointers corresponding to the plurality of connection control blocks.
- 22. The network apparatus according to claim 19, wherein the quantity of connection control blocks is configurable.
- 23. The network apparatus according to claim 19, wherein the backbone connection is a satellite link.
- 24. The network apparatus according to claim 19, wherein the plurality of connections are established according to the Transmission Control Protocol (TCP).
- 25. The network apparatus according to claim 19, wherein the spoofing criteria includes at least one of Destination IP (Internet Protocol) address; Source IP address; TCP port numbers; TCP options; and IP differentiated services (DS) field.
- 26. The network apparatus according to claim 19, wherein the prioritization criteria includes at least one of Destination IP address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 27. The network apparatus according to claim 19, wherein the prioritization module sets priority of one of the received messages, the one message being an IP (Internet Protocol) packet, wherein the path selection criteria includes at least one of the priority of the IP packet, Destination IP address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 28. A computer-readable medium carrying one or more sequences of one or more instructions for performing functions to enhance performance of a communication network, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of:
selectively spoofing a plurality of connections associated with a plurality of hosts based upon corresponding spoofing criteria, the step of selectively spoofing including,
allocating a connection control block among a plurality of connection control blocks corresponding to a spoofed connection, each of the plurality of connection control blocks storing information related to the plurality of connections; providing local acknowledgement of received messages over the connections; multiplexing the plurality of connections over a common backbone connection; prioritizing access to the backbone connection based upon prioritization criteria; and determining a path among a plurality of paths to transmit the received messages based upon path selection criteria.
- 29. The computer-readable medium according to claim 28, wherein the one or more processors further perform the step of:
storing connection control block allocation information in a mapping table.
- 30. The computer-readable medium according to claim 28, wherein the one or more processors further perform the step of:
outputting pointers corresponding to the plurality of connection control blocks.
- 31. The computer-readable medium according to claim 28, wherein the quantity of connection control blocks is configurable.
- 32. The computer-readable medium according to claim 28, wherein the backbone connection in the multiplexing step is a satellite link.
- 33. The computer-readable medium according to claim 28, wherein the plurality of connections in the step of selectively spoofing are established according to the Transmission Control Protocol (TCP).
- 34. The computer-readable medium according to claim 28, wherein the spoofing criteria in the step of selectively spoofing includes at least one of Destination IP (Internet Protocol) address; Source IP address; TCP port numbers; TCP options; and IP differentiated services (DS) field.
- 35. The computer-readable medium according to claim 28, wherein the prioritization criteria in the prioritizing step includes at least one of Destination IP (Internet Protocol) address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP (User Datagram Protocol) port numbers, and IP differentiated services (DS) field.
- 36. The computer-readable medium according to claim 28, wherein the one or more processors further perform the step of:
setting priority of one of the received messages, the one message being an IP (Internet Protocol) packet, wherein the path selection criteria in the includes at least one of the priority of the IP packet, Destination IP address, Source IP address, IP next protocol, TCP (Transmission Control Protocol) port numbers, UDP port numbers, and IP differentiated services (DS) field.
CROSS-REFERENCES TO RELATED APPLICATION
[0001] This application is related to and claims the benefit of priority to: (i) U.S. Provisional Patent Application (Ser. No. 60/220,026), filed Jul. 21, 2000, entitled “Performance Enhancing Proxy,” and (ii) U.S. Provisional Patent Application (Ser. No. 60/225,630), filed Aug. 15, 2000, entitled “Performance Enhancing Proxy”; all of which are incorporated herein by reference in their entirety.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60220026 |
Jul 2000 |
US |
|
60225630 |
Aug 2000 |
US |