A system and method are disclosed for the repair of IP multicast sessions. A repair server polls multiple transmit servers to accumulate as many of the packets missing from the multicast session as possible. A network includes a source of multicast packets in a multicast session and a plurality of multicast recipients in that session. A repair server in the network provides the packets it receives to the recipients. The repair server includes a missing packet detector. There is a plurality of retransmit servers in the network buffering portions of the packets they respectively receive during the session. The repair server maintains an ordered list of the retransmit servers that are most likely to have buffered copies of packets missing from the session. When the repair server detects that there are packets missing from the session it has received, it uses the ordered list to sequentially request the missing packets from respective ones of the plurality of retransmit servers.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A system for repairing multicast sessions, the system comprising: a memory that stores instructions; a processor that executes the instructions to perform operations, the operations comprising: generating an ordered list of retransmit servers based on a likelihood of each retransmit server having buffered copies of packets missing from a multicast session; accumulating a count of successful responses from each of the retransmit servers in the ordered list; determining a ranking for each of the retransmit servers based on the count of successful responses accumulated from each of the retransmit servers in the ordered list; reordering the ordered list into a reordered list based on the ranking determined for each of the retransmit servers; and sequentially requesting the buffered copies of the packets missing from the multicast session based on the reordered list.
2. The system of claim 1 , wherein the operations further comprise detecting that the packets are missing from the multicast session.
3. The system of claim 1 , wherein the operations further comprise transmitting the buffered copies of the packets missing from the multicast session in a unicast response.
4. The system of claim 1 , wherein the operations further comprise reordering the ordered list based on a past performance of each of the retransmit servers in previous repair sessions.
5. The system of claim 1 , wherein the operations further comprise receiving receiver reports from the retransmit servers for the multicast session.
6. The system of claim 5 , wherein the operations further comprise extracting an interarrival jitter field from each of the receiver reports, wherein the interarrival jitter field is utilized as a ranking criterion for adjusting the ordered list.
7. The system of claim 5 , wherein the operations further comprise extracting a cumulative number of packets lost field from each of the receiver reports, wherein the cumulative number of packets lost field is utilized as a ranking criterion for adjusting the ordered list.
8. The system of claim 5 , wherein the operations further comprise extracting round trip delay information from the receiver reports, wherein the round trip delay information is utilized as a ranking criterion for adjusting the ordered list.
9. The system of claim 5 , wherein the operations further comprise extracting a fraction lost field from the receiver reports, wherein the fraction lost field is utilized as a ranking criterion for adjusting the ordered list.
10. A method for repairing multicast sessions, the method comprising: generating an ordered list of retransmit servers based on a likelihood of each retransmit server having buffered copies of packets missing from a multicast session; accumulating a count of successful responses from each of the retransmit servers in the ordered list; determining, by utilizing instructions from memory that are executed by a processor, a ranking for each of the retransmit servers based on the count of successful responses accumulated from each of the retransmit servers in the ordered list; reordering the ordered list into a reordered list based on the ranking determined for each of the retransmit servers; and sequentially requesting the buffered copies of the packets missing from the multicast session based on the reordered list.
11. The method of claim 10 , further comprising detecting that the packets are missing from the multicast session.
12. The method of claim 10 , further comprising transmitting the buffered copies of the packets missing from the multicast session in a unicast response.
13. The method of claim 10 , further comprising reordering the ordered list based on a past performance of each of the retransmit servers in previous repair sessions.
14. The method of claim 10 , further comprising receiving receiver reports from the retransmit servers for the multicast session.
15. The method of claim 14 , further comprising extracting an interarrival jitter field from each of the receiver reports, wherein the interarrival jitter field is utilized as a ranking criterion for adjusting the ordered list.
16. The method of claim 14 , further comprising extracting a cumulative number of packets lost field from each of the receiver reports, wherein the cumulative number of packets lost field is utilized as a ranking criterion for adjusting the ordered list.
17. The method of claim 14 , further comprising extracting round trip delay information from the receiver reports, wherein the round trip delay information is utilized as a ranking criterion for adjusting the ordered list.
18. The method of claim 14 , further comprising extracting a fraction lost field from the receiver reports, wherein the fraction lost field is utilized as a ranking criterion for adjusting the ordered list.
19. A non-transitory computer-readable device comprising instructions, which, when loaded and executed by a processor, cause the processor to perform operations, the operations comprising: generating an ordered list of retransmit servers based on a likelihood of each retransmit server having buffered copies of packets missing from a multicast session; accumulating a count of successful responses from each of the retransmit servers in the ordered list; determining a ranking for each of the retransmit servers based on the count of successful responses accumulated from each of the retransmit servers in the ordered list; reordering the ordered list into a reordered list based on the ranking determined for each of the retransmit servers; and sequentially requesting the buffered copies of the packets missing from the multicast session based on the reordered list.
20. The computer-readable device of claim 19 , wherein the operations further comprise reordering the ordered list based on a past performance of each of the retransmit servers in previous repair sessions.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
June 6, 2014
February 23, 2016
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.