Claims
- 1. An apparatus for providing priority queuing to packets at a network device in a communications network, comprising:
(i) a decision engine, at the network device, for receiving packets from the communications network and queuing each of the packets in an available queue wherein n queues are available and n·2 in dependence upon a source address of the packet; and (ii) a scheduler for de-queuing packets from the queues for transmission to the network device wherein packets from the queue are de-queued at different rates depending on the level of trust associated to the source addresses.
- 2. The apparatus as defined in claim 1 wherein the network device is a local area network (LAN).
- 3. The apparatus as defined in claim 1 wherein each of said n queues has an associated table with source addresses.
- 4. The apparatus as defined in claim 3 wherein said n associated tables have relative priority levels ranging from legitimate to unknown.
- 5. The apparatus as defined in claim 4 wherein-certain legitimate source addresses can be pre-provisioned into the different tables according to their relative priorities.
- 6. The apparatus as defined in claim 4 further comprising means to count source addresses and to place source addresses in a table having a legitimate classification after receiving N packets with the same source address, where N is a positive integer.
- 7. The apparatus as defined in claim 4 further comprising an outgoing packet monitor to recognize TCP FIN packets and to instruct the decision engine to update the priority of the destination address of these TCP FIN packets and to put these addresses into the appropriate tables.
- 8. The apparatus as defined in claim 4 wherein the decision engine is operable to remove entries from the tables in accordance with the time that each of the entries has existed in those tables.
- 9. The apparatus as defined in claim 4 wherein the decision engine is operable to discard packets from the queues in accordance with a RED (Random Early Drop) algorithm.
- 10. A method of providing priority queuing to packets at a network device in a communications network, the method comprising:
(i) receiving packets from the communications network in a decision module at the network device, and queuing each of the packets in an available queue wherein n queues are available and n·2 in dependence upon a source address of the packet; and (ii) de-queuing packets from the queues for transmission to the network device wherein packets from the queues are de-queued at different rates depending on a level of trust associated to the source addresses.
- 11. The method as defined in claim 10 wherein the network device is a local area network (LAN).
- 12. The method as defined in claim 10 wherein each of said n queues has an associated table with source addresses.
- 13. The method as defined in claim 12 wherein said n associated tables have relative priority levels ranging from legitimate to unknown.
- 14. The method as defined in claim 12 wherein certain legitimate source addresses can be pre-provisioned into the different tables according to their relative priorities.
- 15. The method as defined in claim 13 further comprising: counting source addresses and placing source addresses in a table having a legitimate classification after receiving N packets with the same source address, where N is a positive integer.
- 16. The module as defined in claim 12 further comprising an outgoing packet monitor to recognize TCP FIN packets and to instruct the decision module to update the priority of the destination address of these TCP FIN packets and to put these addresses into the appropriate tables.
- 17. The method as defined in claim 12 wherein the decision module is operable to remove entries from the tables in accordance with the time that each of the entries has existed in those tables.
- 18. The method as defined in claim 12 wherein the decision module is operable to discard packets from the queues in accordance with a RED (Random Early Drop) algorithm.
- 19. An apparatus for providing priority queuing to packets at a network device in a communications network comprising:
a decision engine, at the network device, for receiving packets from the communication network and queuing each of the packets in an available queue in dependence upon data from a search query; and a scheduler for dequeuing packets from the queues for transmission to the network device wherein packets from the queues are dequeued at a different depending on the time to complete the search queury.
- 20. The apparatus as defined in claim 19 wherein the decision engine is a session initiation protocol (SIP) proxy server.
- 21. A method of providing priority queuing to packets at a network device in a communications network, the method comprising:
receiving packets from the communication network in a decision module at the network device and queuing each of the packets in an available queue in dependence upon data from a search query; and dequeuing packets from the queues for transmission to the network device wherein packets from the queues are dequeued at a different rate depending on time associated with conducting the search queury.
- 22. The method as defined in claim 21 wherein, in the event of an unsuccessful search, packets in lower priority queues are dropped.
- 23. The method as defined in claim 21 wherein, in the event of an unsuccessful search, packets are dropped from all queues.
- 24. The method as defined in claim 21 wherein the decision engine is a SIP proxy server and the available queues are based on a user ID field of SIP messages.
RELATED APPLICATIONS
[0001] This application is a CIP of U.S. Ser. No. 10/440,233 filed May 19, 2003.
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10440233 |
May 2003 |
US |
Child |
10712103 |
Nov 2003 |
US |