networking - What stops a TCP endhost from being a bad player? -
i'm talking congestion control specifically. in tcp, when host detects congestion via dropped packets or whatnot, it's supposed decrease flow improve network condition whole.
however, couldn't bad host keep sending packets @ max rate @ cost of others? if there million hosts , 1 bad host, congestion can still largely avoided (because other hosts correctly implement congestion control algorithm), 1 bad host have advantage in terms of packet transmission rate. question is, there prevents host behaving selfishly such?
yes, inadvertantly or deliberately broken tcp/ip stack cause harm , there lots of broken stacks out there. but, in case there conflicting interests in tcp stack: on 1 side want send fast possible on other side need have reliable delivery. latter means have buffer data until ack peer. if don't decrease bandwidth when packets lost loose more packets , have buffer them inside hosts until ack more , more increase memory usage of host.
Comments
Post a Comment