OSI七层参考模型

OSI七层参考模型:

上三层–对数据进行加工处理(数据流层)

  • 应用层:

​ 把抽象语言转化为编码,是人机交互的接口,面向应用程序

  • 表示层:

​ 把逻辑语言转化为二进制

  • 会话层:

​ 在上三层对数据进行隔离,建立虚拟连接。作用:发现链接,建立链接,维持链接,终止链接。

下四层–对数据进行传输(传输流层)

  • 传输层:

​ 作用:(分段,可靠传输TCP,端口号)

1.对数据进行分段处理

2.通过端口号区分不同服务,实行端到端传输

3.提供可靠传输(TCP:保证可靠性的机制是重传输,确认)

tcp的三次握手进行同步请求原因:
1.请求对方端口是开放的 2.对方请求自己端口也是开放的。

tcp进行三次握手的原因:
保证面向连接。

  • 网络层:

​ 进行编址、寻址

  • 数据链路层:

​ 提供介质访问控制,依据不同物理介质进行二层封装。(控制物理层)

  • 物理层

UDP:

非面向连接的不可靠型传输协议(用户报文协议)

仅完成传输层基本功能:分段和端口号区分不同服务

TCP:

面向连接的可靠型传输协议(传输控制协议)

完成传输层基本功能还需要保证传输的可靠性。

在传输数据前首先要通过三次握手建立端到端的虚链路。


OSI模型与TCP/IP模型的区别:

  1. 层数不同:osi7层,tcp/ip4层
  2. 支持协议不同:osi支持所有协议,tcp/ip仅支持ip协议
  3. 封装类型:osi必须具有完整的封装,tcp/ip支持跨层封装

跨层封装可以减少程序开发量,便于纠错,同时可以被设备更快的封装和解封装。

### OSI七层参考模型的功能及作用 #### 1. 物理 (Physical Layer) 物理负责定义硬件设备之间的电气、机械、过程和功能特性,用于建立、维护和释放物理链路。它主要关注比特流的传输以及信号的形式和参数。其核心功能包括电压电平、线缆规格、持续时间等具体细节[^1]。 ```c // 示例:设置波特率 void setBaudRate(int baud_rate); ``` #### 2. 数据链路 (Data Link Layer) 数据链路提供节点之间可靠的数据传输机制,并管理错误检测与纠正。此还执行帧同步、访问控制等功能。MAC地址在此被使用来唯一标识网络中的设备[^3]。 #### 3. 网络 (Network Layer) 网络决定如何将数据包从源发送至目标,涉及路由选择算法的选择路径决策。IP寻址发生在这一,确保数据能够跨越不同子网传递给最终目的地。 ```python def route_packet(packet, destination_ip): # 路由逻辑 pass ``` #### 4. 传输 (Transport Layer) 作为中间桥梁,传输提供了端到端通信的服务质量保障,比如通过序列号确认消息已接收并请求重新发送丢失部分。TCP协议属于此类别,在这里实现了全双工模式下的可靠交付。 #### 5. 会话 (Session Layer) 会话允许应用程序在不同的机器上创建、管理和终止对话(称为会话)。它可以协调多进程间的交互顺序,中断或恢复特定操作。 #### 6. 表示 (Presentation Layer) 表示解决用户信息格式化问题,如加密解密、压缩解压等转换任务都在此处完成,从而使得来自不同系统的数据可以互相理解。 #### 7. 应用 (Application Layer) 最高级别的应用直接面向用户提供所需的各种服务接口,例如文件传输(FTP)、电子邮件(SMTP),还有Web浏览(HTTP)。 ```javascript function sendEmail(recipient, subject, body){ // 实现邮件发送逻辑 } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值