博客
关于我
ISO七层网络模型
阅读量:393 次
发布时间:2019-03-05

本文共 1523 字,大约阅读时间需要 5 分钟。

OSI七层模型与网络通信

1984年,ISO组织发布了OSI Open System Interconnection(开放系统互联)标准,为全球的网络通信提供了统一的架构框架。这一标准通过七层分明的协议栈,确保了不同系统、设备和应用之间能够互联互通,实现兼容性。

OSI七层结构详解

OSI七层模型将网络通信分为七个明确的层次,每一层负责特定的功能,确保数据能够按照预期的方式传输和处理。以下是各层的详细说明:

  • 应用层(Application Layer):定义了网络应用程序之间的通信接口。常见协议包括HTTP、HTTPS、FTP、SSH、SMTP、POP3、MySQL、Telnet等。应用层主要负责不同应用程序之间的数据交互,确保软件系统能够高效通信。
  • 表示层(Presentation Layer):处理数据格式的转换、编码和解码,确保不同系统之间数据的互通。例如,UTF-8编码在表示层发挥重要作用,用于确保数据的正确传输和解析。
  • 会话层(Session Layer):管理主机之间的会话通信,维护连接的状态。每个会话可以独立处理,会话层负责开始、维护和结束会话,确保数据传输的连续性和可靠性。
  • 传输层(Transport Layer):定义了数据传输的控制机制,主要使用TCP和UDP协议。传输层通过封装TCP/UDP包头,确保数据块的传输可靠性,实现数据的完整性和顺序性。
  • 网络层(Network Layer):负责数据包的路由和网络寻址,使用IP协议进行跨网络通信。网络层通过路由功能将数据包从一个网络传递到另一个网络,确保数据能够到达目标地址。
  • 数据链路层(Data Link Layer):定义了网络设备之间的通信规则,使用MAC地址进行设备识别。数据链路层处理数据帧的传输,确保链路层设备之间的通信顺利进行。
  • 物理层(Physical Layer):规定了物理设备的电气特性和连接规格,包括网线、连接器和信号传输方式。物理层负责将数字信号转换为物理介质,并在另一端恢复信号,确保数据传输的物理可靠性。

TCP/IP协议栈与OSI模型的关系

TCP/IP协议栈虽然没有明确的层次划分,但实际上可以看作是OSI模型的一种简化版本,主要包含四层:

  • 网络接口层(Network Interface):相当于OSI的数据链路层和物理层,负责数据帧的传输和物理介质的通信。
  • 网络层(Internet Layer):相当于OSI的网络层,使用IP协议进行路由和网络地址管理。
  • 传输层(Transport Layer):使用TCP和UDP协议,相当于OSI的传输层,负责数据块的传输和可靠性。
  • 应用层(Application Layer):提供上层网络服务,包括HTTP、FTP、DNS等协议,相当于OSI的应用层。

OSI通信工作原理

OSI七层模型的通信过程遵循以下步骤:

1. 数据在应用层生成后,逐层向下包装,添加相应的协议数据单元(PDU),直到到达物理层。

2. 物理层将数据转换为二进制信号并传输到目标主机。

3. 目标主机的物理层接收数据后,逐层拆解PDU,恢复原始数据。

协议数据单元(PDU)

每一层都定义了自己的PDU名称和作用:

  • 物理层(Physical Layer):使用位(bit)表示数据。
  • 数据链路层(Data Link Layer):使用帧(frame)表示数据。
  • 网络层(Network Layer):使用包(packet)表示数据。
  • 传输层(Transport Layer):使用段(segment)表示数据。
  • 高层(Higher Layer Protocols):使用消息(message)表示数据。

转载地址:http://qhkzz.baihongyu.com/

你可能感兴趣的文章
Python3-selenium自动化测试框架,结合HTMLTestRunner测试报告!
查看>>
Python3-如何自我更新作为服务运行的应用程序
查看>>
Python3.1-网格模拟概念性问题
查看>>
Python3.12 解决conda环境libstdc++版本过低问题
查看>>
python3.2批量查询IP地址区域
查看>>
Python3.5中协程和未来/任务之间的区别?
查看>>
python3.5实现socket通讯(TCP)
查看>>
python3.6 ubuntu部署nginx、 uwsgi、 django
查看>>
Python3.6.3中,functools似乎不能用
查看>>
python3.6.5+cuda9+cudnn7.1+win10+tensorflow-gpu1.9.0下载配置
查看>>
python3.6使用pickle序列化class
查看>>
python3.6入门到高阶(全栈) day027 网络通信协议 osi七层模型
查看>>
Python3.6属性错误:模块‘;异步没有属性‘;运行‘;
查看>>
python3.6版本中的python-weka-wrapper安装失败,错误代码为%1
查看>>
Python3.7安装cv2踩过的坑
查看>>
python写txt文件
查看>>
python关于sorted排序函数详细解析 附实战代码(全)
查看>>
python3.8调用m文件,调用matlab
查看>>
python3.9新特性_Python 3.9 新特性速览
查看>>
Python3.x:遍历select下拉框获取value值
查看>>