OSI 七层模型
是什么
OSI (Open System Interconnect)模型,全称为开放式通信系统互连参考模型,
是国际标准化组织 ( ISO ) 提出的一个试图使各种计算机在世界范围内互连为网络的标准框架
OSI将计算机网络体系结构划分为七层。
每一层实现各自的功能和协议,并完成与相邻层的接口通信。
即每一层扮演固定的角色,互不打扰
与TCP/IP 四层模型的关系
OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。
OSI是一种理论模型,而TCP/IP已被广泛使用,成为网络互联事实上的标准。
| OSI七层网络模型 | TCP/IP四层概念模型 | 对应网络协议 |
|---|---|---|
| 应用层(Application) | 应用层 | HTTP、TFTP, FTP, NFS, WAIS、SMTP |
| 表示层(Presentation) | Telnet, Rlogin, SNMP, Gopher | |
| 会话层(Session) | SMTP, DNS | |
| 传输层(Transport) | 传输层 | TCP, UDP |
| 网络层(Network) | 网络层 | IP, ICMP, ARP, RARP, AKP, UUCP |
| 数据链路层(Data Link) | 网络接口层 | FDDI, Ethernet, Arpanet, PDN, SLIP, PPP |
| 物理层 (Physical) | IEEE 802.1A, IEEE 802.2到IEEE 802.11 |
tips:
网络接口层
IP地址与物理地址硬件的映射,以及将IP封装成帧。基于不同硬件类型的网络接口,网络访问层定义了和物理介质的连接。
各层作用
应用层
通过应用程序间的交互,来完成网络功能
在应用层交互的数据单元,称为报文
表示层
数据格式化,数据压缩,数据加密解密
使应用程序不必担心在各台计算机中表示和存储的内部格式差异
会话层
建立、管理和终止表示层实体之间的通信会话
传输层
为两台主机进程之间的通信提供服务,
处理数据包错误、数据包次序,以及其他传输问题
其中,主要的传输层协议是TCP和UDP
网络层
选择合适的路由和交换节点,确保数据按时成功传送
数据链路层
在物理层和网络层之间。
数据链路层将网络层交下来的 IP数据报组装成帧,在两个相邻节点间的链路上传送帧
每一帧的数据可以分成:报头head和数据data两部分:
head 标明数据发送者、接受者、数据类型,如 MAC地址
data 存储了计算机之间交互的数据
物理层
实现计算机节点之间比特流的透明传送
该层主要是和硬件有关,与软件关系不大
UDP (User Datagram Protocol,用户数据报协议)
UDP是一个简单的面向数据报的通信协议,即对应用层
- 不保证消息交付
丢包不重发 - 不保证交付顺序
乱序不重排 - 不跟踪连接状态
面向无连接的通信服务 - 不需要拥塞控制
网络拥塞不控制
TCP(Transmission Control Protocol,传输控制协议)
是一种可靠、面向字节流的通信协议,
把上面应用层交下来的数据看成无结构的字节流来发送
可以想象成流水形式的,发送方TCP会将数据放入缓存区,等到可以发送的时候就发送,不能发送就等着,
TCP会根据当前网络的拥塞状态来确定每个报文段的大小
TCP 与 UDP 区别总结
| TCP | UDP | |
|---|---|---|
| 可靠性 | 可靠 | 不可靠 |
| 连接性 | 面向连接 | 无连接 |
| 报文 | 面向字节流 | 面向报文 |
| 效率 | 效率低 | 效率高 |
| 流量控制 | 滑动窗口 | 无 |
| 拥塞控制 | 慢开始、拥塞避免、快重传、快恢复 | 无 |
| 传输效率 | 慢 | 快 |
应用场景
TCP 应用场景适用于对效率要求低,对准确性要求高或者要求有链接的场景,(http,ftp文件传输,telnet远程终端接入)
而UDP 适用场景为对效率要求高,对准确性要求低的场景 (DNS域名转换)
- 本文作者:JSZ
- 本文链接:blog.vampuck.com/2022/04/01/osi/index.html
- 版权声明:本博客所有文章均采用 BY-NC-SA 许可协议,转载请注明出处!