上三层一般处于应用层,用户进程遵守协议。而下四层则在内核中执行,处理通信细节。
交互图
运输层使用的是端到端(End-to-end)的协议,只有端系统需要使用这个协议。
TCP提供了可靠的运输层(通过超时重传、发送和接收端到端的确认分组等机制)。
网络层提供的是逐跳协议(Hop-by-hop),中间系统(路由器)也需要使用。
IP提供的是不可靠的服务。
人们习惯使用主机名来访问对应主机。域名系统DNS是一个分布式的数据库,提供了IP地址与主机名之间的映射系统。通过主机名可以找到对应主机的IP地址,同时,可以根据ip地址查找主机名。
当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息 ),该过程如图1 - 7所示。TCP传给IP的数据单元称作TCP报文段或简称为TCP段(TCPsegment)。IP传给网络接口层的数据单元称作IP数据报 (IPdatagram) (更准确的说是分组packet,分组可能是一个数据报,也可能是数据报的一个片fragment)。 通过以太网传输的比特流称作帧 (Frame)。
UDP数据与TCP数据基本一致。唯一的不同是UDP传给IP的信息单元称作UDP数报 (UDPdatagram),而且UDP的首部长为 8 字节。
目的主机收到以太网数据帧时,去掉协议头最终拿到数据的过程。
原文:https://www.cnblogs.com/fcb-it/p/14732274.html