简介
OSI(Open System Interconnect),即 开放式系统互连。一般都叫OSI参考模型,是ISO组织在1985年研究的网络互连模型。该体系结构标准定义了网络互连的七层框架( 物理层 ,数据链路层 ,网络层 ,传输层 ,会话层 ,表示层和应用层 ),即OSI 开放系统互连参考模型。
计算机通讯需要用到必要的软件支持,它就是计算机网络参考模型(即计算机网络软件),最经典的就是我们所要讲解的OSI模型。它是通过一个机器上的一个应用进程与另一个机器上的进程进行信息交互。
七层模型解析
过程
应用层 最直观的理解就是人机交互界面,或者说是系统程序窗口。将“你好”两个字输入电脑微信软件。
表示层。 计算机如何处理“你好”两个字? 答案就是“翻译”! 人类有人类的语言,计算机也有自己的语言。计算机是不懂汉语的,他只知道二进制的 0 和 1 ,那么在计算机的微信上打了“你好”这两个字,计算机接收到后开始通过二进制转换成自己的语言。这一步就是翻译,当然,表示层还有其他的功能,例如安全加密,压缩等。
会话层。 计算机知道你要发送的东西之后,就需要准备发送了。那么,第一步就是要找到对方,并和对方建立会话关系。直接理解:会话属于软件层面,允许不同机器上的用户之间建立会话关系。
传输层。 传输层可理解为是同一个软件中的两个端口进行数据传输。我用微信发送的消息,你也需要用微信来接收。那么就是电脑端微信用户之间的传输。
网络层。 传输层已经准备就绪了,可是我们知道微信用户千千万,我们怎么实现通过文字就能准确的发送到他人的微信上呢? 这就是需要网络层的 IP 地址了。只要知道了别人的 IP 地址,就可以选择最佳路径进行准确的数据传输了。
数据链路层。 网络层接收到数据后需要继续往下传输,需要使用工具,就是数据链路层的网卡,继续进行传输。
物理层 数据到达物理层后,变成信号传输。 数据到达目标主机后,开始进行一个逆向的过程。 即数据到达对方主机后,从物理层传输到数据链路层–网络层–传输层–会话层–表示层–应用层。 此时,数据到达别人的电脑,他就可以看到你发送的“你好”两个字了。
数据如何封装
因每一层的传输数据单元不同,所以需要封装TCP报文头部,以此使下一层能够看懂识别。 传输层:传输层有TCP/IP两个协议,TCP(传输控制协议)和UDP(用户数据报协议)。TCP协议传输更加稳定可靠,UDP协议传输效率更高。所以,上层数据到达传输层后需要封装TCP头部或者UDP头部。 网络层:同理,上层数据到达这里需要封装IP头部。 TCP/IP定义了网络互联协议(IP)(英文是Iternet Protocol)。而IP又由四个支撑协议组成:ARP(地址解析协议),RARP(逆地址解析协议),ICMP(网际控制报文协议)和IGMP(网际组管理协议)。 数据链路层:同理,上层数据到此需要封装MAC头部。 物理层:到达物理层就直接由计算机通过信号接收了。