计算机网络分层的目的:支持异构网络系统的互联互通

7层OSI参考模型是法定标准(国际标准化组织ISO提出)

4层TCP/IP参考模型是事实标准

OSI参考模型

应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。

资源子网(数据处理):应用层、表示层、会话层

通信子网(数据通信):网络层、数据链路层、物理层

应用层

所有能和用户交互产生浏览的程序,(有HTTP、FTP、SMTP协议)

表示层

用于处理两个通信系统中交换信息的表示方式(语法和语义),(有JPEG、ASCII协议),如:

  1. 数据格式的变换 如转换为0101进行

  2. 数据加密解密 哈希、MD5加密

  3. 数据压缩和恢复

会话层

向表示层实体/用户进程提供建立连接并在链接上有序传输数据,也是建立同步(SYN),(有ADSP、ASP协议)

  1. 建立、管理、终止会话

  2. 使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步。

传输层

负责主机中两个进程的通信,即端到端的通信,传输单位是报文段或用户数据报,(有TCP、UDP协议)

  1. 可靠传输、不可靠传输

  2. 差错控制

  3. 流量控制

  4. 复用分用

    • 复用:多个应用层进程可同时使用下面运输层的服务

    • 分用:传输层把收到的信息分别交付给上面应用层中相应的进程。

网络层

主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层传输单位是数据报,(协议有IP、IPX、ICMP、IGMP、ARP、RARP等)

  1. 路由选择

  2. 流量控制

  3. 差错控制

  4. 拥塞控制

    • 若所有节点都来不及接收分组,而要丢弃大量分组的化,网络就处于拥塞状态,因此要采取一定措施缓解这种拥塞

数据链路层

主要任务是把网络层传下来的数据报组装成帧,数据链路层/链路层的传输单位是,(有SDLC、HDLC、PPP、STP协议)

  1. 成帧(定义帧的开始和结束)

  2. 差错控制 帧错+位错

  3. 流量控制

  4. 访问(接入)控制 控制对信道的访问

物理层

主要任务是在物理媒介上实现比特流的透明传输,物理层传输单位是比特,(有Rj45、802.3协议)

  1. 定义接口特性

  2. 定义传输模式 单工、半双工、双工

  3. 定义传输速率

  4. 比特同步

  5. 比特编码

TCP/IP参考模型

OSI参考模型与TCP/IP参考模型相同点

  • 都分层

  • 基于独立的协议栈的概念

  • 可以实现异构网络互联

OSI参考模型与TCP/IP参考模型不同点

  1. OSI定义三点:服务、协议、接口

  2. OSI先出现,参考模型先于协议发明,不偏向特定协议

  3. TCP/IP设计之初就考虑异构互联问题,将IP作为重要层次

  4.   ISO/OSI参考模型 TCP/IP模型
    网络层 无连接 + 面向连接 无连接
    传输层 面向连接 无连接 + 面向面接

面向连接分为三个阶段:

  1. 第一是建立连接,在此阶段,发出一个建立连接的请求

  2. 第二是数据传输,只有在连接成功建立之后,才能开始数据传输

  3. 当数据传输完毕,必须释放连接

无连接没有这么多阶段,他直接进行数据传输

五层参考模型

应用层、传输层、网络层、数据链路层、物理层

应用层:支持各种网络应用 FTP、SMTP、HTTP

传输层:进程-进程的数据传输 TCP、UDP

网络层:源主机到目的主机的数据分查路由与转发 IP、ICMP、OSPF等

数据链路层:把网络层传下来的数据报组装成帧 PPP、Ethernet

物理层:比特传输

OSI、TCP/IP的更多相关文章

  1. 计算机网络——OSI、TCP/IP协议族详解

    一.OSI七层协议体系结构域TCP/IP四层体系结构对比 ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是 ...

  2. 【程序猿笔试面试复习】之中的一个 网络与通信篇(一) 几大网络模型:OSI、TCP/IP、B/S与C/S、MVC结构

    9.1网络模型 9.1.1. OSI七层模型 OSI(Open System Interconnection,开放系统互联)七层网络模型称为开放式网络互联參考模型.其为国际标准组织指定的一个指导信息互 ...

  3. OSI七层协议模型、TCP/IP四层模型和五层协议体系结构之间的关系

    一.OSI七层模型 OSI七层协议模型主要是:应用层(Application).表示层(Presentation).会话层(Session).传输层(Transport).网络层(Network).数 ...

  4. 简述OSI七层协议模型、TCP/IP四层模型和五层协议之间的关系

    一.OSI七层模型 OSI七层协议模型主要是:应用层(Application).表示层(Presentation).会话层(Session).传输层(Transport).网络层(Network).数 ...

  5. 网络基础:OSI 七层模型、TCP/IP 四层模型

    1.Internet历史 1. 1968年由美国ARPA机构提出"资源共享计算机网络”,让ARPA的计算机互联起来,叫做阿帕网;2. 1974年,第一个TCP协议详细说明发布了.3. 一个 ...

  6. TCP/IP参考模型(应用层、传输层、网际层、网络接口层)、五层参考模型(应用层、传输层、网络层、数据链路层、物理层)、OSI与TCP/IP参考模型比较

    文章转自:https://blog.csdn.net/weixin_43914604/article/details/104597450 学习课程:<2019王道考研计算机网络> 学习目的 ...

  7. 二、tcp/ip基础知识

    一.TCP/IP的标准化 1.TCP/IP的含义 一般来说,TCP/IP是利用IP进行通信时所必须用到的协议群的统称. 具体点,IP或ICMP.TCP或UDP.TELENT或FTP.以及HTTP等都属 ...

  8. OSI与TCP/IP各层的结构与功能,都有哪些协议

    前言: 今天更新一下计算机网络的一些非常重要的知识,可能很多人都不知学计算机网络有什么用,我想说的是它真的比较重要,像咱们学校只要是学计算机这个专业都要学习这门课程.另外大家要是去一些像BAT,阿里, ...

  9. OSI和TCP/IP的对比+IP地址分类

    一.OSI和TCP/IP对比 二.IP地址分类 A类私有IP地址:10.0.0.0-10.255.255.255B类私有IP地址:172.16.0.0-172.31.255.255C类私有IP地址:1 ...

随机推荐

  1. volatile关键字及Java内存模式

    参考文档:https://www.cnblogs.com/_popc/p/6096517.html volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情.它与Java的内存 ...

  2. TVM:

    Hello TVM  发表于 2019-06-29 TVM 是什么?A compiler stack,graph level / operator level optimization,目的是(不同框 ...

  3. 清北学堂(2019 5 3) part 6

    今天讲STL 1.pair——<algorithm> 声明形如pair<int,int> x;(不是int也可以),表示x有前后两个成员,都是int类型,调用时写x.first ...

  4. Qt Quick 常用元素:RadioButton(单选框),CheckBox(复选框) 与 GroupBox(分组框)

    先介绍一下 ExclusiveGroup. ExclusiveGroup (互斥分组)本身是不可见元素,用于将若干个可选择元素组合在一起, 供用户选择其中的一个选项.你可以在 ExclusiveGro ...

  5. firefly rk3399 增加 HL-340 驱动(编译内核)

    前言:新下载了firefly rk3399 ubuntu固件16.04,但是发现没有HL-340 USB转串口的驱动,而机器人底盘驱动是HL-340的,所以一直提示无法找到设备驱动. 由于没有技术支持 ...

  6. JavaScript 正则表达式匹配成功后的返回结果

    原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79005604 使用正则表达式EDIT 正则表达式可以被用于RegExp的exec ...

  7. RabbitMQ的构架

    初识rabbitMQ RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现. AMQP :Advanced Message Queue,高级消息队列协议.它是应用层协议的一个开放 ...

  8. 使用docker安装gitlab,两台电脑gitlab库相互迁移

    原文来自合伙呀 https://hehuoya.com/2019/09/30/gitlab-docker/ Docker  for gitlab brew cask install docker do ...

  9. 【leetcode】字母异位词分组

    给定一个字符串数组,将字母异位词组合在一起.字母异位词指字母相同,但排列不同的字符串. 示例: 输入: ["eat", "tea", "tan&quo ...

  10. [转帖]编写shell脚本所需的语法和示例

    编写shell脚本所需的语法和示例 https://blog.csdn.net/CSDN___LYY/article/details/100584638 在说什么是shell脚本之前,先说说什么是sh ...