这里所讲的协议比较主要是指协议格式的比较。理论上来说,数据链路层,网际层,传输层的用途和目的各不相同,协议的实现自然也不相同,比较起来意义不大。但是把它们罗列放在一起后,各自的特点和协议的目的就更加的明显。
协议名 |
层次 |
目标地址 |
源地址 |
校验方式 |
负载类型 |
报文头长度 |
以太网协议 |
数据链路层 |
MAC地址(6 Byte) |
MAC地址(6 Byte) |
FCS: 4字节CRC帧校验码 全数据校验 |
2字节 |
协议中无体现 固定,根据前导码区分 |
IP协议 |
网际层 |
IP地址(4 Byte) |
IP地址(4 Byte) |
首部检验和:2字节 只检验IP首部 |
1字节 |
首部长度项,4 bit 表示IP报文头长度可变, 报文头20~60字节 |
TCP协议 |
运输层 |
源端口(2 Byte) |
目标端口(2 Byte) |
2字节:伪首部全数据校验 |
无 |
数据偏移,4bit 表示TCP报文段的首部长度,报文头20~60字节 |
UDP协议 |
运输层 |
源端口(2 Byte) |
目标端口(2 Byte) |
2字节:伪首部全数据校验 |
无 |
协议中无体现 UDP报文头长度固定为8字节 |
协议名 |
层次 |
负载长度 |
时间戳 |
特有项 |
特点 |
以太网协议 |
数据链路层 |
协议中无体现, 根据前导码进行区分 46-1500字节数据 |
无 |
无 |
透明传输,是不可靠传输协议,不能保证上层报文的有序、可靠、完整性 |
IP协议 |
网际层 |
总长度,2 Byte IP报文最长65535 |
生存时间 实际表示跳数,超过跳数丢弃 |
标识/标志/片偏移 原因:IP层特有的分片机制所需要 |
不可靠传输协议,不能保证上层报文的有序、可靠、完整性 IP包在传输过程中丢失,则丢弃 |
TCP协议 |
运输层 |
无。TCP是流式传输 靠窗口值来保证可靠传输 |
时间戳 (可选项):用于计算往返时间RTT。来估算超时重传时间 |
序列号/确认号/确认ACK/同步SYN/ 终止比特FIN/窗口 用于流的可靠传输的建立、传输和结束过程 |
可靠传输协议,保证数据有序、可靠和完整性 |
UDP协议 |
运输层 |
2Byte,UDP最长65535 |
无 |
无 UDP层提供的是一个不可靠的协议,不关心发出的包对端是否可靠接受 |
不可靠传输协议,数据包丢失则丢失 |
(版权所有,转载时请注明作者和出处http://blog.youkuaiyun.com/arau_sh/article/details/11847887)