1、OSI模型是怎么来的
\qquad
为了解决计算机网络复杂的“大问题”,将这个“大问题”划分为一些列“小问题”,这就有了计算机网络分层结构。IBM公司首先提出了SNA网络体系结构,之后还有其他组织各自提出自己的网络体系结构,包括美国国防部提出的TCP/IP计算机网络体系。但是不同公司之间的体系只能在自己公司内部的软件之间互相使用,不同呢公司之间不能进行互联互通。所以为了支持异构网络系统 的互联互通,国际标准化组织(ISO)于1984年提出开放系统互联(OSI)参考模型,但是由于TCP/IP在市场上应用良好,所以OSI模型只能作为一个理论模型,没有广泛投入时长使用。
2、OSI参考模型
\qquad
OSI参考模型包括7层,自下而上依次是:物理层,数据链路层、网络层、传输层、会话层、表示层和应用层。OSI七层模型如下图所示。
2.1 OSI参考模型解释通信过程-数据封装的过程
\qquad
下图介绍了一个由主机A发送信息通过中间系统(路由器,网桥,交换机等)传送到主机B的过程。其中OSI模型中的4-7层实现的是端到端的传输,1-3层实现的是点到点的传输。
\qquad
发送端完成的是数据打包的过程,接收端完成的是数据拆包的过程。在打包和拆包过程中比较特殊的是数据链路层,它要为4-PDU(Protocal Data Unit)添加头部和尾部两部分“包装”,除物理层外的其他层都只需要为PDU添加头部“包装”即可。
2.2 OSI参考模型各层的功能和对应的协议
应用层
\qquad
应用层是用户与网络的界面,包括所有能和用户交互产生网络流量的程序。应用层程序包括QQ,邮件软件等等,典型的应用层服务包括:文件传输(FTP),电子邮件(SMTP),万维网(HTTP)… … 表示层
\qquad
表示层用于处理两个通信系统中交换信息的表示方式(包括语法和语义等)。表示层的功能包括以下三个:
\qquad
(1) 数据格式变换,i.e., 将二进制数字转化为图片文字等
\qquad
(2) 数据加密和解密
\qquad
(3) 数据压缩和恢复
\qquad
表示层在TCP/IP中不是一个单独的层面,会被纳入到应用层规划层里面,所以表示层没有太多单独的协议,跟表示层有关的协议包括:JPEG、ASCII等。 会话层
\qquad
会话层向表示层实体/用户进程提供建立连接 并在连接上有序 地传输 数据。这是会话,也是建立同步 (SNY)。会话层的功能包括以下两个:
\qquad
(1) 建立、管理、终止会话
\qquad
(2) 使用校验点可以使会话在通信失效时从校验点/同步点 继续恢复通信,实现数据同步。适用于传输大文件。 传输层
\qquad
传输层负责主机中两个进程 的通信,即端到端 的通信。传输单位是报文段或者用户数据报。传输层的功能包括以下四个:
\qquad
(1) 可靠传输、不可靠传输。带有反馈机制的传输叫做可靠传输,不带反馈机制的传输较不可靠传输。
\qquad
(2) 差错控制,纠正发送出现错误的报文段
\qquad
(3) 流量控制,控制发送端的发送速率
\qquad
(4) 复用分用,复用指的是:多个应用层进程可以同时使用下面传输层的服务;分用指的是:传输层把收到的信息分别交付给上面应用层中相应的程序。
\qquad
传输层的主要协议包括: TCP 、IP 网络层
\qquad
主要任务是把分组 从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络传输层的单位是数据报 。当数据报过长的时候就可以将数据报进行切割,切割成一个个小的分组,之后再放到链路上面进行传递,这样可以适当数据在链路上传递更加灵活,损失也会更小。网络层的功能包括以下四个:
\qquad
(1) 路由选择,选择一个最佳路径 将数据从发送端传送到接收端;
\qquad
(2) 流量控制,协调发送端和接收端的速度问题
\qquad
(3) 差错控制, 纠正发送出现错误的报文段
\qquad
(4) 拥塞控制,从整个网络全局的角度调节数据传输速度。若网络中所有的节点(路由器等)都来不及接受分组,而要对其大量分组的话,网络就处于拥塞 状态。因此要采取一定额措施缓解这种拥塞。
\qquad
网络层的协议包括:IP、IPX、ICMP、IGMP、ARP、RARP和OSPF等。 数据链路层
\qquad
数据链路层的主要任务是把网络层传下来的数据报组装成帧 ,所以数据链路层/链路层的传输单位是帧 。数据链路层的功能包括以下三个:
\qquad
(1) 成帧,定义帧的开始和结束;
\qquad
(2) 差错控制,检测帧错+位错 ,可以检错和纠错
\qquad
(3) 流量控制,发送发和接收方的速度协调问题
\qquad
(4) 访问(接入)控制,控制对共享信道的访问
\qquad
数据链路层的主要协议包括:SDLC,HDLC,PPP,STP 物理层
\qquad
物理层的主要任务是在物理媒体 (电缆,光纤,无线电波等)上实现比特流的透明传输 。物理层的传输单位是比特 。
\qquad
透明传输 指的是不管所传输的数据是什么样的比特组合,都应当能够在链路上进行传输。物理层的功能包括以下 个:
\qquad
(1) 定义接口特性
\qquad
(2) 定义传输模式,单工,半双工,双工
\qquad
(3) 定义传输速率
\qquad
(4) 比特同步
\qquad
(5) 比特编码
\qquad
物理层的主要协议包括:Rj45和802.3
THE END
|