Claims
- 1. A method for compressing data by a first computer system for transfer to a second computer system via a communications network, said method comprising:
selecting a section of data by said first computer system; determining a cost value for each compression algorithm of a plurality of compression algorithms using said first computer's system operating conditions; selecting a compression algorithm from said plurality based on a smallest cost value; compressing said section using said selected compression algorithm, and sending said compressed section of data to said second computer system.
- 2. The method of claim 1 wherein said cost value comprises a sum of a time to compress said section plus a time to transfer said compressed section to said second computer.
- 3. The method of claim 1 wherein said first computer's system operating conditions includes available processing cycles of said first computer system.
- 4. A method for compressing data by a first computer system for transfer to a second computer system via a communications network, comprising:
selecting a section of data by said first computer system; determining a data format of said section; compressing said section using a compression algorithm, said compression algorithm automatically selected from a plurality of compression algorithms based on said data format; and sending said compressed section to said second computer.
- 5. The method of claim 4 wherein said data format comprises a selection from a group consisting of image, binary, text, flash, graphics, video, audio, and word processing formats.
- 6. The method of claim 4 further comprising storing said section of data in an efficient file format.
- 7. A method for compressing data by a first computer system for transfer to a second computer system via a communications link, comprising:
selecting a section of data by said first computer system; when data traffic on said communications link is below transmission capacity, calculating a result of a function based on a time to compress said section and a link latency for said section; depending on said result, compressing said section; and sending said compressed section to said second computer.
- 8. The method of claim 7 wherein said function includes said time to compress minus said link latency and wherein when said result has a negative value, compressing said section.
- 9. A method for repackaging, by a first computer system, a plurality of packets having a common destination, wherein said first computer system is connected to a second computer system by a communications link, said method comprising:
receiving said plurality of packets, wherein each packet comprises application data; extracting from said plurality of packets, information comprising said application data; creating a new packet comprising said information; and sending said new packet to said second computer system.
- 10. The method of claim 9 wherein said plurality of packets comprise TCP/IP packets.
- 11. The method of claim 9 wherein said new packet has a maximum transmission unit (MTU) of said communications link.
- 12. The method of claim 9 wherein each packet's application data comprises an application data unit and wherein said information comprises each packet's application data unit and said method further comprises:
adding to a packet's application data some TCP and IP header information from said packet.
- 13. The method of claim 9 wherein said information comprises a plurality of related user HTTP requests to a Web server.
- 14. The method of claim 9 wherein said information comprises a plurality of related Web server HTTP responses in response to a single user HTTP request.
- 15. A method for providing a semi-permanent Transport Control Protocol (TCP) connection between a first computer system and a second computer system using a TCP/IP protocol, said method comprising:
establishing a TCP connection between said first computer system and said second computer system; receiving application information by said first computer system from a plurality of source addresses; sending said second application information, by said first computer system, over said TCP connection; and disconnecting said TCP connection.
- 16. The method of claim 15 wherein said disconnecting said TCP connection occurs after a predetermined time interval.
- 17. The method of claim 15 wherein said source addresses includes user addresses or Web server addresses or both.
- 18. The method of claim 15 wherein said source addresses includes IP addresses.
- 19. A method using a first computer system for pruning a plurality of duplicate data requests from a plurality of second computer systems, said plurality of duplicate data requests having a common destination, said method comprising:
receiving said plurality of duplicate data requests by said first computer system; recording return addresses of said plurality of second computer systems; creating a consolidated data request, comprising common data from said plurality of duplicate data requests, with said first computer system as a source address; and sending said consolidated data request.
- 20. The method of claim 19 further comprising:
receiving said consolidated data request at said common destination by a host system; said host system generating data responsive to said consolidated data request; sending said generated data to said first computer system; using said return addresses, copying said generated data; and sending said copies to said plurality of second computer systems.
- 21. A method for providing a plurality of Virtual Private Networks by a plurality of computers connected together by a public communications network, comprising:
establishing a first Virtual Private Network of said plurality of Virtual Private Networks between a first computer of said plurality of computers and a second computer of said plurality of computers by using a centralized permission table comprising said first computer's address and said second computer's address; and establishing a second Virtual Private Network of said plurality of Virtual Private Networks between said first computer and a third computer of said plurality of computers by using said centralized permission table further comprising said third computer's address.
- 22. The method of claim 21 wherein said centralized permission table indicates said first computer has permission to communicate with said second computer and said third computer.
- 23. A method for repackaging, by a first computer system, a plurality of packets having a common destination, wherein said first computer system is connected to a second computer system by a communications link, said method comprising:
receiving said plurality of packets, wherein each packet comprises application data; extracting from said plurality of packets, information comprising said application data; creating a number of new packets comprising said information, wherein said number of new packets is determined based on the data traffic on the communications link; and sending said number of new packets to said second computer system.
- 24. A system for increasing a flow of information in a communications network having a standardized communications protocol, said system comprising:
a first module sending a packet, having first application information and first control information, using said standardized communications protocol; a second module for receiving said packet and sending a super packet using said standardized communications protocol, said super packet having second application information and second control information, wherein said second application information comprises said first application information and some of said first control information; and a third module for receiving said super packet using said standardized communications protocol.
- 25. The system of claim 24 wherein said standardized communications protocol is TCP/IP.
- 26. A method for reducing time for a requester computer system to retrieve information from a remote data storage via an intermediary computer system, comprising:
receiving a request by said intermediary computer system to retrieve data from said data storage; retrieving a first data item from said data storage by said intermediary computer system; and said intermediary computer system, concurrently sending said first data item to said requester computer system while retrieving a second data item from said data storage.
- 27. The system of claim 26 wherein said data storage part of a Web server.
- 28. A system for increasing performance in a network segment between two Super Modules of a plurality of Super Modules in a communications network, said system comprising:
a first Super Module of said plurality of Super Modules for receiving a plurality of IP packets and sending a modified data packet, comprising application data combined from said plurality of IP packets; and a second Super Module of said plurality of Super Modules for receiving said modified data packet, wherein said second Super Module, comprises a TCP/IP communication protocol stack with an additional application layer for processing said modified data packet.
- 29. The system of claim 28 wherein said second Super Module is part of a tiered system, said tiered system, comprising a plurality of lower level Super Modules of said plurality of Super Modules connected to said second Super Module.
CROSS REFERENCES
[0001] The following copending, commonly assigned applications are incorporated herein by reference in their entirety: U.S. Utility Application entitled, “System And Method For Reducing The Time To Deliver Information From a Communications Network To a User”, by Michael J. Parrella, Sr., et al., filed Jun. 4, 2002, Attorney Docket-No. 20275-0004; and U.S. Utility Application entitled, “System and Method For Modifying a Data Stream Using Element Parsing”, by Michael J. Parrella, Sr., et al., filed Jun. 4, 2002, Attorney Docket No. 20275-0005.
[0002] This application claims priority from and incorporates by reference in its entirety U.S. Provisional Application Serial No. 60/295,721, titled “System and Method for Improving the Effective Bandwidth of a Communication Device”, by Michael J. Parrella et. al., filed Jun. 4, 2001, U.S. Provisional Application Serial No. 60/295,672, titled “Method and System Providing Compression/Decompression of Communication Data”, by Michael J. Parrella et al., filed Jun. 4, 2001, U.S. Provisional Application Serial No. 60,295,676, titled “System and Method Providing Packaging of Parseable Data Elements in a Network Communication”, by Michael J. Parrella et al., filed Jun. 4, 2001, U.S. Provisional Application Serial No. 60/295,720, titled “Bi-Directional File Transfer Multiplier”, by Michael J. Parrella et al., filed Jun. 4, 2001, and U.S. Provisional Application Serial No. 60/295,671, titled “Modification of a Data Stream Using Element Parsing”, by Michael J. Parrella et al., filed Jun. 4, 2001.
Provisional Applications (5)
|
Number |
Date |
Country |
|
60295721 |
Jun 2001 |
US |
|
60295672 |
Jun 2001 |
US |
|
60295676 |
Jun 2001 |
US |
|
60295720 |
Jun 2001 |
US |
|
60295671 |
Jun 2001 |
US |