当前位置: 首页 > news >正文

计算机网络之---OSI七层模型

为什么会有七层模型

OSI七层模型的出现源于计算机网络技术的发展需求,主要解决以下几个问题:

  1. 标准化与互操作性
    随着计算机网络的快速发展,不同厂商、不同技术之间的设备和系统需要能够无缝通信。而不同厂商在网络硬件、软件、协议等方面存在差异,导致不同系统之间的互操作性问题。OSI七层模型提供了一个统一的框架,确保不同设备和系统可以按照标准化的方式进行通信和互操作。

  2. 简化网络设计与管理
    在没有明确分层的情况下,网络协议和技术的发展会变得越来越复杂。将网络通信过程分为不同的层次,每一层独立负责特定的任务,简化了设计和开发过程。每一层的功能都可以独立发展和更新,互不干扰,提高了灵活性和可维护性。

  3. 层次化的故障排除与问题定位
    分层的模型使得网络故障排除变得更加清晰和系统化。在网络发生问题时,可以通过逐层排查,确定是物理层、传输层、应用层等哪一层出现问题,从而快速定位并解决问题。

  4. 促进技术和协议的独立发展
    OSI七层模型允许不同层次的技术和协议独立发展和演化。例如,物理层可以根据不同的物理介质(如光纤、铜线、无线等)设计,而不需要影响上层的协议。传输层可以独立设计,如TCP和UDP的区别。这样的分层设计提高了协议的灵活性和可扩展性。

  5. 提高网络通信的兼容性
    OSI模型让不同网络协议和技术能够通过标准化接口和方法互相兼容。例如,基于不同协议的应用程序能够通过标准接口与网络通信,应用层协议(如HTTP)与传输层协议(如TCP)可以通过标准化的方式进行交互,而无需关心底层实现细节。

七层模型都是什么

1. 物理层(Physical Layer)

物理层负责数据在物理介质上的传输。它定义了设备之间的电气、机械、流程和功能特性。其主要任务是将比特流(0和1)从发送端传输到接收端。

主要内容:
  • 电气特性:例如电压、电流、信号的频率等。
  • 物理介质:如双绞线、光纤、电缆、无线电波等。
  • 连接器和接口:如RJ-45接口、USB接口、光纤接口等。
  • 传输速率:数据传输的速率,例如100Mbps、1Gbps等。
协议与标准:
  • Ethernet(以太网)
  • IEEE 802.3
  • Wi-Fi(无线局域网)

2. 数据链路层(Data Link Layer)

数据链路层负责将物理层传输过来的原始比特流打包成数据帧,并通过链路的可靠传输来确保数据正确传递。它还负责错误检测和纠正、帧同步、流量控制等。

主要内容:
  • 帧的构建与解构:将数据包封装成帧,包含源地址、目的地址、校验信息等。
  • 错误检测与纠正:例如通过校验和(CRC)检测和纠正传输中的错误。
  • 访问控制:确保多个设备在共享媒介上能够有序地发送数据,例如Ethernet中的CSMA/CD(载波侦听多路访问/碰撞检测)。
协议与标准:
  • Ethernet(以太网)
  • PPP(点对点协议)
  • HDLC(高级数据链路控制)
  • ATM(异步传输模式)

3. 网络层(Network Layer)

网络层负责在不同网络之间进行数据包转发,提供逻辑地址(如IP地址)与路由功能。它确保数据能够从源设备传输到目标设备,可能经过多个中转节点(如路由器)。

主要内容:
  • 路由选择:选择数据传输的最佳路径,使用路由算法进行路径选择。
  • IP地址分配与寻址:每个设备需要一个唯一的IP地址,网络层通过IP地址来识别和定位设备。
  • 数据包分段与重组:如果数据包过大,网络层会进行分段,接收端则会进行重组。
协议与标准:
  • IP(互联网协议)
  • ICMP(Internet Control Message Protocol)
  • ARP(Address Resolution Protocol)
  • RIP、OSPF、BGP(路由协议)

4. 传输层(Transport Layer)

传输层负责提供端到端的通信,确保数据的可靠传输。它处理数据的流量控制、错误检测与重传等问题,确保应用层的数据完整性和顺序。

主要内容:
  • 端到端的通信:从源设备到目标设备的通信,确保两个应用程序之间的数据交换可靠、顺序。
  • 流量控制:控制数据的传输速率,避免网络拥堵。
  • 错误检测与纠正:通过校验和等技术确保数据的完整性。
  • 连接管理:如连接的建立、维护和断开。
协议与标准:
  • TCP(Transmission Control Protocol):面向连接、可靠的数据传输协议。
  • UDP(User Datagram Protocol):无连接、不可靠的传输协议,适用于实时应用。

5. 会话层(Session Layer)

会话层负责建立、管理和终止会话(通信会话)。它控制对话的开始、持续和结束。该层还负责数据的同步、恢复等功能。

主要内容:
  • 会话管理:如建立、管理和终止会话连接。
  • 对话控制:全双工、半双工或单工通信的控制。
  • 数据同步:确保数据交换的顺利进行,适时恢复会话中的断开部分。
协议与标准:
  • NetBIOS(网络基本输入输出系统)
  • RPC(远程过程调用)
  • SMB(服务器消息块)

6. 表示层(Presentation Layer)

表示层负责数据格式的转换和加密、解密。它确保应用层的数据以标准化的方式进行传输,处理不同计算机间数据表示的兼容问题。

主要内容:
  • 数据格式转换:如ASCII与EBCDIC之间的转换、图像格式转换(JPEG、PNG、GIF等)。
  • 数据压缩:减少数据传输的大小。
  • 加密与解密:提供数据加密和解密功能,以保障数据传输的安全性。
协议与标准:
  • SSL/TLS(安全套接字层/传输层安全协议)
  • JPEG、GIF、PNG(图像格式)
  • MPEG(视频格式)

7. 应用层(Application Layer)

应用层是OSI模型的最上层,负责为用户提供网络服务和应用程序接口。它直接与用户的应用程序交互,提供各种服务,如文件传输、电子邮件、网页浏览等。

主要内容:
  • 用户接口:应用程序与用户交互的界面。
  • 协议服务:提供特定应用所需的协议支持,如HTTP、FTP、SMTP等。
  • 数据处理与展示:将传输的数据处理成用户可理解的形式。
协议与标准:
  • HTTP(超文本传输协议)
  • FTP(文件传输协议)
  • SMTP(简单邮件传输协议)
  • DNS(域名系统)

http://www.lryc.cn/news/518844.html

相关文章:

  • mysql的mvcc理解
  • leetcode 面试经典 150 题:两数之和
  • nexus搭建maven私服
  • 理解 Tomcat 架构
  • python3GUI--大屏可视化-传染病督导平台 By:PyQt5
  • 如何选择适合的证件照制作软件,让您的照片制作更轻松
  • 工作效率提升:使用Anaconda Prompt 创建虚拟环境总结
  • Python自动化实战 —— 使用Selenium进行Web自动化
  • 【前端】【HTML】入门基础知识
  • PHP获取局域网ip(192.168)
  • 点击底部的 tabBar 属于 wx.switchTab 跳转方式,目标页面的 onLoad 不会触发(除非是第一次加载)
  • 基于PLC的酒店热水供应控制系统设计
  • 博客内所有项目均可在面包多平台进行购买
  • 《Mcal》--MCU模块
  • C语言:枚举类型
  • spring boot 多数据源集成mysql、postgresql、phoenix、doris等
  • USB基础 -- USB 控制传输(Control Transfer)的重传机制
  • 云计算基础,虚拟化原理
  • 浮点数在C语言开发中为什么不精确?
  • ChatGPT网络错误如何解决
  • Vue3初学之插槽(slot)使用
  • 使用PVE快速创建虚拟机集群并搭建docker环境
  • 带格式 pdf 翻译
  • 【C++】C++11(一)
  • 初学stm32 --- ADC单通道采集
  • 【动态规划篇】欣赏概率论与镜像法融合下,别出心裁探索解答括号序列问题
  • Java(day7)
  • Word 转成pdf及打印的开源方案支持xp
  • LabVIEW软件侵权分析与应对
  • 【redis】centos7下安装redis7