some OOB packet loss stats
"Zlatin Balevsky" <[email protected]>
| Newsgroups | gmane.network.gnutella.devel |
|---|---|
| Message-ID | <[email protected]> |
An aspect of OOB that is rarely talked about is that UDP does lose packets now and then. We gathered some statistics from OOB sessions that have succesfuly exchanged the LIME12 message. All of the sessions below have been active for at least 10 seconds after receiving LIME12 so the loss of results could be due either to loss of datagrams carrying QueryReply messages or LIME11 messages. The data was collected from random nodes in the network and it contains both Ultrapeers and Leaves. Overall success ratio (In reality the success ratio is even lower because LIME12 can get lost as well.) 9881 / 11399 = 86.683044% Number of Response Datagrams in session : Total Number Received / Total Number Requested = Success % 1 : 3953 / 4245 = 93.12132% samples: 4245 2 : 1389 / 1538 = 90.312096% samples: 769 3 : 837 / 912 = 91.77631% samples: 304 4 : 477 / 548 = 87.04379% samples: 137 5 : 420 / 510 = 82.35294% samples: 102 6 : 329 / 438 = 75.11416% samples: 73 7 : 249 / 273 = 91.20879% samples: 39 8 : 179 / 208 = 86.05769% samples: 26 9 : 154 / 180 = 85.55556% samples: 20 10 : 105 / 140 = 75.0% samples: 14 Its also worth noting that LimeWire sends one Response per datagram, and as you see the more datagrams are exchanged the higher the likelihood some get lost. We have been discussing the issue in our Issue-tracking system: https://www.limewire.org/jira/browse/LWC-1084 and we welcome any comments there. Some of the ideas on the table include erasure encoding of the responses and sending duplicate LIME11 and LIME12s (backwards compatible). We look forward to your comments. Zlatin Balevsky Lime Wire LLC