TCP/IP 协议栈
MAC Header | IP Header | TCP/UDP header | TCP/UDP Data | MAC Header |
---|---|---|---|---|
14byte | 20byte | 20 byte | 4 Byte |
组成结构
- 最底层是1500 byte的以太网桢
- 桢头 14byte
- 桢尾 4 byte
- 中间部分为以太网桢的数据部分
- 在以太网桢的数据部分又分为IP协议头很IP协议数据部分
- 在IP协议的数据部分可以是TCP、也可以是UDP
- 把TCP或者UDP的header去掉以后就是数据部分。
- 如果是HTTP那么在TCP的数据部分又包括HTTP的头。整体结构就是层层嵌套的。
TCP 协议头
- 在IP协议中有源IP地址和目的IP地址
- 在TCP协议中有源端口和目的端口,作用就是确定在主机中具体哪个应用程序。当数据报到达目的主机时通过端口号来找到应用程序。
- Sequence Number 作用:TCP是能保证可靠有序到达的,那如何保证有序呢?就是靠Sequence Number。每个数据报在发送的时候都有一个编号,在接收的时候就可以按照这个编号进行重新排序。因为在IP层是不保证可靠有序到达,所有可能会丢包。到达目的主机后通过在tc