《计算机网络(第6版)课件-数据链路层.ppt》由会员分享,可在线阅读,更多相关《计算机网络(第6版)课件-数据链路层.ppt(152页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机网络(第计算机网络(第 6 版)版)第第 3 章章 数据链路层数据链路层数据链路层数据链路层数据链路层使用的信道主要有以下两种类型:n点对点信道。这种信道使用一对一的点对点通信方式。n广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发 数据链路层的简单模型数据链路层的简单模型局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1
2、R2R3H1H2从层次上来看数据的流动数据链路层的简单模型数据链路层的简单模型(续)续)局域网广域网主机 H1主机 H2路由器 R1路由器 R2路由器 R3电话网局域网主机 H1 向 H2 发送数据链路层应用层运输层网络层物理层链路层应用层运输层网络层物理层链路层网络层物理层链路层网络层物理层链路层网络层物理层R1R2R3H1H2仅从数据链路层观察帧的流动3.1 使用点对点信道的数据链路层使用点对点信道的数据链路层3.1.1 数据链路和帧数据链路和帧 n链路链路(link)是一条无源的点到点的是一条无源的点到点的物理线路段,中间没有任何其他的物理线路段,中间没有任何其他的交换结点。交换结点。n
3、一条链路只是一条通路的一个组成部分。一条链路只是一条通路的一个组成部分。3.1 使用点对点信道的数据链路层使用点对点信道的数据链路层3.1.1 数据链路和帧数据链路和帧 n数据链路数据链路(data link)除了物理线路外,除了物理线路外,还必须有通信协议来控制这些数据的传还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。到链路上,就构成了数据链路。n现在最常用的方法是使用适配器(即网卡)现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。来实现这些协议的硬件和软件。n一般的适配器都包括了数据链路层
4、和物理层一般的适配器都包括了数据链路层和物理层这两层的功能。这两层的功能。IP 数据报1010 0110帧取出数据链路层网络层链路结点 A结点 B物理层数据链路层结点 A结点 B帧(a)(b)发送帧接收链路IP 数据报1010 0110帧装入数据链路层传送的是帧数据链路层像个数字管道数据链路层像个数字管道 n常常在两个对等的数据链路层之间画出常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传一个数字管道,而在这条数字管道上传输的数据单位是输的数据单位是帧帧。n早期的数据通信协议曾叫作早期的数据通信协议曾叫作通信规程通信规程(procedure)。因此在数据链路层,规程。因此在
5、数据链路层,规程和协议是同义语。和协议是同义语。结点结点帧帧3.1.2 三个基本问题三个基本问题(1)封装成帧封装成帧(2)透明传输透明传输(3)差错控制差错控制 1.封装成帧封装成帧n封装成帧封装成帧(framing)就是在一段数据的前后分就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确别添加首部和尾部,然后就构成了一个帧。确定帧的界限。定帧的界限。n首部和尾部的一个重要作用就是进行首部和尾部的一个重要作用就是进行帧定界帧定界。1.封装成帧封装成帧帧结束帧首部IP 数据报帧的数据部分帧尾部 MTU数据链路层的帧长开始发送帧开始用控制字符进行帧定界的方法举例用控制字符进行帧定界的
6、方法举例 SOH装在帧中的数据部分帧帧开始符帧结束符发送在前EOT2.透明传输透明传输SOHEOT出现了“EOT”被接收端当作无效帧而丢弃被接收端误认为是一个帧数据部分EOT完整的帧发送在前解决透明传输问题解决透明传输问题n发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是 1B)。n字节填充(byte stuffing)或字符填充(character stuffing)接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。解决透明传输问题解决透明传输问题n如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收
7、端收到连续的两个转义字符时,就删除其中前面的一个。SOHSOHEOTSOHESCESCEOTESCSOHESCESCESCSOH原始数据原始数据EOTEOT经过字节填充后发送的数据经过字节填充后发送的数据字节填充字节填充字节填充字节填充字节填充字节填充字节填充字节填充发送在前帧开始符帧开始符帧结束符帧结束符用字节填充法解决透明传输的问题用字节填充法解决透明传输的问题 SOH3.差错检测差错检测n在传输过程中可能会产生在传输过程中可能会产生比特差错比特差错:1 可可能会变成能会变成 0 而而 0 也可能变成也可能变成 1。n在一段时间内,传输错误的比特占所传在一段时间内,传输错误的比特占所传输比
8、特总数的比率称为输比特总数的比率称为误码率误码率 BER(Bit Error Rate)。3.差错检测差错检测n误码率与信噪比有很大的关系。n为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。循环冗余检验的原理循环冗余检验的原理 n在数据链路层传送的帧中,广泛使用了在数据链路层传送的帧中,广泛使用了循循环冗余检验环冗余检验 CRC 的检错技术。的检错技术。n在发送端,先把数据划分为组。假定每组在发送端,先把数据划分为组。假定每组 k 个比特。个比特。循环冗余检验的原理循环冗余检验的原理 n假设待传送的一组数据假设待传送的一组数据 M=101001(现在(现在 k=6)
9、。我们在)。我们在 M 的后面再添加供差错检的后面再添加供差错检测用的测用的 n 位位冗余码冗余码一起发送。一起发送。冗余码的计算冗余码的计算 n用二进制的模用二进制的模 2 运算进行运算进行 2n 乘乘 M 的运算,的运算,这相当于在这相当于在 M 后面添加后面添加 n 个个 0。n得到的得到的(k+n)位的数除以事先选定好的位的数除以事先选定好的长度为长度为(n+1)位的位的除数除数 P,得出,得出商商是是 Q 而而余数余数是是 R,余数,余数 R 比除数比除数 P 少少1 位,位,即即 R 是是 n 位。位。冗余码的计算举例冗余码的计算举例 n现在现在 k=6,M=101001。n设设
10、n=3,除数除数 P=1101,n被除数是被除数是 2nM=101001000。n模模 2 运算的结果是:运算的结果是:商商 Q=110101,余数余数 R=001。n把余数把余数 R 作为作为冗余码冗余码添加在数据添加在数据 M 的后面发的后面发送出去。发送的数据是:送出去。发送的数据是:2nM+R 即:即:101001001,共,共(k+n)位。位。110101 Q(商商)P(除数除数)1101 101001000 2nM(被除数被除数)1101 1110 1101 0111 0000 1110 1101 0110 0000 1100 1101 001 R(余数余数),作为,作为 FCS
11、循环冗余检验的原理说明循环冗余检验的原理说明 帧检验序列帧检验序列 FCS n在数据后面添加上的冗余码称为在数据后面添加上的冗余码称为帧检验帧检验序列序列 FCS(Frame Check Sequence)。n循环冗余检验循环冗余检验 CRC 和帧检验序列和帧检验序列 FCS并不等同。并不等同。nCRC 是一种常用的是一种常用的检错方法检错方法,而,而 FCS 是添是添加在数据后面的加在数据后面的冗余码冗余码。nFCS 可以用可以用 CRC 这种方法得出,但这种方法得出,但 CRC 并非用来获得并非用来获得 FCS 的唯一方法。的唯一方法。接收端对收到的每一帧进行接收端对收到的每一帧进行 CR
12、C 检验检验 n(1)若若得得出出的的余余数数 R=0,则则判判定定这这个个帧帧没没有有差错,就差错,就接受接受(accept)。n(2)若若余余数数 R 0,则则判判定定这这个个帧帧有有差差错错,就就丢弃丢弃。接收端对收到的每一帧进行接收端对收到的每一帧进行 CRC 检验检验 n但但这这种种检检测测方方法法并并不不能能确确定定究究竟竟是是哪哪一一个个或或哪哪几个比特出现了差错。几个比特出现了差错。n只只要要经经过过严严格格的的挑挑选选,并并使使用用位位数数足足够够多多的的除除数数 P,那那么么出出现现检检测测不不到到的的差差错错的的概概率率就就很很小小很小。很小。应当注意应当注意 n仅仅用用
13、循循环环冗冗余余检检验验 CRC 差差错错检检测测技技术术只只能做到无差错能做到无差错接受接受(accept)。n“无无差差错错接接受受”是是指指:“凡凡是是接接受受的的帧帧(即即不不包包括括丢丢弃弃的的帧帧),我我们们都都能能以以非非常常接接近近于于 1 的的概概率率认认为为这这些些帧帧在在传传输输过过程中没有产生差错程中没有产生差错”。应当注意应当注意 n也也就就是是说说:“凡凡是是接接收收端端数数据据链链路路层层接接受受的的帧帧都都没没有有传传输输差差错错”(有有差差错错的的帧帧就丢弃而不接受)。就丢弃而不接受)。n要要做做到到“可可靠靠传传输输”(即即发发送送什什么么就就收收到什么)就
14、必须再加上到什么)就必须再加上确认确认和和重传重传机制。机制。nCRC中的除数,可以中的除数,可以通过生成多项式来表通过生成多项式来表示示nCRC中的除数,可以中的除数,可以通过生成多项式来表通过生成多项式来表示示CRC差错控制的原理差错控制的原理1.先指定除数先指定除数2.发送端根据除法运算求冗余码发送端根据除法运算求冗余码3.发送端将冗余码添加在发送数据后发送端将冗余码添加在发送数据后4.接收端对收到的数据,根据冗余码求余数接收端对收到的数据,根据冗余码求余数5.差错检测差错检测3-071.先指定除数先指定除数2.发送端根据除法运算求冗余码发送端根据除法运算求冗余码3.发送端将冗余码添加在
15、发送数据后发送端将冗余码添加在发送数据后4.接收端对收到的数据,根据冗余码求余数接收端对收到的数据,根据冗余码求余数5.差错检测差错检测发送端数据发送端数据除数除数接收端数据接收端数据冗余码冗余码求余数,进行求余数,进行cRC检验检验3.2 点对点协议点对点协议 PPP 3.2.1 PPP 协议的特点协议的特点 n现在全世界使用得最多的数据链路层协现在全世界使用得最多的数据链路层协议是议是点对点协议点对点协议 PPP(Point-to-Point Protocol)。n用户使用拨号电话线接入因特网时,一用户使用拨号电话线接入因特网时,一般都是使用般都是使用 PPP 协议。协议。用户到用户到 I
16、SP 的链路使用的链路使用 PPP 协议协议 用户至因特网至因特网已向因特网管理机构已向因特网管理机构申请到一批申请到一批 IP 地址地址ISP接入网接入网PPP 协议协议1.PPP 协议应满足的需求协议应满足的需求 n简单简单这是这是首要的要求首要的要求n封装成帧封装成帧 n透明性透明性 n多种网络层协议多种网络层协议 n多种类型链路多种类型链路 n差错检测差错检测 n检测连接状态检测连接状态 n最大传送单元最大传送单元 n网络层地址协商网络层地址协商 n数据压缩协商数据压缩协商 2.PPP 协议不需要的功能协议不需要的功能n纠错纠错 n流量控制流量控制 n序号序号 n多点线路多点线路 n半
17、双工或单工链路半双工或单工链路 3.PPP 协议的组成协议的组成 nPPP 协议有三个组成部分协议有三个组成部分 n一个将一个将 IP 数据报封装到串行链路的方法。数据报封装到串行链路的方法。n链路控制协议链路控制协议 LCP(Link Control Protocol)。n网络控制协议网络控制协议 NCP(Network Control Protocol)。3.2.2 PPP 协议的帧格式协议的帧格式n标志字段标志字段 F=0 x7E(符号(符号“0 x”表示后表示后面的字符是用十六进制表示。十六进制面的字符是用十六进制表示。十六进制的的 7E 的二进制表示是的二进制表示是 01111110
18、)。)。n地址字段地址字段 A 只置为只置为 0 xFF。地址字段实际。地址字段实际上并不起作用。上并不起作用。3.2.2 PPP 协议的帧格式协议的帧格式n控制字段控制字段 C 通常置为通常置为 0 x03。nPPP 是面向字节的,所有的是面向字节的,所有的 PPP 帧的长帧的长度都是整数字节。度都是整数字节。PPP 协议的帧格式协议的帧格式nPPP 有一个有一个 2 个字节的协议字段。个字节的协议字段。n当协议字段为当协议字段为 0 x0021 时,时,PPP 帧的信息字段就是帧的信息字段就是IP 数据报。数据报。n若为若为 0 xC021,则信息字段是则信息字段是 PPP 链路控制数据。
19、链路控制数据。n若为若为 0 x8021,则表示这是网络控制数据。,则表示这是网络控制数据。IP 数据报1211字节12不超过 1500 字节PPP 帧先发送7EFF03FACFCSF7E协议信 息 部 分首部尾部透明传输问题透明传输问题 n当当 PPP 用在同步传输链路时,协议规定用在同步传输链路时,协议规定采用硬件来完成比特填充(和采用硬件来完成比特填充(和 HDLC 的的做法一样)。做法一样)。n当当 PPP 用在异步传输时,就使用一种特用在异步传输时,就使用一种特殊的殊的字符填充法字符填充法。字符填充字符填充 n将信息字段中出现的每一个将信息字段中出现的每一个 0 x7E 字节转字节转
20、变成为变成为 2 字节序列字节序列(0 x7D,0 x5E)。n若信息字段中出现一个若信息字段中出现一个 0 x7D 的字节的字节,则则将其转变成为将其转变成为 2 字节序列字节序列(0 x7D,0 x5D)。字符填充字符填充 n若信息字段中出现若信息字段中出现 ASCII 码的控制字符码的控制字符(即数值小于(即数值小于 0 x20 的字符),则在该字的字符),则在该字符前面要加入一个符前面要加入一个 0 x7D 字节,同时将该字节,同时将该字符的编码加以改变。字符的编码加以改变。3-09零比特填充零比特填充 nPPP 协议用在协议用在 SONET/SDH 链路时,是链路时,是使用同步传输(
21、一连串的比特连续传送)使用同步传输(一连串的比特连续传送)。这时。这时 PPP 协议采用零比特填充方法来协议采用零比特填充方法来实现透明传输。实现透明传输。零比特填充零比特填充 nPPP 协议用在协议用在 SONET/SDH 链路时,是链路时,是使用同步传输(一连串的比特连续传送)使用同步传输(一连串的比特连续传送)。这时。这时 PPP 协议采用零比特填充方法来协议采用零比特填充方法来实现透明传输。实现透明传输。0 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 00 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 00 1 0 0 1 1 1 1 1 0 1 0
22、0 0 1 0 1 0信息字段中出现了和信息字段中出现了和标志字段标志字段 F 完全一样完全一样的的 8 比特组合比特组合发送端在发送端在 5 个连个连 1 之后之后填入填入 0 比特再发送出去比特再发送出去在接收端把在接收端把 5 个连个连 1之后的之后的 0 比特删除比特删除会被误认为是标志字段会被误认为是标志字段 F 发送端填入发送端填入 0 比特比特接收端删除填入的接收端删除填入的 0 比特比特零比特填充3-093-10n若有若有 n0110 11111 11111 00n则则0比特填充后为:比特填充后为:n0110 111110 111110 00n若有若有n0001110 1111
23、10 111110 110n则删除则删除0后的原始序列后的原始序列n0001110 11111 11111 110 不提供使用序号和确认不提供使用序号和确认的可靠传输的可靠传输 nPPP 协议之所以不使用序号和确认机制是协议之所以不使用序号和确认机制是出于以下的考虑:出于以下的考虑:n在数据链路层出现差错的概率不大时,使用比在数据链路层出现差错的概率不大时,使用比较简单的较简单的 PPP 协议较为合理。协议较为合理。n在因特网环境下,在因特网环境下,PPP 的信息字段放入的数的信息字段放入的数据是据是 IP 数据报。数据报。数据链路层的可靠传输并不数据链路层的可靠传输并不能够保证网络层的传输也
24、是可靠的。能够保证网络层的传输也是可靠的。n帧检验序列帧检验序列 FCS 字段可保证无差错接受。字段可保证无差错接受。3.2.3 PPP 协议的工作状态协议的工作状态 n当用户拨号接入当用户拨号接入 ISP 时,路由器的调制解时,路由器的调制解调器对拨号做出确认,并建立一条物理连调器对拨号做出确认,并建立一条物理连接。接。nPC 机向路由器发送一系列的机向路由器发送一系列的 LCP 分组分组(封装成多个(封装成多个 PPP 帧)。帧)。3.2.3 PPP 协议的工作状态协议的工作状态 n这些分组及其响应选择一些这些分组及其响应选择一些 PPP 参数,和参数,和进行网络层配置,进行网络层配置,N
25、CP 给新接入的给新接入的 PC机机分配一个临时的分配一个临时的 IP 地址,使地址,使 PC 机成为因机成为因特网上的一个主机。特网上的一个主机。n通信完毕时,通信完毕时,NCP 释放网络层连接,收回释放网络层连接,收回原来分配出去的原来分配出去的 IP 地址。接着,地址。接着,LCP 释释放数据链路层连接。最后释放的是物理层放数据链路层连接。最后释放的是物理层的连接。的连接。设备之间无链路链路静止链路建立鉴别网络层协议链路打开链路终止物理链路LCP 链路已鉴别的 LCP 链路已鉴别的 LCP 链路和 NCP 链路物理层连接建立LCP 配置协商鉴别成功或无需鉴别NCP 配置协商链路故障或关闭
26、请求LCP 链路终止鉴别失败LCP 配置协商失败3.3 使用广播信道的数据链路层使用广播信道的数据链路层3.3.1 使用广播信道的数据链路层使用广播信道的数据链路层 n局域网最主要的特点是:网络为一个单局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有位所拥有,且地理范围和站点数目均有限。限。3.3 使用广播信道的数据链路层使用广播信道的数据链路层3.3.1 使用广播信道的数据链路层使用广播信道的数据链路层 n局域网具有如下的一些主要优点:局域网具有如下的一些主要优点:n具有广播功能,从一个站点可很方便地访问全网。具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共
27、享连接在局域网上的各种硬件局域网上的主机可共享连接在局域网上的各种硬件和软件资源。和软件资源。n便于系统的扩展和逐渐地演变,各设备的位置可灵便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。活调整和改变。n提高了系统的可靠性、可用性和残存性。提高了系统的可靠性、可用性和残存性。局域网的拓扑局域网的拓扑 匹配电阻集线器干线耦合器总线网星形网环形网数据链路层的两个子层数据链路层的两个子层 n为了使数据链路层能更好地适应多种局域为了使数据链路层能更好地适应多种局域网标准,网标准,802 委员会就将局域网的数据链委员会就将局域网的数据链路层拆成两个子层:路层拆成两个子层:n逻辑链路控制逻辑链路
28、控制 LLC(Logical Link Control)子子层层n媒体接入控制媒体接入控制 MAC(Medium Access Control)子层。子层。数据链路层的两个子层数据链路层的两个子层 n与接入到传输媒体有关的内容都放在与接入到传输媒体有关的内容都放在 MAC子层,而子层,而 LLC 子层则与传输媒体无关,不子层则与传输媒体无关,不管采用何种协议的局域网对管采用何种协议的局域网对 LLC 子层来说子层来说都是透明的都是透明的 局域网对局域网对 LLC 子层子层是透明的是透明的 局 域 网网络层物理层站点 1网络层物理层逻辑链路控制LLCLLC媒体接入控制MACMAC数据链路层站点
29、2LLC LLC 子层看不见子层看不见下面的局域网下面的局域网以后一般不考虑以后一般不考虑 LLC 子层子层 n很多厂商生产的适配器上就仅装有很多厂商生产的适配器上就仅装有 MAC 协议而没有协议而没有 LLC 协议。协议。2.适配器的作用适配器的作用 n网络接口板又称为网络接口板又称为通信适配器通信适配器(adapter)或或网络接口卡网络接口卡 NIC(Network Interface Card),或,或“网卡网卡”。2.适配器的作用适配器的作用 n适配器的重要功能:适配器的重要功能:n进行串行进行串行/并行转换。并行转换。n对数据进行缓存。对数据进行缓存。n在计算机的操作系统安装设备驱
30、动程序。在计算机的操作系统安装设备驱动程序。n实现以太网协议。实现以太网协议。计算机通过适配器计算机通过适配器和局域网进行通信和局域网进行通信 硬件地址硬件地址至局域网至局域网适配器适配器(网卡)(网卡)串行通信串行通信CPU 和和存储器存储器生成发送的数据生成发送的数据处理收到的数据处理收到的数据把帧发送到局域网把帧发送到局域网从局域网接收帧从局域网接收帧计算机计算机IP 地址地址并行并行通信通信n最初的以太网是将许多计算机都连接到一根总最初的以太网是将许多计算机都连接到一根总线上。当初认为这样的连接方法既简单又可靠,线上。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。因为总线
31、上没有有源器件。3.3.2 CSMA/CD 协议协议 B向 D发送数据 C D A E匹配电阻(用来吸收总线上传播的信号)匹配电阻不接受不接受不接受接受B只有 D 接受B 发送的数据以太网的广播方式发送以太网的广播方式发送 n总线上的每一个工作的计算机都能检测到总线上的每一个工作的计算机都能检测到 B 发发送的数据信号。送的数据信号。n由于只有计算机由于只有计算机 D 的地址与数据帧首部写入的的地址与数据帧首部写入的地址一致,因此只有地址一致,因此只有 D 才接收这个数据帧。才接收这个数据帧。n其他所有的计算机(其他所有的计算机(A,C 和和 E)都检测到不是)都检测到不是发送给它们的数据帧,
32、因此就丢弃这个数据帧发送给它们的数据帧,因此就丢弃这个数据帧而不能够收下来。而不能够收下来。n具有广播特性的总线上实现了一对一的通信。具有广播特性的总线上实现了一对一的通信。为了通信的简便为了通信的简便以太网采取了两种重要的措施以太网采取了两种重要的措施 n采用较为灵活的无连接的工作方式,即采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据。不必先建立连接就可以直接发送数据。n以太网对发送的数据帧不进行编号,也以太网对发送的数据帧不进行编号,也不要求对方发回确认。不要求对方发回确认。n这样做的理由是局域网信道的质量很好,因这样做的理由是局域网信道的质量很好,因信道质量产生差错的
33、概率是很小的。信道质量产生差错的概率是很小的。以太网提供的服务以太网提供的服务 n以太网提供的服务是不可靠的交付,即以太网提供的服务是不可靠的交付,即尽最大努力的交付。尽最大努力的交付。n当目的站收到有差错的数据帧时就丢弃当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正由此帧,其他什么也不做。差错的纠正由高层来决定。高层来决定。n如果高层发现丢失了一些数据而进行重如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送。帧,而是当作一个新的数据帧来发送。以太网发送的数据都使用以太网发送的数据都使用曼
34、彻斯特曼彻斯特(Manchester)编码编码 曼彻斯特1111100000 比特流差分曼彻斯特载波监听多点接入载波监听多点接入/碰撞检测碰撞检测 CSMA/CD nCSMA/CD 表示表示 Carrier Sense Multiple Access with Collision Detection。n“多点接入多点接入”表示许多计算机以多点接入的方表示许多计算机以多点接入的方式连接在一根总线上。式连接在一根总线上。n“载波监听载波监听”是指每一个站在发送数据之前先是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要
35、发送数据,以免发生据,如果有,则暂时不要发送数据,以免发生碰撞。碰撞。n总线上并没有什么总线上并没有什么“载波载波”。因此,。因此,“载波监载波监听听”就是用电子技术检测总线上有没有其他计就是用电子技术检测总线上有没有其他计算机发送的数据信号。算机发送的数据信号。碰撞检测碰撞检测n“碰撞检测碰撞检测”就是计算机边发送数据边检测信就是计算机边发送数据边检测信道上的信号电压大小。道上的信号电压大小。n当几个站同时在总线上发送数据时,总线上的当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。信号电压摆动值将会增大(互相叠加)。n当一个站检测到的信号电压摆动值超过一定的当一个
36、站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。发送数据,表明产生了碰撞。n所谓所谓“碰撞碰撞”就是发生了冲突。因此就是发生了冲突。因此“碰撞检碰撞检测测”也称为也称为“冲突检测冲突检测”。检测到碰撞后检测到碰撞后n在发生碰撞时,总线上传输的信号产生在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的了严重的失真,无法从中恢复出有用的信息来。信息来。n每一个正在发送数据的站,一旦发现总每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,线上出现了碰撞,就要立即停止发送,免
37、得继续浪费网络资源,然后等待一段免得继续浪费网络资源,然后等待一段随机时间后再次发送。随机时间后再次发送。电磁波在总线上的电磁波在总线上的有限传播速率的影响有限传播速率的影响 n当某个站监听到总线是空闲时,也可能当某个站监听到总线是空闲时,也可能总线并非真正是空闲的。总线并非真正是空闲的。nA 向向 B 发出的信息,要经过一定的时间发出的信息,要经过一定的时间后才能传送到后才能传送到 B。电磁波在总线上的电磁波在总线上的有限传播速率的影响有限传播速率的影响 nB 若在若在 A 发送的信息到达发送的信息到达 B 之前发送自之前发送自己的帧己的帧(因为这时因为这时 B 的载波监听检测不到的载波监听
38、检测不到 A 所发送的信息所发送的信息),则必然要在某个时间,则必然要在某个时间和和 A 发送的帧发生碰撞。发送的帧发生碰撞。n碰撞的结果是两个帧都变得无用。碰撞的结果是两个帧都变得无用。1 kmABt碰撞t=2 A 检测到发生碰撞 t=B 发送数据B 检测到发生碰撞 t=t=0单程端到端传播时延记为 传播时延对载波监听的影响 1 kmABt碰撞t=B 检测到信道空闲发送数据t=/2发生碰撞t=2 A 检测到发生碰撞 t=B 发送数据B 检测到发生碰撞 t=ABABAB t=0 A 检测到信道空闲发送数据ABt=0t=B 检测到发生碰撞停止发送STOPt=2 A 检测到发生碰撞STOPAB单程
39、端到端传播时延记为 争用期争用期n最先发送数据帧的站,在发送数据帧后至最先发送数据帧的站,在发送数据帧后至多经过时间多经过时间 2 (两倍的端到端往返时延)(两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。就可知道发送的数据帧是否遭受了碰撞。n以太网的端到端往返时延以太网的端到端往返时延 2 称为称为争用期争用期,或或碰撞窗口碰撞窗口。n经过争用期这段时间还没有检测到碰撞,经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。才能肯定这次发送不会发生碰撞。二进制指数类型退避算法二进制指数类型退避算法(truncated binary exponential type)n发
40、生碰撞的站在停止发送数据后,要推迟(退避)发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。一个随机时间才能再发送数据。n基本退避时间取为争用期基本退避时间取为争用期 2。n从整数集合从整数集合0,1,(2k 1)中随机地取出一个数,中随机地取出一个数,记为记为 r。重传所需的时延就是。重传所需的时延就是 r 倍的基本退避时间。倍的基本退避时间。n参数参数 k 按下面的公式计算:按下面的公式计算:k=Min重传次数重传次数,10n当当 k 10 时,参数时,参数 k 等于重传次数。等于重传次数。n当重传达当重传达 16 次仍不能成功时即丢弃该帧,并向高层次仍不能成功时即丢
41、弃该帧,并向高层报告。报告。争用期的长度争用期的长度 n以太网取以太网取 51.2 s 为争用期的长度。为争用期的长度。n对于对于 10 Mb/s 以太网,在争用期内可发送以太网,在争用期内可发送512 bit,即,即 64 字节。字节。n以太网在发送数据时,若前以太网在发送数据时,若前 64 字节没有发字节没有发生冲突,则后续的数据就不会发生冲突。生冲突,则后续的数据就不会发生冲突。n帧间最小间隔为帧间最小间隔为 9.6 s,相当于,相当于 96 bit 的发送的发送时间。时间。n一个站在检测到总线开始空闲后,还要等待一个站在检测到总线开始空闲后,还要等待 9.6 s 才能再次发送数据。才能
42、再次发送数据。n这样做是为了使刚刚收到数据帧的站的接收缓这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。存来得及清理,做好接收下一帧的准备。帧间最小间隔帧间最小间隔 3-21n什么叫做比特时间?使用这种时间单位有什么叫做比特时间?使用这种时间单位有什么好处?什么好处?100比特时间是多少微秒?比特时间是多少微秒?n答:比特时间是发送一比特多需的时间,答:比特时间是发送一比特多需的时间,它是传输率的倒数,便于建立信息长度它是传输率的倒数,便于建立信息长度与发送延迟的关系与发送延迟的关系n “比特时间比特时间”换算成换算成“微秒微秒”必须必须先知道数据率是多少,如数据率
43、是先知道数据率是多少,如数据率是10Mb/s,则,则100比特时间等于比特时间等于10微秒微秒 比特时间的优点比特时间的优点n方便。对不同的传输速率,方便。对不同的传输速率,有相同的比特时间。有相同的比特时间。t=B 检测到信道空闲发送数据t=/2发生碰撞ABABABABt=B 检测到发生碰撞停止发送STOPt=2 A 检测到发生碰撞STOPAB可以将本例题中的时间全部看做比特时间可以将本例题中的时间全部看做比特时间碰撞检测流程总结碰撞检测流程总结计算接受数据时间计算接受数据时间检测碰撞时间检测碰撞时间计算收到碰撞时间计算收到碰撞时间执行退避算法,计算重发时间执行退避算法,计算重发时间以太网中
44、的争用期以太网中的争用期n规定为规定为512比特时间比特时间n发送最小帧长所需要的时间发送最小帧长所需要的时间以太网中为何需要最大和最小以太网中为何需要最大和最小帧长帧长n最小帧长:最小帧长:64字节字节=512比特,用于保证比特,用于保证将短长度的有用信号帧和其他干扰信号将短长度的有用信号帧和其他干扰信号灯分开。灯分开。以太网中为何需要最大和最小以太网中为何需要最大和最小帧长帧长n最大帧长:保证各个站都有平等的机会最大帧长:保证各个站都有平等的机会竞争接入以太网,否则若某个站发送一竞争接入以太网,否则若某个站发送一个特大帧,则其他站需要等待很长的时个特大帧,则其他站需要等待很长的时间才能发送
45、数据间才能发送数据3-22n对于对于10mb/s的以太网,以太网把争用期的以太网,以太网把争用期定为定为512比特时间,要退后比特时间,要退后100个争用期,个争用期,等待时间是等待时间是512*100(比特时间),(比特时间),512*100/10=5120sn对于对于100mb/s的以太网,以太网把争用的以太网,以太网把争用期定为期定为512比特时间,要退后比特时间,要退后100个争用个争用期,等待时间是期,等待时间是512*100(比特时间),(比特时间),512*100/100=512s3-24n最短最短MAC帧长帧长=64+8(字节)(字节)n(64+8)*8(比特比特)n设在设在t
46、=0时时A开始发送,在开始发送,在t=(64+8)*8=576比特时间,比特时间,A应当发应当发送完毕。送完毕。3-24nt=225比特时间,比特时间,B检测到检测到A的信号的信号n在在t=225时间后,时间后,B不在发送数据不在发送数据n在在t=224比特时间和该时间之前,若比特时间和该时间之前,若B发发送数据,则送数据,则A,B信号发生碰撞信号发生碰撞nA的信号在发送完毕之前要发生碰撞的信号在发送完毕之前要发生碰撞n若若B在在t=224比特时间发送数据比特时间发送数据n则则A在在t=449比特时间检测到碰撞比特时间检测到碰撞3-24n如果如果A在发送完毕之前并没有检测到碰撞,在发送完毕之前
47、并没有检测到碰撞,那么就能够肯定那么就能够肯定A所发送的帧不会和所发送的帧不会和B发发送的帧发生碰撞(当然也不会和其他站送的帧发生碰撞(当然也不会和其他站点发生碰撞)点发生碰撞)3-25nt=0时,时,A和和B开始发送数据开始发送数据nt=225比特时间比特时间,A和和B都检测到碰撞(都检测到碰撞()nt=273比特时间比特时间,A和和B结束干扰信号的传结束干扰信号的传输输,A,B马上执行退避算法马上执行退避算法nrA=0,rB=1nA在在t=273比特时间检测信道比特时间检测信道=A立刻检测立刻检测信道信道nB推迟推迟rB*512=512比特时间检测信道比特时间检测信道nB在在273+512
48、=785比特时间检测信道比特时间检测信道nt=273+225=498比特时间比特时间,B发送的干扰发送的干扰信号全部到达信号全部到达AnT=498比特时间,比特时间,A的干扰信号到达的干扰信号到达BnA收到信道干扰信号后,检测到信道空闲,收到信道干扰信号后,检测到信道空闲,等待等待96比特的帧间间隙时间,可以重传比特的帧间间隙时间,可以重传数据数据nt=498+96=594比特时间,比特时间,A开始发送数开始发送数据据n对对BnB推迟推迟rB*512=512比特时间检测信道比特时间检测信道nB在在273+512=785比特时间检测信道比特时间检测信道n若检测到信道空闲,若检测到信道空闲,B等待
49、等待96比特的帧间间隙比特的帧间间隙时间,可以重传数据时间,可以重传数据nt=785+96=881比特时间,比特时间,B可以发送数据可以发送数据n信道在信道在 785-881比特时间空闲,比特时间空闲,B可以发送数据可以发送数据nt=498+96=594比特时间,比特时间,A发送数据发送数据nt=594+225=819比特时间,比特时间,A的数据到的数据到Bn信道在信道在 785-881比特时间空闲,比特时间空闲,B可以发送可以发送数据数据nt=498+96=594比特时间,比特时间,A发送数据发送数据nt=594+225=819比特时间,比特时间,A的数据到的数据到BnB在在819比特时间检
50、测到信道忙,比特时间检测到信道忙,B不能不能在在881比特发送数据,需要继续退避比特发送数据,需要继续退避3.4 使用广播信道的以太网使用广播信道的以太网3.4.1 使用集线器的星形拓扑使用集线器的星形拓扑n传统以太网最初是使用粗同轴电缆,后来传统以太网最初是使用粗同轴电缆,后来演进到使用比较便宜的细同轴电缆,最后演进到使用比较便宜的细同轴电缆,最后发展为使用更便宜和更灵活的双绞线。发展为使用更便宜和更灵活的双绞线。n这种以太网采用星形拓扑,在星形的中心这种以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做则增加了一种可靠性非常高的设备,叫做集线器集线器(hub)什么是集线器