OSI参考模型学习笔记

OSI参考模型:理论模型
OSI参考模型,定义网络通信的层次结构、层次之间的相互关系与各层提供的服务;
只要遵循OSI标准,一个系统就可以和位于世界上任何地方的、也遵循这同一标准的其他任何系统进行通信。

OSI参考模型是一个具有七层结构的体系模型。发送和接收信息所涉及的内容和相应的设备称为实体。OSI的每一层都包含多个实体,处于同一层的实体称为对等实体。

OSI参考模型也采用了分层结构技术,把一个网络系统分成若干层,每一层都去实现不同的功能,每一层的功能都以协议形式正规描述,协议定义了某层同远方一个对等层通信所使用的一套规则和约定。每一层向相邻上层提供一套确定的服务,并且使用与之相邻的下层所提供的服务。从概念上来讲,每一层都与一个远方对等层通信,但实际上该层所产生的协议信息单元是借助于相邻下层所提供的服务传送的。因此,对等层之间的通信称为虚拟通信。

参考模型的优点
1)将网络的通信过程划分为小一些、简单一些的部件,因此有助于各个部件的开发、设计和故障排除;
2)通过网络组件的标准化,允许多个供应商进行开发;
3)通过定义在模型的每一层实现什么功能,鼓励产业的标准化;
4)允许各种类型的网络硬件和软件相互通信;
5)防止对某一层所做的改动影响到其他的层,这样就有利于开发。

OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输。
物理层的功能
1.物理层是OSI/RM的最低层。主要功能是完成相邻结点之间原始比特流的传输。
2.物理层的设计主要涉及物理接口的机械、电气、功能和规程特性。如下:
1)机械特性:指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置。
2)电气特性:指明接口电缆各条线上的电压范围。
3)功能特性:指明某条线上出现的某一电平的电压含义。
4)规程特性:指明对于不同功能的各种可能事件的出现顺序。 
数据链路层的功能
1.主要作用:负责建立和管理节点间的链路,将数据封装成数据帧来进行传输。

通过各种控制协议,将有差错的物理信道变成无差错的,能可靠传输数据帧的数据链路。
在计算机网络的由于各种干扰的存在,物理链路是不可靠的。
在物理层提供的比特流的基础上通过数据成帧、差错控制、流量控制链路管理的方法使用有差错的物理链路变成无差错的数据链路。

1)成帧(帧同步)
为了能实现数据有效的差错控制,就采用了一种“帧”的数据块进行传输。而要采帧格式传输,就必须有相应的帧同步技术,
这就是数据链路层的“成帧”(也称为“帧同步”)功能;  
2)差错控制
在数据通信过程可能会因物理链路性能和网络通信环境等因素,难免会出现一些传送错误,但为了确保数据通信的准确,
又必须使得这些错误发生的机率尽可能低;
3)流量控制
可以确保数据通信的有序进行,还可避免通信过程中不会出现因为接收方来不及接收而造成的数据丢失; 
4)链路管理
数据链路的建立、链路的维持和释放三个主要方面 。

2.数据链路层的两个子层:

1)MAC(介质访问控制)
解决共享型网络中多用户对信道竞争的问题,完成网络介质的访问控制。
将上层交下来的数据封装成帧进行发送(接受时)迚行相反的过程,将帧拆卸);
实现和维护介质访访问控制协议,例如CSMA/CD(载波侦听多路访问/冲突检测);
比特差错检测;
MAC帧的寻址,即MAC帧由哪个站(源站)发出,被哪个站、哪些站接收(目的站)。
2)LLC(逻辑链路控制):
建立和维护网络连接,执行差错控制、校验、流量控制、链路控制等。
建立和释放数据链路层的逻辑连接;
提供与上层的接口;
给帧加上序号。


3.数据链路层提供的服务
1)数据链路层的设计目标就是为网络层提供各种需要的服务。
2)数据链路层会向网络层提供以下三种类型的服务:
无确认的无连接服务
有确认的无连接服务
有确认的面向连接服务 

在广域网中:负责主机-IMP接口信息处理器、IMP-IMP之间的可靠传输
在局域网中:负责主机之间的数据可靠传输
网络层的功能
定义与指定协议相关联的源和目标逻辑地址(IP地址)
定义通过网络的路径(路由条目)
多链路连接

通过路由算法
IP   mac 
传输层的功能
1.功能
区分不同的上层应用
建立应用程序间的端到端连接
定义流量控制 
为数据传输提供可靠(TCP)或不可靠(UDP)的连接服务
传输层的寻址
连接释放
拥塞控制
多路利用
恢复

分三个阶段才能完成一次完整的服务:建立连接、数据传送、传输释放
数据传送阶段分为:一般数据传送和加速数据传送。

2.流量控制:
缓冲(Buffering)
窗口(Windowing)
避免拥塞(Congestion avoidance)
会话层功能
1.主要为两个会话层实体进行会话而进行的对话连接的管理服务。 
2.会话层的主要功能:建立会话,拆除会话等会话管理服务。
表示层功能
1.主要功能是数据如何被表示。如文字、图形、声音的表示。
2.另外,数据压缩、数据加密等工作都是由表示层负责处理。
应用层功能
主要功能是完成用户与应用程序之间的接口。
如Telnet、HTTP、FTP等
OSI参考模型 主要 功能 设备 协议
应用层 为应用软件提供多种网络服务,例如万维网、文件传输、电子邮件与其它服务等,直接向用户提供服务,完成用户希望在网络上完成的各种工作。 网关,计算机 DHCP,DNS,FTP,Gopher,HTTP,IMAP4,IRC,NNTP, XMPP,POP3,SIP,SMTP, SNMP,SSH ,TELNET,RPC,RTCP,RTP ,RTSP,SDP ,SOAP,GTP,STUN,NTP,SSDP
表示层 处理两个通信的计算机系统的数据表示方式,完成数据的格式变换、加密与解密、压缩与恢复,对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层。 网关,计算机 HTTP/HTML;FTP;Telnet ;ASN.1
会话层 向两个实体的表示层提供建立和使用连接的方法。将不同实体之间的表示层的连接称为会话。它的任务就是组织和协调两个会话进程之间的通信,并对数据交换进行管理。 网关,计算机 ADSP,ASP,H.245,ISO-SP,iSNS,NetBIOS,PAP,RPC, RTCP,SMPP,SCP,SSH,ZIP,SDP
传输层 向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输;向高层屏蔽下层数据通信的细节,即向用户透明地传送报文。 路由器,交换机,防火墙,网关 TCP;UDP;SPX;TLS ;DCCP;SCTP ;RSVP; PPTP
网络层 实现路由选择、分组转发与拥塞控制等功能,为“分组”传输选择“最佳”的路由。 路由器(Router)、三层交换机 IP;IPX;ICMP;ICMPv6;IGMP;IS-IS;IPsec;BGP;RIP;OSPF;ARP;RARP
数据链路层 采用查出差错控制与流量控制方法,使得有差错的物理线路变成能够通讯的无差错的数据链路 网桥(Bridge)、交换机(Bridge) Wi-Fi(IEEE 802.11),WiMAX(IEEE 802.16),ATM,DTM,令牌环,以太网路,FDDI,帧中继,GPRS,EVDO,HSPA,HDLC,PPP,L2TP,ISDN,STP
物理层 利用传输介质实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异,为数据链路层提供服务。 DTE(数据终端设备) DCE(数据通信设备或电路连接设备) 以太网路卡,调制解调器,电力线通信(PLC),SONET/SDH(光同步数字传输网)G.709(光传输网络),光导纤维,同轴电缆,双绞线

由于OSI是一个理想的模型,因此一般网络系统只涉及其中的几层,很少有系统能够具有所有的7层,并完全遵循它的规定。
在7层模型中,每一层都提供一个特殊的网络功能。从网络功能的角度观察:下面4层(物理层、数据链路层、网络层和传输层)主要提供数据传输和交换功能,即以节点到节点之间的通信为主;第4层作为上下两部分的桥梁,是整个网络体系结构中最关键的部分;而上3层(会话层、表示层和应用层)则以提供用户与应用程序之间的信息和数据处理功能为主。简言之,下4层主要完成通信子网的功能,上3层主要完成资源子网的功能。

数据的封装和解封装

封装(Encapsulation):
数据要通过网络进行传输,要从高层一层一层的向下传送,如果一个主机要传送数据到别的主机,先把数据包装到一个特殊协议报头中,这个过程叫封装
解封装(De-capsulation):
解封装是指在某协议层中剥去数据包中与该层对应的信息头并将其剩余部分继续向更高的协议层传送。

封装:
传输层及其以下的机制由内核提供, 应用层由用户进程提供, 应用程序对通讯数据的含义进行解释, 而传输层及其以下处理通讯的细节,将数据从一台计算机通过一定的路径发送到另一台计算机。 应用层数据通过协议栈发到网络上时,每层协议都要加上一个相对应的头部(header ),称为封装( Encapsulation ),如下图所示:
在这里插入图片描述
解封装:
不 同 的 协 议 层 对 数 据 包 有 不 同的 称 谓 ,在 传 输 层 叫 做 段(segment ),在网络层叫做数据报( datagram) ,在链路层叫做帧(frame )。数据封装成帧后发到传输介质上,到达目的主机后,每层协议再剥掉相应的头部,最后将应用层数据交给应用程序处理。
在这里插入图片描述
举例说明数据封装和解封装过程

1)从 计算机A 的应用层内网通软件向 计算机B 发出一个消息,生成数据;
2)请求从计算机A的应用层下到 计算机A 的传输层,传输层在上层数据前面加上 tcp 报头,报头中包括目标端口以及源端口;
3)传输层数据下到网络层, 计算机A 在网络层封装,源 ip 地址为 计算机A地址,目标 ip 地址为 计算机B 地址;
4)计算机A 将 计算机B 的 ip 地址和子网掩码与自己做比对, 可以发现 计算机B与自己处于相同的子网。所以数据传输不必经过网关设备;
5)数据包下到 计算机A 的数据链路层进行封装,源 mac 地址为 计算机A的 mac 地址,目标 mac 地址查询自己的 arp 表;
6)计算机A 把帧转换成 bit 流,从物理接口网卡发出;
7)物理层接收到电信号,把它交给数据链路层进行查看帧的目标 mac 地址,和自己是否相等,如果相等说明该帧是发送给自己的,于是将mac帧头解开并接着上传到网络层;
8)网络层查看目标 ip 地址和自己是否匹配,如果匹配即解开ip头封装。然后再把数据上传到传输层;
9)传输层解开对应的包头之后,继续把数据传给应用层,计算机B即可接收到计算机A发的消息。

总结:数据向外发送时,数据是由最上面的应用层向下经过一层层封装后发送给物理层;而接收数据时,数据是由物理层向上经过一层层解封后发给应用层。
在这里插入图片描述

原创文章 22 获赞 14 访问量 1446

猜你喜欢

转载自blog.csdn.net/zjdda/article/details/105587226