[ih] Internet-history Digest, Vol 59, Issue 29
Serissa
stewart at serissa.com
Sat Oct 5 18:25:46 PDT 2024
>
> Message: 1
> Date: Sun, 6 Oct 2024 08:37:35 +1300
> From: Brian E Carpenter <brian.e.carpenter at gmail.com>
> To: internet-history at elists.isoc.org
> Subject: Re: [ih] bufferbloat and modern congestion control (was 4004)
> Message-ID: <f4e88559-fb2c-4a89-b5b2-7faf082e8a93 at gmail.com>
>
>> On 06-Oct-24 05:03, Greg Skinner via Internet-history wrote:
>>> On Oct 3, 2024, at 9:02?AM, Greg Skinner via Internet-history <internet-history at elists.isoc.org <mailto:internet-history at elists.isoc.org>> wrote:
>>>
>>> Forwarded for Barbara
> ...
>>> How is network coding coming along these days?
>
> I don't believe it has seen much deployment. A colleague of mine has worked on its applicability to mitigating problems with satellite-based connectivity for remote Pacific islands. [3]
>
>> Any serious attempts to reinstitute ICMP source quench would have to go through the IETF RFC process again because it?s been deprecated for some time. [1] Also, many sites block ICMP outright (even though they?ve been warned not to do this). [2]
>
> The main operational problem this causes is that it breaks path MTU discovery, which damages performance. Applies to ICMPv6 too, of course. However, ICMP is viewed as a security threat, including as a DOS vector, so blocking it in firewalls is pretty common. There are recommendations in [4] and [5] for ICMPv6.
>
> Brian
>
>>
>> --gregbo
>>
>> [1] https://datatracker.ietf.org/doc/rfc6633/
>> [2] https://www.linkedin.com/pulse/icmp-dilemma-why-blocking-makes-you-networking-noob-ronald-bartels-ikvnf
>
> [3] U. Speidel, "Improving goodput on shared satellite links with coded tunnels," 2021 IEEE Global Communications Conference (GLOBECOM), Madrid, Spain, 2021, pp. 1-6, doi: 10.1109/GLOBECOM46510.2021.9686021.
>
> [4] https://www.rfc-editor.org/info/rfc4890
>
> [5] https://www.rfc-editor.org/info/rfc9099
>
> ------------------------------
>
Regarding network coding, I am aware of a couple of other experiments. Microsoft used network coding for a tunnel between a commuter bus for employees and their home base, to solve problems of excessive packet loss on a cellular hop.
Matteo Frigo and I, at Quanta Research around 2014, experimented with end-to-end network coding to make real time video work better on lossy links.
Just in case not everyone is familiar with network coding, there are (at least) two use cases. In one, recoding packets in the interior of a network can improve throughput for everyone. In the other, network coding is used as a form of rateless erasure coding for point to point streams, so rather than retransmit lost packets, you smear out the information across many packets, so that once you receive "enough" of them, you can reconstruct the original message.
Roughly speaking, if you imagine multiplying the packets of a message times a random matrix of 1's and 0's, what you transmit are random linear combinations of packets. Once you have enough of them so that the received random matrix is not singular, you can reconstruct the original. In practice, the random linear combinations are according to a PRNG known to the sender and receiver, so from an id in the packet you know what input packets contributed to it.
Approximately, once you receive N good packets, you can reconstruct the original N packets, it doesn't really matter which N you receive, because they are randomized anyway. There are no retransmissions, and out of order doesn't matter. Pretty useful stuff. Within a flow, no packet is more important than any other.
-Larry
More information about the Internet-history
mailing list