TCP/IP协议(1):各层协议帧格式
一、TCP/IP模型
1、OSI与TCP/IP对应:

TCP/IP各层功能:
链路层:包括操作系统的设备驱动程序和计算机的网卡,提供底层传输服务。
网络层:为数据选择路由,在众多计算机和网络设备组成的网络中选择一条传输路线进行传输。
传输层:提供两台主机端对端的通信服务,进行传输控制。
应用层:复制应用程序的特定处理。
2、TCP/IP协议帧封装
当发送数据时,对于一帧数据,每一层会封装上自己的头,而收数据时去掉上层的头,如图:

二、TCP/IP各层帧格式
1、链路层
Ethernet以太网帧格式

可以看到以太网帧头包含三部分:目的地址(MAC地址)、源地址(MAC地址)、类型。以太网帧类型有IP数据报(0x0800)、ARP请求应答报文(0x0806)、RARP请求应答报文(0x8035)。
2、网络层
IP数据帧格式

IP首部一般为20字节,IP首部中包含目的IP地址和源IP地址。数据报可以分为TCP报文、UDP报文、ICMP报文等。
ICMP报文

ICMP是IP协议的“助手”或“信使”, 它的主要职责不是传输用户数据,而是 在网络设备(如路由器、主机)之间传递控制信息和错误报告。 例如,当你的数据包无法到达目的地时,沿途的路由器或目的主机会通过ICMP报文向你发送一个“目的地不可达”的错误报告。
3、传输层
TCP数据帧格式

TCP首部中包含目的端口号和源端口号。
UDP数据帧格式
4、应用层
HTTP报文格式

三、TCP/IP通信流程
浙公网安备 33010602011771号