天天看点

计算机OSI七层模型

OSI: open system interconnect(开放系统互连)

其核心思想:1. 通信两端的主机能够理解对方的语言(这要求主机使用相同协议格式来发送数据)2. 通信系统模块化,每个模块提供标准接口。

以TCP/IP为框架模型,指定了七层的OSI参考模型(及其包含的部分常见协议):

应用层:HTTP(基于TCP/IP通信协议来传递数据)FTP,WWW, SMTP

表示层: TIFF, GIF, JPEG, MPEG, MIDI, ASCII, HTML

会话层: SQL

传输层: TCP, UDP

网络层: IP

链路层: IEEE 802.3/802.2, IEEE 802.5/802.2

物理层: Ethernet, 802.3, 802.5

从物理层起,以上七道工序最终产生了二进制流。除了物理层之外,每到工序都会在原始数据前添加一串属于自己的协议头。

链路层协议头: 这个协议头只有源主机、端接路由器可以理解,只会存活在源主机与其端接的中继路由器,换句话说,其生命周期只限于一根链路,只要端接路由器能顺利接收,其使命就算完成了,那路由器会将其从二进制流剥离掉,剩下打头阵的就是网络层的协议头。

网络层协议头: 其中包含了目的地网络地址,用于指示沿途的路由器,这一串二进制流的目的地是哪里,路由器查询自己的网络地址表,决定再发给更靠近目的地的下一跳路由器。假如找到了一个出接口与下一跳路由器直连,则又要考虑如何添加链路层的协议头了,依据不同的接口类型,添加了适合此链路的链路层协议头,然后再依据物理层介质的不同,物理层将其以光、电、电磁波的信号发送出去。总结一下,就是一串二进制流每经过沿途一跳路由器,变换一次链路特有的协议头,但网络层协议头一直不会变,最终这一串二进制流到达了终点。至此,网络层协议头也完成了其使命,剥离掉网络层协议头,剥离掉之前,先读出网络层协议头的传输层协议代码,把这一串二进制流发给传输层,剩下打头阵的就是传输层的协议头。

传输层协议: 依据传输层协议头里会话层协议代码,先剥离掉传输层协议头,把这一串二进制流发给会话层,剩下打头阵的就是会话层协议头。

**会话层协议:**同传输层

**表示层协议:**同传输层

**应用层协议:**经过以上一跳一跳路由器的中继、终点主机的一层层协议头的剥离,源主机发给终点主机的数据终于到达终点了,至于数据是文字、图片、音频、视频,则由应用层协议来最终解释。

更为宏观一些的解释:OSI上三层总称为应用层,用来控制软件方面。下四层总称为数据流层,用来管理硬件。除了物理层之外,其他层都是用软件实现的。

数据在数据流层(下四层)会被拆分。传输层数据片段叫 段。网络层叫包。数据链路层叫帧,物理层叫比特流.