News for hackers. Stuff that matters.
Re:HTTP/3 explained by shereadsthenews on Tuesday February 05, 2019 @12:12PM (#19087265)
We aren’t talking about raw networking; generally a QUIC implementation uses the kernel UDP stack, which buffers packets until read.
Re:HTTP/3 explained by mehrdadn on Tuesday February 05, 2019 @01:26PM (#19088108)
No but TCP sends keep-alive packets or something in the kernel right? If you can't send anything by the timeout then the connections should drop?
Re:HTTP/3 explained by tlb on Tuesday February 05, 2019 @01:38PM (#19088283)
Only if you set the keepalive option, such as:

  int yes = 1;
  setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, &yes, sizeof(yes));
Most servers (Xserver, imapd, sshd) set it.
Re:HTTP/3 explained by shereadsthenews on Tuesday February 05, 2019 @01:33PM (#19088214)
Vanilla TCP does not do this. Sockets remain established forever in the absence of traffic.
Re:HTTP/3 explained by xorcist on Tuesday February 05, 2019 @03:46PM (#19089659)
This is a core feature in TCP/IP. Only the endpoints actually involved in the connection care about what a "connection" really is. If they share a connection, it should be nobody else's business that they do.
Re:HTTP/3 explained by mehrdadn on Wednesday February 06, 2019 @08:28AM (#19094876)
This is definitely not true in this world which is filled with NATs everywhere. The intermediate routers very much care and must care about what connections exist.
Re:HTTP/3 explained by rdtsc on Tuesday February 05, 2019 @02:21PM (#19088746)
> UDP stack, which buffers packets until read

Not really. Or just up to a point only. Then it will drop them into the bit bucket without telling either the sender or receiver. With TCP the sender will "find out" eventually the receiver isn't getting the data.

The point is that with streams on top of UDP all that has to happen in the application layer.