OSI以及TCP参考模型

2023-11-15

一、网络发展历史

        1、1946年第一代计算机网络是以单个计算机为中心的远程联机系统

        2、1970年第二代计算机网络是以多个主机通过通信线路互联起来

        3、1980年第三代计算机网络是以IOS(国际标准化组织)提出的OSI参考模型为中心的互联网络成型

        4、80年代末第四代计算机网络从开始,局域网技术发展成熟,出现光纤及高速网络技术

二、OSI参考模型

        网络模型分层的原因:

        1、降低网络模型的复杂性

        2、统一标准,方便世界网络互相连通

        3、工程化模块

        4、快速发展

        5、易于初学者快速学习掌握

        ISO将OSI参考模型分为7层的原因:

                目的是为了便于全球网络统一标准化实现工程模块化,易于学习与掌握

        各层的功能简介:

        1、物理层:定义了网络的双向通讯(ps:A向B发送探测报文,B向A发送响应报文,B不能访问A),同时规定了电气特性、机械特性性、功能特性、规程特性

        2、数据链路层:提供了通讯过程中必须要使用到的一个地址:MAC地址(Medica Access Control 介质访问控制)负责建立数据链路的连通性,还负责进行错误检测

        3、网络层:提供了通讯过程中必须要使用的另一个地址:IP地址(Internet Protocol)负责选择最佳路径,在最佳路径上负责路由数据包连通不同媒介类型(用来连接内网与外网,实现内外互联通信)

        4、运输层:数据链路层与网络层提供的MAC地址与IP地址能够实现找到对方,而传输层提供了端口号的概念,网络通过端口号码可以精准的‘定位’需要访问的具体服务类型。

        5、会话层:在两个应用程序之间负责建立、维护并且拆除会话

        6、表示层:负责对数据进行转换、压缩、加密,保证不同计算机之间可以相互理解

        7、应用层:工作着各种应用程序,用户通过使用各种应用程序来完成对网络的运用

三、数据的封装与解封装

1、数据的封装是一个由上而下的过程(由应用层向物理层)

2、数据在应用层、表示层、会话层不会发生任何变化,统称为PDU(Protocol Data Unit 协议数据单元)

3、数据在传输层会被添加上TCP/UDP头部,变为数据段(segment)

4、数据在网络层上添加上IP头部,变为数据包(packet)

5、数据在数据链路层上会被添加LLC头部和MAC头部以及FCS(Frame Checksum 帧校验序列和)尾部,变为数据帧(Frame)

6、数据在物理层会被从数据帧转换为比特流(Bits),以有线/无线的方式进行传输

7、接收方从物理层接收到比特流后按照完全相反的方式进行解封装,最终得到原始数据,完成数据的传输。

四、TCP/IP参考模型

1、TCP/IP参考模型是对OSI参考模型的一种整合

2、TCP/IP可以将网络模型分为四层或者五层:

        2.1、按照四层划分:应用层(应用层、表示层、会话层)、传输层、互联网层(网络层)、网络接口层(数据链路层、物理层)

        2.2、按照五层划分:应用层(应用层、表示层、会话层)、传输层、网络层、数据链路层、物理层

        ps:TCP/IP参考模型是至今为止全球所使用的的最重要的网络参考模型

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OSI以及TCP参考模型 的相关文章

  • QFile清空原来文件内容的方法

    QFile清空原来文件内容的方法 Qt 清空文件方法 Qt 清空文件方法 方法一 void DataOperate clearFileInfos QString fileName QFile file fileName file resiz
  • LeetCode1823.找出游戏的胜利者

    共有 n 名小伙伴一起做游戏 小伙伴们围成一圈 按 顺时针顺序 从 1 到 n 编号 确切地说 从第 i 名小伙伴顺时针移动一位会到达第 i 1 名小伙伴的位置 其中 1 lt i lt n 从第 n 名小伙伴顺时针移动一位会回到第 1 名
  • 机器学习之加州房价预测(一)

    加州房价预测实例 任务 基于加州房价数据集建立一个预测模型 使之可以在给定的条件下 预测加州任何地点的房价的中位数 一 定义问题 1 公司要如何利用我的模型 模型的输出将作为另一个机器学习算法的输入 该算法在综合考虑其他因素之后 决定是否值
  • 推荐一本书——《The Scientist and Engineer's Guide to Digital Signal Processing》

    突然在国外的网站上看到一本非常好的数字信号处理的书籍 讲解简介明白 清晰易懂 书籍为免费电子版 地址为 http www dspguide com pdfbook htm

随机推荐

  • day05-编程题

    知识点 方法 题目1 训练 定义一个方法 该方法能够找出两个小数中的较小值并返回 在主方法中调用方法进行测试 训练提示 根据方法的功能描述 方法的参数应该是两个小数 要返回两个小数的较小值 所以返回值类型也是小数类型 解题方案 操作步骤 定
  • QT中学习Opengl---(GLSL简单的使用)

    前言 本文的代码是 LearnOpenGL 中对应代码 这里提供学习 大家喜欢的可去官方网站去看看 https learnopengl cn readthedocs io zh latest https learnopengl cn rea
  • C++的模板特例化template<>

    C 的模板特例化是指当我们定义了一个通用的模板类或模板函数时 如果特定输入参数类型或值需要进行不同的处理 我们可以为这些特定情况提供单独的实现 这就是模板特例化 下面我们将详细介绍C 的模板特例化 假设我们有以下的一个模板类 templat
  • java自学笔记12:java中的集合框架(下)List

    一 学生选课 判断List中课程是否存在 思考 在课程序列中 如何判断是否包含某门或者某几门课程 如果课程序列包含某门课程 如何判断该课程的索引位置 在学生映射表中 如何判断是否包含某个学生ID 又该如何判断是否包含某个学生对象 如果想把课
  • 解读随着教育改革的深入steam教育

    STEAM鼓励孩子勇于创新和探索 打破思维的第三面墙 自古以来 大家都是教育孩子纠正错误 而STEAM可以让孩子们通过与小组实践学习 探索讨论 交流思想和相互帮助 来发现自己的缺点和不足 通过团队合作来弥补自己的劣势 可以说 STEAM是一
  • Pandas 返回Nan值的行索

    Pandas 返回Nan值的行索 通过np where函数查找 gt gt gt df Out 1 0 1 0 0 450319 0 062595 1 0 673058 0 156073 2 0 871179 0 118575 3 0 59
  • Mysql大小写敏感设置(Docker版)

    应用场景 本人由于项目前期使用windows版国产数据库开发 默认就是大小写不敏感的 加上代码规范约束不够 导致代码中SQL大小写不统一 后期有需求要更换数据库 改用Mysql 因为在Linux系统中Mysql默认是大小写敏感的 所以需要对
  • java多线程同步的实现方式

    java多线程同步的实现方式 1 什么时候会出现线程安全问题 2 使用synchronized关键字 2 1修饰方法 2 2 修饰代码块 3 使用重入锁实现线程同步 4 wait与notify方法 5 使用原子变量实现线程同步 关于vola
  • vmospro启动黑屏_VMOS Pro,安卓手机上的虚拟机

    应用名称 VMOS Pro 应用包名 com vmos pro 应用版本 1 1 26 应用大小 28 0MB 适用平台 Android 5 1 版本说明 1 优化电量同步问题 2 优化游戏断触问题 3 设备信息修改加入随机按钮 4 增加横
  • Docker导入导出镜像(镜像迁移)

    打包现有镜像 docker images 命令查看已有镜像列表 docker save命令打包镜像 docker save使用说明 o 选项 用来指定输出文件 将alpine ffmpeg 3 15打包 docker save o alpi
  • Linux定时任务

    Linux定时任务 at命令 语法 at 选项 日期时间 选项 f 指定包含具体指令的任务文件 q 指定新任务的队列名称 l 显示待执行任务的列表 d 删除指定的待执行任务 m 任务执行完成后向用户发送 E mail 日期时间 指定任务执行
  • 通过XSD文件生成JAVA对象

    c Program Files Java jdk1 8 0 101 bin gt xjc exe p io xsd xml encoding UTF 8 xsdTOxml MyField xsd d xsdTOxml Picked up J
  • 如何在uni中实现一个路由守卫

    在uni app中实现路由守卫 可以使用全局的router beforeEach方法来拦截路由导航 以下是一个简单的示例 展示了如何在uni app中实现路由守卫 在上述代码中 我们通过监听beforeRouterEnter事件来实现路由守
  • java.util.LinkedHashMap cannot be cast to Entity

    前后端数据传输转换问题 java util LinkedHashMap cannot be cast to Entity 问题场景 项目前端使用json传输方式 后台接收后对象变成了LinkedHashMap ResponseBody Re
  • 方向包围盒OBB(oriented bounding box)

    制造几何仿真中的碰撞检测通常视为针对刚体对象间的碰撞检测 这样的话可以把非刚体即软体的建模和变形算法对碰撞检测的影响减少到最小 常见成熟的基于包围盒的碰撞检测 box intersection test 算法如 1 沿坐标轴的包围盒AABB
  • Unity3D关于ComputeShader

    由于最近在实验中需要大量循环计算产生网格 所以可能需要GPU的加速 对于compute shader学习下 可能对于做GPU加速有帮助 以下补充修改了转载文章的内容 原文链接 https blog csdn net csharpupdown
  • HTML怎么建立两行四列的li,关于CSS如何实现多行多列布局的方法

    这篇文章主要介绍了CSS实现多行多列的布局的实例代码 需要的朋友可以参考下 1 两列多行 HTML box1 实现两列多行布局 111 222 333 CSS box1 width 500px background EEEEEE box1
  • fortran求解雷诺方程_方程的计算机处理96(5)_C++vs

    计算机语言运用 数值计算9 方程的计算机处理96 5 C vs 计算机 电子线路组成的计算机器 人与计算机则是通过计算机语言 符号系统说给计算机听而交流 计算机语言有低级语言 机器语言 汇编 高级语言 C C C VB PASCAL LIS
  • 使用yarn搭建Vue,ElementUI,axios环境

    1 搭建vue ElementUI axios环境 1 1 安装yarn 安装yarn npm install g yarn 查看是否安装版本 yarn version yarn切换为国内源 yarn config set registry
  • OSI以及TCP参考模型

    一 网络发展历史 1 1946年第一代计算机网络是以单个计算机为中心的远程联机系统 2 1970年第二代计算机网络是以多个主机通过通信线路互联起来 3 1980年第三代计算机网络是以IOS 国际标准化组织 提出的OSI参考模型为中心的互联网