一、OSI 参考模型
OSI(Open System Interconnect),即开放式系统互联。TA 是 ISO(国际标准化组织)组织在1985年研究的网络互连模型, 一般叫 OSI 参考模型。OSI 的推出主要是为了更好的使网络应用更为普及,通过推荐所有公司使用 OSI 参考模型来控制网络,这样,所有公司就可以依据相同的规范,来实现互联了。
OSI 定义了七层网络互联的架构,通过下边的表格来总结下每一层所负责实现的功能和协议,以及一些相关设备。
OSI层 | 功能 | 协议 | 设备 | 描述 | |
---|---|---|---|---|---|
第七层 | 应用层 | 文件传输、电子邮件、文件服务、虚拟终端 | HTTP、HTTPS、FTP、POP3、SMTP、DNS、Telnet | 无设备 | 最靠近用户的一层,为计算机用户提供应用接口,也提供各种网络服务 |
第六层 | 表示层 | 数据编码、转换(压缩、加密等等) | 无协议 | 无设备 | 为应用层的数据提供编码和转换功能,确保数据从一个系统的应用层到另一个系统应用层能够被识别 |
第五层 | 会话层 | 建立、维护、管理通信会话 | 无协议 | 无设备 | 负责建立、管理、终止表示层中实体之间的通信会话 |
第四层 | 传输层 | 建立、维护、管理端到端的连接 | TCP、UDP | 四层交换机、四层路由器 | 建立主机端到端的链接,提供可靠、透明的数据传输服务,屏蔽数据传输细节(对高层)。这里提到的端就是“端口号” |
第三层 | 网络层 | IP寻址和路由选择 | IP、ICMP,RIP,OSPF,BGP,IGMP | 路由器、三层交换机 | |
第二层 | 数据链路层 | 控制网络层与物理层之间的通信 | SLIP,CSLIP,PPP,ARP,RARP,MTU | 网桥、以太网交换机(二层交换机)、网卡 | 将比特组合成字节,再将字节组成“帧”(在此层数据的单位为“帧”),使用链路层地址(以太网使用的MAC地址)来访问介质 |
第一层 | 物理层 | 以二进制数据形式在物理介质上传输数据 | ISO2110,IEEE802、IEEE802.2 | 中继器、集线器、双绞线 | 此层数据的单位是比特(bit) |
二、TCP/IP 五层模型
我对 TCP/IP 五层协议的理解是,依据 OSI 参考模型的具体实现,他们之间的关系如下图所示:
如上图,我们可以看到 OSI 参考模型中的应用层、表示层、会话层对应 TCP/IP 五层模型中的应用层,也就是说 TCP/IP 五层模型里没有表示层、会话层。
三、协议数据单元(PDU)
PDU 全称是 Protocol Data Unit (协议数据单元),OSI 参考模型和 TCP/IP 五层模型每层都有一个对应的协议数据单元,如下图:
这种通过协议栈逐层向下传递数据,并添加报头和报尾的过程被称为 封装