Session slicing of mirrored packets
US-12184680-B2 · Dec 31, 2024 · US
US9660912B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9660912-B2 |
| Application number | US-201113579008-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 17, 2011 |
| Priority date | Feb 19, 2010 |
| Publication date | May 23, 2017 |
| Grant date | May 23, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for controlling a packet transfer through a multipath session is disclosed. The method comprises a number of n paths linking a first endpoint to a second endpoint, n being an integer greater or equal to 2, i being an integer and 1≦i≦n; each path Pi being defined by a couple of addresses of a communication interface of the first and second endpoint; the first endpoint being configured for sending the packet to the second endpoint through anyone of the paths; the second endpoint being configured for sending an acknowledgment message through anyone of the paths when the second endpoint received a packet. According to the invention, the method involves, at the first endpoint and at a time t, steps of: assessing a load distribution L<i, t> through the path Pi based on evaluations of a round-trip-time RTT<i, t> over the path Pi for every i between 1 and n; evaluating a current available load distribution R<i, t> from the data load distribution L<i, t>, from an aggregated size of packets D<i, t> currently assigned to be transmitted on the path Pi for every i between 1 and N, and from the aggregated size of packets D<t> currently assigned to be transmitted on any of the paths; selecting a path Pi among the from the current available load distribution R<i, t>; sending the packet on the selected path such that the aggregated size of packets D<i,t> to transmit through the selected path Pi is lower than a congestion window cwnd whose value is evaluated globally by the first endpoint for the multipath session. A device for controlling a transfer of a packet through a multipath session implementing the method is further disclosed.
Opening claim text (preview).
The invention claimed is: 1. A method for controlling a packet transfer, the method comprising: establishing, by a first endpoint, a multipath session comprising a plurality of paths linking the first endpoint to a remote second endpoint; associating, by the first endpoint, each path in the multipath session with a pair of addresses, each address in the pair corresponding to a respective communication interface of said first and second endpoint; sending, by the first endpoint, a packet to said second endpoint through a given path of the multipath session; assessing, by the first endpoint, a load distribution through the given path based on evaluations of a round-trip-time over each path of the plurality of paths; evaluating, by the first endpoint, a current available load distribution of the plurality of paths based at least partially on said load distribution, an aggregated size of packets outstanding on each path of the plurality of paths, and the aggregated size of packets outstanding on the plurality of paths; selecting, by the first endpoint, said given path among the plurality of paths based at least partially on said current available load distribution; and sending, by the first endpoint, said packet on said given path such that the aggregated size of packets outstanding on the plurality of paths is lower than a congestion window indicative of a limit on an amount of data allowed to be transmitted without receiving an acknowledgement, a single value of the congestion window being evaluated based on a combination of individual values of every path in the plurality of paths by said first endpoint, wherein said individual values are based at least in part on the round-trip-time. 2. The method according to claim 1 , further comprising evaluating, by the first endpoint, the value of the congestion window, when said first endpoint detects reception of a packet by the second endpoint before expiration of a timeout duration, the timeout duration starting when said packet is sent from said first endpoint through said path; and increasing, by the first endpoint, the congestion window value by a size of the packet. 3. The method according to claim 2 , wherein evaluating the congestion window further comprises: evaluating, by the first endpoint, the congestion window when an indication that a packet arrived at the second endpoint is detected before expiration of the timeout duration; and setting, by the first endpoint, the value of the congestion window to a largest value between ( 1 - L ( i , t ) 2 ) · cwnd and 2.N.MTU where MTU is the path maximum transmit unit of an association, cwnd is the congestion window, L(i,t) is the load distribution, and N is a number of paths in the plurality of paths. 4. The method according to claim 3 , wherein evaluating the congestion window further comprises: evaluating, by the first endpoint, the congestion window when no indication that the packet was received by the second endpoint is detected before expiration of the timeout duration; and setting, by the first endpoint, the value of the congestion window to MTU+L(i,t).cwnd. 5. The method according to claim 4 , further comprising: assessing, by the first endpoint, a load distribution; and evaluating, by the first endpoint, a current available load distribution, when no indication that the second endpoint received the packet is detected before the timeout duration expires. 6. The method according to claim 5 , further comprising setting, by the first endpoint, the value of the congestion window cwnd to 2.N.MTU before sending any packet to said second endpoint. 7. An endpoint device comprising: a communication interface; at least one processor configured to: establish, using the communication interface, a multipath session comprising a plurality of paths linking the endpoint to a remote endpoint; associate each path in the multipath session with a pair of addresses, each address in the pair corresponding to a respective communication interface of the endpoint and the remote endpoint; send, using the communication interface, a packet to the remote endpoint through a given path of the multipath session; assess a load distribution through the given path based on evaluations of a round-trip-time over each path of the plurality of paths; evaluate a current available load distribution of the plurality of paths based at least partially on said load distribution, an aggregated size of packets outstanding on each path of the plurality of paths, and the aggregated size of packets outstanding on the plurality of paths; select said given path among the plurality of paths based at least partially on said current available load distribution; and send, using the communication interface, said packet on said given path such that the aggregated size of packets outstanding on the plurality of paths is lower than a congestion window indicative of a limit on an amount of data allowed to be transmitted without receiving an acknowledgement, a single value of the congestion window being evaluated based on a combination of individual values of every path in the plurality of paths, wherein said individual values are based at least in part on the round-trip-time. 8. The endpoint device according to claim 7 , wherein the at least one processor is further configured to: evaluate the value of the congestion window, when reception of a packet by the remote endpoint is identified before expiration of a timeout duration, the timeout duration starting when said packet is sent through said path; and increase the congestion window value by a size of the packet. 9. The endpoint device according to claim 8 , wherein the at least one processor is further configured to: evaluate the congestion window when an indication that a packet arrived at the remote endpoint is detected before expiration of the timeout duration; and set the value of the congestion window to a largest value between ( 1 - L ( i , t ) 2 ) · cwnd and 2.N.MTU where MTU is the path maximum transmit unit of an association, cwnd is the congestion window, L(i,t) is the load distribution, and N is a number of paths in the plurality of paths. 10. The endpoint device according to claim 9 , wherein the at least one processor is further configured to: evaluate the congestion window when no indication that the packet was received by the remote endpoint is detected before expiration of th
Flow control; Congestion control · CPC title
by balancing the load, e.g. traffic engineering · CPC title
Multipath · CPC title
Identifying congestion · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.