Live data from Hacker News

Falsehoods programmers believe about TCP

lwn.net

41–50 of 247 posts

Re: Falsehoods programmers believe about TCP

#43
post #18

Earlier quoted context omitted.

Depends on OS settings these days. Lots of OSes want to help and detect link down and reset all your connections. Kind of a pain when you just want to move a cable.

Like Chrome’s oh so helpful ERR_NETWORK_CHANGED

Like, I know?! Just reload the page already, I've told you twice.

It's rather irritating.

Re: Falsehoods programmers believe about TCP

#47
To some of the critics here: did you or did you not notice the “Somebody ought to write one of those […] Here, I'll even get the ball rolling” framing? A polished such article this is not claiming itself to be! I would go as far as saying the HN submission title is misleading as a result.

Re: Falsehoods programmers believe about TCP

#48
post #33
post #2

> remember, all of the following statements are false at least some of the time, but for some of these, perhaps not very often > 5. There is a such thing as a TCP packet > 6. There is no such thing as a TCP packet I don't understand this at all. Either the concept of a TCP packet exists, or the concept does not exist. Even it's not being used in certain scenarios, I don't see how you can argue that "there's no such t…

> 6. There is no such thing as a TCP packet Because the software abstraction is a stream of bytes; and it's up to the application to decide where the "packets" begin and end. For example, I might write to a TCP socket: 100 bytes, 50 bytes, and then 125 bytes. BUT, the receiver could get: A single event with 275 bytes. Or it could get an event with 75 bytes and then an event with 200 bytes. Or it could get 11 events o…

If you have a look at the underlying network traffic, you'll see IP packets carrying TCP data, ie. The protocol field in the IP packet header will be set to TCP; this could be assimilated to a TCP packet.

Re: Falsehoods programmers believe about TCP

#49
I'll go out on a limb: inside datacenter on your own hardware, you can safely ignore low-level pedantry and mostly ignore “weird networks” and use TCP as two-way Unix pipe.

“Mostly” because you still care about bandwidth limits and packet RPS limits and latency of course.

Post reply on HN