Claims
- 1. A method for transmitting packets from a computer onto a network, said method comprising the acts:
receiving at least two data sets; determining a priority value for each of the at least two data sets; composing a composite data set comprising portions of the at least two data sets such that an amount of data from each of the data sets within the composite data set is based upon relative priorities between each of the at least two data sets; and transmitting the composite data set onto the network.
- 2. The method of claim 1 wherein the act of receiving comprises:
creating a group comprising a plurality of connection buffers for each data set; and assigning a priority to each created group.
- 3. The method of claim 2 wherein the step of creating comprises:
monitoring the speed of the connection supplying data to each connection buffer; and adjusting the size of the corresponding connection buffer to maintain a buffer sized to hold packets received over a preselected time interval.
- 4. The method of claim 3 wherein the preselected time interval is at least as long as the time required to complete the composing step.
- 5. The method of claim 1 further comprising:
determining a weight value for each data set; and selecting portions of the first and second data sets in an order at least partially based upon the weight value.
- 6. The method of claim 1 wherein the step of composing comprises:
creating a connection buffer for each data set; organizing the connection buffers into logical rings of like priority value; selecting portions of data from each logical ring at a frequency at least partially reflecting the relative priority of the logical rings.
- 7. The method of claim 6 further comprising:
determining for each logical ring a number of bytes held by all the connection buffers within that ring (nBytes); determining for each ring the number of connection buffers it holds that have data waiting to be sent (nReady); determining a number of bytes to be sent from each logical ring.
- 8. The method of claim 7 wherein the step of determining the number of bytes comprises normalizing to the logical ring having the largest nBytes value.
- 9. The method of claim 7 wherein number of logical rings is “n” defining n discrete priority levels labeled 0 to n-1, and the step of selecting further comprises:
selecting sub-packets from each of the rings in having a selection pattern substantially matching: 12selection roundlogical ring1n2n, n-13n, n-1, n-2nn, n-1, n-2, . . ., n-1.
- 10. The method of claim 1, wherein the networked computer transmits the prioritized packets to a second networked computer over the Internet.
- 11. The method of claim 1, wherein the networked computer receives the prioritized packets from at least one client.
- 12. The method of claim 1, wherein the prioritized packets are received by an originating server.
- 13. The method of claim 1, wherein the networked computer transmits the prioritized packets to a second networked computer and receives prioritized packets from the second networked computer.
- 14. The method of claim 1 wherein the act of determining the priority value comprises:
parsing the data sets; and determining the priority value at least partially based on the parsed data sets.
- 15. The method of claim 1 wherein the act of determining the priority value comprises:
receiving prioritization rules from an external content server associated with at least one of the data sets; and determining the priority value at least partially based on the prioritization rules.
- 16. A system for transmitting packets from a buffer of a network computer onto a network, said system comprising:
a buffer to store a plurality of packets received from at least one client; at least two packets stored in the buffer, wherein each of the packets has a priority value that at least partially determines a queue order for transmitting; and a transmitter to transmit prioritized packets from the buffer.
- 17. The system of claim 16 wherein:
the buffer is part of an intermediary web server that receives packets from the at least one client; and the network is the Internet.
- 18. The system of claim 16 wherein the priority value is based on at least two priority parameter values for the at least one packet, wherein the at least two priority parameter values are converted into a priority value based on a weighting algorithm.
- 19. The system of claim 16, wherein the priority value is at least partially determined by the number of transmission cycles each of the at least two packets has remained in the buffer.
- 20. The system of claim 16, wherein the networked computer transmits the prioritized packets to a second networked computer over the Internet.
- 21. The system of claim 16, wherein the prioritized packets are received by an originating server.
- 22. The system of claim 16, wherein the networked computer transmits the prioritized packets to a second networked computer and receives prioritized packets from the second networked computer.
RELATED APPLICATIONS
[0001] The present invention claims priority from U.S. Provisional Patent Application No. 60/197,490 entitled CONDUCTOR GATEWAY filed on Apr. 17, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60197490 |
Apr 2000 |
US |