第三章. 数据链路层

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

3.1.1 数据链路层的基础知识:

数据链路层是OSI参考模型第二层,上层是网络层。
1、数据链路层主要目的:将原始的、有差错的物理线路变成无差错的数据链路。
2、数据链路层主要功能
链路管理——数据链路的建立维护释放
帧同步——接收方应从收到的比特流中正确地判断出一帧的开始与结束位;
⑶.流量控制——控制发送方的数据发送速度,使得接收方来得及接收,以致网络不发生拥塞;
⑷.差错控制——发现传输中出现的错误;
⑸.透明传输——采取适当措施,使接收方不至于把数据误认为是控制信息;
⑹.寻址——收发双方应知道对方是谁;

3、数据链路层的简单模型:

4、数据链路层使用的信道主要有以下两种类型:
①.点对点信道——这种信道使用一对一的点对点通信方式。
②.广播信道——这种信道使用一对多的广播通信方式,过程比较复杂。广播信道上连接的主机很多,必须使用专用的共享信道协议来协调这些主机的数据发送。

5、基本概念:链路和数据链路
⑴、链路——是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。
注意:一条链路只是一条通路的一个组成部分;
⑵、数据链路——除了物理线路外,还必须有通信协议来控制这些数据的传输。若
把实现这些协议硬件软件加到链路上,就构成了数据链路;
即:数据链路 = 链路 + 控制数据传输的通信协议

①.现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件
②.一般的适配器都包括了数据链路层和物理层这两层的功能。

6、数据链路层协议传输的数据单位数据帧( 简称“帧” );
注意:物理层传输的数据单元是“比特”、网络层传输的数据单元是“IP数据报” (简称:数据报、分组、包)
7、实现数据链路层协议的最常用设备:网络适配器(即:网卡 或 网络接口卡);

3.1.2、点对点信道数据链路层通信主要步骤:

⑴、发送方A数据链路层将网络层交下来的IP数据报添加首部和尾部封装成帧;
⑵、发送方A将封装好的帧发送给结点B的数据链路层
⑶、接收方B收到的帧无错,则从帧中提取出IP数据报转交给网络层;若有错,则丢弃该帧(如下图所示)。


3.1.3、三个基本问题:封装成帧透明传输差错检测

1、封装成帧——在一段数据的前后分别添加首部尾部,就构成了一个帧
⑴、帧的首部和尾部一个重要作用是进行帧定界
⑵、帧首和帧尾还包括许多必要的****控制信息
⑶、为提高帧传输效率,应使帧的数据部分尽可能大;
⑷、每一种链路层协议都规定了数据部分长度上限 MTU 1500 bit

帧长 = 帧首部长 + 数据部分长 + 帧尾部长

【例题3.1】当数据仅由可打印的ASCⅡ码组成的文本文件时,帧定界可以使用特殊的帧定界符。
SOH帧开始符) 帧中数据部分 EOT帧结束符)
SOH 表示控制字符名称,ASCⅡ码为00000001,不是‘S’、‘O’、‘H’。
EOT 也是控制字符名称,ASCⅡ码为00000100,不是‘E’、‘O’、‘T’。

2、透明传输 当数据部分是非ASCⅡ文件时,若数据某字节恰好是SOH或EOT这种控制字符时,数据链路层就会错误地处理帧,这就是“不透明传输”,显然:如果数据部分某字节是SOH或EOT字符时也能正确传输,我们称之为透明传输。
实现透明传输的方法——插入转义字符ESC(**00011011 1B **):
⑴、若数据部分出现EOT或SOH时,就在这个EOT和SOH前插入ESC;接收方在送交网络层之前将这个ESC删除。
⑵、用ESC ESC表示ESC。
上述方法称之为“字节填充”或“字符填充
3、差错检测
⑴、差错产生的原因和差错类型:
当数据从信源出发经过通信信道时,由于通信信道存在着噪声,因此数据信号通过通信信道到达信宿时,接收到的信号必然是数据信号与信号电平的叠加。
接收方对叠加后的信号进行判断,以确定0、1值。如果判断错误,则会产生数据传输错误。
噪声分两类——热噪声、冲击噪声:
①.热噪声是由传输介质导体的分子热运动产生的。时刻存在,由它引起的噪声是随机的,引起的差错是随机差错;
②.冲击噪声引起突发错。

误码率——二进制比特在数据传输系统中被传错的概率。

⑵、CRC循环冗余编码工作原理:
将要发送的数据比特序列当作一个多项式f(x)的系数,在发送端用收发双方预先约定的生成多项式G(x)去除,求出一个余数多项式。将余数多项式加到数据多项式后发送到接收端;
接收端用同样的G(x)去除收到的f1(x),得到余数多项式。如果得到的余数多项式与接收到的余数多项式相同,表示传输无错。否则有错,发送方重传;
注意 G(x)由协议来规定,其结构及检错效果是经过严格数学分析与实验后确定;

⑶、CRC具体做法:

发送方将要发送的数据分组,假定每组K个比特,其多项式为M(x),生成多项式为r阶多项式G(x),则在原始数据后加N个0形成xrM(x),用xrM(x)按照模2除法除G(x)得到余项,把余项放在原始数据尾部作为真正的发送数据;CRC运算就是在数据M后添加N位冗余码,供差错检测用,然后将数据与冗余码一起发送出去,共(K+N)位。

冗余码求法如下——将数据M乘以2N,相当于在M后加N个0.用事先商量好的长度为(N+1)位的除数P除,得到余数R,然后把R放在数据M后面,具体如下例:
【例题3.2】发送数据M=1101011011(K=10),双方约定生成多项式为10011,即:G(x)=x4+x+1,N=4;

故实际发送为1100110111110(在数据后面添加的冗余码1110称为帧检验序列 FCS);
接收方将收到的每一帧用同样的除数P除,检查余数,若余数为0则无错,否则有错,余数不为0的概率极小,一般而言传输出错而余数为0的概率极小。

【练习】要发送数据为1101011011,P(x)= x4+x+1.求余数。

⑷、特别注意以下问题:

①.循环冗余检验CRC和帧检验序列 FCS并不等同:
CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码;
FCS 可以用 CRC 这种方法得出,但也可以用其它方法得出。

②.仅用CRC差错检测技术只能做到无差错接受[即:凡是接收端数据链路层接受的帧都没有传输差错(有差错的帧就丢弃而不接受)];要做到“可靠传输”(即发送什么就能收到什么,解决了帧丢失、帧重复、帧失序等传输差错)就必须再加上确认和重传机制。

③.互联网的数据链路层不使用确认和重传机制(因为代价高),由运输层TCP协议实现可靠传输。

3.2 点对点协议 PPP

说明:在通讯线路质量差的早期年代数据链路层使用可靠传输协议HDLC(高级链路控制协议),现在普遍使用简单的点对点协议PPP(不是可靠传输协议)。

3.2.1、PPP协议的特点:

1、PPP协议应满足的需求:

⑴、简单 ——只进行CRC检测,如帧正确,则接收,否则丢弃;
⑵、封装成帧 ——规定帧定界符等帧封装方法;
⑶、透明性 —— 定义转义字符ESC利用字节填充技术实现透明传输;
⑷、支持多种网络层协议 —— 如支持IP和IPX等;
⑸、支持多种类型链路 —— 串行的、并行的、同步的、异步的、低速的、高速的等等;
⑹、差错检测 —— 能发现错误帧并立即丢弃;
⑺、连接状态检测 —— 自动检测链路是否处于正常状态;
⑻、最大传输单元 —— 数据部分最大长度 MTU
⑼、网络层地址协商 —— 通过协商知道或配置彼此网络层地址;
⑽、数据压缩协商 —— 协商使用何种数据压缩算法。

2、PPP协议不需要的功能:

⑴、纠错 :只检错、不纠错;
⑵、流量控制 : 流量控制交给运输层TCP协议实现;
⑶、序号 : 不使用帧序号;
⑷、多点线路 : 不支持一个主站轮流和链路上多个从站通信;
⑸、半双工或单工链路 : 只支持全双工。

3、PPP协议组成:

⑴、一个将IP数据报封装到串行链路的方法;
⑵、一个链路控制协议LCP(Link Control Protocol) :用来建立、配置和测试数据链路连接,定义了11种类型的LCP分组;
⑶、一套网络控制协议NCP(Network Control Protocol) :一个NCP协议支持一种网络层协议。

3.2.2、PPP协议帧格式:

1、各字段含义:

⑴、第一个字节和最后一个字节是标志字段F,规定为7EH;
⑵、第二个字节是地址字段A,规定为FFH;
⑶、第三个字节是控制字段C,规定为03H(地址字段实际上并不起作用);
⑷、协议字段2字节:当值为0021H时表示信息字段是IP数据报;值为C021H时,信息字段是PPP链路控制协议LCP的数据,若为8021H时为NCP控制数据;
⑸、信息字段最大长度不超过1500字节;
⑹、FCS字段使用CRC帧检验序列,2字节;
注意:PPP 是面向字节的,所有的 PPP 帧的长度都是整数字节;

2、透明传输问题(字节填充) ——引入转义字符7D H;

⑴、若信息字段出现7EH,则将其转化成7DH 5EH
⑵、若信息字段出现7DH,则将其转化成7DH 5DH
⑶、若出现ASCII 码的控制字符(即值小于20H的字符),则在该字符前加入7DH,同时将该字符与20H异或。

【例题3.4】03H转化成7DH 23H;

⑷、若PPP 协议用在同步光纤网 SONET 和同步数字系列 SDH 的链路时,使用同步传输(一连串的比特连续传送),这时 PPP 协议采用零比特填充方法来实现透明传输;

零比特填充——只要发现5个连续的1,立即在后面插入一个0;

【例题3.5】若数据部分是7D 5E FE 27 7D 5D 7D 5D 65 7D 5E,问真正的数据是什么?答:7E FE 27 7D 7D 65 7E

【例题3.6】同步传输技术传送0110111111111100,试问用零比特填充后,变成怎样的比特串?若接收端收到PPP帧数据部分是0001110 111110111110110,问真正数据是什么?

答:(1)011011111011111000;(2)0001110 1111111111110

3.2.3、PPP协议的工作状态

⑴、当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。
⑵、PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。
⑶、这些分组及其响应选择一些 PPP 参数,和进行网络层配置,NCP 给新接入的 PC机分配一个临时的 IP 地址,使 PC 机成为互联网上的一个主机。
⑷、通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。

3.3 使用广播信道的数据链路层

3.3.1、局域网的数据链路层

1、局域网特点

⑴、网络为一个单位拥有、且地理范围和站点数目有限 : 最主要的特点;
⑵、使用广播信道 : 具有广播功能,从一个站点可很方便地访问全网,局域网上的主机可共享连接在局域网上的各种硬件和软件资源;
⑶、易于系统扩展和逐渐地演变,各设备的位置可灵活调整和改变;
⑷、提高了系统的可靠性、可用性和生存性;
⑸、速率高、误码率低;
⑹、各站点平等;

2、局域网按拓扑结构分类:

⑴、星型网 : 广泛使用;
⑵、环型网 : 典型的环型网是令牌环网;
⑶、总线型网 : 站点直接连在总线上,匹配电阻吸收信号电磁波能量,避免电磁波反射;使用的协议有两种:CSMA/CD(已演变成星型网)和令牌(逻辑是令牌环网,目前已经退出市场);
⑷、树型网 : 有总线型网演变而来,使用频分复用技术;

3、局域网工作层次 :跨物理层和数据链路层,无需网络层;
4、共享信道的媒体共享技术:

⑴、静态划分信道 :如以前说的频分、时分、波分和码分等多路复用技术;
优点:用户分配到信道就不会发生冲突;
缺点:代价高,不适合LAN;

⑵、动态媒体接入控制 : 又称:多点接入)信道并非固定给某用户。它又分两类:
①.随机接入:所有用户可以随机发送信息,可能出现冲突(讨论的重点)。
②.受控接入:所有用户不能随机发送信息,服从统一控制(目前局域网少用)。

传统以太网指10Mbps以太网,现在已发展到百兆、千兆、万兆。

5、以太网的两个标准:

①.DIX Ethernet V2(1982) 标准 : 由DEC、Intel、xerox三家公司联合推出。1980年发布第一版。
②.802.3以太网标准è由IEEE 802 委员会于1983年提出,与DIX Ethernet V2差别不大,因此可以将 802.3 局域网简称为“以太网”,但严格说来,“以太网”应当是指符合 DIX Ethernet V2 标准的局域网。
IEEE802委员会把局域网的数据链路层分为LLC和MAC两个子层:

逻辑链路控制 LLC (Logical Link Control)子层è : 与传输媒体无关。建立和释放逻辑连接,给帧编号。
媒体接入控制 MAC (Medium Access Control)子层è与传输媒体有关。组装成帧、解析帧、地址识别、差错控制、管理和控制对局域网传输介质的访问。

注意:由于TCP/IP 体系经常使用的局域网标准是DIX Ethernet V2标准,IEEE802.3标准的以太网很少使用,IEEE802委员会制定的LLC子层的作用已经消失,大多数厂家生产的网卡只用MAC子层。

6、适配器的作用:( 适配器又称为“网络接口卡”或“网卡” )
⑴、并/串行转换;⑵、对数据缓存;⑶、实现以太网协议

注意:①.在计算机的操作系统必须安装网卡驱动程序,由它告知网卡如何取数等;
②.网卡把帧发送到局域网或从局域网接收并处理帧都不使用CPU,当需要把处理后的正确帧交给协议栈中的网络层时使用中断方式通知CPU。

3.3.2、CSMA/CD(带有冲突检测载波侦听多路访问)

最早的以太网是将许多的计算机都连接到一根总线上。

1、总线特点 :当一台计算机向总线发送数据时,总线上所有计算机都能检测到这个数据;
2、总线以太网如何实现一对一通信?
每个计算机的适配器都拥有一个与其它计算机适配器不同的地址。只有帧首部的目的地址与该地址一致时,适配器才接受数据帧,否则丢弃该帧;

3、以太网通信的两种措施

⑴、采用无连接的广播工作方式 ——不必先建立连接就直接发送数据,尽最大努力交付,发现数据帧错就丢弃。对发送的数据帧不编号,也不要求对方发回确认(理由是局域网信道的质量很好),差错的纠正即重传操作由上层处理;
⑵、数据采用曼彻斯特编码。

问题 :如何协调总线各计算机的工作?保证同一时间只允许一台计算机发送信息。
方法 :采用CSMA/CD协议。

4、CSMA/CD简介:

⑴、CSMA/CD协议的三个要点

①.多点接入 ——许多计算机以多点接入的方式连接在一根总线上;
②**.载波监听** ——先听后发:用电子技术检测总线上有无其它计算机发送的信号;
③.碰撞检测 —— 边发边听:若发送数据期间检测到信道是上信号电压变化幅度增大,则表明出现冲突。若出现冲突,立即停发,等待一个随即时间后重发。

注意 :当某站点监听到总线空闲时,总线并非一定空闲。这是因为数据传播有延迟。

问题 :发送站要经过多长时间才能知道自己有没有与别的站发生冲突呢?举例画图说明。

显然CSMA/CD协议的以太网只能进行半双工通信。最先发送数据帧的站,在发送数据帧后至多经过时间 2t (两倍的端到端传播时延)就可知道发送的数据帧是否遭受了碰撞,以太网的端到端往返时延 2t 称为争用期,或碰撞窗口;若经过争用期后还没检测到冲突,则可肯定不会有冲突。

⑵、二进制指数退避算法 : CSMA/CD发现冲突到再次发送之间的时间确定方法:

①.确定基本退避时间,它就是2t。以太网取2t=51.2us(以太网实际端到端时延小于25.6us,取2t =51.2 us是考虑其它因素,如转发器增加的时延)。对于10MBb/S以太网在51.2us内可发送64字节,也可以说争用期是512比特的发送时间。

②.第k次重传时,从离散整数集合{0,1,……,(2k-1)}中随机取一个数r,重传等待时间即为2rt。其中k=Min{重传次数,10},即当重传次数大于10时k取10。

③.当重传达16次仍不能成功时,丢弃该帧并报告上层。适配器每发一次新帧,执行一次CSMA/CD算法,无记忆功能。

因为发送64字节后没发现冲突才能肯定不会发生冲突,故10MBb/S以太网规定了最短帧长为64字节,凡小于64字节帧均视为无效帧。

⑶、*强化碰撞 : 发送数据的站点发现冲突后,立即停止发送数据,还要再发送32bit或48bit的人为干扰信号,以便所有用户知道信道发生了冲突。

以太网还规定帧间间隔最少为9.6us,即96bit时间。为了让接收站来得及处理刚收到的帧,并做好接收下一帧准备。

5、CSMA/CD要点归纳如下:

⑴、适配器从网络层接收到一个分组,加上以太网首部和尾部,组成以太网帧。放入适配器缓存,准备发送。
⑵、若检测到信道空闲(即96比特时间内没有检测到信道上有信号)就发送这个帧。若信道忙,继续检测并等待信道转为空闲后再发。
⑶、数据发送过程中继续侦听,若发送过程中一直未检测到碰撞,则顺利发送,若检测到碰撞,则终止发送,并发送人为干扰信号。
⑷、在中止发送后,执行二进制指数退避算法,等待r倍争用期,返回步骤⑵。

总结:先听后说、边听边说、冲突停说、等待时机再说。

例题分析:某以太网的数据速率为100Mbps,信号速率为200000km/s,求最大网络跨距?
解:

3.3.3、使用集线器的星型拓扑以太网简介:

1、发展历程:粗同轴电缆以太网è细同轴电缆以太网è双绞线以太网。
2、使用两对无屏蔽双绞线分别用于接收和发送,使用RJ-45插头。这种以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器(hub) 。

3、星形网10BASE-T双绞线以太网

10 代表10Mbps,BASE 表示基带信号,T 代表双绞线。

不使用电缆而使用无屏蔽双绞线。双绞线能够传送高速数据的主要措施是把双绞线的绞合度做得非常精密。不仅可使特性阻抗均匀以减少失真,而且大大减少了电磁波辐射和无线电频率的干扰。每个站需要用两对双绞线,分别用于发送和接收。

集线器使用了大规模集成电路芯片,因此硬件设备的可靠性已大大提高了。
10BASE-T 的通信距离稍短,每个站到集线器的距离不超过 100 m。
10BASE-T 双绞线以太网的出现,是局域网发展史上的一个非常重要的里程碑,它为以太网在局域网中的统治地位奠定了牢固的基础。

4、集线器的特点:

⑴、使用集线器的以太网在逻辑上仍是一个总线网,各站点适配器采用CSMA/CD协议。在物理上是一个星型网。
⑵、集线器有多个接口,8-16个。
⑶、工作在物理层,仅简单转发比特,不进行冲突检测。
⑷、采用专门芯片,可进行自适应串音回波抵消,这样使得接口转发出去的强信号不干扰接口接收到的弱信号(这种干扰称“近端串音”干扰)转发比特前要进行再生整形并重新定时。

3.3.4、以太网信道利用率

一个帧从开始发送,经可能发生的数次碰撞后再重传,到发送成功且信道转为空闲(即再经过时间 t 使得信道上无信号在传播 ?)时为止,是发送一帧所需的平均时间。

设:帧长为 L (bit),数据发送速率为 C (bps),∴帧发送时间为


以太网参数,a越大,所占得比例越大,信道利用率越低a→0,利用率增大。

信道极限利用率
,即:没有冲突,但这是不可能的。

3.3.5、以太网的MAC层

1、MAC层的硬件地址 :局域网中硬件地址又称物理地址或MAC地址。
现在局域网适配器都是用6B(48bit)的全球地址,固化在适配器的ROM中,这种 48 位地址称为 MAC-48,它的通用名称是EUI-48。因此:

⑴、更换新的适配器,尽管计算机地理位置没有变,这台计算机在局域网中的硬件地址也就变了。
⑵、若计算机地理位置变了,只要适配器没变,则硬件地址不变。

IEEE的注册管理机构RA是局域网全球地址法定管理机构。它负责分配48位中的高24位,称为组织唯一标识符OUI,代表组织唯一标识,低24位由厂家指派,称为扩展唯一标识符EUI。如:3COM公司的高24位为02-06-8C。

一个公司可能有几个组织标识符。几个公司也可以共用以一个组织标识符。

注意:MAC地址的两种记法

一种是字节的高位在先(左),一种是字节的低位在先(左)。

【例题3.7】AC-DE-48-00-00—80

802.5中 10101100-11011110-01001000-00000000-00000000-10000000高位在先

802.3中 00110101-01111011-00010010-00000000-00000000-00000001低位在先

此外:IEEE考虑可能有人不愿意向IEEE的RA购买OUI,规定MAC地址的第一个字节的最低位为I/G位(0表示单播地址,1表示组播地址),次低位为G/L位(0表示本地管理地址,1表示全球管理地址);

全球管理地址——向IEEE的RA购买OUI;

本地管理地址——不向IEEE的RA购买OUI,用户可任意分配网络上的地址;

IEEE802.3中MAC地址格式(低位在先)

所以:全球管理地址共有246个地址,超过70万亿个。

2、适配器检查 MAC 地址

⑴、适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址.
①.如果是发往本站的帧则收下,然后再进行其他的处理。
②.否则就将此帧丢弃,不再进行其他的处理。

⑵、“发往本站的帧”包括以下三种帧:
①.单播(unicast)帧(一对一)èI/G位=0;
②.多播(multicast)帧(一对多)è I/G位=1;
③.广播(broadcast)帧(一对全体)è48位MAC地址全1;
所有适配器都应至少识别单播帧和广播帧。

3、以太网的MAC帧格式

常用的以太网MAC帧格式有两种标准:
⑴、IEEE 的 802.3 标准;
⑵、DIX Ethernet V2 标准 ——最常用。

①.前同步码è用于同步,使接收端适配器与比特流达成同步,前7个字节为10交替码,第8个字节为1010101011;
②.目的MAC地址;
③.源MAC地址;
④.类型è高层使用何种协议,8137H表示novell ipx数据、0800H表示IP数据;
⑤. 客户数据字段è46~1500字节,不足46B需填充,填充操作由IP层完成。

客户数据字段的最小长度 = 最小帧长度 64 字节 - 18 字节的首部和尾部

⑥.FCSèCRC检验;

注意è同步光纤网SONET和同步数字系列SDH不需前同步码;

IEEE 802.3的MAC帧格式与以太网V2 帧格式差别仅仅是:类型字段并不表示高层使用何种协议,而是表示客户数据字段的长度;

4、无效帧以下帧为无效帧:

①.数据字段的长度与长度字段的值不一致;
②.帧的长度不是整数个字节;
③.用收到的帧检验序列 FCS 查出有差错;
④.数据字段的长度不在 46 ~ 1500 字节之间;
⑤.MAC 帧长度不在64 ~ 1518 字节之间;
⑥.对于检查出的无效 MAC 帧就简单地丢弃,以太网不负责重传丢弃的帧。

5、帧间最小间隔
①.帧间最小间隔为 9.6 ms,相当于 96 bit 的发送时间。
②.一个站在检测到总线开始空闲后,还要等待 9.6 ms 才能再次发送数据。

这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。

3.4 扩展的以太网

3.4.1、在物理层扩展以太网 ——>使用集线器扩展

因为信号在传输过程中会衰减,导致CSMA/CD协议无法正常工作。802.3标准规定单个网段不超过500米长,两个网段之间可用转发器连接起来,但任意两个站点最多可经过3个电缆网段。可以采用以下两种途径扩展:
⑴、用光纤取代双绞线——可扩展以太网覆盖范围:由于光纤带来的时延小,带宽高,需要光纤调制解调器,进行光/电信号转换。

⑵、使用多级集线器,就可以连接成覆盖范围更大的多级星型以太网。

使用多级集线器可带来以下好处
①.原先不同以太网之间不能通信,现在却可以。
②.扩大了以太网范围。主机与集线器之间距离最大100米,集线器与集线器之间距离也可是100米(10BASE-T)。

使用多级集线器可带来以下缺点
①.多个碰撞域成为一个碰撞域,碰撞域增大了,但总的吞吐量并未提高。
②.不同技术以太网(如数据率不同的以太网)不能用集线器互连。

3.4.2、在数据链路层扩展以太网——>使用网桥扩展

两个以太网通过网桥连接起来后,就成为一个覆盖范围很大的以太网,原先的每个以太网称一个网段(每个网段处在各自独立的冲突域中)。

①.网桥工作在数据链路层,它根据 MAC 帧的目的地址对收到的帧进行转发。
②.网桥具有过滤帧的功能。当网桥收到一个帧时,并不是立即转发帧,而是先检查帧的目的MAC 地址,然后确定是丢弃还是将该帧转发到哪一个接口。

1、网桥的内部结构:

网桥依靠转发表来转发帧。

若网桥从接口1收到A发给E 的帧,查转发表从2转发出去,若网桥从接口2收到F给E的帧,查表后丢弃该帧。

⑴、使用网桥好处
①.过滤通信量,增大吞吐量——不同网段上间部通信时互不干扰。
但不同网段间通信时,这两个网段上其它站点不能通信,但不影响这两个网段外的其它网段。每个端口一个碰撞域。
②.扩大的了物理范围——增加以太网上工作站的最大数目。
③.提高了可靠性——当网络出现故障时,只影响个别网段。
④.可互连不同以太网——不同物理层、不同MAC子层,不同速率。

⑵、网桥的缺点
①.先存储、后转发,转发时执行CSMA/CD算法,增加了时延。具有不同 MAC 子层的网段桥接在一起时时延更大。
②.MAC子层没有流量控制,可能因缓存不够丢失帧。
③.可能产生广播风暴,扩展的以太网共一个广播域,若网桥之间通过点对点转发帧时采用PPP协议,则在帧的头部和尾部再加上PPP-H和PPP-T。
注意:网桥转发帧时不改变源地址。

⑶、网桥和集线器(或转发器)的区别:

Ø 集线器在转发帧时,不对传输媒体进行检测。
Ø 网桥在转发帧之前必须执行 CSMA/CD 算法。

2、透明网桥——>目前使用得最多

⑴、透明网桥:是指以太网网站点并不知道所发送的帧将经过哪几个网桥,即网桥对站点是透明的。

透明网桥是一种即插即用设备,无需人工配置,其标准是 IEEE 802.1D。当网桥刚连接到以太网时,其转发表是空的。网桥使用自学习法逐步建立起转发表的。
转发表每项记录的信息结构 : MAC地址 + 接口 + 帧进入该网桥的时间。

⑵、透明网桥的自学习原理:若从站点A发出的帧从接口X进入了某网桥,那么从这个接口出发,沿相反方向一定可以把一个帧传送到A。所以网桥每收到一个帧时检查是否有相应的表项,若有修改时间信息,若无则建立新的表项。建立转发表时把帧的源地址写在地址一栏,转发帧时,则是根据帧的目的地址转发。

分析A向B发送帧,F向C发送帧和B向A发送帧的过程。

网桥的转发表要反应网络最新拓扑状态——若某表项建立时间过长,则删除(因为该表项可能无用)。

⑶、网桥的自学习和转发帧的步骤:

自学习 : 网桥收到一帧后,查找转发表中有无与源地址匹配的项目,若有,则更新(接口时间),若无,增加一个新表项:地址、接口、时间。

转发帧 : 若帧的目的地址与转发表中所有表项不匹配,则向除进入接口以外的其它所有接口转发,若与转发表中给出接口相同,则丢弃该帧,若进入的接口与转发表给出接口不同,则按转发表给出的接口进行转发。

网桥工作原理简述:学习源地址、过滤本网段帧、转发异网段帧、广播未知帧。

⑷、透明网桥的生成树算法 ——目的:避免帧在网络中不停地兜圈子,白白耗费资源。

互连在一起的网桥在进行彼此通信后,就能找出原来的网络拓扑的一个子集。在这个子集里,整个连通的网络中不存在回路,即在任何两个站之间只有一条路径。

互连在一起的网桥在进行彼此通信后,就能通过生成树算法找出原来的网络拓扑的一个子集。在这个子集里,整个连通的网络中不存在回路,即在任何两个站之间只有一条路径。

生成树算法——每个网桥都有一个唯一的标示符,通常取网桥MAC加一个优先级,网桥每个端口有一个路径代价(端口将数据发送到相连局域网的代价,可人工配置):

第一步“决定根网桥”,取优先级最高者,同优先级取MAC最小者;

选根期间各网桥广播自己的BPDU(网桥协议数据单元)表明自己的标示符,当收到比自己优先级高的BPDU时就不再广播自己的BPDU而转发高优先级的BPDU,最终只产生一个根端口;

第二步:“决定非根网桥的根端口”,从它出发到根网桥路径代价最小的端口;

方法是根网桥广播一个BPDU,非根网桥在各端口收到此BPDU后检测出代价,从而决定根端口;

第三步:“决定指定网桥和各网络的指定端口”,指定网桥就是本网络A到达另一网络B路径代价最小的网桥,由它负责本网络A与B之间的数据交换(一个网络可能有多个通向数个网络的多个指定网桥);指定端口就是网络与指定网桥的相连端口,其它非指定端口被阻塞。

注意:①.生成树是动态生成的;②.透明网桥容易安装,但网络资源的利用不充分。

3、源路由网桥——由发送帧的源站负责路由选择的网桥。

源站发送帧时将详细的路由信息放在帧的首部中。

为发现合适的路由,源站以广播方式向目的站发送一个发现帧,作探测之用。发现帧在整个扩展的以太网上沿所有可能的路径传送。在传送过程中,每个发现帧都记录所经过的路由。当这些发现帧到达目的站时,就沿着各自路由返回源站。源站从各种路由中选择一个最佳路由。以后,凡从这个源站向该目的站发送的帧,其首部都必须携带源站所确定的路由信息。

结果:每个站都有一个描述通向其它所有网络的最短路径树(最小生成树);

注意 : 发现帧的另一个作用:确定网络可通过的最大帧长。

4、多接口网桥 : “以太网交换机” ,又称“二层交换机”或“交换式集线器”

以太网交换机工作在数据链路层,实际上是一个多接口网桥。

⑴、以太网交换机的特点
①.以太网交换机的每个接口都直接与主机相连,一般都工作在全双工方式。
②.交换机能同时连通许多对的接口,使每一对相互通信的主机都能像独占通信媒体那样,进行无碰撞地传输数据,从而增加总容量。
③.以太网交换机由于使用了专用的交换结构芯片,所以交换速率高。

⑵、二层交换机与网桥的区别

①.接口数量和类型多。
②.转发速度更快:存储转发方式、直通式(不进行差错控制)。
③.每个接口可直接接主机或另一集线器。网桥接口只接以太网网段。
④.可支持网络管理。
⑤.可支持VLAN技术。

⑶、交换机与集线器的不同点

①.工作层次不同:交换机工作在数据链路层,集线器工作在物理层。
②.传输数据方式不同:交换机转发,集线器广播。
③.带宽占用方式不同:交换机用户独占带宽,集线器用户共享带宽。
④.传输模式不同:交换机全双工,集线器半双工。
⑤.碰撞域不同:集线器所有接口是一个碰撞域,交换机每个接口是一个独立的碰撞域。

⑷、利用以太网交换机可以很方便地实现VLAN(虚拟局域网)

Ø 虚拟局域网 VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。

l 这些网段具有某些共同的需求。

l 每一个 VLAN 的帧都有一个明确的标识符,指明发送这个帧的工作站是属于 哪一个 VLAN。

Ø 虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。

VLAN的优点
①.可控制广播风暴,广播只在同一个VLAN中。
②.提高网络整体安全性,例财务部门不希望别的部门看到其数据。
③.网络管理简单、直观。同一VLAN种主机无需放在同一物理空间。

实现虚拟局域网主要的三种途径 ;
①.基于端口的虚拟局域网:ACCESS模式和TRUNK模式;
②.基于MAC地址的VLAN;
③.基于IP 地址的VLAN。

虚拟局域网使用的以太网帧格式(802.3ac协议)

在以太网帧格式中插入一个4字节标识符,称VLAN标记,用来指明发送该帧的工作属于哪一个虚拟局域网。

VLAN标记的前两个字节总是8100H.后两个字节中前三位是用户优先级字段,第4位是规范格式指示符,最后12位是VLAN 标识符VID。

插入4字节标识符后,以太网最大长度变为1522B。

3.4.3、在网络层扩展以太网è 使用路由器扩展(局域网扩展成广域网)

3.5高速以太网

速率达到或超过100Mbps的以太网称为“高速以太网”; 高速以太网的发展主要得益于以下技术:
①.高速传输介质技术
②**.交换技术**;
③.全双工技术:不再受冲突域限制,带宽可提高一倍;
④.编码技术

在双绞线上传送 100 Mb/s 基带信号的星型拓扑以太网,仍使用 IEEE 802.3 的CSMA/CD 协议。

**3.5.1、**100BASE-T以太网 :又称为快速以太网(Fast Ethernet)

1、支持半双工和全双工方式,双工方式下CSMA/CD不起作用,此时称其为以太网主要是因为其帧格式不变。
2、最短帧长仍为64B,最大帧长为1518B,但将网段的最大电缆长度减小到 100 m。
3、争用期仍为512比特时间,帧间隙为0.96us(96比特时间)。
4、覆盖范围减小到原来的十分之一。
5、可直接利用原有线缆设施,只要更换一张适配器和一个100Mbps的集线器即可升级到100Mbps.
6、三种不同的物理层标准

①.100BASE-TXè使用 2 对 UTP 5 类线或屏蔽双绞线 STP。
②.100BASE-FXè使用 2 对光纤。
③.100BASE-T4è使用 4 对 UTP 3 类线或 5 类线。

3.5.2、吉比特以太网
1、帧格式不变。
2、支持全双工和半双工(此时使用 CSMA/CD 协议)工作方式。
3、使用载波延长(载波扩展技术)和分租突发技术。
4、最短帧长仍然为64B,争用期增加为512B时间,当帧长处于64B~512B时需要填充到512B。

载波扩展技术:若帧长小于512B,物理层在发完帧后紧接着再发送一个特殊的“载波扩展”符号序列,将整个发送长度扩展到512B。

分组突发技术:一个站获得介质访问权后连续发送多个短帧时,第一个短帧采用载波扩展技术扩展为512B,以后的短帧就不必扩展而连续发送,但在所有的帧之间用载波扩展为填充帧与帧之间的间隔IPG(一个IPG共96b),以便使得其它站始终能够检测到载波,防止他们打断当前站的帧突发操作(注意:一次帧突发的总长度上限是8192B)。

【例题3.10】半双工千兆位以太网中,要发送一个100B的帧,需要多长时间才发完?若要发送10个100B的帧,又需要多长时间才发完?

解:

5、吉比特以太网的物理层

⑴、1000BASE-Xè基于光纤通道的物理层
①.1000BASE-SXèSX表示短波长;
②.1000BASE-LXè LX表示长波长;
③.1000BASE-CXèCX表示铜线。

⑵、1000BASE-Tè使用 4对 5 类线 UTP

注意 :当吉比特以太网工作在全双工方式时(即通信双方可同时进行发送和接收数据),不使用载波延伸和分组突发。

6、吉比特以太网的配置举例

3.5.3、10吉比特以太网

1、帧格式不变。

2、只支持全双工,不使用 CSMA/CD 协议。

3、最小最大帧长不变。

4、只使用光纤作传输媒体。

3.5.4、使用高速以太网进行宽带接入

3.6 课后作业:

计算机网络原理第三篇 数据链路层相关推荐

  1. 【计算机网络】第三部分 数据链路层 (12) 多路访问

    文章目录 12.1 随机访问 12.1.1 ALOHA 1. 纯ALOHA (1) 脆弱时间 (2) 吞吐量 2. 时隙ALOHA 吞吐量 12.1.2 载波侦听多路访问 `CSMA` 1. 脆弱时间 ...

  2. 【计算机网络】第三部分 数据链路层(17) 广域网SONET/SDH

    文章目录 17.1 体系结构 17.1.1 信号 17.1.2 SONET设备 1. STS多路复用器/分离器 2. 再生器 3. 分插复用器 4. 终端 17.1.3 连接 1. 段 2. 线路 3 ...

  3. 【计算机网络】第三部分 数据链路层(11) 数据链路控制

    文章目录 11.1 成帧 11.1.1 固定长度成帧 11.1.2 可变长度成帧 1. 面向字符协议 2. 面向位协议 11.2 流量控制和差错控制 11.2.1 流量控制 11.2.2 差错控制 1 ...

  4. 【计算机网络】第三部分 数据链路层(13) 有线局域网:以太网

    文章目录 13.1 IEEE标准 13.1.1 数据链躇层 1. 逻辑链路控制层LLC (1) 成帧 (2) LLC的需求 2. 介质访问控制层MAC 13.1.2 物理层 13.2 标准以太网 13 ...

  5. 【计算机网络】第三部分 数据链路层(14) 无线局域网和蓝牙技术

    文章目录 14.1 IEEE 802.11 14.1.1 体系结构 14.1.2 MAC层 1. 分布式协调功能 (1) CSMA/CA处理流程图 (2) 帧交换时序 (3) 网络分配矢量 2. 点协 ...

  6. 计算机网络原理【三】之 传输层

    感谢内容提供者:金牛区吴迪软件开发工作室 接上一篇:计算机网络原理[二]之 网络应用 文章目录 一.传输层的基本服务 1.传输层功能 a.传输层核心功能 b.传输层七大功能 2.传输层寻址与端口 3. ...

  7. 计算机网络原理——前三章个人总结

    计算机网络原理 文章目录 计算机网络原理 第一章--概述 1.1三大网络 1.2互联网与物联网的区别 1.3计算机网络与互联网 1.4互联网发展三阶段 1.5互联网标准化工作 1.6互联网组成 1.7 ...

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

    目录 第三章 数据链路层 3.1 使用点对点信道的数据链路层 3.1.1 数据链路和帧 3.1.2 三个基本问题 3.2 点对点协议 PPP 3.2.1 PPP协议的特点 PPP协议满足的需求 PPP ...

  9. 计算机网络复习——第三章数据链路层

    甚至是想罢工的一天!!! 相关知识见,感觉比较容易入手 <计算机网络>(谢希仁)内容总结 | JavaGuide 1.数据链路层的定位与功能 水平传送 P70 71图 数据链路层不必考虑物 ...

最新文章

  1. python基础学习笔记2
  2. [译]C语言实现一个简易的Hash table(3)
  3. spring生命周期七个过程_Spring杂文(三)Spring循环引用
  4. Android工具里没有Android,android – AppCompat工具栏没有显示
  5. 网络通信程序写起来很难专业课没问题
  6. 使用Ant 和 Maven打包发布命令行程序(转载)
  7. 大数据之-Hadoop之HDFS_hadoop集群中的安全模式_操作案例---大数据之hadoop工作笔记0075
  8. PHP URL参数获取方式的四种例子
  9. 3.Entity Framework Core 5.0 设置字段属性
  10. USB转串口 TTL RS-232 RS-485 COM口 UART区别
  11. 2021全网最全Activiti7教程01(Activiti7详细介绍-欢迎收藏)
  12. 自学mysql还是sql好_如何自学SQL?
  13. 8个顶级云安全解决方案
  14. 『已解决』IIS启动 服务无法在此时接受控制信息
  15. 《老子》古本学习札记
  16. ARM NEON优化5.图像旋转
  17. 计算机云维护是做什么的,IT运维是什么?云时代下的运维人员是怎样的?
  18. 如何用tensorflow使用自定义数据来训练,做物体检测
  19. jQuery弹幕插件
  20. A Game of Thrones(55)

热门文章

  1. 时间压缩,让更少位数存储年月日时间
  2. 使用ThreeJs从零开始构建3D智能仓库——第二章(创建地面与门窗)
  3. 冶炼金属【暴力枚举 + 二分 + 二元不等式】
  4. golang学习笔记(基础篇)
  5. 发动机、发电机、电动机、电机、马达傻傻分不清?一张图恍然大悟!
  6. HTTP协议的 “无连接,无状态”
  7. java实训项目-模拟自动挡汽车
  8. C/C++ BeaEngine 反汇编引擎
  9. 无人驾驶汽车系统入门(五)——运动学自行车模型和动力学自行车模型
  10. 韩顺平Java自学笔记 项目 QQ聊天室