计算机网络-数据链路层-点对点信道

数据链路层

  • 使用的信道主要两种:
  • 点对点信道
  • 广播信道—— 一对多

包含的内容

  • 点对点/广播- 特点,所用协议的特点
  • 三个基本问题:封装成帧、透明传输、差错检测
  • 以太网MAC层的硬件地址
  • 适配器 转发器 集线器 网桥 以太网交换机 的作用 使用场合

在这里插入图片描述

点对点信道

  • 数据链路
    在一条线路上传送数据,一条物理线路是必要的,还要 通信协议——来控制数据的传输。实现这些协议的软硬件加到链路上,构成数据链路。
    常用网络适配器来实现协议


  • 帧是协议数据单元
    帧:帧头 帧尾 物理层地址 校验值

  • 数据链路层在进行通信主要步骤
    (1)结点A的数据链路层把网络层给的IP数据报 添加 首部、尾部 封装成帧
    (2)A把封装好的帧发给B
    (3)如果B收到的帧无差错,则提取出IP数据报给上面的网络层;否则丢弃

三个基本问题

1.封装成帧

  • 在一段数据前后分别添加首部、尾部,构成一个帧
  • 接收端收到 比特流后——根据首部、尾部标记——识别帧的开始、结束

2.透明传输

  • 是指不管所传数据是什么样的比特组合,都能按照原样没有差错的通过这个数据链路层。帧中有首部和尾部,如果帧的数据部分含有和首部尾部相同的内容,那么帧的开始和结束位置就会被错误的判定。当所传数据中的比特组合恰巧与某一个控制信息完全一样时(即出现帧定界错误时),就必须采取适当措施,使接收方不会将这样的数据误认为是某种控制信息。
  • 为解决透明传输问题,得尽量使出现的 SOH EOT 在接收端不被解释为控制字符:
    在发送端数据中出现 SOH EOT 前面插入一个 转义字符 “ESC” ,(1B/00011011)。在接收端删除ESC——称为字节填充。
    若ESC出现在数据中,方法就是在ESC前再插入一个ESC,接收端收到这样的连续两个ESC,删除一个就行了。
  • 这个过程透明传输的内容是转义字符,用户察觉不到转义字符的存在。
  • 就变成了: ESC SOH 数据 ESC EOT

3.差错检测

  • 使用循环冗余检验CRC——检错技术

原理

  • 1.在发送端把数据划分为组,每组k比特
    在数据M后添加供差错检测的n位冗余码,构成一个帧(k+n)位发送出去。

  • 2.用二进制的模2运算(异或,相同为0,不同为1。加法时不进位)。
    事先商定好长度为(n+1)位的除数P,在M后添加n个0后除以P得到余数R(n位)。余数R作为冗余码接在M后发送出去。

  • 帧检验序列:FCS,在数据后面添加的冗余码

  • 3.接收端把收到的帧除以同样的除数P,得到余数R。
    若余数R=0,判定此帧没有差错,接受。
    若余数R≠0,判定此帧有差错(无法确定哪一位或哪几位出差错),丢弃。

  • 步骤:
    分组——每组k比特——加n位冗余码——k+n位
    模2运算——n+1位 除数p——每组后加n个0,除以p——得余数R——R加在M后面
    收到——除以除数P——得到余数R——为0——可以——不为0——有错——丢弃

仅采用CRC校验不能使数据链路层变成可靠传输。因为CRC校验只能做到对帧的无错接受,但不能保证帧没有丢失、重复或失序。

在这里插入图片描述

PPP协议

  • 是用户计算机和ISP进行通信时所使用的数据链路层协议——ISP即互联网服务提供商
    在这里插入图片描述

特点

1、简单:接收那边,每收到一个帧,就CRC检验;正确,接收;错误,丢弃就vans了嗷,无后续操作。
2、封装成帧:规定特殊字符作为帧定界符,使接收端能从比特流中找出帧开始、结束位置
3、透明性:见“透明传输”,要有措施能解决与帧定界符雷同的情况的方法
4、多种网络层协议:得能在同一条物理链路上同时支持多种网络层协议(IP、IPX)
5、多种类型链路:能在多种类型链路上运行
6、差错检测
7、检测连接状态:及时(<几分钟)自动检测链路是否处于正常工作状态
8、最大传送单元
9、网络层地址协商
10、数据压缩协商

PPP协议不需满足的要求:

1、纠错
2、流量控制
3、序号
4、多点线路
5、半双工或单工链路

PPP组成

  • PPP协议有三个组成部分:
    1、一个将IP数据报封装到串行链路的方法:PPP支持异步或同步链路
    2、一个用来建立、配置 测试数据链路连接的链路控制协议—LCP,LCP建议并维护数据链路连接,身份验证、计费功能,只有这层通了,网络层才能通信。
    3、一套网络控制协议NCP,其中每个协议支持不同的网络层协议(一套,多个的意思)

帧格式

1、各字段的意义

在这里插入图片描述

PPP帧的首部

  • 首部中的标志字段F(Flag),规定为0x7E,标志字段表示一个帧的开始。(符号0x表示它后面的字符是用十六进制表示的。十六进制的7E的二进制表示是01111110)
  • 首部中的地址字段A规定为0xFF(即11111111)。
  • 首部中的控制字段C规定为0x03(即00000011)。
  • 首部中的2字节的协议字段:
    (1)当协议字段为0x0021时,PPP帧的信息字段就是IP数据报。
    (2)当协议字段为0xC021时,PPP帧的信息字段就是PPP链路控制协议LCP的数据。
    (3)当协议字段为0x8021时,PPP帧的信息字段就是网络层的控制数据。

PPP帧的信息字段部分

信息字段的长度是可变的,不超过1500字节。

PPP帧的尾部

  • 尾部中的第一个字段(2个字节)是使用CRC的帧检验序列FCS。
  • 尾部中的标志字段F(Flag),规定为0x7E,标志字段表示一个帧的结束。(符号0x表示它后面的字符是用十六进制表示的。十六进制的7E的二进制表示是01111110)
  • 注:标志字段就是PPP帧的定界符。连续两帧之间只需要用一个标志字段。如果连续出现两个标志字段,就表示这是一个空帧,应当丢弃。

2、字节填充 —— PPP使用异步传输

  • 当PPP使用异步传输(逐个字符的传送)时,它把转义符定义为0x7D,并使用字节填充。
  • RFC1662规定了如下填充方法:
    (1)把信息字段中出现的每一个0x7E字节转变为2字节序列(0x7D,0x5E)。
    (2)若信息字段中出现一个0x7D的字节(即出现了和转义字符一样的比特组合),则把转义字符0x7D转变为2字节序列(0x7D,0x5D)。
    (3)若信息字段中出现ASCII码的控制字符(即数值小于0x20的字符),则在该字符前面要加入一个0x7D字节,同时将该字符的编码加以改变。例如,出现0x03(在控制字符中是“传输结束”ETX)就要把它转变为2字节序列的(0x7D,0x31)。
  • 由于在发送端进行了字节填充,因此在链路上传送的信息字节数就超过了原来的信息字节数。但接收端在接收到数据后再进行与发送端字节填充相反的变换,就可以正确地恢复出原来的信息。

3、零比特填充——PPP使用同步传输

  • 当PPP使用同步传输(一连串的比特连续传送)时,使用零比特填充实现透明传输。
  • 零比特填充的具体方法:

(1)在发送端先扫描整个信息字段(通常使用硬件实现,但也可以用软件实现,但是会慢一些)。
(2)只要发现有5个连续的1,则立即填入一个0。
(3)接收端在收到一个帧时,先找到标志字段F以确定帧的边界,接着再用硬件对其中的比特流进行扫描,每当发现5个连续1时,就把5个连续1后的一个0删除,以还原成原来的信息比特流。

  • 因此通过这种零比特填充后的数据,就可以保证在信息字段中不会出现连续6个1。
    在这里插入图片描述

工作状态

  • 右侧箭头说明,PPP协议涉及物理层、网络层
    在这里插入图片描述
  • PPP链路初始化过程:
  • 用户拨号进入ISP,建立物理连接:用户到ISP;用户向ISP发送LCP分组(封装成多个PPP帧),以便建立 LCP连接 。再 配置网络层 ,NCP给新用户 分配 临时 IP地址 。这样,用户电脑成为互联网上的一个有IP地址的主机了。
  • 当用户通信完了,NCP释放网络层的连接,回收IP地址;然后LCP释放数据链路层连接;最后释放物理层的连接。

总结

  • 链路静止-建立物理层-链路建立-pc发LCP-NCP分配IP地址-链路打开,网络层建立。(释放时倒过来)

详解

  • 起始、终止状态都是 “链路静止” 状态,用户电脑与ISP路由器之间没有物理层的连接

  • 用户通过调制解调器呼叫路由器(如鼠标点击连接按钮),路由器检测到这个载波信号。双方建立物理层连接后,PPP进入 “链路连接” 状态, 目的建立链路层LCP连接

  • LCP就协商配置,就是发送LCP的配置请求帧,是个PPP帧;链路另一端可发这几种响应之一:
    1)配置确认帧——接受所有选项
    2)配置否认帧——理解但不接受所有选项
    3)配置拒绝帧——有的选项无法识别/无法接受,要协商

  • 协商结束后,就建立了LCP链路,进入了 “鉴别” 状态;开始去鉴别身份:失败—— “链路终止” ;成功—— “网络层协议”

  • “网络层协议” 状态:PPP两端的网络层可运行不同的网络层协议,但又仍然可以用同一个PPP进行通信

  • 配置完成后,进入可进行 数据通信“链路打开” 状态:两端可以向对方发送分组,还有回送请求LCP分组、回送回答LCP分组,来 检查链路的状态

  • 数据传输结束,由一端发出 终止请求 LCP分组请求终止链路连接,收到终止确认 LCP分组后,转到 “链路终止” 状态。
    若有故障,也会从“链路打开”转到“链路终止”。

  • 当调制解调器载波停止后,回到 “链路静止” 状态

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机网络中,数据链路层是TCP/IP参考模型中的第二层,位于物理层之上。它的主要作用是在物理介质上传输数据包,并提供可靠的数据传输服务。数据链路层负责将数据包划分为帧,并通过物理介质将帧从发送方传输到接收方。同时,数据链路层还提供了一些错误检测和纠正的功能,以确保数据的可靠性。 在数据链路层中,我们需要了解以下内容: 1. 数据链路层的功能:数据链路层的主要功能包括帧的封装和解封装、差错检测和纠正、流量控制和传输管理等。 2. 数据链路层的协议:常见的数据链路层协议有以太网(Ethernet)、无线局域网(Wi-Fi)、点对点协议(PPP)等。 3. 数据链路层的设备:数据链路层使用的设备包括交换机、网桥等。交换机用于连接多个设备,并根据MAC地址来转发数据帧。 此外,在复习计算机网络数据链路层时,还应该注意以下内容: - 数据链路层的数据传输可靠性指标:误码率是衡量数据传输可靠性的重要指标之一。误码率是指传输中发生错误的比例。较低的误码率表示传输的数据可靠性较高。 - 数据链路层的性能指标:性能指标包括带宽、时延等。带宽指的是单位时间内传输的数据量大小。时延包括发送时延、传播时延、处理时延和排队时延等。 综上所述,计算机网络数据链路层在TCP/IP参考模型中起着重要的作用,它负责将数据包划分为帧,并通过物理介质进行可靠的数据传输。在复习数据链路层时,需要了解其功能、协议、设备以及性能指标等内容。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值