IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络之数据链路层 -> 正文阅读

[网络协议]计算机网络之数据链路层

汇总:Android小白成长之路_知识体系汇总【持续更新中…】

基本概念

  • 数据链路层使用的信道主要有两种类型:

    • 点对点信道:使用一对一的点对点通信方式
    • 广播信道:使用一对多的广播通信方式
  • 数据链路层的三个基本问题:

    • 封装成帧:在一段数据的前后分别添加首部和尾部,这样就构成了一个帧,接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。控制字符SOH放在一帧的最前面,表示帧的首部开始,另一个控制字符EOT表示帧的结束,它们并不是英文字符,十六进制是01和04

    • 透明传输:当传送的帧是用文本文件组成时,由于键盘输入是不包括SOH和EOT这样的字符,因此不管键盘上输入什么字符都可以放在这样的帧中传输过去,这样的传输称为透明传输。但当传输的是ASCII码的文本时,如果某个字符刚好为SOH或EOT这样的控制字符,就会导致判断错误,这样的帧不是透明传输的。
      在这里插入图片描述

      • 解决方法:在控制字符前插入一个转义字符,在接收端删除这个插入的转义字符,这种方法称为字节填充或字符填充。如果转义字符也在数据中出现,则在该字符前再插入一个转义字符
    • 差错检测:比特在传输中可能会出现差错,比如1可能会变成0,0也可能变成1,这称为比特差错。

      • 检测措施:使用循环冗余检验CRC检错技术,在数据的后面添加供检错用的n位冗余码,这种为了进行检错而添加的冗余码常称为帧检验序列FCS

点对点信道

  • 链路(物理链路):从一个结点到相邻结点的一段物理线 路(有线或无线),中间没有其他任何的交换结点

  • 数据链路(逻辑链路):需要在一条线路上传送数据时,除了必须有一条物理线路外,还必须有一些必要的通信协议来控制这些数据的传输,把这些协议的硬件和软件加到链 v吧路上就构成了数据链路,最常用的方法是使用网络适配器

  • 规程:早期的数据通信协议,在数据链路层,规程和协议是同义词

  • 帧:数据链路层的协议数据单元

  • IP数据报:简称数据报。分组或包,是互联网中的网络层协议数据单元

  • 点对点通信的数据链路层在进行通信时的主要步骤:

在这里插入图片描述

  • 结点A的数据链路层把网络层交下来的IP数据报添加首部和尾部封装成帧
  • 结点A把封装好的帧发送给结点B的数据链路层
  • 若结点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报交给上面的网络层,否则丢弃这个帧

点对点协议PPP

  • 点对点协议PPP:目前使用最广泛的数据链路层协议

  • PPP协议应满足的需求:

    • 简单:对数据链路层的帧,不需要纠错,不需要序列,也不需要流量控制
    • 封装成帧:必须规定特殊的字符作为帧定界符,以便使接收到的比特流中能准确地找出帧的开始和结束位置
    • 透明性:如果数据中碰巧出现了和帧定界符一样的比特组合时,要采取有效措施来解决问题
    • 多种网络协议:必须能在同一条物理链路上同时支持多种网络层协议的运行
    • 多种类型链路:必须能够在多种类型的链路上运行
    • 差错控制:必须能够对接收到的帧进行检测,并立即丢弃有差错的帧
    • 检测连接状态:必须具有一种机制能够及时自动检测链路是否处于正常工作状态
    • 最大传送单元:必须对每一种类型的点对点链路设置最大传送单元MTU的标准默认值
    • 网络层地址协商:必须提供一种机制使得通信的两个网络层的实体能够通过协商知道或能够配置彼此的网络层地址
    • 数据压缩协商:必须提供一种方法来协商使用数据压缩算法
  • PPP协议的组成:

    • 一个将IP数据报封装到串行链路的方法
    • 一个用来建立、配置和测试数据链路连接的链路控制协议LCP,通信的双方可协商一些选项
    • 一套网络控制协议NCP,其中的每一个协议支持不同的网络层协议
  • PPP协议的帧格式:

在这里插入图片描述

  • 首部第一个字段和尾部最后一个字段都是标志字段F(Flag),表示一个镇的开始和结束,因此是PPP帧的定界符
  • 首部字段A和C暂时没使用
  • 首部第四个字段是2字节的协议字段,不同的协议字段代表不同的协议
  • 信息字段是长度可变的,不超过1500字节
  • 尾部第一个2字节字段是使用CRC的帧检验序列FCS

广播信道

  • 广播信道:可以进行一对多的通信,局域网使用的就是广播信道
  • 局域网主要优点:
    • 具有广播功能,从一个站点可很方便地访问全网,局域网上的主机可共享连接在局域网上的各种硬件和软件资源
    • 便于系统的扩展和逐渐演变,各设备的位置可灵活调整和改变
    • 提高了系统的可靠性、可用性和生存性
  • 共享信道技术:
    • 静态划分信道:频分复用、时分复用、波分复用和码分复用等,用户只要分配了信道就不会与其他用户发生冲突,但是这些划分代价很高不适合局域网使用
    • 动态媒体接入控制:又称为多点接入,其特点是信道并非在用户通信时固定分配给用户,分为两类:
      • 随机输入:所有用户可随机地发送信息,但如果恰巧有两个或更多的用户在同一时刻发送信息,那么阿紫共享媒体上就要产生碰撞,使得这些用户的发送都失败,因此必须有解决碰撞的网络协议
      • 受控接入:用户不能随机地发送信息,必须服从一定控制
  • 适配器的作用:计算机与外界局域网的连接是通过通信适配器进行的,适配器上面装有处理器和存储器(包括RAM和ROM),适配器在接收和发送各种帧时,不使用计算机的CPU。计算机的硬件地址就在适配器的ROM中。而计算机的软件地址则在计算机的存储器中
  • CSMA/CD:载波监听多点接入/碰撞检测
    • 多点接入:总线型网络,多个计算机以多点接入的方式连接在一根总线上
    • 载波监听:用技术检测总线上有没有其他计算机在发送。载波监听就是检测信道,不管在发送前还是发送中,每个站都必须不停地检测信道,在发送前检测信道,是为了获得发送权,如果检测出已经有其他站在发送,则自己暂时不能发送数据,必须等到信道为空闲状态才能发送。在发送中检测信道,是为了及时发现有没有其他站的发送和本站发送的碰撞
    • 碰撞检测:也就是上面的发送中检测信道,适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。当几个站同时在总线上发送数据时,总线上的信号电压变化幅度会增大,当增大到一定的界限时,就认为总线上至少有两个站同时在发送数据,表面产生了碰撞
  • 硬件地址:又称为物理地址或MAC地址,实际上就是适配器地址或适配器标识符,
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:34:02  更:2021-08-04 11:35:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 12:35:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码