计算机网络之数据链路层_day05

本文详细介绍了计算机网络中数据链路层的基本概念和技术,包括数据链路与帧的定义、链路层的主要功能、封装成帧的方法、透明传输及差错检测等。此外,还深入探讨了点对点协议PPP的特点、帧格式以及PPP的工作状态。
摘要由CSDN通过智能技术生成

PS:【我又来啦 由于毕设 课设一直耽搁没有更新 上次复习的内容都快忘记了 看来复习不能停哦 最近感冒的人还挺多 我也免遭不幸 可真是难受了 还去医院做了核酸抽血化验 哎 加油哦 距离2022没剩下多少天了 “我看着没剩多少时间 能许愿好想多一天我们的明天” 听着这首歌要继续加油啦!! 】

第三章 数据链路层(上)

基本要求:掌握数据链路和帧的概念,理解数据链路层的三个基本问题,了解点对点协议PPP的特点,掌握PPP的帧格式和协议工作状态,掌握CSMA/CD协议,掌握如何在不同层次扩展局域网,理解透明网桥的工作原理,了解高速以太网技术。

学习内容:

3.1使用点对点信道的数据链路层

3.1.1 数据链路和帧的概念

结点:主机、路由器

链路:网络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。

数据链路:网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上构成数据链路。负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。

帧:链路层的协议数据单元,封装网络层数据报。


3.1.2 数据链路层功能概述

数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻结点的目标机网络。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。

功能一:为网络层提供服务。无确认无连接的服务,有确认无连接的服务,有确认面向连接的服务有连接一定有确认)

功能二:链路管理。即连接的建立、维持、释放(用于面向连接的服务)

功能三:组帧。

功能四:流量控制。限制发送方

功能五:差错控制(帧错/位错)


3.1.3 封装成帧、透明传输、差错检测

封装成帧

 封装成帧就是在一段数据的前后部分添加首部和尾部,构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。

首部和尾部包含许多的控制信息,它们的一个重要作用就是:帧定界(确定帧的界限)

帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止

组帧的四种方法:①字符计数法②字符(节)填充法③零比特填充法④违规编码法

每一种链路层协议都规定了所能传送的帧的数据部分长度上限---最大传送单元MTU


 透明传输

透明传输是指不管所有的数据是什么样的比特组合,都应当能在链路上传输。因此,链路层“看不见”有什么妨碍数据传输的东西。

当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。用以下方法:

(1)字符计数法

(2)字符填充法  插入转义字符ESC

(3) 零比特填充法

(4)违规编码法


差错控制(检错编码)

问:差错从何而来?

在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER(bit error rate)

 

编码:

数据链路层的编码和物理层的数据编码与调制不同。

物理层编码针对的是单个比特,解决传输过程中比特的同步等问题;

数据链路层的编码针对的是一组比特,它通过冗余码的技术实现一组二进制比特串在传输过程是否出现了差错;

冗余编码:

在数据发送前,先按某种关系附加上一定的冗余位,构成一个符合某一规则的码字后在发送。当要发送的有效数据变化时,相应的冗余位也随之变化,使码字遵从不变的规则。接收端根据收到的码字是否仍符合原规则,从而判断是否出错。

检错编码---奇偶校验码

检错编码---CRC循环冗余码 

 


差错控制(纠错编码)【了解】

纠错编码---海明码

 

 步骤: 

 

3.2点对点协议PPP

3.2.1 PPP协议的特点

互联网的用户通常都要连接到某个ISP才能接入到互联网,PPP协议就是用户计算机和ISP进行通信时所使用的数据链路层协议。

(1)PPP协议应满足的要求:

  • 简单
  • 封装成帧
  • 透明性
  • 多种网络层协议
  • 各种类型链路
  • 差错检测
  • 检测连接状态
  • 最大传送单元
  • 网络层地址协商
  • 数据压缩协商

(2)PPP协议的组成

①一个将IP数据报封装到串行链路的方法(PPP既支持异步链路也支持面向比特的同步链路)

②链路控制协议LCP

③网络控制协议NCP


3.2.2 PPP协议的帧格式

(1)各字段的意义

  首部的第一个字段和尾部的第二个字段都是标志字段F(Flag),规定为0X7E,十六进制的7E的二进制是(01111110)。标志字段代表一个帧的开始或结束,因此标志字段就是PPP帧的定界符。

  PPP首部的第四个字段是2字节的协议字段,当协议字段为0X0021时,PPP帧的信息字段就是IP数据报;为0XC021是LCP数据;0X8021表示网络层的控制数据。

(2)字节填充

(当信息字段中出现了和标志字段一样的比特组合(0X7E)时)当PPP使用异步传输时,使用字节填充

  • 出现的每一个0X7E字节转变成(0X7D,0X5E)
  • 出现的0X7D字节转变成(0X7D,0X5D)
  • 出现ASCII码的控制字符,在该字符前加0X7D

(3)零比特填充

PPP协议用在SONET/SDH链路时,使用同步传输,采用零比特填充法

  • 在发送端,先扫描整个字段信息。发现有连续5个1,立即填入一个0。接收端在收到一个帧时,先找到标志字段F以确定一个帧的边界,接着再用硬件对其中比特轮流扫描,删除连续5个1后的0,保证透明传输


3.3.3 PPP协议的工作状态

  • 当用户拨号接入ISP后,就建立了一条从用户PC机到ISP的物理连接
  • 这时用户PC机向ISP发送一系列的LCP分组(封装成多个PPP帧),以便建立LCP连接
  • 这些分组及其响应选择了将要使用的一些PPP参数
  • 接着还要进行网络层配置,NCP给新接入的用户PC机分配一个临时的IP地址
  • 这样,用户PC机就成为因特网上的一个有IP地址的主机了
  • 当用户通信完毕时,NCP释放网络层连接,收回原来分配出去的IP地址
  • 接着,LCP释放数据链路层连接
  • 最后释放的是物理层的连接
     

  PPP链路的起始和终止状态永远就是图中的“链路静止” 状态,这时在用户个人电脑和ISP的路由器之间并不存在物理层连接。

 

(1)PPP协议的LCP连接
  当用户PC机通过调制解调器呼叫路由器时(通常是在屏幕上用鼠标点击一个连接按钮),路由器就能够检测到调制解调器发出的载波信号。在双方建立了物理层连接后,PPP就进入“链路建立”(Link Establish)状态,其目的是建立链路层的LCP连接。
  这时,LCP开始协商一些配置选项,即发生LCP的配置请求帧(Configure-Request)。这是一个PPP帧,其协议字段置为LCP对应的代码,而信息字段包含特定的配置请求。

链路的另一端可以发送以下响应中的其中一种:

  • 配置确认帧(Configure-Ack):所有选项都接受。
  • 配置否认帧(Configure-Nak):所有选项都理解但不能接受。
  • 配置拒绝帧(Configure-Reject):选项有的不能识别或不能接受,需要协商。

  LCP配置选项包括链路上的最大帧长、所使用的鉴别协议(authentication protocol)的规约(如果有的化话),以及不使用PPP帧中的地址和控制字段(因为这两个字段的值是固定的,没有任何信息量,可以在PPP帧的首部中省略掉这两个字节)。
协商结束后双方就建立了LCP链路,接着就进入鉴别状态(Authentication),在这一状态,只允许传送LCP协议的分组、鉴别协议的分组以及检测链路质量的分组。若使用口令鉴别协议PAP(Password Authentication Protocol),则需要发起通信的一方发送身份标识符和口令。系统可运行用户重试若干次。如果需要有更好的安全性,则可使用更加复杂的口令握手鉴别协议CHAP(Challenge-Handshake Authentication Protocol)。若鉴别身份失败,则转到“链路终止”状态(Link Dead)。若鉴别成功,则进入网络层协议状态(Network-Layer Protocol)


(2)PPP协议的NCP连接
  在网络层协议状态,PPP链路的两端的网络控制协议NCP根据网络层的不同协议互相交换网络层特定的网络控制分组。这个步骤是非常重要的,因为现在的路由器都能够同时支持多种的网络层协议。总之,PPP协议两端的网络层可以运行不同的网络层协议,但仍然可以使用同一个PPP协议进行通信。
  如果在PPP链路上运行的是IP协议,则对PPP链路的每一端配置IP协议模块(如分配IP地址)时就要使用NCP中支持IP的协议——IP控制协议IPCP(IP Control Protocol)。IPCP分组也封装成PPP帧(其中的协议字段为0x8021)在PPP链路中传送。在低速链路上运行时,双方还可以协商使用压缩的TCP和IP首部,以减少在链路上传送的比特数。
当网络层配置完毕后,链路就进入可进行数据通信的链路打开状态。链路的两个PPP端点可以彼此向对方发送分组。两个PPP端点还可发送回送请求LCP分组(Echo-Request)和回送回答LCP分组(Echo-Reply),以检查链路的状态。
数据传输结束后,可以由链路的一端发出终止请求LCP分组(Terminate-Request)请求终止链路连接,在收到对方发来的终止确认LCP分组(Terminate-Ack)后,转到链路终止状态。
  如果链路出现故障,也会从链路打开状态转到链路终止状态。当调制解调器的载波停止后,则回到链路静止状态。

注:从设备之间无链路开始,到先建立物理链路,再建立LCP链路。经过鉴别后再建立NCP链路,然后才能交换数据。由此可见,PPP协议已不是纯粹的数据链路层的协议,它还包含了物理层和网络层的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chenn_yi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值