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

OSI七层模型和TCP/IP五层模型详细介绍

这里写目录标题

  • 一.OSI含义
  • 二.OSI七层模型
    • 1.应用层
    • 2.表示层
    • 3.会话层
    • 4.传输层
    • 5.网络层
    • 6.数据链路层
    • 7.物理层
  • TCP/IP五层协议
    • 1.应用层
    • 2.运输层
      • 运行在TCP上的协议
      • 运行在UDP上的协议
    • 3.网络层
      • IP协议配套使用的协议
    • 4.数据链路层
  • 四.网络协议分层的好处

一.OSI含义

OSI即是开放式通信互联参考模型,是国际标准化组织提出的一个网络标准框架

二.OSI七层模型

在这里插入图片描述

1.应用层

为用户提供各种请求服务,以及提供各种应用程序和网服务的接口
常见协议有http,https,FTP,SMTP

2.表示层

数据编码,格式转换,数据加密和压缩,提供各种编码和转换功能,确保另一个系统的应用层可以识别。

3.会话层

  • 创建,管理和维持会话,接受来自传输层的数据,负责建立,管理,终止表示层通信会话,支持数据交换

4.传输层

数据通信,建立主机端到端的链接,为会话层和网络层提供端到端的可靠和透明的数据传输,确保数据传输到网络层

5.网络层

  • IP选址以及路由选择,通过路由选择算法,为报文和通信子网选择最适当路径。控制链路与传输层之间的信息转发,建立,和终止网络连接。
  • 数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备。
  • 网络层负责把一个数据从一个网络传递到另外一个网络,最大的功能就是进行路由决策,比如通过 IP,子网等概念,使数据更好着在不同的局域网中传递
  • 传输层的功能就是建立端口到端口的通信,刚才说的网络层的功能则是建立主机到主机的通信,比如通过网络层我们可以把信息从 A 主机传递到 B 主机,但是 B 主机有多个程序,我们具体要发给哪个程序,则是靠传输层的协议来识别,常见协议有 UDP 和 TCP。

6.数据链路层

  • 提供介质访问和链路管理。接受来自物理层的位流形式的数据,封装成帧,传输到网络层;将网络层的数据帧,拆装为位流发送到物理层。
  • 负责建立和管理节点间的链路,通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。
  • 链路层涉及到的协议比较多,比如 Mac 地址啊,ARP 等,这一层主要就是负责数据的通信,使各节点之间可以通信,比如通过 MAC 地址唯一识别不同的节点,通过以太网协议定义数据包等

7.物理层

  • 管理通信设备和网络媒体之间的互联互通。传输介质为数据链路层提供物理连接,实现比特流的透明传输。实现相邻计算机节点之间比特流的透明传送,屏蔽具体传输介质和物理设备的差异。
  • 负责把两台计算机连起来,然后在计算机之间通过高低电频来传送0,1这样的电信号,比如通过一些电缆线传输比特流
  • 在这里插入图片描述

TCP/IP五层协议

在这里插入图片描述

1.应用层

涉及到的协议

  • 域名系统DNS:将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的 IP 数串。
  • 邮件传输协议:SMTP
  • HTTP协议:超文本传输协议,所有的万维网文件都必须遵守这个标准。设计 HTTP 最初的目的是为了提供一种发布和接收 HTML 页面的方法。

2.运输层

作用:

  • 提供端到端的服务
  • 流量控制:防止过载,即过多的数据注入到网络中
  • 拥塞控制:抑制数据传输的速率

运行在TCP上的协议

  • HTTP(Hypertext Transfer Protocol,超文本传输协议)Web服务器传输超文本到本地浏览器的传送协议。端口:80
  • HTTPS(HTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。端口:443
  • FTP(File Transfer Protocol,文件传输协议),用于文件传输。端口:21
  • SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),用来发送电子邮件。端口:25
  • SSH(Secure Shell,用于替代安全性差的TELNET),用于加密安全登陆用

运行在UDP上的协议

  • DNS(Domain Name Service,域名服务),用于完成地址查找,邮件转发等工作。
  • SNMP(Simple Network Management Protocol,简单网络管理协议),用于网络信息的收集和网络管理。
  • NTP(Network Time Protocol,网络时间协议),用于网络同步。
  • DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),动态配置IP地址。

3.网络层

通过IP寻址来建立两个节点之间的连接,之后把运输层产生的报文段或用户数据报封装成分组和包进行传送,在发送分组时不需要先建立连接,每一个分组独立发送,与其前后的分组无关。在这个过程中网络层不提供端到端的可靠传输服务,尽最大努力进行交付(由网络的主机中的运输层负责可靠交付)。

IP协议配套使用的协议

地址解析协议 ARP (Address Resolution Protocol)
网际控制报文协议 ICMP (Internet Control Message Protocol)
网际组管理协议 IGMP (Internet Group Management Protocol)

4.数据链路层

两台设备之间的数据传输,可以看成是在一条管道上进行的,传送的数据单位是帧(每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)),链路层保证被传输数据的正确性
在这里插入图片描述

  • 封装成帧 :就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧,首部和尾部的一个重要作用就是进行帧定界。
  • 透明传输:在数据传输过程中,如果数据中的某个字节的二进制代码恰好和 SOH 或 EOT 一样,数据链路层就会错误地“找到帧的边界”从而导致这些数据都能够按照原样没有差错地通过这个数据链路层。解决透明传输问题:字符填充 (插入转义字符)
  • 差错检测:在传输过程中可能会产生比特差错:1 可能会变成 0, 而 0 也可能变成 1。在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate),误码率与信噪比有很大的关系,为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施,在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。

四.网络协议分层的好处

  • 简化问题的难度和复杂度:通过各层独立,可以将问题分割在各个层去处理
  • 灵活,易于维护,通过上下接口不变,可以更好的维护,更新。
  • 促进标准化工作

http://www.kler.cn/a/413579.html

相关文章:

  • @[TOC](【接口调试】OpenAI ChatGPT API)
  • 【机器学习算法】Adaboost原理及实现
  • Qt中QGraphics绘图类相关解释
  • SpringAI:Java 开发的智能新利器
  • 太速科技-512-基于ZU19EG的4路100G 8路40G的光纤汇流计算卡
  • uname -m(machine) 命令用于显示当前系统的机器硬件架构(Unix Name)
  • HarmonyOS Next元服务大学之道动卡互动
  • 设置jenkins时区记录
  • C#里怎么样实现数组的块拷贝?
  • Stable Diffusion初步见解(四):交叉注意力机制
  • Vue进阶之Vue CLI服务—@vue/cli-service Vuex
  • 4457数字示波器 2Gpts的深度存储
  • 详解MVC架构与三层架构以及DO、VO、DTO、BO、PO | SpringBoot基础概念
  • Unity类银河战士恶魔城学习总结(P142 Save System 保存系统)
  • springboot/ssm网购平台管理系统Java在线购物商城管理平台web电商源码
  • Hadoop分布式文件系统(一)——HDFS简介
  • 【青牛科技】TS223 单触摸键检测IC
  • unity 输入框调用Windows系统软键盘
  • 透明化教育管理:看板如何提升班级整体效率
  • Vue 3中实现多个自定义组件之间的切换
  • windows C#-定义和读取自定义特性
  • java对象什么时候被垃圾回收?
  • [MRCTF2020]Transform
  • 【unity小技巧】unity常用的编辑器扩展
  • PHP中类名加双冒号的作用
  • [Android Studio] layoutUI显示顶部标题栏以及常用的标题修改