【期末复习】计算机网络 谢希仁版(三)数据链路层

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
简介: 期末计网满绩计划教材:计算机网络(第七版)谢希仁版

期末计网满绩计划

教材:计算机网络(第七版)谢希仁版


数据链路层

数据链路层

1. 链路与数据链路

2. 数据链路层的三个基本问题:封装成帧、透明传输和差错检测

3. MTU 误码率 无差错接受 可靠传输 传输差错:比特差错、帧丢失、帧重复、帧失序

4. 循环冗余校验码 CRC(计算)

5. PPP(特点、帧格式、工作状态)

5.1 特点:

5.2 帧格式

5.3 工作状态

6. 共享通信媒体资源的技术

6.1 静态划分通道

6.2 动态媒体接入控制(多点接入)

7. Mac 地址,I/G 位,G/L 位

7.1 Mac 层的硬件地址

7.2 I/G位

7.3 G/L位

7.4 帧类型

7.5 帧格式

8. CSMA/CD 协议

9. 争用期、冲突窗口、最短帧长

10. 以太网信道利用率

11. 以太网帧格式

12. 透明网桥,生成树协议

12.1 透明网桥

12.2 生成树协议

13. 交换机与集线器比较,VLAN

13.1 交换机与集线器比较

13.1 VLAN 虚拟局域网

14. 以太网物理层标准

15. 载波延伸、分组突发

15.1 载波延伸

15.2 分组突发

16. 课后习题

数据链路层


image.png

1. 链路与数据链路

结点:主机和路由器

链路:从一个结点到相邻结点的一段物理线路,而中间没有其他交换结点。

数据链路:当需要在一条线上传送数据时,处理必须有一条物理线路外,还必须有一些表的通信协议来控制在这些数据的传输,把这些二协议的硬件和软件加到链路上,构成数据链路。

2. 数据链路层的三个基本问题:封装成帧、透明传输和差错检测

封装成帧:把网络层交下来的IP数据包添加首部和尾部封装成帧。

image.png


透明传输:

SOH、EOT一个是开始的控制符号,一个是结束的控制服务。

用特殊比特流实现帧同步,某一个实际存在的事物看起来却好像不存在一样。表示无论是什么样的比特组合数据,都能够按照原样没有差错地通过这个数据链路层。因此,对锁传送地数据来说,这些数据就“看不见”链路层有说明妨碍数据传输地东西。或者说,数据链路层对这些数据来说是透明的。


image.png


为了解决透明传输地问题,就必须设法使数据中可能可能出现地“SOH”和“EOT”在接受端不被解释为控制字符。可以在SOH或是EOT前面插入一个转义字符ESC 而在接受端的数据链路层在把数据送往网络层之前删除这些插入的控制字符。这种方法也称为字节填充,字符填充。

image.png



差错检测:

image.png

image.png


3. MTU 误码率 无差错接受 可靠传输 传输差错:比特差错、帧丢失、帧重复、帧失序

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

误码率BER :在一段时间内,传输错误的比特占所传输比特总数的比率。

无差错接受:凡是接收端数据链路层接收的帧,我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错。

可靠传输:数据链路层的发送端发送什么,在接受端就收到什么。

比特差错:比特在传输过程中可能会产生差错,1可能会变成0,0也可能会变成1。

帧丢失:收到[#1]-[#3](丢失[#2])

帧重复:收到[#1]-[#2]-[#2]-[#3](收到两个[#2])

帧失序:收到[#1]-[#3]-[#2](后传输的帧反而先到达)

4. 循环冗余校验码 CRC(计算)

image.png


image.png

5. PPP(特点、帧格式、工作状态)

PPP 点对点协议,是目前使用得最广泛得数据链路层协议。用于拨号接入得PPP,在以太网交换机和主机之间得点对点链路。不可靠传输,全双工。

image.png


5.1 特点:

简单:PPP协议并没有像TCP协议或是IP协议那么复杂,数据链路层得协议没有必要提供比TCP/IP协议更多的功能,因此数据链路层的帧,不需要纠错,不需要序号,也不需要流量控制。所以IETF把“简单”作为首要的需求。

数据链路层的协议非常简单,接收方每收到一个帧,就进行CRC检验,如果CRC检验正确,就收下这个帧,反之则丢弃这个帧,其他扫码也不做。


封装成帧:PPP协议必须按照规定的特殊字符作为帧定字符。上文提到的SOH或是EOT等等。

透明性:PPP协议必须保证特殊字符的透明性,也就是说如果数据中碰巧出现了和帧定界符一样的比特组合时候,就要采取特殊的措施,如同上文提到的字节填充等等。

多种网络层协议:PPP协议必须能够在同一条物理链路上同时支持多种网络层协议(IP和IPX等)的运行。当然也必须支持局域网或是路由器运行的各种网络层协议。

多种类型链路:PPP协议还能支持多种类型在链路上运行,串行还是并行,同步或是异步,低俗或是高速等等。

差错检测:PPP协议必须能够对接收端收到的帧进行检测,并立即丢失有错误的帧。如果无法进行差错检测,那么错误的无用帧就会在链路层上继续前进,浪费许多网络资源。

检测连接状态:PPP必须具有一种能够及时自动检测链路是否正常工作的状态。每隔几分钟发一次。

最大传送单元:PPP协议必须对点对点的链路设置最大传送单元MTU,如果高层发送分组过长并超过MTU的数值,PPP就要丢弃这样的帧,并返回差错。强调一点:MTU是数据链路层的帧可以载荷的数据部分的最大长度,不是帧的长度。

网络层地址协商:PPP协议必须提供使得通信的两个网络层(例如两个IP层)的实体能够通过协商知道或能够配置彼此的网络地址。

数据压缩算法:提供一种方法来协商使用数据压缩算法,但是PPP协议并不要求数据压缩算法进行标准化。

PPP协议的组成


一个将IP数据报封装到串行链路的方法。

一个用来建立、配置和测试数据链路层连接的链路控制协议LCP。

一套网络控制协议NCP。

5.2 帧格式

image.png


各字段的意义

F :标志字段

A :地址字段

C :控制字段


字节填充

当信息字段中出现和标志字段意义的比特(0x7E)组合时,就必须采取一些措施是这种形式上和标志字段一样的比特不出现在信息字段中


把信息字段中出现的每一个0x7E字节转变成为2字节序列(0x7D、0x5E)

若信息字段中出现一个0x7D的字节(即出现了和转义字符一样的比特组合),则把0x7D字节,同时将转变为2字节序列(0x7D、0x5D)。

若信息字段中出现ASCII码的控制字符,则在该字符前面加一个0x7D字节,同时将字符的编码加以改变。

零比特填充

PPP协议用在SONET/SDH链路时,使用同步传输(一连串的比特连续传送)而不是异步传输(逐个字符地传送)。在这种情况下就要采用零比特填充方法来实现透明传输。

在发送端像扫描整个信息字段。

只要发现5个连续地1,则立即填入一个0.

接收方收到一个帧,先找到一个标志字符F,确定一个帧的边界。

发现5个连续1是,就把5个连续的1后的一个0删除,还原成原来的信息比特流。

image.png


5.3 工作状态

image.png


物理层连接建立

再进行LCP配置协商,如果协商失败,则链路静止。

如果成功进行鉴别,鉴别失败则链路终止

鉴别成功或无须鉴别,则进入网络层协议,进行NCP配置协商。

当网络层配置完毕后,链路就进入可进行数据通信的链路打开状态。

LCP(链路控制协议)是PPP协议的底层,负责链路控制;

NCP(网络控制协议)是PPP协议的上层,负责网络控制。


6. 共享通信媒体资源的技术

6.1 静态划分通道

上一章提到的,频分复用,时分复用,波分复用,波分复用和码分复用。


6.2 动态媒体接入控制(多点接入)

信道并非再用户通信时固定分配给用户。


随机接入:

所有用户可随机地发送信息。但如果恰巧有两个或更多地用户通信同一时刻发送信息,那么在共享媒体上产生碰撞(发生冲突)。


受控接入:

用户不能随机的发送信息而必须必须服从一定的控制。这类的典型代表有分散控制的令牌环局域网和集中控制的多点线路探询,也称为轮询。


7. Mac 地址,I/G 位,G/L 位

7.1 Mac 层的硬件地址

硬件地址又称物理地址或MAC地址


7.2 I/G位

地址字段的第一个字节的最低位为I/G位,当I/G位为0时,地址字段表示一个的单个站地址。当I/G位为1时表示组地址,用来进行多播。


7.3 G/L位

地址字段第1字节的最低第二位规定为G/L位,当G/L为0时候是全球管理(保证全球没有相同的地址),当G/L为1时时本地管理,这时用户可任意分配网络上的地址。


7.4 帧类型

单位帧 (一对一):收到的帧的MAC地址于本站的硬件地址相同

广播帧(一对全体):即发送给本局域网上所有站点的帧(全1地址)

多播帧(一对多):即发送给本局域网上的一部分站点的帧。

7.5 帧格式

image.png


8. CSMA/CD 协议

载波监听,多点接入,碰撞检测,为了减少冲突发生的概率。不可靠传输,半双工。


多点接入:就是说明这是总线型网络,许多计算机以多点接入的方式连接在以跟总线上。协议的实际是“载波监听”和“碰撞检测”

载波监听:用电子技术检测总线上有没有其他计算机也在发送。就是检测信道,不管在发送前,还是发送中,每个站都必须不停地检测信道。

碰撞检测:边发送边监听,即适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据其他站是否也在发送数据。

image.png

每一个站在自己发送数据之后的一小时内,存在着遭遇碰撞的可能性。这一小段是不确定的,它取决于另一个发送数据的站到本站的距离。因此以太网不能保证某一时间之内一定能把自己的数据帧成功发出去,因为存在碰撞。

9. 争用期、冲突窗口、最短帧长

争用期:从上图我们可以知道最先发送数据帧A站,在发送数据帧后至多经过时间2t就可以知道所遇到的数据帧是否遭受到了碰撞,因此以太网的端到端往返时间2t为争用期。经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发送碰撞。

冲突窗口

也叫争用期和碰撞窗口

最短帧长

最短帧长是64字节,凡是小于64字节的帧都是由于冲突而异常终止的无效帧。只要收到了这种无效帧,就应该立即将其丢弃。

10. 以太网信道利用率

以太网的信道被占用的情况。


image.png


image.png

image.png

只有当参数a远小于1才能得到尽可能高的极限信道利用率。


11. 以太网帧格式

以太网V2的MAC帧较为简单,由五个字段组成。


前两个字段分别6字段长的目的地址和源地址字段。

第三个字段是2字段和类型字段。用来表示标志上一层使用的是什么协议,以便把收到来的MAC帧的数据上交到上一层的这个协议。

第四个字段是数据字段。

最后一个字段是帧检验序列FCS(使用CRC检验)

image.png

12. 透明网桥,生成树协议

12.1 透明网桥

透明网桥是一种即插即用设备,只要把网桥接入局域网,不需要改动硬件和软件,无需设置地址开关,无需装入路由表或参数,网桥就能工作。


12.2 生成树协议

在不改变网络的实际拓扑,但在逻辑上则切断了某些链路,使得一台主机到所有其他主机的路径是无环路的树状结构,从而消除了都兜圈子现象。


防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源。


13. 交换机与集线器比较,VLAN

13.1 交换机与集线器比较

交换机把集线器淘汰了。

1)在OSI/RM(OSI参考模型)中的工作层次不同

交换机和集线器在OSI/RM开放体系模型中对应的层次就不一样,集线器是同时工作在第一层(物理层)和第二层(数据链路层),而交换机至少是工作在第二层,更高级的交换机可以工作在第三层(网络层)和第四层(传输层)。


(2)交换机的数据传输方式不同

集线器的数据传输方式是广播(broadcast)方式,而交换机的数据传输是有目的的,数据只对目的节点发送,只是在自己的MAC地址表中找不到的情况下第一次使用广播方式发送,然后因为交换机具有MAC地址学习功能,第二次以后就不再是广播发送了,又是有目的的发送。这样的好处是数据传输效率提高,不会出现广播风暴,在安全性方面也不会出现其它节点侦听的现象。


(3)带宽占用方式不同

在带宽占用方面,集线器所有端口是共享集线器的总带宽,而交换机的每个端口都具有自己的带宽,这样就交换机实际上每个端口的带宽比集线器端口可用带宽要高许多,也就决定了交换机的传输速度比集线器要快许多。


(4)传输模式不同

集线器只能采用半双工方式进行传输的,因为集线器是共享传输介质的,这样在上行通道上集线器一次只能传输一个任务,要么是接收数据,要么是发送数据。


13.1 VLAN 虚拟局域网

VLAN是由一些局域网网段构成的构成的与物理地址无关的逻辑组,而这些网段具有某些共同的需求。每一个VLAN的帧都有一个明确的标识符,指明发送这个帧的计算机是属于哪一个VLAN。

image.png

三个虚拟局域网VLAN1 VLAN2 VLAN3的构成


可以看出每一个VLAN的计算机处在不同的局域网中,也可以不再同一层楼中。


14. 以太网物理层标准

在100Mbit/s的以太网中采用的方法是保持最短帧长不变,对于铜缆100Mbit/s以太网,一个网段的最大长度是100m,其最短帧长64字节,即512比特,因此争用期是5.12us,帧间最小间隔现在是0.96us,都10Mbit/s以太网的1/10。


15. 载波延伸、分组突发

全双工时不使用


15.1 载波延伸

在千兆以太网中加到一个介质访问控制帧尾部的若干个比特。用以让该帧传输更长的时间,避免发生冲突。


15.2 分组突发

为避免发送短帧时的载波延伸开销,当很多短帧要发送时,第一个短帧要采用上面所说的载波延伸的方法进真充。


16. 课后习题

第一题(3-07)

要发送的数据为1101011011.采用CRC的生成多项式是P(X)=X^4+X+1,求应添加在数据后面的余数。数据在传输过程中最后一个1变成了0,问接收端能否发现?最后两个1都变成0呢?

image.png



第二题(3-09)

一个ppp帧的数据部分(用十六进制写出)是7D 5E FE 27 7D 5D 7D 5D 65 7D 5E。请问真正的数据是什么?

image.png


第三题(3-10)

PPP协议使用同步传输技术传送比特串0110111111111100。试问经过零比特填充后变成怎样的比特串?若接收端收到的PPP帧的数据部分是0001110111110111110110,问删除发送端发送端加入的零比特后变成什么样的比特串?image.png



第四题(3-14)

常用的局域网的网络拓扑有哪些种类?现在最流行的是哪种结构?image.png



第五题(3-16)

数据率为10Mbit/s的以太网在物理媒体上的元码传输属于为多少?

image.png

所以是加倍了,2*10e6 码元/s

image.png

第六题(3-18)

说明一下10BASE-T中的10、BASE、T所代表的意思?


image.png

第七题(3-20)

假定1km长的CSMA/CD网络的数据率为1Gbit/s。设信号在网络上的传播速率为200000 km/s。求能够使用此协议的最短帧长。

image.png


第八题(3-21)

什么叫比特时间,使用这种时间单位有什么好处,100比特时间是多少微秒?


image.png

第九题(3-22)

假定在使用CSMA/CD协议的10Mbit/s以太网中某个站在发送数据时检测到碰撞,执行退避算法时选择了随机数r=100.试问这个站需要等待多长时间后才能再次发送数据?如果是100Mbit/s的以太网


image.png


第十题(3-24)

假定站点A和点B在同一个10Mb/s以太网网段上。这两个站点之间的传播时延为225比特时间。现假定A开始发送一

帧,并且在A发送结束之前B也发送一帧。如果A发送的是以太网所允许的最短的帧,那么在A在检测到和B发生碰撞之前能否把自己的数据发送完毕?换言之,如果A在发送完毕之前并没有检测到碰撞,那么能否肯定A所发送的帧不会和B发送的帧发生碰撞?(提示:在计算时应当考虑到每一个以太网帧在发送到信道时,在MAC帧前面还要增加若干字节的前同步码和帧定界符)

这两题直接看答案吧,答案讲的很清楚(字太多不想打)


image.png

image.png


第十一题(3-25)

在上题中的站点A和B在t=0时同时发送了数据帧。当t=255比特时间,A和B同时检测到发生了碰撞,并且在t=255+48=273比特时间完成了干扰信号的传输。A和B在CSMA/CD算法中选择不同的r值退避。假定A和B选择的随机数分别是rA=0和rB=1。试问A和B各在什么时间开始重传其数据帧?A重传的数据帧在什么时间到达B?A重传的数据会不会和B重传的数据再次发生碰撞?B会不会在预定的重传时间停止发送数据?


image.png


image.png


第十二题(3-27)

有10个站连接到以太网上。试计算以下三种情况下每一个站所能得到的带宽。

(1)10个站都连接到一个10Mb/s以太网集线器

(2)10个站都连接到一个100Mb/s以太网集线器

(3)10个站都连接到一个10Mb/s以太网交换机


image.png


第十三题(3-33)

以太网交换机有6个接口,分别接到5台主机和一个路由器。在下面表中的“动作”一栏中,表示先后发送了4个帧。假定在开始时,以太网交换 机的交换表是空的。试把该表中其他的栏目都填写

image.png


image.png

答案:

image.png

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
2月前
|
网络协议 算法 网络架构
计算机网络期末复习——基础知识汇总(二)
计算机网络期末复习——基础知识汇总(二)
44 0
|
2月前
|
网络协议 网络架构
计算机网络期末复习——计算大题(一)
计算机网络期末复习——计算大题(一)
100 0
计算机网络期末复习——计算大题(一)
|
11天前
|
存储 网络协议 Linux
|
1月前
|
网络协议 网络虚拟化 网络架构
计算机网络:数据链路层(VLAN)
计算机网络:数据链路层(VLAN)
|
1月前
计算机网络:数据链路层(广域网、PPP协议、HDLC协议)
计算机网络:数据链路层(广域网、PPP协议、HDLC协议)
|
1月前
|
缓存 算法 数据安全/隐私保护
计算机网络:数据链路层(介质访问控制)
计算机网络:数据链路层(介质访问控制)
365 0
|
1月前
|
存储 网络架构
计算机网络:数据链路层(网桥)
计算机网络:数据链路层(网桥)
|
1月前
|
传感器 C++
计算机网络:数据链路层之差错控制、奇偶校验码、CRC循环冗余码、海明码
计算机网络:数据链路层之差错控制、奇偶校验码、CRC循环冗余码、海明码
|
2月前
|
存储 缓存 网络协议
|
2月前
|
算法 网络协议 网络架构
计算机网络-网络层:IP协议
【2月更文挑战第1天】
46 0