《计算机网络:自顶向下方法》第六章笔记整理

对大黑书《计算机网络:自顶向下方法》第六章进行笔记整理......

引证和服务

网络节点的连接方式

  1. 点到点的网络(广域网采用)
  2. 多点连接(局域网)

节点:主机/路由器

  1. 链路:沿着通信路径、连接相邻节点通信信道的是链路,分为有线链路、无线链路、局域网和共享性链路。
    • 链路层负责从一个节点通过链路将帧中的数据报发送到相邻物理节点(以帧为单位)。
    • 数据报在不同的链路上以不同的链路协议传送(例如第一跳是以太网,中间链路是帧中继链路,最后一跳是802.11)。
    • 不同的链路协议提供不同的服务。 ### 链路层提供服务 (一般化的链路层服务,不是所有的链路层都提供这些服务,一个特定的链路层只提供其中一部分的服务)
  2. 成帧、链路接入:
    • 将数据报封装在帧中,加上帧头部、帧尾部。
    • 如果采用的是共享性介质,信道接入获得信道访问权。
    • 在帧头部使用MAC地址来表示源和目的。
  3. 在相邻两个节点完成可靠数据传输:
    • 在低出错率的链路上(光纤和双绞线电缆)很少使用。
    • 在无线链路经常使用,出错率高(防止源端重发)。
  4. 流量控制
  5. 差错检测、纠正
  6. 半双工和全双工
    • 半双工:链路可以双向传输,但一次只有一个方向。

链路层功能实现

  1. 在适配器(网卡)上实现或者在一个芯片组上,网卡可以同时发同时接。

差错检测和纠正

奇偶校验

  1. 单bit奇偶校验
  2. 二维bit奇偶校验

Internet校验和

  1. 加起来取反码

CRC(循环冗余检测)

  1. 模二运算
  2. 位串的两种表示(二进制和多项式)
  3. 生成多项式
  4. 发送方和接收方的发送接收校验过程

多点访问协议

两种类型的链路(一个子网内部链路连接形式)

  1. 点对点
    • 拨号访问的PPP
    • 以太网交换机和主机之间的点对点链路
  2. 广播(共享链路或媒体)
    • 传统以太网
    • HFC上行链路
    • 802.11无线局域网

单个共享的广播型链路

  1. 2个或更多的站点同时传送产生冲突;
  2. 分布式算法决定节点如何使用共享信道,即决定哪个节点什么时候可以发送;
  3. 关于共享控制的通信必须借助信道本身传输。

理想的多路访问协议

  1. 当一个节点要发送时,以最大速率发送;当M个节点要发送时,每个节点以M分之一的最大速率发送。
  2. 完全分布,没有特殊节点协调发送,没有时钟和时隙的同步。
  3. 简单。

MAC协议分类

信道划分协议:TDMA、FDMA、CDMA

随机访问协议

时隙ALOHA
  1. 假设:所有帧是等长的;时间被划分为相等的时隙,每个时隙可发送一帧;节点只在时隙开始时发送帧;节点在时隙上是同步的;如果两个或多个节点在一个时隙传输,所有的站点都能检测到冲突。
  2. 运行:当节点获取新的帧,在下一个时隙传输;
    • Re1:传输时没有检测到冲突,成功,节点能够在下一时隙发送新帧;
    • Re2:传输时检测到冲突,失败,节点在每一个随后的时隙以概率P重传帧直至成功。
  3. 优点:
    • 节点可以以信道带宽全速连续传输;
    • 高度分布;
    • 简单
  4. 缺点:
    • 存在冲突,浪费时隙;
    • 即使有帧要发送,仍然有可能存在空闲的时隙;
    • 发现冲突也必须要传完;
    • 需要时钟上同步;
纯ALOHA(非时隙)
  1. 简单,无需在时钟上同步。
  2. 当有帧需要传输,马上传输。
  3. 冲突的概率增加。
CSMA
  1. CSMA/CD
    • 发送前侦听信息,发送时侦听信息
    • 以太网CSMA/CD算法
      • (1)适配器获取数据报,创建帧;
      • (2) 发送前,侦听信道CS,如果闲,则开始传送帧,如果忙,则一直等到闲再发送;
      • (3)发送过程中,冲突检测CD,如果没有冲突,则成功,如果检测到冲突,则放弃,之后尝试重发;
      • (4) 发送方适配器检测到冲突,除放弃外,还发送一个Jam信号,所有听到冲突的适配器也是如此;(强化冲突)
      • (5) 如果放弃,适配器进入指数退避状态;(二进制指数退避算法)
  2. 无线局域网中的MAC协议:CSMA/CA

轮流MAC协议

  1. 信道划分MAC协议:共享信道在高负载时是有效的和公平的;在低负载时效率低下。

  2. 随机访问协议:在低负载时效率高,单个节点可以完全利用信道全部带宽;高负载时,冲突开销较大,效率极低,时间很多浪费在冲突中。

  3. 轮流协议在高负载和低负载时都很好,但太复杂。

    轮询:

    • 主节点邀请从节点依次传送
    • 缺点:
      • 轮询开销:轮询本身消耗信道带宽;
      • 等待时间:每个节点需要等到主节点轮询后开始传输,即使只有一个节点,也需要等到轮询一周之后才能发送;
      • 单点故障:主节点失效时造成整个系统无法工作;

    令牌传递:

    • 控制令牌循环从一个节点到下一个节点传递
    • 令牌报文:特殊的帧
    • 传输数据时传输一圈,直到重新回到发送节点再将令牌传给下一个节点
    • 缺点:
      • 令牌开销:本身消耗带宽
      • 延迟:只有等到抓住令牌,才可传输
      • 单点故障:令牌丢失系统级故障,整个系统无法传输(复杂机制重新生成令牌)

LANS

MAC地址和ARP

  1. 32比特IP地址
    • 网络层地址
    • 用于使数据报到达目的子网,前n-1跳
    • 从而到达子网中的目标节点,最后一跳
  2. LAN地址
    • 用于使帧从一个网卡传递到与其物理连接的另一个网卡(在同一个物理网络中)
    • 48比特MAC地址固化在适配器的ROM,有时也可以通过软件设定
    • 理论上全球任何两个网卡的MAC地址都不相同
    • MAC地址由IEEE管理和分配,制造商购入MAC地址空间 ### ARP: Address Resolution Protocol
  3. 在LAN的每个IP节点都有一个ARP表,ARP表中包括一些LAN节点IP/MAC地址的映射
  4. 运行过程

以太网

  1. 以太网是目前最主流的LAN技术
    • 总线:所有节点在一个碰撞域内,一次只允许一个节点发送;可靠性差,如果介质破损,截面形成信号的反射,发送节点误以为是冲突,总是冲突
    • 星形:
      • 连接选择:hub或switch
      • 现在一般是交换机在中心
      • 每个节点以及相连的交换机端口使用(独立的)以太网协议,不会和其他节点的发送产生碰撞
  2. 以太帧结构
  • 前导码:用来同步接收方和发送方的时钟速率,使得接收方将自己的时钟调到发送方的时钟,从而可以按照发送端的时钟来接收所发送的帧
  1. 无连接、不可靠的服务
  2. 以太网使用CSMA/CD
  3. 10BaseT和100BaseT
    • T代表双绞线
    • 节点连接到hub上
    • 节点和hub间的最大距离是100m
  4. HUB
  • HUB本质上是物理层的中继器。
    • 从一个端口收,转发到其他所有端口。
    • 速率一致。
    • 没有帧的缓存。
    • 提供网络管理功能。
  1. Manchester编码(物理层)
    • 在10BaseT中使用。
    • 每一个比特的位时中间有一个信号跳变。
    • 允许在接收方和发送方节点之间进行时钟同步,节点间不需要集中的和全局的时钟。 10Mbps,使用20M带宽,效率50%,可以采用4b5b编码。
  2. 千兆以太网
    • 采用标准的以太帧格式。
    • 允许点对点链路和共享广播信道。
    • 物理编码:8b10b编码。
    • 共享模式:继续使用CSMA/CD MAC技术,节点间需要较短距离以提高利用率。
    • 交换模式:全双工千兆可用于点对点链路。

集线器和交换机

  1. 集线器:
    • 网段:可以允许一个站点发送的网络范围。
      • 在一个碰撞域,同时只允许一个站点在发送。
      • 如果有两个节点在发送,则会碰撞。
      • 通常拥有相同的前缀,让IP子网更详细的前缀。
    • 所有以hub连到一起的站点处在一个网段,处在一个碰撞域,骨干hub将所有的网段连到了一起。
    • 通过hub可扩展节点间的最大距离。
    • 通过hub,不能将10BaseT和100BaseT的网路连接到一起。
  2. 交换机
    • 链路层设备
    • 透明
    • 即插即用,自学习