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

news2024/12/23 23:12:58

目录
一、概述
二、计算机网络体系结构的形成
 👉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版
在这里插入图片描述

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/500106.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java 基础进阶篇(八)—— 常用 API

文章目录 一、Object 类二、Objects 工具类三、Math 类四、System 类五、BigDecimal 类 一、Object 类 一个类要么默认继承了 Object 类,要么间接继承了 Object 类,Object 类是 java 中的祖宗类。Object 类的方法是一切子类都可以直接使用的。 因此&…

7.4 电子信息系统预处理中所用放大电路

在电子信息系统中,通过传感器或其它途径所采集的信号往往很小,不能直接进行运算、滤波等处理,必须进行放大。 一、仪表放大器 集成仪表放大器,也称为精密放大器,用于弱信号放大。 1、仪表放大器的特点 在测量系统中…

Binder“一次拷贝“你真懂吗?

前言 谈到到Binder相对于其他传统进程间通信方式的优点的时候,我们总会说Binder只需要做“一次拷贝”就行了,而其他传统方式需要“两次拷贝”。这确实是Binder的优点,但再进一步思考就会碰到两个问题: 这所谓的“一次拷贝”到底…

回溯算法简单介绍

目录 1.回溯算法简单介绍 2.回溯算法框架: 我们用一道题来详细讲解回溯算法的过程 3.全排列问题 1.回溯算法简单介绍 解决一个回溯问题,其实就是一个决策树的遍历过程,我们只需要思考三个问题: 1.路径:就是已经做出…

一起Talk Android吧(第五百四十二回:无进度值ProgressBar)

文章目录 概念介绍使用资源文件实现使用默认设置修改风格使用动画资源 使用代码实现经验总结 各位看官们大家好,上一回中咱们说的例子是"ProgressBar总结",本章回中介绍的例子是" 无进度值ProgressBar"。闲话休提,言归正转&#xf…

linux相关操作

1 系统调用 通过strace直接看程序运行过程中的系统调用情况 其中每一行为一个systemcall ,调用write系统调用将内容最终输出。 无论什么编程语言都必须通过系统调用向内核发起请求。 sar查看进程分别在用户模式和内核模式下的运行时间占比情况, ALL显…

MySQL的where表达式中的各种运算符的用法和细节

MySQL的where表达式中的各种运算符的用法和细节 小故事mysql运算符分类where表达式中的运算符between and 和 and运算符的区别in运算符需要注意的点 小故事 今天在研究mysql的where表达式中的运算符的时候,遇到一个有意思的问题。 问题是:以id为主键&am…

玩机搞机----修改手机各项参数工具解析 过验证 变新机

任何的芯片原则上都可以修改当前机型的任何参数。包括但不限于高通 MTk 展讯..... 等其他芯片。众所周知,有的机型 有的版本可以直接修改,有的不行。至于具体原因可以参考我以往的帖子 安卓玩机搞机技巧综合资源-----修复基带 改串码 基带qcn 改相关参数…

三、c++学习(指针引用详解)

上一次直播好像过去很久了,中间有加班,有5 1假期等,现在5 1放假完了,所以继续卷。 C学习,b站直播视频 3.1 指针 这个指针,考虑了很久,一直不知道在哪个地方介绍,为啥纠结&#xf…

Solr(2):Solr的安装

1 安装前的概述 (1)solr是基于lucene而lucene是java写的,所以solr需要jdk----当前安装的solr-7.5需要jdk-1.8及以上版本,下载安装jdk并设置JAVA_HOME即可。 (2)下载solr,然后解压即可&#xf…

Map对象的用法(JS)

📝个人主页:爱吃炫迈 💌系列专栏:数据结构与算法 🧑‍💻座右铭:道阻且长,行则将至💗 文章目录 MapkeyMap常用语法Map其他语法创建map的其他方式 Map Map是一个键值对形式…

FPGA设计之控制集优化详解

目录 一、前言 二、Control Set控制集 三、Control Set控制集优化 四、优劣 一、前言 在工程设计优化中,综合阶段优化中有一项常见的优化,控制集(control set)优化,在vivado的Synthesis中有对该配置项的解释&#x…

Android Jetpack组件化之ORM 数据库访问框架详解

一、对象关系映射 - ORM / Object Relational Mapping Android 系统中使用的数据库是 SQLite 关系型数据库 , 使用 Android 提供的 api 访问 SQLite 数据库非常繁琐 , 由此出现了很多 ORM 框架 ; ORM 英文全称 Object Relational Mapping , 对象关系映射 ; 对象关系映射 ORM …

“智能指针:C++中优雅的内存管理解决方案“

前言 欢迎来到💖小K💖的💞C专栏💞,内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存的情况,这是C和C程序员的噩梦之一。本节将为大家带来解决办法—>智能指针 文章目录 前言1、简介2、为什么…

【移动端网页布局】flex 弹性布局 ⑤ ( 设置侧轴单行子元素排列方式 | align-items 样式说明 | 代码示例 )

文章目录 一、设置子元素是否换行 : align-items 样式说明1、 align-items 样式引入2、 align-items 样式属性值 二、代码示例1、 代码示例 - 默认样式2、 代码示例 - 设置主轴水平居中3、 代码示例 - 设置侧轴垂直居中4、 代码示例 - 设置侧轴从下到上排列5、 代码示例 - 设置…

C++之类和对象(二)

目录 前言 类的6个默认成员函数 1.构造函数 1.1 概念 1.2 特性 2. 析构函数 2.1 概念 2.2 特性 3. 拷贝构造函数 3.1 概念 3.2 特征 4.赋值运算符重载 4.1 运算符重载 4.2.赋值运算符重载 4.3 前置和后置重载 5. .const成员 6.取地址及const取地址操作符重载 前…

【二叉搜索树】

1 二叉搜索树概念 二叉搜索树又称二叉排序树,它或者是一棵空树 ,或者是具有以下性质的二叉树 : 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 若它的右子树不为空,则右子树上所有节点的值都大于根节点的值 它的左…

Android“真正的”模块化

作者:bytebeats 模块化背后的原则概述 “如果说SOLID原则告诉我们如何将砖块排列成墙和房间, 那么组件原则则告诉我们如何将房间排列成建筑.” ~ Robert C. Martin, Clean Architecture 你应该分层打包还是分特性打包?还有其他方法吗? 如何提高项目的编译时间? 你…

将Python环境迁移到另一台设备上

本方法可以将一台电脑上的python环境迁移到另一台电脑上,可以省去一个一个包pip的麻烦。本文以pytorch的迁移为例。 一、从源环境备份安装包 在原来的电脑的Conda控制台中使用语句 pip freeze > c:\myrequirement.txt 后面跟的参数是文件的路径和文件名&#x…

Spring MVC自定义拦截器--Spring MVC异常处理

目录 自定义拦截器 什么是拦截器 ● 说明 自定义拦截器执行流程分析图 ● 自定义拦截器执行流程说明 自定义拦截器应用实例 ● 应用实例需求 创建MyInterceptor01 创建FurnHandler类 在 springDispatcherServlet-servlet.xml 配置拦截器 第一种配置方式 第二种配置方…