I am trying to understand the rationale behind such a design. I skimmed through a few RFCs but did not find anything obvious.
相关问题
- IPAddress.[Try]Parse parses 192.168 to 192.0.0.168
- What would prevent code running in a Docker contai
- How to run tcp and udp on a single port at same ti
- How to set delegate in a protocol extension
- Docker-Compose: Can't Connect to Mongo
相关文章
- Socket编程 TCP方式发送时间有点长
- RMI Threads prevent JVM from exiting after main()
- fsc.exe is very slow because it tries to access cr
- How many times will TCP retransmit
- Writing an OS X kernel extension to implement Linu
- Writing a stream protocol: Message size field or M
- What's “tcp-backlog” in redis.conf
- Virtual Box limit Bandwith on network [closed]
SYNs and FINs require acknowledgement, thus they increment the stream's sequence number by one when used.
It's not particularly subtle - it's so that the SYN and FIN bits themselves can be acknowledged (and therefore re-sent if they're lost).
For example, if the connection is closed without sending any more data, then if the FIN did not consume a sequence number the closing end couldn't tell the difference between an ACK for the FIN, and an ACK for the data that was sent prior to the FIN.