文章目录
三种分层结构
OSI 七层模型(Open Systems Interconnection Model)
OSI 模型是一个理论上标准的参考模型,将网络通信过程划分为七个层次,每层都有特定的功能:
- 第七层 - 应用层:提供用户接口,支持网络服务,如 HTTP、FTP、SMTP。
- 第六层 - 表示层:负责数据格式转换和加密/解密。
- 第五层 - 会话层:管理会话,控制对话的建立、维护和终止。
- 第四层 - 传输层:提供可靠的端到端通信,如 TCP、UDP 协议。
- 第三层 - 网络层:负责路径选择和路由,如 IP 协议。
- 第二层 - 数据链路层:将数据帧传输到相邻节点,如以太网、PPP。
- 第一层 - 物理层:涉及传输介质和信号,如光纤、电缆。
TCP/IP 四层模型
TCP/IP 模型是网络实际使用中最广泛采用的模型,由于其灵活性和实用性,常用于互联网和局域网。它分为以下四个层次:
- 应用层:结合了 OSI 模型的应用层、表示层和会话层的功能,支持应用程序,如 HTTP、SMTP、FTP。
- 传输层:对应 OSI 模型的传输层,提供端到端传输服务,如 TCP 和 UDP。
- 网络层 (或互联网层):负责路由和路径选择,与 OSI 模型的网络层功能相同,如 IP 协议。
- 网络接口层 (或数据链路层和物理层):实现数据帧传输和物理信号传输,结合了 OSI 模型的物理层和数据链路层功能。
混合模型
在实践中,网络结构可能会综合使用 OSI 模型和 TCP/IP 模型,形成混合模型,以更好地匹配实际需求。混合模型通常参考 OSI 的分层理念,但具体实现中更类似于 TCP/IP 模型的结构,包含以下层次:
- 应用层:类似于 TCP/IP 应用层,整合了 OSI 的应用、表示和会话层。
- 传输层:如 TCP 和 UDP,提供端到端的传输服务。
- 网络层:使用 IP 协议进行路由选择和转发。
- 链路层:处理数据帧传输。
- 物理层:负责信号传输和物理媒介。
各层之间的关系
- 上下层关系:每一层都提供特定的服务给其上一层,并从其下一层接收服务。比如,传输层为应用层提供端到端的传输服务,而自身依赖网络层提供的路由服务。
- 接口和协议:每层定义了接口和协议,接口描述了相邻层之间如何交互,而协议描述了同一层的不同设备之间如何通信。
- 功能分离:各层独立运行,便于系统更新和维护。例如,网络层可以升级路由协议而不影响应用层协议。
- 实体: 第n层实体
- 服务 : 下层为紧邻的上层提供的功能调用
PDU,SDU,PCI
PDU(Protocol Data Unit)
PDU,即协议数据单元,是网络通信中在每一层传递的数据包的总称。每一层的PDU定义了该层如何处理数据并向下传递。例如:
- 应用层:PDU通常被称为数据。
- 传输层:在TCP中,PDU称为段(segment),在UDP中称为数据报(datagram)。
- 网络层:PDU为数据包(packet)。
- 数据链路层:PDU为帧(frame)。
- 物理层:PDU为比特(bits)。
每一层通过封装和解封装PDU,将数据发送到下一层或从上一层接收数据。
SDU(Service Data Unit)
SDU,即服务数据单元,是指上层协议交给下层协议进行传输的数据。SDU在传递给下层后,会被下层封装,并附加控制信息形成新的PDU。例如:
- SDU在网络层:是来自传输层的数据。
- SDU在数据链路层:是来自网络层的包。
当SDU在传递过程中经过封装时,它会被附加上层协议所需的控制信息,形成一个完整的PDU。
PCI(Protocol Control Information)
PCI,即协议控制信息,是指在PDU中用于传输控制的额外信息。它通常包括首部或尾部,用于帮助协议的正常操作和数据管理,例如:
- TCP段首部:包括源端口、目的端口、序列号、确认号等信息。
- IP数据包首部:包含源IP地址、目的IP地址、协议版本等。
三者关系
当数据从高层向低层传递时:
- SDU(服务数据单元)是上层传递给下层的数据负载。
- 下层会添加PCI (协议控制信息),形成新的PDU(协议数据单元)。
- 该PDU被传递到下一层,重复上述过程,直到数据传输到物理层。
n-SDU+n-PCI=n-PDU=(n-1)SDU
示例
协议的三要素
协议三要素包括语法 、语义 和时序。
语法
语法是指数据格式和结构的规定,包括编码、信号电平、数据的排列方式等。
语义
语义定义了通信双方的控制信息和数据解释的意义。它描述了每个字段代表的含义,以及如何对这些信息进行解释和响应。
时序
时序是指事件发生的顺序及时间关系,包括数据的传输顺序、速度、超时重传和同步方法。例如,TCP的三次握手过程就涉及时序,通过协调数据的发送和确认,使通信双方同步连接状态。
OSI参考模型
物链网输会示用
应用层
应用层是OSI模型的最高层,直接面向用户和应用程序。它提供用户访问网络服务的接口,支持各种应用,如文件传输、电子邮件和网络浏览。常见的协议包括HTTP、FTP、SMTP、DNS等。应用层的主要功能是确定通信对象、数据传输同步以及数据格式化。
表示层
表示层负责数据的语法和语义的转换,确保应用层的数据能够被网络中的其他系统理解。此层提供数据格式转换、数据加密和解密、数据压缩等服务
会话层
会话层负责建立、管理和终止通信会话。它控制通信双方之间的对话,使数据能够有序和同步地传输。会话层还可以插入检查点,使通信在中断后能够恢复。
传输层
传输层提供端到端 的可靠数据传输服务,确保数据从发送端传输到接收端。确保复用和分用
它主要使用两种协议:面向连接的传输控制协议(TCP)和无连接的用户数据报协议(UDP)。传输层还负责流量控制、差错检测和恢复,确保数据按正确顺序传递。
网络层
网络层负责数据包的路径选择和路由。它根据网络拓扑和拥塞情况选择最佳路径,将数据从源节点传输到目标节点。网络层的主要协议是IP协议,该协议为每个网络设备分配唯一的IP地址,以实现数据包的转发和路由。
数据链路层
数据链路层确保物理链路上的数据传输可靠。它将来自网络层的数据封装成帧,并在同一局域网内传输数据帧。该层负责差错检测与纠正、流量控制以及介质访问控制(MAC)。以太网和PPP是常见的数据链路层协议。
物理层
物理层是OSI模型的最底层,定义了物理连接的电气、光学、机械和功能特性,如电缆类型、信号传输速率、接口的引脚排列等。物理层负责将数据比特转换为电信号或光信号,并通过传输介质传输,例如以太网电缆、光纤和无线信道。
TCP/IP模型
巧记:接网输用
会话层和表示层不是必须的。
应用层
应用层是TCP/IP模型的最高层,直接为用户和应用程序提供网络服务。它结合了OSI模型的应用层、表示层和会话层的功能。常见的应用层协议包括:
- HTTP:用于网页浏览,支持Web应用的数据传输。
- FTP:用于文件传输,提供文件上传和下载服务。
- SMTP:用于电子邮件的发送和接收。
- DNS:用于将域名解析为IP地址。
应用层的职责是为应用程序提供接口和数据格式化服务,使其可以通过网络进行通信。
传输层
传输层负责数据在源端和目的端之间的传输控制和可靠性保障。它有两个主要的协议:
- TCP(Transmission Control Protocol):提供面向连接的、可靠的数据传输服务。它通过三次握手建立连接,并支持数据的分段、重组、流量控制和错误检测。
- UDP(User Datagram Protocol):提供无连接的、不保证可靠传输的服务,适用于对实时性要求高、但对数据完整性要求较低的应用,如视频流和在线游戏。
传输层主要解决端到端的通信问题,保证数据包的有序传输和数据完整性。
网络层(互联网层)
网络层负责数据包的路径选择和路由,确保数据能够通过不同的网络中继设备到达目的地。该层的核心协议是:
- IP(Internet Protocol):负责数据包的寻址和转发。IP协议有两个版本:IPv4和IPv6,分别用于32位和128位地址空间。
- ICMP(Internet Control Message Protocol):用于网络设备之间发送错误报告和诊断信息,例如ping命令。
- ARP(Address Resolution Protocol):将网络层的IP地址转换为数据链路层的MAC地址。
网络层的主要功能是提供跨网络的无连接数据传输和路由选择。
网络接口层(数据链路层和物理层)
网络接口层是TCP/IP模型的最低层,负责处理实际的数据传输。它涵盖了OSI模型中的数据链路层和物理层。只要网络层能用就行,实现功能进行扩展和创新。该层涉及的技术包括:
- 以太网:局域网的标准协议,提供数据帧封装和传输。
- PPP(Point-to-Point Protocol):用于点对点的通信。
- Wi-Fi :无线局域网协议,支持无线数据传输。