第4章 数据链路层(1)_三个基本问题

1. 数据链路层的三个基本问题

1.1 数据链路和帧

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

  ①注意:集线器不是交换节点,因此计算机A和路由器1之间是一条链路。

  ②交换机是一个交换节点,因此,计算机B和路由器3之间的链路有链路4和链路5两条

(2)数据链路(Data Link):物理线路+通信协议。数据链路层的协议数据单元被称为帧

  ①数据链路层把网络层交下来的数据(被称为IP数据报、数据报、分组或包)添加首部和尾部封装成帧发送到链路上,以及把接收到的帧中的数据取出来并上交给网络层。

  ②数据链路层封装的帧,在物理层变成数字信号在链路上传输。如果不考虑物理层的传输细节,就可以认为数据帧通过数据链路由从节点A发送到节点B(如上图虚线所示

1.2 3个基本问题

(1)封装成帧

  ①数据链路层将IP的数据报的前后分别添加首部和尾部,构成一个帧。但因该层的协议很多,不同协议的帧的首部和尾部信息所有不同。

  ②帧的首部和尾部有帧开始符和结束符,被称为帧定界符

  ③每一种数据链路层协议都规定了所能传送帧的数据部分的长度上限——最大传输单元(MTU),以太网的MTU为1500个字节。注意,MTU指的是数据部分长度

(2)透明传输

  ①帧定界符:可以选用ASCII码表中的SOH(0x01)作为帧开始定界符,EOT(0x04)为帧结束定界符。

  ②如果数据部分出现“EOT”或“SOH”时要进行字节填充。(具体方法发送端的数据链路层在数据中出现控制字符“EOT”、“SOH”以及“ESC”,则在前面插入一个转义字符“ESC”的编码。接收端的数据链路层在收到删除这个插入的转义字符。这样用字节填充法解决透明传输的问题)。

(3)差错检测

  ①现实的通信链路都不会是理想的,在传输过程中可能会产生差错。为了保证数据传输的可靠性,必须采用各种差错检验技术(如循环冗余检验,CRC)。

  ②要让接收端能够判断帧在传输过程中是否有差,需要在帧中包含用于检测错误的信息,这部分信息称为“帧校验序列(FCS)

  ③以CRC技术为例计算FCS。假设要检测的数据为M=101001(注意,不仅包含帧的数据部分,还包含了数据链路层的首部),要想得到n位FCS。则计算过程如下:

    A.要得到n位的FCS,则必须先在M后面添加n位(这里假设n为3)的0,得到被除数101001 000。再除以收发双方事先商定好的n+1位除数P(设为1101),得到商Q,余数R(n位,比除数少一位),这个R(001)就是要计算的FCS

    B.接收方收到后,会使用M和FCS合成一个二进制数(即101001001),再除以P(1101),如果余数为0,表示该帧没有差错否则表示传输有差错,就会丢弃从而出现丢包现象(这个得由传输层的TCP协议通过丢包重传来实现可靠传输)

  ④帧检验序列FCS包含了帧的数据部分(来自网络层)和数据链路层的首部。这意味着,如果通信经过多条链路时,IP数据报的源和目标地址会被修改或者经过路由器时网络层首部的TTL(生存时间减1),这些会造成IP数据报的变化。而当通信由一条链路到下一条链路时由于协议不同,会造成数据链路层首部格式不同,帧开始和结束符也不同,这都需要将帧进行重新封装,重新计算FCS。幸运的是,这些都是由硬件完成的,处理速度很快,不会延误数据的传输。

时间: 2024-10-03 15:01:29

第4章 数据链路层(1)_三个基本问题的相关文章

第三章 数据链路层(三)

序言 一上午搞那个路由器,在图书馆的局域网连路由器开wifi,忙活了一上午,有个疑问,那个插口直接连网线到电脑上就可以用,但是连到路由器上时路由器就不能够自己获取ip地址了,难道是因为线太长了吗?连到别的插口就可以了,等晚上人少的时候在试试,其中原理不是很清楚,希望学习完这本书能够理解一点,路由器设置就是傻瓜式的设置.赶紧写一下今天的这篇文章,结束掉数据链路层这一章节吧. ---WH 一.局域网 局域网和以太网的区别和联系? 是以太网就一定是局域网,但是局域网不一定就是以太网. 因为以太网就是一

《计算机网络(第7版)谢希仁 著》第三章 数据链路层 要点及习题总结

1.数据链路层的三个基本问题:封装成帧,透明传输,差错检测 2.点对点信道的数据链路层 (1)链路和数据链路 链路(物理链路):链路(link)就是从一个结点到相邻结点的一段物理线路(有线或无线〉,而中间没有任何其他的交换结点 数据链路(逻辑链路):为当需要在一条线路上传送数据时,除了必须有一条物理线路外,还必须有一些必要的通信协议来控制这些数据的传输,换而言之,数据链路=链路+通信协议 (2)早期的数据通信协议叫通信规程 (3)数据链路层的协议数据单元-------帧 (4)封装成帧:封装成帧

【计算机网络】第三章 数据链路层

第三章  物理层 一  各专有名词含义 1. 数据链路使用的信道 点对点信道(网线)这种信道使用一对一单播的点对点通信方式. 广播信道(无线局域网)这种信道使用一对多的广播通信方式,因此过程比较复杂.广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送. 2. 链路与帧 链路 (link) :是一条无源的点到点的物理线路段,中间没有任何其他的交换结点.又称为“物理链路”.一条链路只是一条通路的一个组成部分. 数据链路 (data link): 除了物理线路外,还必须有

2016.6.13 计算机网络复习要点第三章 数据链路层

**数据链路层使用的信道主要有以下两类: (1)点对点信道:使用一对一的点对点通信方式. (2)广播信道:使用一对多的广播通信方式.广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送. 3.1使用点对点信道的数据链路层 **链路:就是从一个结点到相邻结点的一段物理线路(有线或无线),而中间没有任何其他的交换结点.链路只是一条路径的组成部分. **数据链路:当需要在一条线路上传送数据时,除了必须有一条物理线路外,还必须有一些必要的通信协议来控制这些数据的传输.若把实现

第三章 数据链路层

3.1数据链路层基本概念及基本问题 3.1.1基本概念 数据链路层使用的信道主要有以下两种类型: 点对点信道:这种信道使用一对一的点对点通信方式.(使用PPP协议) 广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂.广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送.(CSMA/CD 带冲突检测的载波侦听检测多路访问检测) 链路(link)是一条点到点的物理线路段,中间没有任何其他的交换结点. 一条链路只是一条通路的一个组成部分. 数据链路(data l

第三章 数据链路层(一)

序言 我是一只菜鸟,又来了.开始今天数据链路层的学习吧. ---WH 一.数据链路层基本概念及基本问题 基本概念  和 三个基本问题 的讲解 1.基本概念 先来看一张图,理解一下:数据链路层之间的运输.数据链路层之间的信道. 说的是什么意思? 看图中的注释,我们应该注意的就是这里说的数据链路层之间的信道等语句,是不考虑物理层中运输的问题.直接考虑链路层这一层.要注意这个事情,不然 链路:一条点到点的物理线路段,中间没有任何其他的交换结点,通俗的将,就是一根线,其中不经过任何东西,这样的就是链路,

第七章 F# 库(三)

序列(Microsoft.FSharp.Collections.Seq)模块 Microsoft.FSharp.Collections.Seq 模块包含所有处理集合的模块,只要它支持 IEnumerable 接口, .NET 框架的 BCL 中的大多数集合都是的.这个模块之所以称为序列(Seq),是因为序列是IEnumerable 接口的别名,是对其简称,为了读.写更方便.给定类型定义时使用这个别名. 注意 FSLib 包含几个模块,用于处理不同类型的集合,包括Array(数组).Array2(

计算机网络之数据链路层概述一->使用点对点信道的数据链路层和三个基本问题

1.数据链路和帧. (1)链路是指两相邻结点之间的一段物理线路.当需要在一条线路上传输数据时,就需要一些通信协议来对这些数据进行控制,把实现这些协议的硬件和软件与物理线路结合就构成了数据链路.实现的方法就比如说网络适配器. (2)帧就是当网络层向下传递Ip数据报后,数据链路层对Ip数据报进行封装,即加上首部和尾部,也就构成了帧. 2.三个基本问题 (1).封装成帧. 加上首部和尾部.首部和尾部的一个显著作用就是进行帧定界,以此接受端就能够知道那一部分时一个帧.首部帧定界符就是SOH,十六进制编码

跟我学网络原理之(数据链路层)数据链路层基本概念及三个基本问题

信道: n 点对点信道 n 广播信道 链路: 一条点到点的物理线路.一条链路只是一条通路的一个组成部分 数据链路: 将控制数据传输的通信协议的硬件和软件加到链路上,形成数据链路. 最常用的是用网卡实现协议的硬件和软件. 一般的适配器都包括数据链路层和物理层的功能. 我的理解:假设我要去从宿舍到银座买东西,我经过的宿舍.公路.银座这条马路是一条实实在在的物理路,叫链路.当我出宿舍的时候,宿舍阿姨让我打扮一下,如果我不打扮的漂亮点就不让我出宿舍门,我只好遵守规则.到了公路以后,需要遵守交通信号灯,到