计算机网络笔记——数据链路层

计算机网络笔记——数据链路层

  • 3. 数据链路层
    • 3.1 数据链路层的功能
    • 3.2 组帧
      • 字符计数法
      • 字符填充的首尾界符法
      • 比特填充的首尾标志法(零比特填充法)
      • 物理编码违例法
    • 3.3 差错控制
      • 3.3.1 检错编码
        • 奇偶校验码
        • 循环冗余码
      • 3.3.2 纠错编码
        • 海明码
    • 3.4 流量控制与可靠传输机制
      • 3.4.1 流量控制
      • 3.4.2 可靠传输机制
      • 3.4.3 滑动窗口机制
      • 3.4.4 停止-等待协议
      • 3.4.5 后退N帧(GBN)协议
      • 3.4.6 选择重传(SR)协议
      • 3.4.7 发送缓存和接收缓存
    • 3.5 介质访问控制
      • 3.5.1 介质访问控制分类
      • 3.5.2 信道划分介质访问控制
        • 频分多路复用
        • 时分多路复用
        • 波分多路复用
        • 码分多路复用
      • 3.5.3 访问随机介质访问控制
      • 3.5.4 轮询访问介质访问控制
    • 3.6 局域网
      • 3.6.1 局域网的基本概念与体系结构
        • 局域网最主要的特点
        • 局域网的主要优点
        • 局域网的主要技术要素
        • 局域网的主要拓扑结构
        • 局域网的主要传输介质
        • 局域网的主要访问介质的控制方法
      • 3.6.2 以太网的工作原理
      • 3.6.3 以太网的MAC帧
      • 3.6.4 以太网的传输介质
      • 3.6.5 高速以太网
      • 3.6.6 无线局域网
        • 无线局域网的组成
        • IEEE 802.11标准中的物理层
        • IEEE802.11标准中的MAC层
      • 3.6.7 令牌网的工作原理
    • 3.7 广域网
      • 3.7.1 广域网的基本概念
      • 3.7.2 PPP
      • 3.7.3 HDLC协议
    • 3.8 数据链路层设备
      • 3.8.1 网桥的概念和基本原理
      • 3.8.2 网桥的分类
      • 3.8.3 局域网交换机及其工作原理
      • 3.8.4 各层设备的广播域、冲突域及总结
        • 物理层设备
        • 数据链路层设备
        • 网络层设备

3. 数据链路层

3.1 数据链路层的功能

数据链路层在物理层所提供服务的基础上向网络层提供服务,即将原始的、有差错的物理线路改进成逻辑上无差错的数据链路,从而向网络层提供高质量的服务。

3种基本服务:无确认的无连接服务、有确认的无连接服务和有确认的有连接服务。

主要功能:

  • 链路管理:负责数据链路的建立、维持和释放,主要用于面向连接的服务
  • 帧同步:接收方确定收到的比特流中一帧的开始位置与结束位置。
  • 差错控制:用于使接收方确定接收到的数据就是由发送方发送的数据。
  • 透明传输:不管数据是什么样的比特组合,都应当能在链路上传送。

帧定界:当两个主机互相传送信息时,网络层的分组必须封装成顿,并以帧的格式进行传送。将一段数据的前后分别添加首部和尾部,就构成了帧。首部和尾部中含有很多控制信息,这些信息的重要作用之一是确定帧的界限,即帧定界。

3.2 组帧

万一传送比特流出错了呢?那就得重传全部的比特流。而组帧的优点是,如果出错了,只需发送出错的帧即可,这相对于增加了帧同步、帧定界、透明传输问题是值得的。组帧也不能随意组合,要让接收方看得懂才可以,所以就需要依据一定的规则将网络层递交下来的分组组装成帧。

因为在网络中帧是以为最小单位进行传输的,所以接收端要正确地收到帧,必须要清楚该帧在一串比特流中是从哪里开始到哪里结束的=(因为接收端收到的是一串比特流有首部和尾部是不能正确区分的)。而分组(也称IP数据报)仅仅时包含在帧的数据部分,所以不需要加尾部来定界

字符计数法

用一个特殊的字符来表示一帧的开始,然后用一个计数字段来表明该帧包含的字节数。当目的主机接收到该帧时,根据此字段提供的字节数,便可知道该帧的结束位和下一帧的开始位.

在这里插入图片描述

计数字段提供的字节数包含自身所占的一个字节。

缺点:如果计数字段在传输中出现差错,接收方就无法判断所传输帧的结束位,当然也无法知道下一帧的开始位,这样就无法帧同步了。由于此原因,字符计数法很少被使用。

字符填充的首尾界符法

比特填充的首尾标志法(零比特填充法)

比特填充的首尾标志法是使用01111110作为的开始和结束标志,似乎定界又解决了,但是如果顿数据部分出现了 01111110 怎么办?透明传输仍然是个问题。

不难发现01111110中有6个连续的“1”,只要数据检测到有5个连续的“1”,马上在其后插入“0”,而接收方做该过程的逆操作,即每收到5个连续的“1”,自动删除后面紧跟的“0”,以恢复原始数据。

物理编码违例法

物理编码违例法利用物理介质上编码的违法标志来区分帧的开始与结束,例如,在曼彻斯特编码中,码元1编码成高-低电平,码元0编码成低-高电平,而高-高和低-低电平的编码方式是无效的,可以分别用来作为帧的起始标志和结束标志。

3.3 差错控制

3.3.1 检错编码

通过一定的编码和解码,能够在接收端解码时检查出传输的错误,但不能纠正错误。常见的检错编码有奇偶校验码循环冗余码(CRC)

奇偶校验码

奇偶校验码就是在信息码后面加一位校验码

  • 奇校验:添加一位校验码后,使得整个码字里面1的个数是奇数。接收端收到数据后就校验数据里1的个数,若检测到奇数个1,则认为传输没有出错:若检测到偶数个1,则说明
    传输过程中,数据发生了改变,要求重发
  • 偶校验:添加一位校验码后,使得整个码字里面1的个数是偶数。接收端收到数据后就校验数据里1的个数,若检测到偶数个1,则认为传输没有出错:若检测到奇数个1,则说明传输过程中,数据发生了改变,要求重发。

可见,当数据中有一位数据发生改变时,通过奇偶校验能够检测出来,但并不知道是哪一位出错了如果数据中同时有两位数据发生了改变,此时奇偶校验是检测不到数据出错的,所以它的查错能力有限

循环冗余码

检错率极高、开销小、易实现

重要特性

  • 具有r检测位的多项式能够检测出所有小于或等于r的突发错误。
  • 长度大于r+1的错误逃脱的概率是1/2r

设G(x)=1101(即r=3),待传送数据为M=101001(即m=6),写出发送的数据。

经除法运算后,得到商Q=110101,余数R=001(FCS),所以发送出去的数据为101001001(即M+FCS)

解题技巧

  • 0+(-)1=1,0+(-)0=0,1+(-)0=1,1+(-)1=0(可以简化为做异或运算,在除法过程中,计算部分余数,全部使用异或操作,相同则为0,不同则为1。
  • 上商的规则是看部分余数的首位,如果为1,商上1;如果为0,商上0。
  • 当部分余数的位数小于除数的位数时,该余数即为最后余数。

3.3.2 纠错编码

在接收端不但能检查错误,而且能纠正检查出来的错误

海明码

又称为汉明码,它是在信息字段中插入若干位数据,用于监督码字里的哪一位数据发生了变化,具有一位纠错能力。

假设信息位有 k 位,整个码的长度就是 k+r位;每一位的数据只有两种状态,不是1就是0,有r位数据就能表示出2r种状。如果每一种状态代表一个码元发生了错误,有 k+r 位码元,就要有 k 种状态来表示,另外还要有一种状态来表示数据正确的情况,所以2r-1>=k+r 才能检查一位错误,即**2r>=k+r+1**。例如,信息数据有4位,由2r>=k+r+1得r>=3也就是至少需要3 位监督数据才能发现并改正1位错

3.4 流量控制与可靠传输机制

3.4.1 流量控制

控制发送方发送数据的速率,使接收方来得及接收。

一个基本的方法是由接收方控制发送方的数据流。常见的有两种方式:停止-等待流量控制和滑动窗口流量控制

  • 停止-等待流量控制:流量控制中最简单的形式。工作原理就是发送方发出一帧,然后等待应答信号到达再发送下一帧:接收方每收到一帧后,返回一个应答信号,表示可以接收下一帧,如果接收方不返回应答,则发送方必须一直等待。
  • 滑动窗口流量控制:允许一次发送多个帧。在任意时刻,发送方都维持了一组连续的允许发送的帧的序号,称为发送窗口。同时,接收方也维持了一组连续的允许接收的帧的序号,称为接收窗口发送窗口和接收窗口的序号的上下界不一定要一样,甚至大小也可以不同发送方窗口内的序列号代表了那些已经被发送但是还没有被确认的帧,或者是那些可以被发送的帧。发送端每收到一个帧的确认,发送窗口就向前滑动一个帧的位置。当发送窗口尺寸达到最大尺寸时,发送方会强行关闭网络层,直到出现一个空闲缓冲区在接收端只有当收到的数据帧的发送序号落入接收窗口内才允许将该数据帧收下,并将窗口前移一个位置。若接收到的数据帧落在接收窗口之外(就是说收到的帧号在接收窗口中找不到相应的该帧号),则一律将其丢弃

计算机网络笔记——数据链路层_第1张图片

3.4.2 可靠传输机制

计算机网络的设计者采用了一种策略,这就是==“端到端的可靠传输”==。更具体些,就是在传输层使用面向连接的 TCP,它可保证端到端的可靠传输。只要主机B的TCP发现数据传输有差错,就告诉主机A将出现差错的那部分数据重传,直到这部分数据正确传送到主机B为止。而 TCP 发现不了数据有差错的概率是很小的。既可以使网络部分价格便宜和灵活可靠,又能够保证端到端的可靠传输。

3.4.3 滑动窗口机制

只有在接收窗口向前滑动时(与此同时也发送了确认),发送窗口才有可能向前滑动。

可靠传输机制包括停止-等待协议、后退 N 协议和选择重传协议。这3 种协议只是在发送窗口和接收窗口大小上有所差别

  • 停止-等待协议:发送窗口大小=1,接收窗口大小=1。
  • 后退N 帧协议:发送窗口大小>1,接收窗口大小=1。
  • 选择重传协议:发送窗口大小>1,接收窗口大小>1。

当接收窗口的大小为1时,一定可保证帧按序接收

因为接收窗口为1,所以里面有一个唯一的序号,不管发送窗口一次性可以发送多少字节,接收窗口只选择接收窗口里的帧序号接收,只有等到该帧,接收窗口才往后移动,所以按照这样的顺序接收的帧一定是有序的。

3.4.4 停止-等待协议

如何实现可靠传输?

可靠传输是指发送方发送什么,接收方就收到什么。

可靠传输的方式:

  • 确认(发送确认帧):确认帧是一个没有数据部分的控制帧,只是用来告诉发送方发的某帧已经接收到了。有时为了提高传输效率,将确认捎带在一个回复帧中,称为捎带确认。
  • 超时重传:发送方在发送一个数据帧时设置一个超时计时器,如果在规定时限内没有收到该帧的确认,就重新发送该数据帧。
    • 原因:
      • 当接收方检测到出错帧时,接收方直接丢弃该帧,而不返回确认。
      • 该帧在传输过程中丢失。

使用确认和超时重传两种机制实现可靠传输的策略又称为自动请求重发(ARO)。

停止-等待协议的基本思想:发送方传输一个帧后,必须等待对方的确认才能发送下一帧。若在规定时间内没有收到确认,则发送方超时,并重传原始帧。

协议=技术+考虑不利因素——>停止-等待协议=停止-等待流量控制技术+不利因素

停止-等待协议中会出现的差错:

帧一般被分为数据帧和确认帧

  • 第一类错误就是数据帧被损坏或者丢失,那么接收方在进行差错检验时会检测出来。处理数据帧被损坏的情况时,使用计时器即可解决。这样发送方在发送一个帧后,若数据能够被正确地接收到,则接收方就发送一个确认帧,没有问题;若接收方收到的是一个被损坏的数据帧,则直接丢弃,此时发送方还在那里苦等,不过没有关系,只要计时器超时了,发送方就会重新发送该数据帧,如此重复,直到这一数据帧无错。
  • 第二类错误是确认帧被破坏或者丢失。一旦确认帧被破坏或者丢失,造成的后果就是发送方会不断地重新发送该帧,从而导致接收方不断地重新接收该帧。怎么解决?显然,对于接收方而言,需要有能够区分某一顿是新帧还是重复帧的能力。解决方法很简单,就是让发送方在每个待发的帧的头部加一个编号,而接收方对每个到达的帧的编号进行识别,判断是新帧还是要抛弃的重复帧。

3.4.5 后退N帧(GBN)协议

若采用 n个比特对进行编号,其**发送窗口尺寸WT必须满足1n-1**,接收窗口尺寸为1。若发送窗口尺寸大于 2n-1,会造成接收方无法分辨新、旧数据帧的问题。由于接收窗口尺寸为 1,因此接收方只能按序来接收数据帧

基本原理:发送方发送完一个数据后,不是停下来等待确认帧,而是可以连续再发送若干个数据帧。如果这时收到了接收方的确认帧,那么还可以接着发送数据帧。如果某个帧出错了,接收方只能简单地丢弃该帧及其所有的后续帧。发送方超时后需重发该出错帧及其后续的所有帧。由于减少了等待时间,后退N 协议使得整个通信的吞吐量得到提高。但接收方一发现错误帧,就不再接收后续的帧,造成了一定的浪费。

只要收到ACKn就认为前面n-1帧一定全部收到

3.4.6 选择重传(SR)协议

WT≤ 2n-1,WR≤2n-1

当发送窗口取最大值时,WR=WT=2n-1(分情况都是发送窗口等于接收窗口,且等于 2n-1,因为这样可达到最大效率,记住就好)。此时,若 WT取大于2n-1的值,可能造成新、旧接收窗口重叠

选择重传协议的基本思想:若一帧出错,则其后续帧先存入接收方的缓冲区中,同时要求发送方重传出错帧,一旦收到重传帧后,就和原先存在缓冲区的其余帧一起按正确的顺序送至主机。选择=重传协议避免了重复传输那些本来已经正确到达接收方的数据帧,进一步提高了信道利用率,但代价是增加了缓冲空间

3.4.7 发送缓存和接收缓存

计算机网络笔记——数据链路层_第2张图片

按序到达且没有被交付给主机的被放在接收缓存(接收窗口外的那一部分接收缓存,以下讲的接收缓存都是指这部分)里面(因为已经发送过确认了仅仅是等主机的应用程序来取),而不是接收窗口里面。那些不是按序到达的数据且没有错误的帧一定是要放在接收窗口里面,因为这些帧不能直接给主机,而放在接收缓存的帧是要给主机的,等到缺少的帧收到后,再一起放到接收缓存

在计算机进程之间的通信过程中,广泛使用缓存。缓存就是在计算机的存储器中设置的一个临时存放数据的空间。发送进程将欲发送的数据先写入缓存,然后接收进程在合适的时机读出这些数据。

3.5 介质访问控制

3.5.1 介质访问控制分类

介质访问控制是为了解决——当共用信道的使用产生竞争,怎么能够更好地分配信道的使用权的问题

  • 信道划分介质访问控制
  • 随机访问介质访问控制
  • 轮询访问介质访问控制

3.5.2 信道划分介质访问控制

多路复用技术:是实现信道划分介质访问控制的途径。多路复用技术能把多个信号组合在一条物理信道上进行传输,使多个计算机或终端设备共享信道资源,从而提高了信道的利用率

计算机网络笔记——数据链路层_第3张图片

频分多路复用

将一条信道分割成多条不同频率的信道如果复用数增加,那么信道的带宽必须得增加

每个子信道分配的带宽可以不相同(可联想人行道和机动车道是不一样宽的),但它们的总和一定不能超过信道的总带宽。在实际应用中,为防止子信道之间的于扰,相邻信道之间要加入“保护频带”(可联想人行道与机动车道、机动车道与机动车道之间的栏杆的作用)。

时分多路复用

假设现在只有一个玩具,却有 10个小孩要玩,这时只能将一个固定的时间分割成10份10个小孩轮流玩这个玩具,即时分多路复用。

将一个固定的时间分割为数份如果复用数增加,不需要加大信道带宽,只需将每个信道得到的时间缩小即可

如果恰好某个时间轮到一个小孩玩了,但是这个小孩现在睡着了,这段时间岂不是就浪费了吗?没错,是浪费了,这时就需要改进时分复用,于是引入了统计时分复用。

如果现在该玩具轮到某个小孩玩,但是也睡着了,立刻跳过他,给下一个小孩玩,这样就基本可以保证玩具没有空闲时刻。可见每孩子下次轮到自己玩的时间都是不确定的,如果睡觉的人多了,很快就轮到了;如果睡觉为人少,就很慢。

统计时分复用是一种动态的时间分配,同时又是异步的(每个孩子玩玩具的时间周期是不固定的),所以统计时分复用又称为异步时分复用。而普通的时分复用就是同步时分复用(因为每个孩子都在一个固定的周期才能得到玩具,即使中间有孩子睡觉也要等)。

波分多路复用

波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同频率(长)的信号,由于各路光的频率(波长)不同,因此各路光信号互相不干扰。最后,再用分波器将路波长不一样的光分解出来。

计算机网络笔记——数据链路层_第4张图片

码分多路复用

码分多路复用又称为码分多址(CDMA),它既共享信道的频率,又共享时间,是一种真正的动态复用技术

每个站点都维持一个属于该站点的芯片序列,并且是固定的。假如站点 A 的片序列为00011011,则A站点发送00011011 表示发送比特1;而将 00011011 每位取反,即发送11100100表示发送比特0。习惯将芯片序列中的0写为-1,1写为+1,所以A站的芯片序列就是(-1 -1 -1 +1 +1 -1 +1 +1),一般将该向量称为该站的码片向量

  • 任意两个不同站的码片向量正交,即任意两个站点的码片向量的规格化内积一定为0。
  • 任意站点的码片向量与该码片向量自身的规格化内积一定为 1;任何站点的码片向量和该码片的反码向量的规格化内积一定为-1。
    计算机网络笔记——数据链路层_第5张图片

码分多路复用技术具有抗干扰能力强、保密性强、语音质量好等优点,还可以减少投资和降低运行成本,主要用于无线通信系统,特别是移动通信系统。CDMA 手机就使用了此技术。

3.5.3 访问随机介质访问控制

  • 静态划分信道:只要用户分配到了信道就不会和其他用户发生冲突。但这种划分信道方法的代价是相当高的,在一个小的局域网里面使用这种方法实在不合适
  • 动态划分信道
    • 随机接入:所有用户都可以根据自己的意愿随机地发送信息,这样就会产生冲突(或者称为碰撞),从而导致所有冲突用户发送数据失败。为了解决随机接入发生的碰撞,CSMA/CD等协议被引入。
    • 受控接入:不能随机地发送数据,一定要得到某种东西才有权发数据。

随机接入的四种协议:ALOHA协议、CSMA协议、CSMA/CD协议、CSMA/CA协议。

以上 4 种协议的核心思想是通过争用,胜利者才可以获得信道,从而获得信息的发送权。正因为这种思想,随机访问介质访问控制又多了一个绰号:争用型协议

  • ALOHA协议

    • 纯ALOHA协议:当网络中的任何一个节点需要发送数据时,可以不进行任何检测就发送数据。如果在一段时间内没有收到确认,该节点就认为传输过程中发生了冲突。发生冲突的节点需要等待一段随机时间后再发送数据,直至发送成功为止。
    • 时分ALOHA协议:所有节点的时间被划分为间隔相同的时隙(Slot),并规定每个节点只有等到下一个时隙到来时才可发送数据。
  • CSMA协议:每个节点发送数据之前都使用载波侦听技术来判定通信信道是否空闲。

    • 1-坚持 CSMA:当发送节点监听到信道空闲时,立即发送数据,否则继续监听
    • p-坚持 CSMA:当发送节点监听到信道空闲时,以概率p发送数据,以概率 1-p 延迟一段时间并重新监听
    • 非坚持 CSMA:当发送节点一旦监听到信道空闲时,立即发送数据,否则延迟一段随机的时间再重新监听
  • CSMA/CD协议:带冲突检测的载波侦听多路访问协议

    • 原理:在CSMA机制中,由于可能存在多个节点听到信道空闲并同时开始传送数据,从而造成冲突,但是即使冲突了,CSMA 协议也要将已破坏的发送完,使总线的利用率降低。种CSMA的改进方案是在发送站点传输的过程中仍继续监听信道,以检测是否存在冲突。如果发生冲突,信道上可以检测到超过发送站点本身发送的载波信号的幅度,由此判断出冲突的存在,那么就立即停止发送(推迟一个随机的时间再发送),并向总线上发一串阻塞信号用以通知总线上其他各有关站点,各有关站点接收到该阻塞信号,就不再发送数据了。

    • 工作流程:每个站在发送之要先测一下总上是否有其他算机在发送数据,若有,则暂时不发送数据,以免发生冲突;若没有,则发送数据。计算机在发送数据的同时检测信道上是否有冲突发生,若有,则采用截断二进制指数类型退避算法来等待一段随机时间后再次重发。总体来说,可概括为“先听后发,边听边发,冲突停发,随机重发”。

    • 争用期:以太网端到端的往返时延(用在这里插入图片描述
      表示,又称为冲突窗口或者碰窗口。只有经过争用期这段时间还没有检测到冲突,才能肯定这次发送不会发生冲突。
      计算机网络笔记——数据链路层_第6张图片

      二进制指数后退算法解决了站点检测到冲突后继续等待的时间问题。

  • CSMA/CA协议:CSMA/CA 主要用在无线局域网中。它在CSMA 的基础上增加了冲突避免的功能。冲突避免要求每个节点在发送数据之前监听信道。如果信道空闲,则发送数据。发送节点在发送完一个后,必须等待一段时间(称为间间隔,检查接方是否发回帧的确认(说明CSMA/CA 协议对正确接收到的据进行确认)。收到确认,则表明无冲突发生;在规定时间内没有收到确认,表明出现冲突,重发该帧

3.5.4 轮询访问介质访问控制

主要用在令牌环局域网中,目前使用得很少。

用户不能随机地发送信息,而是通过一个集中控制的监控站经过轮询过程后再决定信道的分配。典型的轮询访问介质访问控制协议就是令牌传递协议

3.6 局域网

3.6.1 局域网的基本概念与体系结构

局域网(LocalAreaNetwork,LAN)是指一个较小范围(如一个公司)内的多台计算机或者其他通信设备,通过双绞线、同轴电缆等连接介质互连起来,以达到资源和信息共享目的的互联网络。

局域网最主要的特点
  • 局域网为一个单位所拥有。
  • 地理范围和站点数目有限。
  • 与以前非光纤的广域网相比,局域网具有较高的数据率、较低的时延和较小的误码率。
局域网的主要优点
  • 具有广播功能,从一个站点可以很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。
  • 便于系统的扩展和演变,各设备的位置可灵活地调整和改变。
  • 提高了系统的可靠性、可用性。
  • 各站为平等关系而不是主从关系。
局域网的主要技术要素
  • 网络拓扑结构——决定着局域网的技术特性
  • 传输介质与介质访问控制方法
局域网的主要拓扑结构
  • 星形网
  • 环形网
  • 总线型网
  • 树形网
局域网的主要传输介质
  • 双绞线
  • 铜缆
  • 光纤
局域网的主要访问介质的控制方法
  • CSMA/CD——作用于总线型网
  • 令牌总线——作用于总线型网
  • 令牌环——作用于环形网

3.6.2 以太网的工作原理

以太网是迄今为止世界上最为成功的局域网产品。

以太网采用总线拓扑结构,所有计算机都共享一条总线,信息以广播方式发送。为了保证数据通信的方便性和可靠性,以太网使用了 CSMA/CD 技术对总线进行访问控制。

考虑到局域网信道质量好,以太网采取了以下两项重要的措施以使通信更加简便。

  • 采用无连接的工作方式。
  • 不对发送的数据帧进行编号,也不要求对发送方发送确认。

以太网提供的服务是不可靠的服务,即尽最大努力交付,差错的纠正由传输层的TCP完成。

以太网有重传机制

3.6.3 以太网的MAC帧

局域网中的每台计算机都有一个唯一的号码,称为 MAC 地址或物理地址、硬件地址。

由于总线上使用的是广播通信,因此网卡从网络上每收到一个 MAC ,先要用硬件检查 MAC 中的MAC 地址,如果是发往本站的就收下,否则丢弃。

计算机网络笔记——数据链路层_第7张图片

MAC帧组成部分

  • 前导码:在的前面插入 8B,使接收端与发送端进行时钟同步。这8B 又可分为前同步码(7B)和开始定界符(1B)两部分。

    MAC 不需要结束符,因为以太网在传送帧时,各之间必须有一定的间隙。因此,接收端只要找到帧开始定界符,其后面连续到达的比特流就都属于同一个MAC

  • 目的地址、源地址:均使用48bit (6B)的MAC 地址。

    地址字段包括目的地址和源地址两部分。处于前面的地址字段为目的地址,处于后面的地址字段为源地址。

    目的地址字段有较多的规定,原因是一个帧有可能发送给某一个工作站,也有可能发送给一组工作站,还有可能发送给所有工作站。因此,将后面两种情况分别称为组播帧和广播帧

    • 当目的地址前8位的最后一位为“0”时,表示要发送给某一个工作站(这个就是为什么源地址字段中前8位的最后一位恒为“0”的原因),即所谓的单站地址
    • 当目的地址前 8位的最后一位为“1”,其余不全为“1”时,表示发送给一组工作站,即所谓的组播地址
    • 当目的地址前8位的最后一位为“1”,其余也全为“1”时,表示发送给所有工作站,即所谓的广播地址
  • 类型:占 2B,指出数据域中携带的数据应交给哪个协议实体处理。

  • 数据:占46~1500B。46 和1500 是怎么来的?首先,由CSMA/CD 算法可知,以太网帧的最短顿长为64B,而MAC 的首部和尾部的长度为18B,所以数据最短为64B-18B=46B。其次,最大的1500B 是规定的,没有为什么。

  • 填充:前面讲过,由于CSMA/CD 算法的限制,最短长为 64B,因此除去首部18B如果数据长度小于 46B,那么就得填充,使得顿长不小于 64B。当数据字段长度小于 46B 时需要填充至46B;当数据字段长度大于或等于 46B 时,则无需填充。因此,填充数据长度的范围为0~46B

  • 校验码(FCS):占4B采用循环余码不但需要校验 MAC 的数据部分,还要校验目的地址、源地址和类型字段,但是不校验前导码

802.3格式与DIX以太帧格式的不同之处:

  1. 帧起始标志:与802.和802.5 兼容。
  2. 长度域:替代了 DIX 中的类型域,指出数据域的长度。

3.6.4 以太网的传输介质

计算机网络笔记——数据链路层_第8张图片

3.6.5 高速以太网

一般,数据传输速率达到或超过100Mbit/s的以太网称为高速以太网。

  • 100Base-T以太网(快速以太网):在双绞线上传送100Mbit/s 基带信号的星形拓扑结构以太网,使用CSMA/CD协议。全双工方式下工作而无冲突发生,此时无须使用CSMA/CD协议如果是在半双工方式下工作时仍需使用CSMA/CD协议。
    • 为了提高数据传输速率,100Base-T 以太网保持最短帧长不变,但将一个网段的最大电缆长度减小到100m,帧间时间间隔从原来的9.6ms改为现在的0.96ms。
  • 吉比特以太网(千兆以太网):当吉比特以太网工作在半双工方式下时,必须使用 CSMA/CD 协议进行冲突检测。
    • 允许在1Gbit/s下全双工和半双工两种方式工作
    • 在半双工方式下使用CSMA/CD 协议(全双工方式不需要使用CSMA/CD 协议)。
    • 如果要提高数据传输速率,只有减小最大电缆长度或增大帧的最小长度,这样才能使得信道的利用率比较高。
  • 10吉比特以太网
    • 保留了IEEE 802.3 标准规定的以太网格式、最小帧长和最大帧长,便于升级。
    • 不再使用铜线而只使用光纤作为传输介质。
    • 只工作在全双工方式下,因此没有争用问题,也不使用 CSMA/CD 协议。

以太网的特点

  • 可扩展的 (10Mbit/s~10Gbit/s)。
  • 灵活的(多种传输媒体、全/半双工、共享/交换)。
  • 易于安装。
  • 稳健性好。

3.6.6 无线局域网

IEEE 802.11 是无线局域网的协议标准,包括IEEE 802.11a 和IEEE 802.11b 等 。

无线局域网的组成
  • 有固定基础设施
    • 最小构件为基本服务集(BSS)
    • 一个基本服务集包括一个基站和若干个移动站,所有站在本 BSS 内可直接通信,但在和本BSS以外的站通信时都必须通过本BSS的基站。因此BSS中的基站称为接入点(AP)。
    • 一个基本服务集可以是孤立的,也可通过接入点连接到一个主干分配系统(DistributionSystem,DS),然后再接入到另一个基本服务集,构成扩展的服务集(Extended Service Set,ESS)。
  • 无固定基础设施(自主网络)
    • 自主网络没有上述基本服务集中的接入点,而是由一些处于平等状态的移动站之间相互通信组成的临时网络。这些移动站都具有路由器的功能。
IEEE 802.11标准中的物理层

IEEE802.11标准中的物理层有以下3种实现方法。

  • 跳频扩频(FHSS)
  • 直接序列扩频(DSS)。
  • 红外线(IR)
IEEE802.11标准中的MAC层

MAC层在物理层的上面,包括两个子层,从下往上依次为:

  • 分布协调功能(DCF)
  • 点协调功能 (PCF)子层。

由于用CSMA/CD 协议对无线局域网进行冲突检测花费过大,并且冲突检测到信道空闲后仍可能发生冲突,因此在无线局域网的 MAC 层中,使用的是带有碰撞避免功能的CSMA/CA 协议,同时还增加了确认机制。

3.6.7 令牌网的工作原理

计算机网络笔记——数据链路层_第9张图片

在Token Ring中,节点通过环接口连接成物理环形。令牌是一种特殊的MAC 控制帧,帧中有一位标志令牌(忙/闲)。令牌总是沿着物理环单向逐站传送,传送顺序与节点在环中的排列顺序相同

令牌环网中令牌和数据的传递过程:

  • 当网络空闲时,环路中只有令牌在网络中循环传递。
  • 令牌传递到有数据要发送的节点处,该节点就修改令牌中的一个标志位,然后在令牌中附加自己需要传输的数据,这样就将令牌改换成了一个数据帧,源节点将这个数据帧发送出去。
  • 数据帧沿着环路传递,接收到的节点一边转发数据,一边查看帧的目的地址。如果目的地址和自己的地址相同,接收节点就复制该数据帧以便进行下一步处理。
  • 数据帧沿着环路传输,直到到达该帧的源节点,源节点接收自己发出去的数据帧便不再转发。同时,该源节点可以通过校验返回的数据帧来查看数据传输过程中是否有错,若有错,则重传该帧。
  • 源节点传送完数据以后,重新产生一个令牌,并将令牌传递给下一个站点,以交出发送数据帧的权限。

3.7 广域网

3.7.1 广域网的基本概念

指覆盖范围很广(远远超出一个城市的范围)的长距离网络。广域网由一些节点交换机以及连接这些交换机的链路组成。节点交换机将完成分组存储转发的功能

互联网虽然覆盖范围也很广,但一般不称它为广域网。因为在这种网络中,不同网络(可以为局域网也可以为广域网)的“互连”才是其最主要的特征,它们之间通常采用路由器来连接

广域网只是一个单一的网络,它使用节点交换机连接各主机而不是用路由器连接各网络。

计算机网络笔记——数据链路层_第10张图片

局域网使用的协议主要在数据链路层,而广域网使用的协议主要在网络层

3.7.2 PPP

计算机网络笔记——数据链路层_第11张图片

PPP主要由以下3个部分组成:

  • 一个将IP 数据报封装到串行链路的方法。

  • 一个链路控制协议(LCP)。其用于建立、配置和测试数据链路连接,并在不需要时将它们释放。

  • 一套网络控制协议 (NCP)。其中每个协议支持不同的网络层协议,用来建立和配置不同的网络层协议。

  • 标志字段(F):首部和尾部各占1个字节,规定为Ox7E.

  • 地址字段(A):占1个字节,规定为0xFF。

  • 控制字段(C):占1个字节,规定为Ox03。

  • 协议字段:占2个字节。例如,当协议字段为 0x0021 时,PPP 的信息字段就是 IP数据报:若为0xC021,则信息字段是 PPP 链路控制数据:若为0x8021,则表示这是网络控
    制数据。

  • 信息部分:占0-1500个字节。为什么不是46~1500 个字节?因为 PPP 是点对点的并不是总线型,所以无需采用 CSMA/CD 协议,自然就没有最短。另外,当数据部分出现和标志位一样的比特组合时,就需要采用一些措施来实现透明传输(字节填充法)。

  • 检验序列(FCS):占 2个字节,即循环余码检验中的余码。检验区间包括地址字段、控制字段、协议字段和信息字段。

总结:

  • PPP是一个面向字节的协议。
  • PPP不需要的功能:纠错(PPP 只负责检错)、流量控制(由TCP负责)、序号(PPP是不可靠传输协议,所以不需要对帧进行编号)、多点线路 (PPP 是点对点的通信方式)、半双工或单工(PPP只支持全双工链路)。

3.7.3 HDLC协议

基本特点:

  • 面向比特。
  • 适用于链路的两种基本配置:非平衡配置和平衡配置。
    • 非平衡配置的特点是由一个主站控制整个链路的工作。
    • 平衡配置的特点是链路两端的两个站都是复合站,每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的允许。

计算机网络笔记——数据链路层_第12张图片

  • 标志字段(F):占8位,为“01111110”,首尾各有一个“0”作为帧的边界。为防止在两个标志字段F之间出现“01111110”,HDLC使用比特填充的首尾标志法。当一串比特流未加上控制信息时,扫描整个帧,只要发现有 5个连续“1”,就立即填入一个“0”。
  • 地址字段(A):占 8位。若使用非平衡方式传送数据,为次站的地址;若使用平衡方式传送数据,为确认站的地址。全“1”为广播方式,全“0”为无效地址。
  • 控制字段©:占8位,最复杂的字段,HDLC 的许多重要功能都靠控制字段实现。根据其最前面两位的取值,可将 HDLC 划分为3 类:信息帧(I帧)、监督帧(S帧)和无编号帧(U帧)。
    • 信息帧用来传输数据信息,或使用捎带技术对数据进行确认和应答。
    • 监督帧用于流量控制和差错控制,执行对信息帧的确认、请求重发和请求暂停发送等功能。
    • 无编号帧用于提供对链路的建立、拆除以及多种控制功能。
  • 信息字段 (Info):长度任意,存放来自网络层的协议数据单元。
  • 帧检验序列(FCS):占 16 位,即循环余码检验中的余码。检验区间包括地址字段、控制字段和信息字段。

PPP帧和HDLC协议帧的区别

  • PPP面向字节,HDLC协议面向比特。
  • PPP使用字节填充,HDLC使用比特填充
  • PPP协议帧比HDLC协议帧多一个协议字段
  • PPP不适用序号和确认机制,只保证无差错接收,HDLC使用编号和确认机制

3.8 数据链路层设备

3.8.1 网桥的概念和基本原理

在物理层扩展局域网使用的是中继器和集线器。

缺点如下:

  • 扩大了冲突域且总的吞吐量未提高。
  • 不能互连使用不同以太网技术的局域网

在数据链路层扩展局域网使用的是网桥

网桥工作在数据链路层,其特点是具有过滤帧的功能。网桥至少有两个端口,每个端口与一个网段相连。网桥每从一个端口接收到一个帧就先暂存到缓存中。若该帧未出现差错,且欲发往的目的站 MAC 地址属于另一个网段(同一个网段无需转发,应该丢弃),则通过查找转发表,将该帧从对应的端口发出。因此,仅在同一个网段中通信的帧,不会被网桥转发到另一个网段中,因而不会加重整个网络的负担。

计算机网络笔记——数据链路层_第13张图片

网桥的优点:

  • 过滤通信量。
  • 扩大了物理范围。
  • 提高了可靠性。
  • 可互连不同物理层、不同MAC子层和不同速率(如10Mbit/s 和100Mbit/s)的以太网。

网桥的缺点:

  • 存储转发增加了时延。
  • 在MAC子层没有流量控制功能。
  • 具有不同 MAC子层的网段桥接在一起时的时延更大。
  • 网桥只适合于用户数不太多(不超过几百个)和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞,即广播风暴。

3.8.2 网桥的分类

  • 透明网桥(选择的不是最佳路由

    “透明”是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的。透明网桥是一种即插即用设备,意思是只要把网桥接入局域网,不用人工配置转发表,网桥就可以开始工作。

    • 网桥如何进行自我学习?

      • 网桥收到一帧后先进行自学习查找转发表中与收到帧的源地址有无相匹配的项目。若没有,就在转发表中增加一个项目(源地址、进入的接口和时间);若有,则把原有的项目进行更新。
      • 转发帧。查找转发表中与收到帧的目的地址有无相匹配的项目。若没有,则通过所有其他接口(但进入网桥的接口除外) 进行转发若有,则按转发表中给出的接口进行转发,若转发表中给出的接口是该帧进入网桥的接口,则应丢弃这个帧(因为这时不需要经过网桥进行转发)。
  • 源选径网桥(选择的是最佳路由)

    在源选径网桥中,路由选择由发送数据帧的源站负责,网桥只根据数据帧中的路由信息对帧进行接收和转发。

    为了发现合适的路由,源站先以广播方式向欲通信目的站发送一个发送帧。发送帧将在整个局域网中沿着所有可能的路由传送,并记录所经过的路由。当发送帧到达目的站时,就沿原来的路径返回源站。源站在得知这些路由后,再从所有可能的路由中选择一个最佳路由。

    发送帧除了可以用来确定最佳路由,还可以用来确定整个网络可以通过的帧的最大长度

    透明网桥和源选径网桥中提到的最佳路由并不一定是经过路由器最少的路由,也可以是发送帧往返时间最短的路由,这样才能真正地进行负载平衡。因为往返时间长,说明中间某个路由器可能超载了,所以不走这条路,换个往返时间短的路走。

    3.8.3 局域网交换机及其工作原理

    局域网交换机实质上是多端口网桥,它工作在数据链路层。局域网交换机的每个端口都直接与主机或集线器相连,并且一般都工作在全双工方式。当主机需要通信时,交换机能同时连通许多对的端口,使每一对相互通信的主机都能像独占通信媒体那样,进行无冲突地传输数据,通信完成后断开连接。

交换机总容量计算方式

  • 端口数x每个端口带宽(半双工)。
  • 端口数x每个端口带宽x2(全双工)。

交换机的两种交换模式:

  • 直通式交换:只检查帧的目的地址,这使得帧在接收后能马上被转发出去。这种方式速度很快,但缺乏安全性,也无法支持具有不同速率的端口的交换。
  • 存储转发式交换:先将接收到的帧存储在高速缓存中,并检查数据是否正确,确认无误后,查找转发表,并将该帧从查询到的端口转发出去。如果发现该帧有错误,则将其丢弃。存储转发式交换的优点是可靠性高,并能支持不同速率端口间的转换,缺点是延迟较大。
  • 无碎片转发:交换机在得到数据报的前 64 个字节后就转发,对于小于64个字节的数据报,交换机将其认为是碎片,不进行转发。。这种方式既避免了存储转发速度慢的问题,又避免了直通转发中有碎片的问题。

局域网交换机的工作原理

与网桥类似,检测从某端口进入交换机的帧的源MAC 地址和目的 MAC 地址,然后与系统内部的动态查找表进行比较,若数据报的 MAC 地址不在查找表中,则将该地址加入查找表中,并将数据报发送给相应的目的端口。

3.8.4 各层设备的广播域、冲突域及总结

当一块网卡发送信息时,只要有可能和另一块网卡冲突,则这些可能冲突的网卡就构成冲突域。

一块网卡发出一个广播,能收到这个广播的所有网卡的集合称为一个广播域。

一般来说,一个网段就是一个冲突域,一个局域网就是一个广播域。

物理层设备
  • 中继器:将已经衰减得不完整的信号经过整理,重新产生出完整的信号再继续传送。放大器和中继器都是起放大信号的作用,只不过放大器放大的是模拟信号,中继器放大的是数字信号。
  • 集线器:中继器就是普通集线器的前身,集线器实际就是一种多端口的中继器。
数据链路层设备
  • 交换机:交换机也称为交换式集线器,它通过对信息进行重新生成,并经过内部处理后转发至指定端口,具备自动寻址能力和交换作用。由于交换机根据所传递数据报的目的地址.将每一数据报独立地从源端口送至目的端口,避免了和其他端口发生碰撞。简单地说就是,交换机某端口连接的主机想和另一个端口连接的主机通信,交换机就会通过转发表发送到那个端口,不可能去其他端口,不存在发错端口(打错电话),因此交换机的每一个端口都是一个冲突域,也就是说,交换机可以隔离冲突域。

计算机网络笔记——数据链路层_第14张图片

网络层设备
  • 路由器:路由器就是把数据从一个网络发送到另一个网络。

    可以隔离冲突域
    计算机网络笔记——数据链路层_第15张图片

你可能感兴趣的:(中科院考研,计算机网络,网络)