第3章 数据链路层
数据链路层使用的信道主要有两种:点对点信道;广播信道。
一、 点对点信道
1、 链路(物理链路)与数据链路(逻辑链路)的区别
数据链路与链路的区别在于数据链路除链路外,还必须有一些必要的规程来控制数据的传输,因此,数据链路比链路多了实现通信规程所需要的硬件(网络适配器)和软件(数据链路层的各种协议)。
2、 数据链路层的主要功能
数据链路层把网络层交下来的数据封装成帧以比特流的形式发送到链路上,以及把接收到的帧中的数据取出并上交给网络层。
3、 数据链路层协议有很多,但都要解决的三个基本问题:封装成帧、透明传
输、差错检测
a) 封装成帧:各种数据链路层协议都要对帧首部和帧尾部的格式有明确
的规定。
帧首部和帧尾部:包含帧定界符和必要的控制信息。 帧的数据部分:网络层传下来的IP数据报 思考:有了帧定界符的好处(P66下)
b) 透明传输:主要是避免二进制比特流中出现与帧定界符号相同的模
式,使接收端错误识别帧。(字节填充法可实现透明传输P67) 思考:什么是透明传输?
c) 差错检测:是为了避免接收到错误信息和防止信道中出现的无效数据
帧浪费后续路由上的传输和处理资源。
检错方法有很多,本教材重点介绍了循环冗余检验CRC,其实还有奇偶检验、方块检验等。相对而言,CRC检错能力比较强。不管哪种方法得到的添加到要发送数据后面的冗余码称为帧检验序列(FCS)。
CRC检错原理:在发送端发送数据后面加上由计算得来的冗余码,接收端收到数据后,用该数据除以生成多项式得到的除数,看余数是否为0。是,证明帧在传输中没有出现比特差错,则接收;否,则丢弃。
数据链路层向上层只需提供的是不可靠的传输服务(CRC只能检测比特差错(不能纠错),而帧丢失、帧失序、帧重复之类的传输差错则检查不出来),所以无需有帧编号、确认和重传机制。
4、 点对点协议PPP
需要明白:
PPP协议工作在数据链路层! PPP协议不支持纠错、流量控制、帧序号、多点线路(只支持点对点链路)、半双工或单工链路(只支持全双工链路!)
PPP协议是不可靠的、点对点的、面向连接的、无确认、支持全双工的协议!
1
思考:为什么PPP协议是不可靠的?无确认的?又能支持全双工? 既然PPP协议工作在数据链路层,也要解决三个基本问题: 封装成帧:PPP协议帧格式!!!记住! 透明传输:同步传输用零比特填充法实现透明传输;异步传输用字节填充法实现透明传输。
差错检测:各种检错方法生成FCS
二、 广播信道
1. 局域网使用的就是广播信道!!
2. 局域网的拓扑结构:星型网、环形网、总线网、树型网 3. 广播信道是一种共享信道。共享信道技术有:
a) 静态划分信道:(时分复用、频分复用等),代价太高,不适合局域网。 b) 动态媒体接入控制:
? 随机接入(所有的用户可随机地发送信息,必须有解决碰撞的网
络协议。以太网使用较多)
? 受控接入:用户不能随机发送信息必须服从一定的控制。(局域
网用的较少)
4. 以太网的两个标准
DIX Ethernet V2 和IEEE802.3
两者就帧格式稍不同,前者以太网,后者局域网。前者在局域网市场中取得垄断地位,所以把局域网都几乎称为以太网,成了局域网的代名词。
而DIX Ethernet V2制定的传统以太网就是10Mbps的总线型局域网,本章后主要围绕10Mbps传统总线型以太网举例。
5. 网络适配器(网卡)的作用
其实适配器最重要的功能是负责数据帧的收发,对计算机网络层交下来的数据封装成帧,传输到物理层线路上;对收到的帧进行检错,判断是丢弃还是上交给计算机的网络层。适配器中有存储芯片,RAM用来作为缓存以平衡网络上的数据率和计算机数据率的不同,ROM则存放着MAC地址,以在总线上正确的寻找设备。
6. CSMA/CD协议(载波监听多点接入/碰撞检测)
预备知识:
a) 总线的特点:当一台计算机发送数据时,总线上所有的计算机都能检测
到这个信号。这就是广播通信方式。(P79倒数第四段)(思考;即使广播信道也能实现一对一的通信,如何实现?P79倒数第四段)
b) 我们所讨论的局域网就是基于总线型的10Mbps的传统以太网,以此举
例说明协议的工作方式。
c) 总线上只要有一台计算机在发送数据,总线就被占用。在同一时间只能
允许一台计算机发送信息,否则会相互干扰,发生信号碰撞。
记住:CSMA/CD协议就是解决总线型广播信道形式的以太网信号如何避免碰撞以及碰撞后如何处理的问题,以让总线上各个主机能很好共享信道!!
2
CSMA/CD协议可归结为四点:先听后发、边听边发、冲突停止、延迟重发 CSMA/CD协议用于总线型广播信道、半双工通信的以太网!!!(思考:为何不能用于全双工网络?)
CSMA/CD协议需要记住的几个参数: a) 单程端到端的传播时延T b) 端到端往返时延2T
c) 争用期,即碰撞窗口2T
d) 以太网的争用期51.2μs,即512比特时间
e) 以太网规定的最短帧长64字节(思考:怎么得来的),凡长度小于64
字节的帧都是由于冲突而异常终止的无效帧
f) 强化碰撞:当发送数据的站一旦发现发生了碰撞时,除了立即停止发送
数据外,还要再继续发送32或48比特的人为干扰信号,以便让所有用户都知道现在已经发生了碰撞。
g) 帧间最小间隔9.6μs,即96比特时间
h) 熟练掌握截断二进制指数退避算法
7. 以太网的信道利用率
α= T/ T0
以太网极限信道利用率Smax= T0/( T0+ T)=1/(1+α)
其中,T是单程端到端的传播时延,T0是帧的发送时间 得出以下结论:
参数α越大,表明争用期所占的比例增大,使没发生一次碰撞就浪费了不少的信道资源,使得信道的利用率明显降低。
当数据率一定时,以太网的连线的长度受到限制(否则T的值会太大),同时以太网的帧长不能太短。
以太网的参数α应尽可能小些,只有当参数α远小于1才能得到尽可能高的极限信道利用率。
8. MAC地址
a) MAC地址是固化在适配器的ROM中的地址
b) 48位,6字节,计算机上面显示是用12位16进制数表 c) 数据链路层上的帧就是按MAC地址来寻址的 d) 适配器的过滤功能(P88页):适配器从网络上每收到一个MAC帧就先
用硬件检查MAC帧中的目的地址。如果是发往本站的帧就收下,然后再进行其他的处理。否则就将帧丢弃,不再进行其他的处理。这样就不浪费主机的处理机和内存资源。
3
9. 了解单播、广播、多播的概念。
10. MAC帧的格式(重点!!)
a) MAC帧首部的源地址和目的地址都是网络上主机的MAC地址 b) 数据部分长度是46~1500,思考为什么?P89
c) 帧首部添加7字节的前同步码和1字节的帧开始定界符,它们作用为
何?(P90中)
d) 当数据字段长度小于46字节时,MAC子层会在数据字段的后面加入一
个整数字节的填充字段,以保证以太网的MAC帧长不小于64字节。思考:上层协议如何知道填充字段的长度,以在接收时剥去填充字段呢?P90第二段。
e) 思考?MAC帧为何没有帧结束定界符(P90中)
三、 扩展以太网
1. 在物理层扩展(使用集线器)
a) 集线器工作在物理层
b) 集线器收到数据后会通过除接收该数据的口外其他所有接口把数据转发
出去,只有转发能力
c) 集线器内容结构还是一根总线.P85图3-20
d) 每个接口只是简单的转发比特,不进行碰撞检测,相当于一个多接口的
转发器
e) 使用集线器的以太网在逻辑上仍是一个总线网,各站共享逻辑上的总线,
使用的还是CSMA/CD协议
综上集线器的特点,得出以下结论:
1) 集线器只是在物理层面上扩大了以太网的范围
2) 集线器把各个碰撞域的网段连接在一起形成了一个更大的碰撞域(内部
还是总线结构)
3) 集线器不能连接数据率不同或使用不同以太网技术的网段
2. 在数据链路层扩展(使用网桥、交换机)
a) 网桥和交换机工作在数据链路层
b) 网桥对收到的帧进行转发和过滤(由网桥中的转发表决定)
c) 网桥收到帧后先存入缓存再查找转发表决定是转发还是丢弃,所以网桥
具备存储转发的能力,由此也决定了下面一点
d) 网桥可以使以太网各网段成为隔离开的碰撞域,即不同网段上的通信不
会相互干扰(此点与集线器作对比) e) 网桥可互连不同速率的以太网 f) P93网桥的优缺点,理解掌握
透明网桥
重点掌握转发表的自学习算法。P95仔细研究,做P107页3-32题
4
交换机(多接口网桥、交换式集线器、第二层交换机、以太网交换机) 重点!!
使用交换机互联的局域网又称交换式局域网,传统的总线局域网又称共享式局域网
以太网交换机和网桥的异同:(重点把握、理解!)
a) 以太网交换机实际上是一个多接口的网桥,以太网交换机通常有十几到
几十个端口,而网桥一般只有2到4个端口;它们都工作在数据链路层。 b) 网桥的端口一般连接到局域网(网段),而以太网交换机的每个接口一
般都直接与一个单个主机或和一个集线器相连。
c) 交换机允许多对计算机间同时通信,使每一对相互通信的主机都能像独
占通信媒体那样,无碰撞地传输数据。而网桥允许不同网段上的计算机同时通信。
d) 网桥采用存储转发的方式进行转发,而以太网交换机还可采用直通方式
转发P98。以太网交换机采用了专用的交换机构芯片,转发速度比网桥快。
e) 以太网交换机和透明网桥一样,也是一种即插即用设备,其内部的帧转
发表也是通过自学习算法自动逐渐建立起来的。 理解P97页倒数第2段的分析。做P107页3-28题。理解P100页倒数第三段。CSMA/CD协议、全双工和以太网交换机之间的关系。
利用以太网交换机可以很方便的实现虚拟局域网,理解虚拟局域网的定义。
虚拟局域网特点:在虚拟局域网上的每一个站都可以听到同一个虚拟局域网上的其他成员所发出的广播。而不同的虚拟局域网上的站则收不到该广播。不论这些站是否在一个交换机上连接。(虚拟局域网会在实验课上用命令来实现)
5