【网络】- 计算机网络体系结构 - OSI七层模型、TCP/IP四层(五层)协议

本文主要是介绍【网络】- 计算机网络体系结构 - OSI七层模型、TCP/IP四层(五层)协议,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 一、概述
  • 二、计算机网络体系结构的形成
    • 👉2.1 分层的网络体系结构
    • 👉2.2 OSI 参考模型
    • 👉2.3 TCP/IP - 事实的国际标准
  • 三、OSI 参考模型
  • 四、TCP/IP 协议


在这里插入图片描述

一、概述

但凡学习计算机网络知识,肯定绕不过网络协议的,而说的计算机网络协议,总是会听到OSI七层模型TCP/IP四层协议,有些文章又会说成是TCP/IP五层协议,刚入门学这些网络协议时,给我整得一愣一愣的。
这篇文章的目的就是把计算机网络体系的这几个协议给尽可能讲清楚,知道它们是怎么来的?明白为什么有时说TCP/IP四层协议,有时又说TCP/IP五层协议?各个协议包括了哪些内容?
在这里插入图片描述

在这里插入图片描述

二、计算机网络体系结构的形成

计算机网络通信很复杂,所以最开始设计时就采用了 分层的体系结构,后面为了统一网络标准而提出了 OSI参考模型 ,最后实际应用最多的是 TCP/IP 协议。

👉2.1 分层的网络体系结构

两台计算机要在网络中相互通信,需要做很多的准备工作:

  • 要确认目标计算机是否已开机且网络正常。
  • 激活通信通路,发一些指令确保对端计算机可以正确发送和接收
  • 告诉网络如何识别接收数据的计算机
  • 发送方必须清楚对方是否做好接收数据的准备
  • 若对方文件个数不兼容,需要哪一方做格式转换
  • 如果数据传输错误,有怎样可靠的方案确保对方最终能接收到正确的数据

除了以上这些,在计算机通信过程中,还有很多需要考虑的,所以,计算机通信是一个很复杂的工作。为了设计这样复杂的计算机网络,人们提出了分层的方法,把庞大而复杂的问题转化为若干个局部的小问题。

1974年,美国IBM公司宣布了 系统网络体系结构SNA,这个著名的网络标准就是按照分层的思想制定的。不久后,其他公司也相继推出不同名称的体系结构。

👉2.2 OSI 参考模型

分层的 网络体系结构 解决了计算机通信f复杂的问题,但随着更多的 网络体系结构 在市面上流行,又出现了新的问题,不同 网络体系结构 的计算机很难互相连通。

为了使不同 网络体系结构 的计算机可以互连,国际标准化组织 ISO 于1977年成立专门机构研究该问题,提出了一个试图使各种计算机在世界范围内互连成网的标准框架,即著名的开放系统互连参考基本模型OSI/RM(Opening System Interconnection Reference Model),简称 OSI 。这就是我们常听到的OSI参考模型

在1983年,形成了开放系统互连参考基本模型的正式文件,即著名的 ISO 7498 国际标准 ,也就是七层协议的体系架构。

👉2.3 TCP/IP - 事实的国际标准

在20世纪80年代,许多大公司甚至一些国家的政府机构纷纷表示支持 OSI

然而到了20世纪90年代初期,虽然整体 OSI 国际标准都已经制定出来,但由于基于 TCP/IP 互联网已抢先在全球相当大的范围成功运行了,同时却几乎找不到有什么产家生产符合 OSI 标准的商用产品。现今规模最大的、覆盖全球的、基于 TCP/IP 的互联网并未使用 OSI 标准。

现在,得到广发应用的不是法律上的国际标准OSI,而是非国际标准 TCP/IP,所以,TCP/IP 就常被称为 事实的国际标准

在这里插入图片描述

三、OSI 参考模型

虽然OSI模型并没有得到广泛地使用,但我们学习计算机网络时,还是需要了解它的。首先,借助OSI参考模型可以有助于加深对TCP/IP的理解;其次,不知道啥时候可能要用到。

  • 应用层:为应用程序提供服务并规定应用程序中通信相关的细节。 包括文件传输、 电子邮件、 远程登录(虚拟终端) 等协议。
  • 表示层:将应用处理的信息转换为适合网络传输的格式, 或将来自下一层的数据转换为上层能够处理的格式。 因此它主要负责数据格式的转换。
  • 会话层:负责建立和断开通信连接(数据流动的逻辑通路) , 以及数据的分割等数据传输相关的管
    理。
  • 传输层:起着可靠传输的作用。 只在通信双方节点上进行处理, 而无需在路由器上处理。
  • 网络层:将数据传输到目标地址。 目标地址可以是多个网络通过路由器连接而成的某一个地址。 因此这一层主要负责寻址和路由选择。
  • 数据链路层:负责物理层面上互连的、 节点之间的通信传输。 例如与1个以太网相连的2个节点之间的通信。将0、 1序列划分为具有意义的数据帧传送给对端(数据帧的生成与接收) 。
  • 物理层:负责0、 1比特流(0、 1序列) 与电压的高低、 光的闪灭之间的互换。

在这里插入图片描述

在这里插入图片描述

四、TCP/IP 协议

  • 硬件(物理层):TCP/IP的最底层是负责数据传输的硬件。 这种硬件就相当于以太网或电话线路等物理层的设备。 关于它的内容一直无法统一定义。
  • 网络接口层(数据链路层):有时人们也将网络接口层与硬件层合并起来称作网络通信层。利用以太网中的数据链路层进行通信, 因此属于接口层。
  • 互联网层(网络层):互联网层使用IP协议, 它相当于OSI模型中的第3层网络层。 IP协议基于IP地址转发分包数据。
  • 传输层:TCP/IP的传输层有两个具有代表性的协议。 该层的功能本身与OSI参考模型中的传输层类似。
  • 应用层(会话层以上的分层):TCP/IP的分层中, 将OSI参考模型中的会话层、 表示层和应用层的功能都集中到了应用程序中实现。

在这里插入图片描述


参考资料:
《计算机网络》第7版 谢希仁 编著
《计算机网络-自顶向下方法》第7版
《图解TCP/IP》第5版
在这里插入图片描述

如果文章有帮助的话,点赞👍、收藏⭐,支持一波,谢谢 😁😁😁

这篇关于【网络】- 计算机网络体系结构 - OSI七层模型、TCP/IP四层(五层)协议的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/707097

相关文章

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

Nginx实现动态封禁IP的步骤指南

《Nginx实现动态封禁IP的步骤指南》在日常的生产环境中,网站可能会遭遇恶意请求、DDoS攻击或其他有害的访问行为,为了应对这些情况,动态封禁IP是一项十分重要的安全策略,本篇博客将介绍如何通过NG... 目录1、简述2、实现方式3、使用 fail2ban 动态封禁3.1 安装 fail2ban3.2 配

Qt 中集成mqtt协议的使用方法

《Qt中集成mqtt协议的使用方法》文章介绍了如何在工程中引入qmqtt库,并通过声明一个单例类来暴露订阅到的主题数据,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一,引入qmqtt 库二,使用一,引入qmqtt 库我是将整个头文件/源文件都添加到了工程中进行编译,这样 跨平台

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus