先决条件: 计算机网络基础知识
OSI代表 开放系统互连 .它是由ISO开发的–’ 国际标准化组织 1984年。它是一个7层架构,每一层都有特定的功能来执行。所有这7层协同工作,将数据从一个人传输到全球的另一个人。
1.物理层(第1层):
OSI参考模型的最底层是物理层。它负责设备之间的实际物理连接。物理层包含以下形式的信息: 位。 它负责将单个比特从一个节点传输到下一个节点。当接收数据时,该层将接收到的信号转换成0和1,并将它们发送到数据链路层,数据链路层将把帧重新组合在一起。
物理层的功能包括:
- 位同步: 物理层通过提供时钟来提供位的同步。该时钟控制发送方和接收方,从而提供位级同步。
- 比特率控制: 物理层还定义了传输速率,即每秒发送的比特数。
- 物理拓扑: 物理层指定不同设备/节点在网络中的排列方式,即总线、星形或网状拓扑。
- 传输模式: 物理层还定义了数据在两个连接的设备之间流动的方式。可能的各种传输模式有单工、半双工和全双工。
*集线器、中继器、调制解调器、电缆都是物理层设备。 **网络层、数据链路层和物理层也称为 下层 或 硬件层 .
2.数据链路层(DLL)(第2层):
数据链路层负责消息的节点到节点传递。该层的主要功能是确保在物理层上从一个节点到另一个节点的数据传输是无错误的。当数据包到达网络时,DLL负责使用其MAC地址将其传输到主机。 数据链路层分为两个子层:
- 逻辑链路控制(LLC)
- 媒体访问控制(MAC)
根据NIC(网络接口卡)的帧大小,从网络层接收的数据包进一步划分为帧。DLL还将发送方和接收方的MAC地址封装在报头中。
通过将ARP(地址解析协议)请求放到线路上,询问“谁拥有该IP地址”,可以获得接收方的MAC地址目标主机将用其MAC地址回复。
数据链路层的功能包括:
- 框架: 帧是数据链路层的一个功能。它为发送方提供了一种传输对接收方有意义的比特集的方法。这可以通过在帧的开头和结尾附加特殊的位模式来实现。
- 物理寻址: 创建帧后,数据链路层在每个帧的报头中添加发送方和/或接收方的物理地址(MAC地址)。
- 错误控制: 数据链路层提供错误控制机制,在该机制中,它检测并重新传输损坏或丢失的帧。
- 流量控制: 两侧的数据速率必须保持恒定,否则数据可能会损坏。因此,流量控制会在接收确认之前协调可发送的数据量。
- 访问控制: 当单个通信信道由多个设备共享时,数据链路层的MAC子层有助于确定在给定时间哪个设备对该信道具有控制权。
*数据链路层中的数据包称为 框架 . **数据链路层由主机的NIC(网络接口卡)和设备驱动程序处理。 ***交换机和网桥是数据链路层设备。
3.网络层(第三层):
网络层用于将数据从一台主机传输到位于不同网络中的另一台主机。它还负责数据包路由,即根据可用的路由数选择传输数据包的最短路径。发送方和接收方的IP地址由网络层放置在报头中。 网络层的功能包括:
- 路由: 网络层协议确定从源到目的地的合适路由。网络层的这一功能称为路由。
- 逻辑寻址: 为了唯一地识别互联网上的每个设备,网络层定义了一个寻址方案。发送方和接收方的IP地址由网络层放置在报头中。这样的地址可以唯一且普遍地区分每个设备。
*片段 在网络层中被称为 小包裹 .
**网络层由路由器等网络设备实现。
4.传输层(第4层):
传输层向应用层提供服务,并从网络层获取服务。传输层中的数据称为 部分 .它负责完整信息的端到端传递。传输层还提供成功数据传输的确认,并在发现错误时重新传输数据。 •在发送方: 传输层从上层接收格式化数据,执行 分段 ,并实现 流量与差错控制 确保正确的数据传输。它还将源端口号和目标端口号添加到报头中,并将分段数据转发到网络层。 注: 发送方需要知道与接收方应用程序关联的端口号。 通常,默认情况下或手动配置此目标端口号。例如,当web应用程序向web服务器发出请求时,它通常使用端口号80,因为这是分配给web应用程序的默认端口。许多应用程序都分配了默认端口。 •在接收器侧: 传输层从其报头读取端口号,并将其接收到的数据转发给相应的应用程序。它还执行分段数据的排序和重组。
传输层的功能包括:
- 分段和重新组装: 该层接受来自(会话)层的消息,将消息分解为更小的单元。生成的每个片段都有一个与之关联的标题。目的站的传输层重新组装消息。
- 服务点寻址: 为了将消息传递到正确的进程,传输层报头包含一种称为服务点地址或端口地址的地址类型。因此,通过指定这个地址,传输层确保消息被传递到正确的进程。
传输层提供的服务:
- 面向连接的服务: 这是一个三阶段的过程,包括 –建立联系 –数据传输 –终止/断开 在这种类型的传输中,接收设备在接收到一个或一组数据包后向源发送确认。这种传输方式既可靠又安全。
- 无连接服务: 这是一个单阶段过程,包括数据传输。在这种类型的传输中,接收器不确认收到数据包。这种方法允许设备之间更快的通信。面向连接的服务比无连接的服务更可靠。
*传输层中的数据称为 部分 . **传输层由操作系统操作。它是操作系统的一部分,通过系统调用与应用层通信。 传输层称为 OSI的心脏 模型
5.会话层(第5层):
该层负责建立连接、维护会话、身份验证,并确保安全性。 会话层的功能包括:
- 会话建立、维护和终止: 该层允许两个进程建立、使用和终止连接。
- 同步: 这一层允许进程向数据中添加被认为是同步点的检查点。这些同步点有助于识别错误,以便正确地重新同步数据,并且不会过早地切断消息的结尾,避免数据丢失。
- 对话框控制器: 会话层允许两个系统以半双工或全双工方式开始相互通信。
**以下三层(包括会话层)在TCP/IP模型中集成为一个层,称为“应用层”。 **这三层的实现由网络应用程序本身完成。这些也被称为 上层 或 软件层 .
脚本: 让我们考虑一个场景,用户希望通过在浏览器中运行的一些信使应用程序发送消息。此处的“Messenger”充当应用程序层,为用户提供创建数据的界面。此消息或所谓的数据经过压缩、加密(如果有安全数据),并转换为位(0和1),以便传输。
6.表示层(第6层):
表示层也称为 翻译层 .应用层的数据在此提取,并按照要求的格式进行操作,以便通过网络传输。 表示层的功能包括:
- 翻译: 例如,ASCII到EBCDIC。
- 加密/解密: 数据加密将数据转换成另一种形式或代码。加密的数据称为密文,解密的数据称为纯文本。密钥值用于加密和解密数据。
- 压缩: 减少需要在网络上传输的比特数。
7.应用层(第7层):
在OSI参考模型的最顶层,我们找到了由网络应用程序实现的应用程序层。这些应用程序产生的数据必须通过网络传输。该层还充当应用程序服务访问网络和向用户显示接收到的信息的窗口。 例如:应用程序——浏览器、Skype Messenger等。 **应用层也称为桌面层。
应用层的功能包括:
- 网络虚拟终端
- FTAM文件传输访问和管理
- 邮件服务
- 目录服务
OSI模型作为一个参考模型,由于其发明较晚,没有在互联网上实现。当前使用的模型是TCP/IP模型。
本文由 昆达纳·蒂亚里 和 哈希塔·潘迪 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 写极客。组织 或者把你的文章寄去评论-team@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。
如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。