Mechanism for dispatching packets via a telecommunications network
First Claim
1. A mechanism for dispatching a sequence of packets via a telecommunications network, said dispatch mechanism comprising:
- a queue for packets for transmission; and
a queue controller responsive to receipt of a new packet for transmission to compare flow parameters of said new packet to flow parameters of a packet already in said queue regardless of the location of said packet already in said queue, said queue controller determining whether to queue or to drop said new packet depending on the result of said comparison(s) wherein the flow parameters include source and destination parameters.
2 Assignments
0 Petitions
Accused Products
Abstract
A mechanism for dispatching a sequence of packets via a telecommunications network includes a queue for packets for transmission and a queue controller responsive to receipt of a new packet for transmission to compare parameters of the new packet to parameters of any packet already in the queue, the queue controller determining whether to queue or drop the new packet depending on the result of the comparison(s). The queue can be implemented as a linked list of packet entries with individual pointers to the respective packets concerned. The queue entries can include details relating to the packet including data relating to the information flow and also the packet identity. In a TCP environment, the flow information can include the source IP address and the source TCP port, as well as the destination IP address and the destination TCP port. The identity information can include sequence numbers and acknowledgement numbers for the packet concerned. In order to optimize network usage, it can be useful to drop some packets at a routing node. A decision to drop a packet can be made if the new packet and a queued packet relate to the same information flow, the new packet sequence number equals the queued packet sequence number and the new packet acknowledgement number is less than the queued packet acknowledgement number. The new packet is dropped where the new packet is a retransmission of a queued packet and the length of the queued packet is greater than or equal to that of the new packet. A queued packet is replaced by a new packet when the new packet is determined to be a retransmission of the queued packet and the length of the new packet is greater than that of the queued packet.
-
Citations
22 Claims
-
1. A mechanism for dispatching a sequence of packets via a telecommunications network, said dispatch mechanism comprising:
-
a queue for packets for transmission; and
a queue controller responsive to receipt of a new packet for transmission to compare flow parameters of said new packet to flow parameters of a packet already in said queue regardless of the location of said packet already in said queue, said queue controller determining whether to queue or to drop said new packet depending on the result of said comparison(s) wherein the flow parameters include source and destination parameters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
i) the new packet sequence number equals the queued packet sequence number; and
ii) the new packet acknowledgement number is less than the queued packet acknowledgement number.
-
-
8. The dispatch mechanism of claim 1, wherein said queue controller is arranged to add said new packet to said queue when said new packet is not a retransmission of a queued packet.
-
9. The dispatch mechanism of claim 1, wherein said queue controller is arranged to drop said new packet when said new packet is a retransmission of a queued packet and the length of said queued packet is greater than or equal to that of said new packet.
-
10. The dispatch mechanism of claim 1, wherein said queue controller is arranged to a replace a queued packet in said queue by said new packet when said new packet is a retransmission of said queued packet and the length of said new packet is greater than that of said queued packet.
-
11. The dispatch mechanism of claim 1, wherein said mechanism is a software mechanism.
-
12. A station for sending a sequence of packets via a telecommunications network, said station including a dispatch controller comprising:
-
a dispatch queue for packets;
a queue controller arranged to compare flow and packet sequence parameters of a new packet for dispatch to flow and packet sequence parameters of queued packets regardless of the location of said packet already in said queue and arranged to respond to detection of said new packet being a retransmission of a queued packet relating to a same flow to discard either said new packet or said queued packet. - View Dependent Claims (13)
-
-
14. A method of managing the dispatch of a sequence of packets via a telecommunications network, the method comprising:
-
queuing packets for transmission;
comparing flow and packet sequence parameters of a new packet for transmission to flow and packet sequence parameters of queued packets regardless of the location of said packet already in said queue; and
responding to detection of said new packet being a retransmission of a queued packet relating to the same flow path to discard either said new packet or said queued packet. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
i) the new packet sequence number equals the queued packet sequence number; and
ii) the new packet acknowledgement number is less than the queued packet acknowledgement number.
-
-
19. The method of claim 14, wherein said new packet is added to said queue when said new packet is not a retransmission of a queued packet.
-
20. The method of claim 14, wherein said new packet is dropped when said new packet is a retransmission of a queued packet and the length of said queued packet is greater than or equal to that of said new packet.
-
21. The method of claim 14, wherein said new packet replaces a queued packet in said queue when said new packet is a retransmission of said queued packet and the length of said new packet is greater than that of said queued packet.
-
22. A software dispatch mechanism on a storage medium for controlling the dispatch of a sequence of packets via a telecommunications network, said software dispatch mechanism comprising:
-
a queue for packets for transmission; and
a queue controller responsive to receipt of a new packet for transmission to compare flow parameters of said new packet to flow parameters of a packet already in said queue regardless of the location of said packet already in said queue, said queue controller determining whether to queue or to drop said new packet depending on the result of said comparison(s) wherein the flow parameters include source and destination parameters.
-
Specification