计算机网络(第5版)笔记-第三章

数据链路层使用的信道主要有以下两种类型:
点对点信道:一对一的点对点通信方式。
广播信道:一对多的广播通信方式。
3.1 使用点对点信道的数据链路层(协议数据单元-帧)
链路 :从一个结点到相邻结点的一段物理线路
数据链路 :把实现这些协议的硬件和软件加到链路上。
现在最常用的方法是使用网络适配器(即网卡)来实现这些协议的硬件和软件。一般的适配器都包括了数据链路层和物理层这两层的功能。
另一种术语:将链路分为物理链路(上述的)和逻辑链路(物理链路+通信协议)
数据链路层把网络层交下来的数据构成帧发送到链路上,以及把接收到的帧中的数据取出并上交给网络层。网络层协议数据单元就算IP数据报(数据报、分组或包)。
通信的主要步骤:
(1) 结点A的数据链路层把网络层交下来的IP数据报添加首部和尾部封装成帧。
(2) 结点A把封装好的帧发送给结点B的数据链路层。
(3) 若结点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报上交给上面的网络层;否则丢弃这个帧。
三个基本问题:
 封装成帧
就是在一段数据的前后分别添加首部(帧开始符SOH,十六进制01,二进制编码0000 0001)和尾部(帧结束符EOT 十六进制04,二进制编码0000 0100),然后就构成了一个帧。(数据部分<=长度限制MTU,最大传送单元MTU)首部和尾部的一个重要作用就是进行帧定界。帧定界是分组交换的必然要求。

 透明传输
为了达到透明传输(即传输的数据部分不会因为包含SOH和EOT而出错,如果数据部分和帧定界符一样,将会被错误的认为帧的边界),在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(十六进制1B,二进制:0001 1011),而在接收端的数据链路层在数据送往网络层之前删除这个插入的转义字符。这个方法也叫做“字节填充”或“字符填充”。

透明传输避免消息符号与帧定界符号相混淆。
 差错检测
现实通信链路中比特在传输中会产生差错,传输错误的比特占比称为误码率BER,为了保证可靠性,通常通过循环冗余检验CRC来做差错检测。
差错检测防止无效数据帧浪费后续路由上的传输和处理资源。
3.2点对点协议 PPP
特点:(1)简单
(2)封装成帧
(3)透明性
(4)多种网络层协议 在同一物理链路上同事支持多种网络协议
(5)多种类型的链路
(6)差错检测
(7)检测链接状态
(8)最大传送单元
(9)网络层地址协商
(10)数据压缩协商
 PPP协议不需要的功能
纠错、流量控制、序号、多点线路、半双工和单工链路(PPP协议只支持全双工链路)
 PPP协议的组成部分
一个将 IP 数据报封装到串行链路的方法
链路控制协议 LCP (Link Control Protocol)
网络控制协议 NCP (Network Control Protocol)
 PPP协议的帧格式
在这里插入图片描述
首部:
首部中的标志字段F(Flag),规定为0x7E(符号0x表示它后面的字符是用十六进制表示的。十六进制的7E的二进制表示是01111110),标志字段表示一个帧的开始。
首部中的地址字段A规定为0xFF(即11111111)。
首部中的控制字段C规定为0x03(即00000011)。
首部中的2字节的协议字段:
(1)当协议字段为0x0021时,PPP帧的信息字段就是IP数据报。
(2)当协议字段为0xC021时,PPP帧的信息字段就是PPP链路控制协议LCP的数据。
(3)当协议字段为0x8021时,PPP帧的信息字段就是网络层的控制数据。
尾部:
尾部中的第一个字段(2个字节)是使用CRC的帧检验序列FCS。
尾部中的标志字段F(Flag),规定为0x7E(符号0x表示它后面的字符是用十六进制表示的。十六进制的7E的二进制表示是01111110),标志字段表示一个帧的结束。
 透明传输的实现方法
当信息字段中出现和标志字段一样的比特(0x7E)组合时,就必须采取一些措施使这种形式上和标志字段一样的比特组合不出现在信息字段中。
字节填充——PPP使用异步传输
当 PPP 用在异步传输时,就使用一种特殊的字符填充法:将每一个 0x7E字节变为(0x7D, 0x5E),0x7D转变成为(0x7D, 0x5D)。ASCII 码的控制字符(即数值小于 0x20 的字符),则在前面要加入0x7D,同时将该字符的编码加以改变。

零比特填充——PPP使用同步传输
只要发现有5个连续的1,则立即填入一个0
在这里插入图片描述
 PPP 协议的工作状态:
链路静止-建立物理层-链路建立-pc发LCP-NCP分配IP地址-链路打开,网络层建立。(释放时倒过来)
3.3 使用广播信道的数据链路层
广播信道是一种一对多的通信,局域网使用的就是广播信道。

  1. 局域网的数据链路层(局域网的数据链路层被拆分为了两个子层)
     逻辑链路控制LLC子层:与传输媒体无关
     媒体接入控制MAC子层:和局域网都对LLC子层来说是透明的

局域网按网络拓扑分类:星形网(集线器)、环形网(令牌环形网)、总线网、树形网。
共享信道的方法:
静态划分信道:频分复用、时分复用、波分复用、码分复用。
动态媒体接入控制:也叫多点接入。包括随机接入(会碰撞或冲突,用的较多)和受控接入(探询或轮询,用的较少)。

  1. CSMA/CD 协议
    以太网采用CSMA/CD协议的方式来协调总线上各计算机的工作。在使用CSMA/CD协议的时候,一个站不可能同时进行发送和接收,因此使用CSMA/CD协议的以太网不可能进行全双工通信而只能进行双向交替通信(半双工)。
    CSMA/CD是载波监听多点接入/碰撞检测(Carrier Sense Multiple Access with Collision Detection)的缩写,下面是CSMA/CD协议的要点:
     **“多点接入”**就是计算机以多点接入(动态媒体接入控制)的方式连接在一根总线上。
     **“载波监听”**就是”发送前先监听”,即每一个站在发送数据前先要检测一下总线是否有其他站在发送数据,如有则暂时不要发送数据,要等到信道为空闲。
     **“碰撞检测”**就是“边发送边监听”,即适配器边发送数据边检测信道上的信号电压的变化情况。当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
    备注:电磁波在1km电缆传播时延约5 μs。使用 CSMA/CD 协议的以太网不可能进行全双工通信而只能进行双向交替通信(半双工通信)。
    把总线上的单程端到端传播时延记为τ,A 发送数据后,最迟要经过2τ才能知道自己发送的数据和其他站发送的数据有没有发生碰撞。
     截断二进制指数退避算法:用来解决以太网碰撞问题的一种算法。这种算法让发生碰撞的的站在停止发送数据后,不是等待信道变为空闲后就立即在发送数据,而是推迟(这叫做退避)一个随机的时间。这样做是为了重传是再次发生冲突的概率减小。

在这里插入图片描述
在这里插入图片描述
例如,在第1次重传时,k=1,随机数r从整数{0,1}中选一个数。因此重传推迟的时间是0或争用期,在这两个时间中随机选择一个。
若再发生碰撞,则重传时,k=2,随机数r就从整数{0,1,2,3}中选一个数。因此重传推迟的时间是在0,2 ,4 和6 这4个时间中随机抽取一个。
同样,若在发生碰撞,则重传时k=3,随机数r就从整数{0,1,2,3,4,5,6,7}中选一个数。以此类推。
若连续多次发生冲突,就表明可能有较多的站参与争用信道。但使用退避算法可使重传需要推迟的平均时间随重传次数而增大(这也称为动态退避),因而减小发生碰撞的概率,有利于整个系统的稳定。
 集线器的特点:
在这里插入图片描述
在这里插入图片描述
1990年,IEEE针对星型以太网制定了10BASE-T标准,即802.3i
其中,10代表10Mb/s,BASE代表基带信号,T代表双绞线。FX代表光纤
 以太网的信道利用率:
在这里插入图片描述
以太网信道被占用的情况:
如上图,争用期为2t,即端到端传播时延的两倍,若在争用期内发生了碰撞,则需要立即停止发送数据,等待一段时间进行重传。其中的T0指的是发送时间,t传播时延。
T0=帧长度(L,bit)/发送速率(bit/s)
信道利用率:
在这里插入图片描述
从上述公式就可以看出,要想提高信道利用率,就得减小t,t为传播时延,这和线路的长度有关系,所以可以看出,线路越短,一个信道的信道利用率就越高。这里设a为t与T0的比值。
在这里插入图片描述
当a—>0时,只要已发生碰撞就能立即检测出来,然后就能停止发送,减少了信道资源的浪费。反之,在发送速率一定的情况下,a越大,表明t越大,信道利用率也就越低。所以要想达到较高的信道利用率,就得使以太网的参数t尽量小些,而T0应当大些。所以当数据率一定时,需要满足:
 以太网的线路不能太长
 以太网的帧不能太短
最理想的情况就是,以太网在进行数据传输时,没有发生碰撞(最理想情况,实际不可能达到)此时能够达到最大的信道利用率:
在这里插入图片描述
从这种理想情况来看,当a<<1时,才能达到尽可能高的极限传输速率。
实际情况是根据统计,当以太网中的利用率达到30%时,就已经处于重载的情况了。所以很大一部分信道资源被碰撞给消耗掉了。
3.4 以太网的MAC层

  1. MAC地址
    “MAC地址”又叫做硬件地址或物理地址,实际上就是适配器地址或适配器标识符EUI-48。高位24位:厂家,低位24位由厂家自行指派

2.MAC帧的格式
常用的以太网MAC帧格式有两种标准 : DIX Ethernet V2 标准IEEE 的 802.3 标准。V2使用较多,如图:
在这里插入图片描述
在这里插入图片描述
以太网V2的MAC帧较为简单,有五个字段组成。
以太网的 MAC 帧格式:目的地址字段6字节,源地址字段6字节,类型字段2字节(标志上一层使用的是什么协议,以便把收到的MAC帧的数据上交给上一层的这个协议。)数据字段46~1500字节(46=最小长度64-18字节的首部和尾部),FCS字段4字节(利用CRC检验)。前面插入的8字节中,7个字节是前同步码1个是帧开始定界符。
以太网上传送数据时是以帧为单位进行传送。以太网在传送帧时,各帧之间还必须有一定的时间间隔。所以接收端只要找到帧开始定界符,其后面连续到达的比特流就都属于同一个MAC帧。
 无效的MAC帧:
帧的长度不是整数个字节;用收到的帧检验序列FCS查出有差错;收到的帧的MAC客户数据字段不在46-1500字节之间。无效帧丢弃。以太网不负责重传。由于以太网采用了曼彻斯特编码,长度字段并没有实际意义。曼彻斯特编码的每一个码元(不管码元是0还是1)的正中间一定有一次电压的转换(低到高,或高到低),当发送方把一个以太网帧发送完毕后,就不再发送其他码元了。发送方网络适配器接口上的电压也就不再变化了,接收方可以很容易的找到以太网帧的结束位置。
3.5 扩展的以太网
 在物理层扩展—集线器
现在,双绞线以太网成为以太网的主流类型,扩展主机和集线器之间的距离的一种简单方法就是使用光纤(通常是一对光纤)和一对光纤调制解调器。
光纤调制解调器的作用,是进行电信号和光信号的转换。
 在数据链路层扩展—网桥(自学习算法)
注:在数据链路层扩展以太网要使用网桥
网桥工作在数据链路层,它根据MAC帧的目的地址对收到的帧进行转发或过滤。当网桥收到一个帧时,并不是向所有的接口转发这个帧,而是检查此帧的目的MAC地址,然后再确定将该帧转发到哪一个接口,或者是把它丢弃(即过滤)。
 虚拟局域网-交换机
多接口网桥即交换式集线器常称为以太网交换机。利用以太网交换机可以很方便地 实现虚拟局域网,虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值