计算机网络:计算机网络体系结构 —— OSI 模型 与 TCP/IP 模型

计算机网络体系结构

计算机网络体系结构是指将计算机网络分为不同的层次和功能模块,以实现可靠的数据传输和通信的架构模型。

由于计算机网络从底层的传输到高层的软件设计十分复杂,要合理地设计计算机网络模型,必须采用分层模型,每一层负责处理自己的操作。

OSI 参考模型

OSI(Open System Interconnect)网络模型是 ISO 组织定义的一个计算机互联的标准模型。它只是一个定义,目的是为了简化网络各层的操作,提供标准接口便于实现和维护。

这个模型从底层到高层依次是:

  1. 物理层(Physical Layer):该层负责传输原始的比特数据流,以及定义传输介质和物理连接的电气特性,如电压、数据传输速率等。

  2. 数据链路层(Data Link Layer):该层负责将数据分割成帧,进行错误检测和纠正,并确保数据在物理介质上的可靠传输。它还处理数据包的寻址和传输控制。

  3. 网络层(Network Layer):该层负责在网络中实现数据包的路由和转发。根据目标地址选择路由来传输数据,确定最佳路径,并能够处理跨越不同网络的数据传输。

  4. 传输层(Transport Layer):该层提供端到端的可靠数据传输服务,确保数据的完整性、排序和可靠性。常见的传输层协议有 TCP(传输控制协议)和 UDP(用户数据报协议)。

  5. 会话层(Session Layer):该层负责建立、管理和终止通信会话,以实现不同计算机之间的交互。

  6. 表示层(Presentation Layer):该层负责数据格式的表示和转换,以确保不同系统之间的数据可以正确解释和处理。常见的任务包括数据加解密、数据压缩和数据格式转换。

  7. 应用层(Application Layer):该层是用户和应用程序直接接触的层,它提供了不同应用程序之间交换数据所需的服务和协议。常见的应用层协议有 HTTP(超文本传输协议)、SMTP(简单邮件传输协议)等。

![[OSI Reference Model.png]]

### OSI参考模型概述 OSI(Open Systems Interconnection)参考模型是一种理论化的网络架构设计框架,用于描述计算机网络中不同层次的功能和交互方式。该模型分为七个独立的层次,每一层都有明确的功能和服务定义[^1]。 #### 结构 OSI参考模型按照自底向上的顺序划分为以下七层: 1. **物理层 (Layer 1)** 物理层负责建立、维护和终止设备间的物理连接。它将二进制数据流转换为电信号或其他形式的信号以便在网络介质上传输。典型设备包括网卡、网线、光纤、集线器和中继器等[^4]。 2. **数据链路层 (Layer 2)** 数据链路层的主要职责是建立逻辑连接、执行硬件地址寻址以及检测和纠正传输过程中发生的错误。这一层还涉及帧同步机制,并通过MAC地址来唯一标识每张网卡。常见设备有交换机和网桥[^4]。 3. **网络层 (Layer 3)** 网络层的核心任务是对数据包进行路由选择,从而实现跨多个网络的数据传递。此层引入了IP地址的概念来进行节点定位,并支持分组转发功能。路由器是最典型的第三层设备[^4]。 4. **传输层 (Layer 4)** 传输层提供了可靠的端到端通信服务,确保消息能够无误地从发送方到达接收方。具体操作包括分割高层数据形成段落、附加源目标端口号标记、实施流量控制及差错检验等。TCP和UDP协议分别代表面向连接和非连接类型的传输方法[^4]。 5. **会话层 (Layer 5)** 会话层管理应用程序之间的对话流程,例如创建、维持和结束会话链接。此外,它可以协调双方的操作状态,在必要时中断或恢复通讯过程。实例应用像远程登录系统SSH或者即时通讯工具QQ均依赖于本层的支持[^4]。 6. **表示层 (Layer 6)** 表示层关注如何表达信息内容的形式标准化问题,比如字符编码、数据压缩算法的选择以及加密解密手段的应用等方面的工作都在这里完成。这使得来自不同类型平台的信息可以互相理解[^3]。 7. **应用层 (Layer 7)** 应用层直接面对最终用户的各类需求,提供广泛的业务接口和支持环境。常见的互联网协议如HTTP/HTTPS, FTP, SMTP, DNS等等皆位于第七层之上运行[^4]。 #### 功能 每个层次实现了特定范围内的功能性要求,并向上一层交付相应的服务能力。这种模块化的设计理念有助于简化复杂的整体解决方案分解成若干相对简单的部分加以解决[^3]。 #### 应用 尽管OSI模型本身并不强制规定具体的实现细节,但它作为一个通用的标准框架被广泛应用于评估现有技术和指导新开发项目之中。实际上很多现代网络协议并非严格遵循OSI七层划分法而是有所调整优化后的版本,比如著名的TCP/IP四层体系结构就融合了一些原本分开考虑的因素以提高效率降低复杂度[^2]。 ```python # 示例代码展示了一个简单模拟OSI模型各层工作的Python脚本片段 class Layer: def __init__(self,name): self.name = name def process(self,data): print(f"{self.name} processing {data}") def osi_simulation(data): layers = [ Layer('Physical'), Layer('Data Link'), Layer('Network'), Layer('Transport'), Layer('Session'), Layer('Presentation'), Layer('Application') ] for layer in reversed(layers): # 自顶向下封装数据 data = f"<{layer.name}>{data}</{layer.name}>" processed_data = "" for layer in layers: # 自底向上解析数据 layer.process(processed_data) start_tag = f"<{layer.name}>" end_tag = f"</{layer.name}>" if processed_data.startswith(start_tag) and processed_data.endswith(end_tag): processed_data = processed_data[len(start_tag):-len(end_tag)] if __name__ == "__main__": initial_payload="Hello World!" osi_simulation(initial_payload) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值