News for hackers. Stuff that matters.
Re:Never* Use Datagrams by eptcyka on Sunday June 23, 2024 @08:14AM (#40766858)
TCP wont always deliver your packets anyway , but it does have a mechanism of timing out if a party believes the other party did not receive something. UDP just means that if one cares for their data to be received, they must verify it themselves.
Re:Never* Use Datagrams by eru on Sunday June 23, 2024 @08:41AM (#40767045)
Yes, it's not so much 'reliable' or 'best effort', rather the difference is 'which part of your software stack should deal with dropped packages'?
Re:Never* Use Datagrams by 13415 on Sunday June 23, 2024 @08:46AM (#40767075)
That's in my opinion what reliable / unrealiable mean in this context.

reliable = it either succeeds or you get an error after some time, unreliable = it may or may not succeed

I concur with the people who think "best effort" is not a good term. But perhaps TCP streams are not reliable enough for TCP to be rightly called a reliable stream protocol. As it turned out, it's not really possible to use TCP without a control channel, message chunking, and similar mechanisms for transmitting arbitrary large files. If it really offered reliable streams that would its primary use case.