2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
第 4 章 数据链路层
本章基本要求:
? 掌握数据链路层的功能与作用,
? 掌握差错控制的作用和原理,
? 掌握数据链路层的设备与组件;
? 理解常用的成帧方式,
? 理解流量控制的作用和原理,
? 理解 HDLC协议的主要内容。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
第 4 章 数据链路层
4.1 数据链路层功能
4.2 数据链路层所提供的基本服务
4.3 高级数据链路控制协议 HDLC
4.4 点对点 PPP协议
4.5 数据链路层的设备与组件
4.6 技能训练:交换机和集线器的级联
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
数据链路层是 OSI参考模型中的第二层,在物理层提供
的服务的基础上向网络层提供服务。数据链路层为物理链
路上提供可靠的数据传输。数据链路层的主要功能包括帧
同步、差错控制、流量控制、链路管理、寻址等。
4.1.1 相邻节点
所谓相邻节点是指由同一物理链路连接的所有节点。相
邻节点的最主要特征是节点之间的数据通信不需要经过其
他交换设备的转发。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
为实现相邻节点之间的可靠传输,数据链路层必须要解
决以下问题:在相邻的节点之间确定一个接收目标,即实
现物理寻址;提供一种机制使得接收方能识别数据流的开
始与结束;提供相应的差错检测与控制机制以使有差错的
物理链路对网络层表现为一条无差错的数据链路;提供流
量控制机制以保证源和目标之间不会因发送和接收速率不
匹配而引起数据丢失。
4.1.2 帧同步
数据链路层采用了被称为帧 (frame)的协议数据单元作
为数据链路层的数据传送逻辑单元。不同的数据链路层协
议的核心任务就是根据所要实现的数据链路层功能来规定
帧的格式。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
1,帧的基本格式
尽管不同的数据链路层协议给出的帧格式都存在一定的差异,
但它们的基本格式还是大同小异的。图 4.1 给出了帧的基本格式,
组成帧的那些具有特定意义的部分被称为域或字段 (field)。
其中,帧开始字段和帧结束字段分别用以指示帧或数据流的开
始和结束。地址字段给出节点的物理地址信息,物理地址可以是局
域网网卡地址,也可以是广域网中的数据链路标识,地址字段用于
设备或机器的物理寻址。第三个字段则提供有关帧的长度或类型的
信息,也可能是其他一些控制信息。数据字段承载的是来自高层即
网络层的数据分组 (packet)。帧检验序列 FCS (Frame Check
Sequence)字段提供与差错检测有关的信息。通常数据字段之前的
所有字段被统称为帧头部分,而数据字段之后的所有字段被称为帧
尾部分。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
帧开始 地址 长度 /类型 /控制 数据 帧结束FCS
图 4.1 帧的基本格式
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
2,成帧与拆帧
发送端和接收端数据链路层所发生的帧发送和接收过程大
致如下:发送端的数据链路层接收到网络层的发送请求之后,
便从网络层与数据链路层之间的接口处取下待发送的分组,
并封装成帧,然后经过其下层物理层送入传输信道;这样不
断地将帧送入传输信道就形成了连续的比特流;接收端的数
据链路层从来自其物理层的比特流中识别出一个一个的独立
帧,然后利用帧中的 FCS字段对每一个帧进行校验,判断是否
有错误。如果有错误,就采取收发双方约定的差错控制方法
进行处理。如果没有错误,就对帧实施拆封,并将其中的数
据部分即分组通过数据链路层与网络层之间的接口上交给网
络层,从而完成了相邻节点的数据链路层关于该帧的传输任
务。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
3,帧的定界
帧定界就是标识帧的开始与结束。有四种常见的定界方法。
(1) 字符计数法
字符计数法是在帧头部中使用一个字符计数字段来标明帧内字符数。
(2) 带字符填充的首尾界符法
带字符填充的首尾界符法是在每一帧的开头用 ASCII 字符 DLE STX,在
帧末尾用 ASCII 字符 DLE ETX。
(3) 带位填充的首尾标志法
带位填充的首尾标志法一次只填充一个比特,0” 而不是一个字符
,DLE” 。
(4) 物理层编码违例法
物理层编码违例法就是利用物理层信息编码中未用的电信号来作为帧
的边界。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
4.1.3 差错控制
所谓差错是指接收端收到的数据与发送端实际发出的数
据出现不一致的现象。产生差错主要是因为在通信线路上
噪声干扰的结果。根据噪声类型不同,可将差错分为随机
错和突发错。热噪声所产生的差错称为随机错,冲击噪声
(如电磁干扰、无线电干扰等 )所产生的错误称为突发错。
差错的严重程度由误码率来衡量,误码率 Pe 等于错误
接收的码元数与所接收的码元总数之比。显然,误码率越
低,信道的传输质量越高,但是由于信道中的噪声是客观
存在的,所以不管信道质量多高,都要进行差错控制。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
1,差错控制的作用与机制
差错控制是采用可靠、有效的编码以减少或消除计算机通信
系统中传输差错的方法,其目的在于提高传输质量。
为了有效地提高传输质量,一种方法是改善通信系统的物理
性能,使误码的概率降低到满足要求的程度。另一种方法是差
错控制,它是利用编码的手段将传输中产生的错码检测出来,
并加以纠正。差错控制是数据通信中常用的方法。
差错控制的主要作用是通过发现数据传输中的错误,以便采
取相应的措施减少数据传输错误。差错控制的核心是对传送的
数据信息加上与其满足一定关系的冗余码,形成一个加强的、
符合一定规律的发送序列。所加入的冗余码称为校验码
(Frame Check Sequence,简称 FCS)。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
校验码按功能的不同被分为纠错码和检错码。纠错码不
仅能发现传输中的错误,还能利用纠错码中的信息自动纠
正错误,其对应的差错控制措施为自动前向纠错。汉明编
码( Hamming code)为典型的纠错码,具有很高的纠
错能力。检错码只能用来发现传输中的错误,但不能自动
纠正所发现的错误,需要通过反馈重发来纠错。常见的检
错码有奇偶校验码和循环冗余校验码。目前计算机网络通
信中大多采用检错码方案。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
2,常见检错码
(1) 奇偶校验码
奇偶校验的规则是在原数据位后附加一个校验位,将其值
置为,0” 或,1”,使附加该位后的整个数据码中,1” 的
个数成为奇数或偶数。使用奇数个,1” 进行校验的方案被
称为奇校验;对应于偶数个,1” 的校验方案被称为偶校验。
奇偶校验有三种使用方式,即水平奇偶校验、垂直奇偶校验
和水平垂直奇偶校验。下面以奇校验为例进行介绍。
水平奇校验码是指在面向字符的数据传输中,在每个字符
的 7 位信息码后附加一个校验位,0” 或,1”,使整个字符
中二进制位,1” 的个数为奇数。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
例如,设待传送字符的比特序列为,1100001”,则采用奇校
验码后的比特序列形式为,11000010” 。接收方在收到所传送
的比特序列后,通过检查序列中的,1” 的个数是否仍为奇数来
判断传输是否发生了错误。若比特在传送过程中发生错误,就
可能会出现,1” 的个数不为奇数的情况。水平奇校验只能发现
字符传输中的奇数位错,而不能发现偶数位错。例如上述发送
序列,11000010”,若接收端收到,11001010”,则可以校验
出错误,因为有一位,0” 变成了,1” ;但是若收到
,11011010”,则不能识别出错误;因为有两位,0” 变成了
,1” 。不难理解,水平偶校验也存在同样的问题。
为了提高奇偶校验码的检错能力,引入了水平垂直奇偶校验,
即由水平奇偶校验和垂直奇偶校验综合构成。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
(2) 循环冗余校验码 CRC
循环冗余校验码( Cycle Redundancy Check,简称 CRC)
是一种被广泛采用的多项式编码。 CRC码由两部分组成,前
一部分是 k+1个比特的待发送信息,后一部分是 r个比特的
冗余码。由于前一部分是实际要传送的内容,因此是固定
不变的,CRC码的产生关键在于后一部分冗余码的计算。
计算中主要用到两个多项式,f(x)和 G(x)。其中,f(x)
是一个 k阶多项式,其系数是待发送的 k+1个比特序列;
G(x)是一个 r 阶的生成多项式,由发收双方预先约定。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
例如,设实际要发送的信息序列是 1010001101(十个
比特,k=9),则以它们作为 f(x)的系数,得到对应的 9阶
多项式为
f(x)=1?x9+0?x8+1?x7+0?x6+0?x5+0?x4+1·x3
+1?x2+0?x+1
=x9+ x7+ x3+ x2+1。
再假设发收双方预先约定了一个 5 阶( r=5 ) 的生成
多项式 G(x)=x5+x4+x2+1
=1?x5+1?x4+0?x3+1?x2+0?x+1,则其系数序列为
110101。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
3,反馈重发机制
由于检错码本身不提供自动的错误纠正能力,所以需要
提供一种与之相配套的错误纠正机制,即反馈重发。通常
当接收方检出错误的帧时,首先将该帧丢弃,然后给发送
方反馈信息请求发送方重发相应的帧。反馈重发又被称为
自动请求重传 ARQ( Automatic Repeat request)。反馈
重发有两种常见的实现方法,即停止等待方式和连续 ARQ方
式。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
例如,当一个连接建好后,接收方可以说:现在你可以给
我发 n个帧,但是此后,直到我告诉你继续时,你才能再发。
如简单停等协议就可以实现流量控制功能,但其实现效率太
低。滑动窗口协议可以将确认机制与流量控制机制巧妙地结
合在一起。
滑动窗口协议是指一种采用滑动窗口机制进行流量控制的
方法。通过限制已经发送但还未得到确认的数据帧的数量,
滑动窗口协议可以调整发送方的发送速度。许多使用位填充
技术的数据链路层协议(如 HDLC 协议)都使用滑动窗口协
议进行流量控制。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.1 数据链路层功能
4.1.5 链路管理
链路管理功能主要用于面向连接的服务。在链路两端的节
点要进行通信前,必须首先确认对方已处于就绪状态,并交
换一些必要的信息以对帧序号初始化,然后才能建立连接。
在传输过程中则要维持该连接。如果出现差错,需要重新初
始化,重新自动建立连接。传输完毕后则要释放连接。数据
链路层连接的建立、维持和释放就称作链路管理。
4.1.4 流量控制
流量控制的作用就是使发送方所发出的数据流量不要超过
接收方所能接收的速率。流量控制的关键是需要有一种信息
反馈机制,使发送方能了解 接收方是否具备足够的接收及处
理能力。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.2 数据链路层所提供的基本服务
通常,数据链路层有三种基本服务可供选择,即无确认的
无连接服务 (Unacknowledged connectionless service)、有
确认的无连接服务 (Acknowledged connectionless service)、
有确认的面向连接服务 (Acknowledged connection-oriented
service)。
1,在无确认的无连接服务方式下,两个相邻机器之间在
发送数据帧之前,事先不建立连接,事后也不存在释放连接;
源机器向目标机器发送独立的数据帧,而目的机器不对收到
的帧作确认;由于线路上的噪声而造成的帧丢失,数据链路
层将不作努力去恢复,而是将该工作留给上层(通常为传输
层)去完成。这类服务通常适用于误码率很低的信道,如大
多数局域网都使用这种无确认的无连接服务方式。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.2 数据链路层所提供的基本服务
2,在有确认的无连接服务方式下,仍然不需要建立连
接,源机器向目标机器发送独立的数据帧,但是接收站点
要对收到的每一帧作确认,即在收到数据帧之后回送一个
确认帧,而发送站点在收到确认帧之后才会发送下一帧。
当在一个确定的时间段内没有收到确认帧时,发送方就认
为所发送的数据帧丢失并自动重发此帧。自动重发可能会
产生接收站点收到重复的数据帧的问题。有确认的无连接
服务方式适用于像无线网之类的不可靠信道。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.2 数据链路层所提供的基本服务
3,有确认的面向连接服务方式下,发送数据之前,需
要首先建立连接,然后才会启动帧的传送。在发送数据阶
段,要为所传送的每一帧都要编上号,数据链路层提供相
应的确认和流量控制机制来保证每一帧都只被正确接收一
次,并保证所有帧都按正确的顺序被接收。当数据传输完
成之后,还需要拆除或释放所建立的连接。也就是说,面
向连接的服务方式分三个阶段:链路建立阶段、数据传输
阶段和链路拆除阶段。可以这么说,只有有确认的面向连
接的服务方式才真正为网络层提供了可靠的无差错传输服
务。这类服务实现复杂度及代价很高,通常被用于误码率
较高的不可靠信道,如某些广域网链路。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
高级数据链路控制(规程)( High Level Data Link
Control,HDLC)是一个在同步网上传输数据、面向位的
数据链路层协议,它是由国际标准化组织( ISO)制订的。
HDLC是 IBM的同步数据链路控制规程( SDLC)的一个超
集。
HDLC是面向比特的协议,其支持全双工通信,采用位
填充的成帧技术,以滑动窗口协议进行流量控制。
4.3.1 HDLC 的帧格式
HDLC的功能集中体现在了 HDLC帧格式中。 HDLC的帧
格式如图 4.4 所示。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
标志 F 地址 A 控制 C 数据 Data 帧校验序列 FCS 标志 F
长度 (位 ) 8 8 8 可变 16 8
图 4.4 HDLC帧格式及控制字段的结构
0 N(S) P/F N(R)
1 P/F N(R)
1 P/F N(R)
0
1
S
M
信息帧:
监控帧:
无编号帧:
比特序号,1 2 3 4 5 6 7 8
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
? 帧头和帧尾的位模式串,01111110” 为帧的开始和结束标记
(flag)。采用带位填充技术首尾界符法。
? A是地址字段( Address),由 8位组成。对于命令帧,存放接收
站的地址;对于响应帧,存放发送响应帧的站点地址。
? C是控制字段( Control),由 8位组成,该字段是 HDLC协议的关
键部分。它标志了 HDLC的三种类型帧:信息( Information)帧、
监控( Supervisory)帧和无序号( Unnumbered)帧。
? data是数据字段,可以包含任意信息且可以是任意长的,但实
际上受多种条件的制约,如帧校验效率就会随着数据长度的增加而
下降。
? FCS是校验序列字段,采用 16位的 CRC校验,其生成多项式为 CRC-
16,G(x)=x16+x12+x5+1,校验的内容包括 A字段,C字段和 data字
段 。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
4.3.2 HDLC 用于实现面向连接的可靠传输
图 4.5给出了将 HDLC用于实现有确认的面向连接数据
传输服务的例子。图 4.5为正常传输,其中将无序号帧用
于链路连接的建立、维护与拆除;将信息帧用于发送数据
并实现捎带的帧确认。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
图 4.5 有确认的面向连接 HDLC连接建立、数据传输和连接拆除
1 1 P/F M
A
MA发送无符号帧请求建立连接:
B
1 1 P/F MMB发送无符号帧确认建立连接:
0 P/F 00A发送编号为 0的数据帧:
0 P/F 01A发送编号为 1的数据帧:
0 P/F 20B发送编号为 0的数据帧,
并对 A的第 1帧进行确认:
A发送无符号帧请求断开连接,1 1 P/F MM
1 1 P/F MMB发送无符号帧确认断开连接:
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
4.6则表示出现差错后的处理过程,但省略了关于连接
建立的过程。由于 B方没有数据帧要发送给 A方,所以不
能利用信息帧的捎带来反馈帧出错信息,只有专门发送一
个监控帧用于告诉 A方数据帧传输出错并同时给出建议的
差错控制方式,显然在该例子中差错控制采用了选择重发
方式。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.3 高级数据链路控制协议 HDLC
1 1 P/F M
A
M
A发送编号为 3的数据帧:
B
1 1 P/F MM
B发送编号为 0的数据帧,
并对 A的第 1帧进行确认:
0 P/F 12A发送编号为 2的数据帧,并对 B的第 0帧进行确认:
0 P/F 13A发送编号为 3的数据帧:
B发送监控帧报告第 2帧出错,
并要求选择重发:
1 0 P/F 21 1
0 P/F 01
0 P/F 21
0 P/F 12A重发 编号为 2的数据帧
0 P/F 14A继续发送编号为 4的数据帧:
B发送关于第 4帧进行确认,0 P/F 21
图 4.6 有确认的面向连接 HDLC差错控制的实现
连接建立、数据传输和连接拆除
A发送无符号帧请求断开连接:
B发送无符号帧确认断开连接:
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
PPP是点对点协议 (Point-to-Point Protocol)的简
称,它是一个工作于数据链路层的广域网协议。 PPP由
IETF (Internet Engineering Task Force)开发,
目前已被广泛使用并成为国际标准。无论是同步电路还是
异步电路,PPP协议都能够建立路由器之间或者主机到网
络之间的连接,如图 4.7所示。例如同学们所熟悉的利用
MODEM 进行拨号上网 (163,169,165等 )就是使用
PPP 实现主机到网络连接的典型例子。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
图 4.7 PPP提供多种连接
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
4.4.1 PPP的特性
PPP协议是目前使用得最广泛的广域网协议,这是因为
它具有以下特性:
? 能够控制数据链路的建立;
? 能够对 IP地址进行分配和使用;
? 允许同时采用多种网络层协议;
? 能够配置和测试数据链路;
? 能够进行错误检测;
? 有协商选项,能够对网络层的地址和数据压缩等进行协
商。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
PPP是现在主流的一种国际标准 WAN封装协议,可支持如下连接
类型:
? 同步串行连接
? 异步串行连接
? ISDN连接
? HSSI连接
4.4.2 PPP的组成
PPP 作为第二层的协议,在物理上可使用各种不同的传输介质,
包括双绞线、光纤及无线传输介质,在数据链路层提供了一套解决
链路建立、维护、拆除和上层协议协商、认证等问题的方案;在帧
的封装格式上,PPP 采用的是一种 HDLC 的变化形式;其对网络层
协议的支持则包括了多种不同的主流协议,如 IP 和 IPX 等。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
图 4.8给出了 PPP 的体系结构,其中,链路控制协议 LCP
(Link Control Protocol)用于数据链路连接的建立、配
置与测试,NCP(Network Control Protocols)则是一组用
来建立和配置不同的网络层协议。
4.4.3 PPP会话建立的过程
PPP提供了建立、配置、维护和终止点到点连接的方法。
PPP经过以下 4个阶段在一个点到点的链路上建立通信连接。
1.链路的建立和配置协调:通信的发起方发送 LCP帧来
配置和检测数据链路。 LCP帧有链路建立帧、链路终止帧和
链路维护帧三种。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
第三层 协议
认证和其他选项
链接控制协议
同步或异步物理介质 物理层
数据链路层
网络层
IP IPX
PPP
图 4.8 PPP协议结构
IPCP IPXCP 其他协议
网络控制协议
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.4 点对点 PPP协议
2.链路质量检测:在链路建立、协调之后。这一阶段是
可选的。主要用于对链路质量进行测试,以确定其能否为
上层所选定的网络协议提供足够的支持,另外若连接的双
方已经要求采用安全认证,则在该阶段还要按所选定的认
证方式进行相应的身份认证。
3.网络层协议配置协调:通信的发起方发送 NCP帧以
选择并配置网络层协议。
4.关闭链路:通信链路将一直保持到 LCP或 NCP帧关
闭链路或者是发生一些外部事件(如空闲时间超长或用户
干预)。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
数据链路层的设备与组件是指那些同时具有物理层和数据链路
层功能的设备或组件。数据链路层的主要设备与组件有网卡、网桥
和交换机。
4.5.1 网卡
网卡是局域网中提供各种网络设备与网络通信介质相连的接口,
全名是网络接口卡( NIC,Network Interface Card),也
叫网络适配器。网卡作为一种 I/O接口卡插在主机板的扩展槽上,
其基本结构包括接口控制电路、数据缓冲器、数据链路控制器、编
码解码电路、内收发器、介质接口装置等六大部分。网卡主要实现
数据的发送与接收、帧的封装与拆封、编码与解码、介质访问控制
和数据缓存等功能。因为网卡的功能涵盖了 OSI模型的物理层与数
据链路层,所以通常将其归于数据链路层的组件。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
每一网卡在出厂时都被分配了一个全球唯一的地址标识,该
标识被称为网卡地址或 MAC地址,由于该地址是固化在网卡上的,
所以又被称为物理地址或硬件地址。网卡地址由 48bit长度的二
进制数组成。其中,前 24bit表示生产厂商(由 IEEE802.3委员
会分配给各网卡生产厂家),后 24bit为生产厂商所分配的产品
序列号。若采用 12位的十六进制数表示,则前 6个十六进制数表
示厂商,后 6个十六进制数表示该厂商网卡产品的序列号。如网
卡地址 00-90-27-99-11-cc,其中前 6个十六进制表示该网卡由
Intel公司生产,相应的网卡序列号为 99-11-cc。网卡地址主要
用于设备的物理寻址,与 IP地址所具有的逻辑寻址作用有着截
然不同的区别。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
网卡的分类方法有多种,例如按照传输速率、按照总
线类型、按照所支持的传输介质、按照用途或按照网络
技术来进行分类等等。
按照网络技术的不同可分为以太网卡、令牌环网卡、
FDDI网卡等。目以太网网卡最常见。
按照传输速率,单单以太网卡就提供了 10Mbps、
100Mbps,1000Mbps和 10Gbps等多种速率。数
据传输速率是网卡的一个重要指标。
按照总线类型分类,网卡可分为 ISA总线网卡、
EISA总线网卡,PCI总线网卡及其他总线网卡等。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
按照所支持的传输介质,网卡可分为双绞线网卡、粗缆
网卡、细缆网卡、光纤网卡和无线网卡。连接双绞线的网
卡带有 RJ45接口,连接粗缆的网卡带有 AUI接口,连接细
缆的网卡带有 BNC接口,连接光纤的网卡则带有光纤接口。
当然有些网卡同时带有多种接口,如同时具备 RJ45口和光
纤接口。目前,市场上还有带 USB接口的网卡,这种网卡可
以用于具备 USB接口的各类计算机网络。
另外,按照用途,网卡还可分为工作站网卡、服务器网
卡和笔记本网卡等。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
4.5.2 网桥
网桥工作在 OSI模型中数据链路层的 MAC子层。
网桥可以将局域网分成两个或更多的网段,它通过隔离每
个网段内部的数据流量,从而增加了每个节点所能使用的有
效带宽。
网桥的重要功能是不受介质访问子层中冲突域的限制而扩
展网长,对于众多的共享 LAN可以隔离 LAN段,为每一个 LAN段
提供相同的带宽,这就等于扩大了总带宽,既可使各个 LAN段
内部信息包、冲突包都不会广播到另一个 LAN段,明显地提高
了利用效率。同时网桥又具有存储、转发、过滤功能,使应
当发送到另一个 LAN的信息正确转发。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
2,网桥功能
网桥主要具有如下功能:
(1) 物理上扩展网络
一个网桥可以连接多个网络,同时一个网络又可以使用多个网
桥与其他网络互连。
(2) 数据过滤功能
在网桥中,要维持一个交换表,该表给出关于网桥不同接口所
连主机的 MAC 地址信息。网桥根据数据帧中的目的地址判断是否
转发该帧。也就是说,网桥从某一接口收到数据帧时,将首先获取
目的 MAC 地址,然后查看交换表,若发送节点与目的节点在同一
个网段内时,则网桥就不转发该帧,只有源节点与目的节点不在同
一个网段时,网桥才转发该帧。也就是说,网桥具有基于第二层地
址进行帧过滤的功能。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
(3) 逻辑划分网络的功能
通过对帧的过滤,网桥实现了物理网络内部通信的相
互隔离,源和目标在同一物理网段中的数据帧由于网桥
的数据过滤作用是不会被转发或渗透到其他网段中的。
将网桥所具备的这种隔离功能称为逻辑划分网络的功能。
(4) 数据推进功能
网桥根据数据过滤的结果实现数据帧的转发。
(5) 帧格式转换功能
当数据帧通过网桥到达另一个执行不同局域网协议的
LAN 时,网桥还能够对帧格式进行转换处理。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
4.5.3 交换机
随着局域网对容量和性能方面需求的增高,1993年,局域
网交换设备出现。 1994年,国内掀起了交换网络技术的热潮。
1,交换技术的基本原理
局域网交换技术是 OSI参考模型中的第二层 —— 数据
链路层( Data-Link Layer)上的技术,所谓“交换”实际上
就是指转发数据帧( frame)。在数据通信中,所有的交换设
备(即交换机)执行两个基本的操作:
? 交换数据帧,将从输入介质上收到的数据帧转发至相应的
输出介质;
? 维护交换操作,构造和维护交换地址表。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
( 1) 交换数据帧
交换机根据数据帧的 MAC( Media Access Control)地
址(即物理地址)进行数据帧的转发操作。遵循以下规则:
? 如果数据帧的目的 MAC地址是广播地址或者组播地址,
则向交换机所有端口转发(除数据帧来的端口)。
? 如果数据帧的目的地址是单播地址,但是这个地址并不
在交换机的地址表中,那么也会向所有的端口转发(除数
据帧来的端口)。
? 如果数据帧的目的地址在交换机的地址表中,那么就根
据地址表转发到相应的端口。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
? 如果数据帧的目的地址与数据帧的源地址在一个网段上,
它就会丢弃这个数据帧,交换也就不会发生。
下面,以图 4.10为例来看看具体的数据帧交换过程。
① 当主机 D发送广播帧时,交换机从 E3端口接收到目的
地址为 ffff.ffff.ffff的数据帧,则向 E0,E1,E2和 E4端
口转发该数据帧。
② 当主机 D与 E主机通信时,交换机从 E3端口接收到目
的地址为 0260.8c01.5555的数据帧,查找地址表后发现
0260.8c01.5555并不在表中,因此交换机仍然向 E0,E1、
E2和 E4端口转发该数据帧。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
③ 当主机 D与主机 F通信时,交换机从 E3端口接收
到目的地址为 0260.8c01.6666的数据帧,查找地址
表后发现 0260.8c01.6666也位于 E3端口,即与源地
址处于同一个网段,所以交换机不会转发该数据帧,
而是直接丢弃。
④ 当主机 D与主机 A通信时,交换机从 E3端口接收
到目的地址为 0260.8c01.1111的数据帧,查找地址
表后发现 0260.8c01.1111位于 E0端口,所以交换机
将数据帧转发至 E0端口,这样主机 A即可收到该数据
帧。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
⑤ 如果在主机 D与主机 A通信的同时,主机 B也正
在向主机 C发送数据,交换机同样会把主机 B发送的
数据帧转发到连接主机 C的 E2端口。这时 E1和 E2之间,
以及 E3和 E0之间,通过交换机内部的硬件交换电路,
建立了两条链路,这两条链路上的数据通信互不影
响,因此网络亦不会产生冲突。所以,主机 D和主机
A之间的通信独享一条链路,主机 C和主机 B之间也独
享一条链路。而这样的链路仅在通信双方有需求时
才会建立,一旦数据传输完毕,相应的链路也随之
拆除。这就是交换机主要的特点。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
图 4.10 数据帧交换过程
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
( 2) 构造维护交换地址表
交换机的交换地址表中,一条表项主要由一个主机
MAC地址和该地址所位于的交换机端口号组成。整张地址表
的生成采用动态自学习的方法,即当交换机收到一个数据
帧以后,将数据帧的源地址和输入端口记录在交换地址表
中。思科的交换机中,交换地址表放置在内容可寻址存储
器( Content-Addressable Memory,CAM)中,因此也被
称为 CAM表。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
在存放交换地址表项之前,交换机首先应该查找地址表
中是否已经存在该源地址的匹配表项,仅当匹配表项不存
在时才能存储该表项。每一条地址表项都有一个时间标记,
用来指示该表项存储的时间周期。地址表项每次被使用或
者被查找时,表项的时间标记就会被更新。如果在一定的
时间范围内地址表项仍然没有被引用,它就会从地址表中
被移走。因此,交换地址表中所维护的一直是最有效和最
精确的地址 — 端口信息。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
2,交换机三种交换技术
( 1)端口交换
根据支持的程度,端口交换还可细分为:
? 模块交换,将整个模块进行网段迁移;
? 端口组交换:通常模块上的端口被划分为若干组,每组
端口允许进行网段迁移;
? 端口级交换:支持每个端口在不同网段之间进行迁移。
这种交换技术是基于 OSI第一层上完成的,具有灵活性和负
载平衡能力等优点。如果配置得当,那么还可以在一定程
度进行容错,但没有改变共享传输介质的特点,因而不能
称之为真正的交换。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
( 2)帧交换
帧交换是目前应用最广的局域网交换技术,它通过对传统传输
媒介进行微分段,提供并行传送的机制,以减小冲突域,获得高的
带宽。对网络帧的处理方式一般有以下几种:
? 直通交换:提供线速处理能力,交换机只读出网络帧的前 14个
字节,便将网络帧传送到相应的端口上;
? 存储转发:通过对网络帧的读取进行验错和控制。
( 3)信元交换
ATM采用固定长度 53个字节的信元交换。由于长度固定,因而便
于用硬件实现。 ATM采用专用的非差别连接,并行运行,可以通过
一个交换机同时建立多个节点,但并不会影响每个节点之间的通信
能力。 ATM的带宽可以达到 25M,155M,622M甚至数 Gb的传输能力。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
3,局域网交换机的种类
(1) 从广义上来看,交换机分为两种:广域网交换机和局
域网交换机。
(2) 按照现在复杂的网络构成方式,网络交换机被划分为
接入层交换机、汇聚层交换机和核心层交换机。其中,核心
层交换机全部采用机箱式模块化设计,接入层和汇聚层交换
机共同构成完整的中小型局域网解决方案。
(3) 从传输介质和传输速度上看,局域网交换机可以分为
以太网交换机、快速以太网交换机、千兆以太网交换机、
FDDI交换机,ATM交换机和令牌环交换机等多种,这些交换机
分别适用于以太网、快速以太网,FDDI,ATM和令牌环网等环
境。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
(4) 从规模应用上又有企业级交换机、部门级交换机和
工作组交换机等。
(5) 按照 OSI的七层网络模型,交换机又可以分为第二
层交换机、第三层交换机、第四层交换机等,一直到第七
层交换机。基于 MAC地址工作的第二层交换机最为普遍,用
于网络接入层和汇聚层。基于 IP地址和协议进行交换的第
三层交换机普遍应用于网络的核心层,也少量应用于汇聚
层。
(6) 按照交换机的可管理性,又可把交换机分为可管理
型交换机和不可管理型交换机,
(7) 按照交换机是否可堆叠,交换机又可分为可堆叠型
交换机和不可堆叠型交换机两种。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
(8) 按照最广泛的普通分类方法,局域网交换机可以分
为桌面型交换机( Desktop Switch)、工作组型交换
机( Workgroup Switch)和校园网交换机
( Campus Switch)三类。
(9) 根据交换技术的不同,有人又把交换机分为端口交
换机、帧交换机和信元交换机三种。
(10) 从应用的角度划分,交换机又可分为电话交换机
( PBX)和数据交换机( Switch)。当然,目前在数据
上的语音传输 VoIP又有人称之为, 软交换机, 。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.5 数据链路层的设备与组件
4,交换机之间的连接
交换机之间的连接最简单的一种方法就是采用一根交叉的双绞
线( 1,2和 3,6对调)将它们连接起来。如果下级交换机有 Uplink
口,也可以接到 Uplink口上,用直连线连接。总的来讲,交换机之
间的连接有以下几种。
( 1)级联,交换机可以通过上联端口实现与骨干交换机的连接。
( 2)冗余连接,在以太网环境下是不允许出现环路的,生成树
( Spanning Tree)则可以在交换机之间实现冗余连接又避免出现
环路。当然,这要求交换机支持 Spanning Tree。
( 3)堆叠,提供堆叠接口的交换机之间可以通过专用的堆叠线
连接起来。通常,堆叠的带宽是交换机端口速率的几十倍。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
4.6 技能训练:交换机和集线器的级联
交换机和集线器的连接都可以采用级联方式,两者
级联的方法基本相同,只是集线器的级联应严格遵守
集线器级联配置规则( 5-4-3-2-1规则)。下面以交
换机为例介绍级联的方法。
如果交换机具有级联端口,那么可以通过一条 UTP
直连线将一条交换机的级联端口连入另一台交换机的
普通端口。
如果交换机没有级联端口,那么可以通过一条 UTP
交叉线将两台交换机的普通端口进行连接。
2010年 5月 21日星期五 2时 18分 23秒 计算机网络技术实用教程 (第 3版 )
习 题
1,数据链路层的主要任务是什么?
2,数据链路层的常用成帧方法有哪些?
3,何为差错?引起差错的原因是什么?
4,试计算传输信息 1011001 的 CRC编码,假设其生成
多项式 G(x)=x4+x3+1。
5,简述滑动窗口的原理。
6,简述 HDLC帧各字段的意义。 HDLC帧可分为哪几个
大类?简述各类帧的作用。
7,网卡的主要功能是什么?
8,试对网桥和交换机的异同之处进行比较。