Found this in the depths of my storage. Not sure where its from but might improve the day of some people ^^

  • steventhedev@lemmy.world
    link
    fedilink
    arrow-up
    25
    ·
    3 months ago

    To be fair, because of window size management it only takes 1% packet loss to cause a catastrophic drop in speed.

    Packet loss in TCP is only ever handled as a signal of extreme network congestion. It was never intended to go over a lossy link like wifi.

    • marcos@lemmy.world
      link
      fedilink
      arrow-up
      12
      ·
      3 months ago

      Doesn’t wifi have its own retrial protocol? It’s been a long time since I’ve read the standard, but I think it’s almost lossless from the POV of TCP.

      • frezik@midwest.social
        link
        fedilink
        arrow-up
        14
        ·
        3 months ago

        I believe so, yes. Every 802.11 frame is effectively ACK’d. Makes a mockery of OSI layering, but so does everything else.

      • steventhedev@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        3 months ago

        None built in from what I recall. That was from back in 2011, so it’s possible things changed since.

        Reading through, it looks like retries do exist, but remember that duplicate packets are treated as a window reset, so it’s possible that transmission succeeded but the ack was lost.

        I remember the project demos from the course though - one team implemented some form of fast retry on two laptops and had one guy walk out and away. With regular wifi he didn’t even make it to the end of the hall before the video dropped out. With their custom stack he made it out of the building before it went.

        I’ll need to dig through to find the name of what they did.

    • legion02@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      On the other side of the spectrum packet loss is a key feature of some of the layers below tcp, like path-mtu discovery.