为什么TCP头包含ACK和SEQ字段?

Zel*_*luX 3 networking tcp header

由于TCP头是一个相对较大的开销,为什么我们不以ACK和SEQ共享相同字段的方式压缩它,它们仍然可以通过标头中的标志来区分?

小智 11

因为它们不是专门使用的.以下是最重要的:连接协商,即三方握手:

三次握手http://upload.wikimedia.org/wikipedia/commons/c/c7/300px-Tcp-handshake.png

图片来自维基媒体公共场所.它介绍了如何协商TCP连接,并显示ACK和SEQ在同一个头中一起使用以建立连接(我写这个以确保答案是有用的,即使图片有一天会消失).