第五章 网络层(一)

简介

形象分析: 网络层就像是十字路口的一个警察: 有人到十字路口问路,警察告诉他该怎么走(路由选择); 路上有交通堵塞,警察疏通交通,同时通知别人,此路口堵塞,其他车辆绕行(拥塞控制); 这条路一端能走机动车,而另一端不能走机动车,警察想办法让这个机动车过去(网络互联)

  1. 网络层主要解决的问题
    1. 路由选择
    2. 网络互连
    3. 拥塞控制
    4. 为上层提供服务
  2. 本章目录
    1. 网络层设计的相关问题(略)
    2. 路由算法
    3. 拥塞控制
    4. 服务质量
    5. 网络互联
    6. 因特网中的网络层

路由算法

  1. 路由算法是网络层软件的一个重要部分,它决定进入的分组应从哪一根输出线传输
  2. 如果是数据报子网,将在每一个分组到达时作此决定
  3. 如果是虚电路子网,是在虚电路建立时决定,该连接上所有分组都将沿此线路传输
  4. 路由与转发:路由是寻径,转发是当一个分组到达时发生的动作
  5. 路由算法设计必须考虑的问题
    1. 正确性/简单性/健壮性/稳定性/公平性/最优性
  6. 路由算法中的度量标准
    1. 路径长度
    2. hop数(一个路由器到下一个路由器叫一个hop)
    3. 延迟时间

路由算法的分类

  1. 静态算法
    1. 假设当前网络的拓补结构是不变的,为每个结点找到路径
    2. 为路由器配置一张最优的路由表
      1. 最短路径算法(Dijkstra)
      2. 扩散法(flooding)
        1. 缺点:重复数据包多,浪费带宽
        2. 优点:可靠性高,路径最短,常用于军事
  2. 自适应算法
    1. 自适应算法是动态的、分布式的算法(网络拓补结构是动态的)
    2. 实现分布式算法的三要素:
      1. The measurement process(测量)
      2. The update protocol(更新协议)
      3. The calculation(计算)
    3. 路由器动态建立和维护一张最优的路由表
      1. 距离矢量算法(D-V)
        1. 每个路由器用两个向量Di和Si来表示该点到网上所有节点的路径距离及其下一个节点
        2. 相邻路由器之间交换路径信息
        3. 各节点根据路径信息更新路由表
        4. 缺点:
          1. 交换的路径信息量大
          2. 路径信息不一致
          3. 收敛速度慢(坏消息)
          4. 不适合大型网络
      2. 链路状态算法(L-S)
        1. 基本思想:
          1. 发现它的邻接节点,并得到其网络地址
          2. 测量它到各邻接节点的延迟或开销
          3. 组装一个分组以告知它刚知道的所有信息
          4. 将这个分组发给所有其他路由器
          5. 计算到每个其他路由器的最短路径
        2. 优点
          1. 路由信息的一致性好,坏消息也一样传播得快
          2. 状态分组的长度较短,仅包含到邻接点的距离、序号和年龄等,与网络规模关系不大,传输所耗用的网络带宽不大,
          3. 此外,状态分组的扩散,由于年龄参数的设定,不会无限制扩散,所以可适用于大型网络
        3. 缺点
          1. 每个路由器需要有较大的存储空间,用以存储所收到的每一个节点的链路状态分组
          2. 计算工作量大,每次都必须计算最短路径
  3. 拓扑相关的路由算法
    1. 分层路由
      1. 随着网络规模的增长,存储和处理路由表所需的资源也急剧增长,从拓扑上分层是解决问题的一个方法
      2. 分层的概念:将路由器分成组,每一路由器知道到组内任何一台路由器的路由,以及到其他组的路由,因此可把其他组中所有的路由器抽象成一个,以减少路由表的长度
      3. 也就是说一块区域内的路表只知道当前区域内的路由,以及到下一个区域的路由,多个区域分区管理的概念.
      4. Internet网络就是这样分层管理的
    2. 广播路由
      1. 之前讲的都是点到点的路由
      2. 广播路由是一个发送点到多个接收点的路由
      3. 发送方式:
        1. 逐个向所有节点分别发送报文
          1. 缺点:发送量大
          2. 需知道网上所有节点的地址
        2. 扩散法
          1. 缺点:流量大,消耗大量带宽
          2. 某些节点还可能收到重复的报文
      4. 广播路由算法
        1. 多目的地路由
          1. 分组中包含需到达的多个目的地的地址表
          2. 到一个节点时,路由器检查所有的目的地址表,确定输出线路集合,路由器为每一条输出线路复制一个新的分组,每个分组中仅含有要用此线路的目的地址表
          3. 优点:流量小,节约带宽
          4. 缺点:费用承担不公平
        2. 生成树算法
          1. 路由器将分组沿生成树发送(除进入线路之外)
          2. 优点:带宽得到最佳利用
          3. 缺点:每个路由器必须知道其可用生成树
          4. 如链路状态路由算法可得到生成树,距离矢量路由算法却不能得到
        3. 逆向路径传送
          1. 基本原理:当某一广播分组到达路由器时,路由器对它进行检查,如该分组来自通常向广播源发送分组的线路,则将该分组转发到除进线以外的其它线路,否则丢弃
    3. 多址传输路由选择
      1. 也是一个发送方,多个接收方
    4. Peer-to-Peer网的节点查找
      1. 对等网:一组织中大量用户通过固定线,接入Internet,共享资源
      2. 对等网的特点:
        1. 全分布:所有节点都是对称的,没有控制中心或分层的概念
        2. 每个节点都有一些其他用户感兴趣的信息
      3. 对等网的路由:没有一个中心数据库,如何发现要寻找的信息
  4. 移动节点的路由(重要)

  5. Ad-hoc网络的路由(重要)

拥塞控制

  1. 当通信子网中有太多的分组,导致其性能降低,这种情况叫拥塞
  2. 拥塞控制和流量控制的区别
    1. 全局性问题和局部性问题
  3. 造成拥塞的原因
    1. 节点存储容量(缓冲区)不够(问交警的人太多,没地方站了)
    2. 处理机速度太低 (交警水平不行,指的太慢)
    3. 线路容量(带宽)不够 (道路太窄)

服务质量

  1. 从同一源(进程)到同一目的地(进程)的一串分组流(stream)称为流(flow)
    1. 源: 发送请求的应用进程(用户端)
    2. 目的地: 处理请求的进程(服务器)
  2. 流的服务质量有四个指标
    1. 可靠性
    2. 延迟
    3. 抖动
    4. 所需带宽
  3. 不同服务所需要的不同质量

    图1

网络互联

  1. 网络互联(internet)的背景
    1. 不同类型的局域网的发展
    2. Ethernet FDDI 802.11 ATM
    3. TCP/IP SNA NCP/IPX AppleTalk
  2. 网络互联的类型
    1. LAN-LAN (局域网-局域网)
    2. LAN-WAN (局域网-广域网)
    3. WAN-WAN (广域网-广域网)
    4. LAN-WAN-LAN (局域网-广域网-局域网)
  3. 网络互联的设备
    1. 中继器
      1. 物理层的互联设备
      2. 延伸传输的长度,传输二进制的媒体线路不可能很长
      3. 接收信号转换为二进制,在将二进制传出去
      4. 多个中继器连接起来的任然是一个网络
    2. 网桥
      1. 数据链路层的设备
      2. 将2个或多个局域网互连起来
      3. 处理的为数据链路层的帧
    3. 路由器
      1. 第三层网络互联设备(IP层的设备)
      2. 连接的是不同的物理网络
      3. 一边是局域网/一边是广域网
    4. 传输网关
      1. 传输层的互联设备
    5. 应用网关
      1. 应用层的互联设备
      2. 把两个应用系统连接起来
  4. 互联网络的相关技术
    1. 互联方式
      1. 级联虚电路
        1. 要求沿途的网络都能提供可靠传输的保证
      2. 无连接的网络互联
        1. 每个分组独立地选择路由
        2. 不同网络的 分组格式可能不尽相同
        3. 不同网络可能采用不同的地址编制方法
        4. 此外,不能保证分组按顺序到达
        5. 必须设计一个通用的互联网分组格式和编址方法
      3. 隧道
    2. 互联网络的路由
      1. 将网络分成一个个的AS(autonomous system 自治系统),AS之间由路由器连接
      2. 每个自治系统受单一管理机构控制,由一组网络构成 (如校园网就是一个AS )
      3. AS中由内部网关协议IGP(Interior Gateway protocol)处理
      4. AS间由外部网关协议EGP(Exterior Gateway protocol)进行处理
    3. Packet的分段与重组
      1. 简单的网络互联

        图1

        1. 一个数据包从源主机到目的主机是如何走的呢?分析如下:
          1. 数据包经过网络1发送,网络1的帧头+数据包
          2. 发送的网络2时,解析数据包,网络2的帧头+数据包
          3. …..一直到目的主机
      2. 如果数据包很大,物理网络的帧装不下怎么办?

        1. 这就出现了分段,把这个数据包分成若干段发送
        2. 数据到了目的主机的网络层,目的主机的网络层需要把分段的数据重组交给传输层
        3. 分段 图1
        4. 重组
          1. 透明分段——在入口网关分段,由出口网关重组
            1. 出口网关必须知道什么时候本分组的所有分段都已收到,并必须对每个分段进行存储,此外所有分段必须汇集到出口网关
          2. 非透明分段——由目的主机重组
            1. 要求每一主机都有重组功能,由于每个分段都必须增加一个头部,所以增加了每一分组的开销
Table of Contents