1.物理层
解决两个硬件之间怎么通信的问题,常见的物理媒介有光纤、电缆、中继器等。它主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。
物理层的协议是EIA/TIA-232、EIA/TIA-499、EIA/TIA-568等
它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。
物理层的数据叫做比特流。
2.数据链路层
在计算机网络中由于各种干扰的存在,物理链路是不可靠的。
数据链路层的协议是以太网、Wi-Fi、HDLC协议、PPP(点对点协议)、SLIP协议等
数据链路层的主要任务是:通过各种控制协议,将比特组合成字节进而组合成帧,以达到物理层的数据传输。同样,也将来自物理层的位流形式的数据,并封装成帧,传送到网络层。
数据链路层的数据叫做数据帧。
3.网络层
计算机网络中如果有多台计算机,怎么找到要发的那台?如果中间有多个节点,怎么选择路径?这就是路由要做的事。
网络层的协议是IP(互联网协议)、ICMP(互联网控制消息传递协议)、ARP协议等
网络层的主要任务就是:通过路由选择算法,为报文(该层的数据单位,由上一层数据打包而来)通过通信子网选择最适当的路径。
网络层的数据叫做数据包。
4.传输层
当发送大量数据时,很可能会出现丢包的情况,另一台电脑要告诉是否完整接收到全部的包。如果缺了,就告诉丢了哪些包,然后再发一次,直至全部接收为止。
传输层的协议是TCP(传输控制协议)和UDP(用户数据报协议)
传输层的主要任务就是:提供两台计算机之间的数据传输服务,确保数据的正确传输。
传输层的数据叫做段(TCP)或用户数据报(UDP)。
5.会话层
虽然已经可以实现给正确的计算机,发送正确的封装过后的信息了。但我们总不可能每次都要调用传输层协议去打包,然后再调用IP协议去找路由,所以我们要建立一个自动收发包,自动寻址的功能。于是会话层出现了:它的作用就是建立和管理应用程序之间的通信。
会话层的协议是ADSP、RPC等
会话层的主要任务就是:建立、管理、终止会话连接。
会话层的数据叫做特定的数据包或消息
6.表示层
表示层负责数据格式的转换,将应用处理的信息转换为适合网络传输的格式,或者将来自下一层的数据转换为上层能处理的格式。
表示层的协议是ASCII、SSL、TLS等
表示层的主要任务就是:数据的表示、安全、压缩。
表示层的数据叫做加密和解密的数据
7.应用层
应用层是整个OSI模型的最上层,它为计算机用户提供各种网络应用服务。
应用层是计算机用户,以及各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作。
应用层的协议是HTTP(超文本传输协议)、FTP(文件传输协议)、Telnet(终端仿真协议)、SMTP(简单邮件传输协议)、DNS(域名系统协议)等
应用层的主要任务就是:为应用软件提供网络服务。
应用层的数据叫做特定的数据包或消息
8.注意事项
有些协议可以在多个层级使用,而有些协议则只能在特定的层级使用
网络协议和OSI模型是抽象的概念,实际网络通信过程要复杂得多。
TCP/IP4层模型、5层模型和OSI七层模型的对比
参考链接:
https://www.zhihu.com/tardis/zm/art/296670054?source_id=1005