计算机网络原理-网络层

一、网络层服务

任务:将数据从源主机送达到目的主机

功能:

  1. 转发:当里输入链路接收到一个分组后,路由器需要决策那条输出链路将分组发送出去,并将分组从输入接口转移到输出接口
  2. 路由选择:当分组从源主机流向目的主机是,必须通过某种方式决定分组经过的路由或路径
  3. 连接建立:网络层连接是从源主机到目的主机主机经过的一条路径,这条路径经过的每个路由器等网络设备都要参与网络层连接的建立

二、数据报网络与虚电路网络

1. 数据报网络(无连接服务)

源主机没要发送一个分组,就为改分组加上目的主机地址,然后将改分组推进网络。每个路由器使用分组的目的主机地址转发分组

2. 虚电路网络(面向连接)

  • 源主机到到目的主机的一条路径上建立的一条网络层逻辑连接,通信结束后再拆除连接

  • 3个构成要素

    • 从源主机到目的主机之间的一条路径(一系列的链路和分组交换机)
    • 改路径上的每条链路的虚电路标识(VCID)
    • 分组交换机的转发表中记录虚电路标识的接续关系

3.对比

项目 数据报网络 虚电路网络
是否建立连接 不建立连接 先建立连接
地址 每个在分组包含源和目的端地址 每个分组含一个短的虚电路号
分组顺序 按序发送,不一定按序接收 按序发送,按序接收
路由选择 每个分组独立路由选择 建立VC时需要路由选择,之后所有分组都沿此路由转发
典型网络 因特网 X.25/帧中继/ATM

三、网络互连与网络互连设备

1. 异构网络互连

异构网络: 主要指两个网络的通信技术和运行协议的不同
异构网络互连的基本策略: 协议转换和构建虚拟互联网络

2. 路由器

路由器:最典型的网络层设备,具有多个输入端口和多个输出端口的专用计算机,主要任务就是获取与维护路由信息以及转发分组

路由器从功能体系结构角度:

  • 输入端口:查找,转发,到达分组, 缓存排队功能
  • 交换结构: 完成具体转发工作,将输入端口IP数据包交换到指定的输出端口
    1. 基于内存交换:性能最低,价格最便宜
    2. 基于总线交换
    3. 基于网络交换:性能最高,价格最贵
  • 输出端口:缓存排队,从队列中取出分组进行数据链路层数据帧封装和发送
    1. 先到先服务(FCFS)调度策略
    2. 按优先级调度、按IP数据报的服务类型调度
  • 路由处理器
    1. 执行命令
    2. 路由协议运行
    3. 路由计算以及路由表的更新和维护

四、网络层拥塞控制

用户对网络资源(包括链路带宽、存储空间、处理器处理能力等)的总需求超过了挽留过固有的容量

  • 网络负载在膝点附近时,兔兔量和分组平均延迟发稿理想的平衡,网络的使用效率最高

  • 发生拥塞的原因:

    • 缓冲区容量有限
    • 传输线路的带宽有限
    • 网络节点的处理能力有限
    • 网络中门口写部分发生了故障
  • 解决方法

    • 流量感知路由: 权值根据网络负载动态调整,可以将网络流量引导到不同的链路上,均衡网路负载
    • 准入控制: 广泛应用于虚电路网络的拥戴复方技术,对新建虚电路审核,如果建立的虚电路会导致网络变得拥塞,那么网络拒绝家里新虚电路
    • 流量调节:在网络发生拥塞时,通过调整发送方发送数据的速率来消除拥塞
      • 抑制分组: 感知到拥塞的路由器选择一个被拥塞的数据报,给改数据报的源主机返回一个抑制分组
      • 背压:音质分组在从拥塞节点到元几点的路径上的每一条,都发挥抑制作用
    • 负载脱落:有选择地主动丢弃一些数据报,减轻网络负载,从而缓解或消除拥塞

五、Internet网络层

1. IPv4协议

  • IPv4:Internet网络层最核心的协议,定义了如何封装上层协议(如:TCP/UDP)的报文段,Internet网络层寻址(IP寻址)以及如何转发IP数据报等内容
  1. 版本号:4位。IP的版本号
  2. 首部长度: 4位。IP数据报的首部长度:20B-60B
  3. 区分服务:8 位。用来指示期望获得那种类型的服务
  4. 数据长度:16位。IP数据报的总字节数
  5. 生存时间:8位。Time-To-Live, TTL.表示IP数据报在网络中可以通过的路由器书(跳步数)
  6. 上层协议:8位,指示IP数据报封装的是哪个上层协议(TCP:6, UDP:17)
  7. 数据校验和:16位,利用校验和实现对P数据报首部的差错检测
  8. 源IP地址:32位,发出IP数据报的源主机的IP地址
  9. 目的IP地址:32位,IP数据报需要东大的主机的IP地址
  10. 选项:长度可变
  11. 数据:存放IP数据报所封装的传输层报文段
  12. 标识 16位,表示一个IP数据报。每产生一个IP数据报,IP协议的计数器加1,在IP数据报分片和重组的过程中用于标识数据同一个IP数据报。该字段不可唯一表示一个IP数据报
  13. 标志 3位:
    • DF 禁止分片: 0-可以分片, 1-禁止分片
    • MF 更多分片: 0-未被分片或分片的最后一片,1-是分片且不是最后一个
  14. 片偏移量:以8B为单位。表示一个IP数据报分片与原UP数据报的数据的相对偏移量。当该字段值为0时,且MF=1,则表示这是一个IP分片,且是第一个分片。

2. IPv4编址

一、IPv4地址长度为32位,共有2^23个不同的IP地址,约为43亿个

二、IPv4地址的三种标记方式:

方法 表示方式
二进制标记法 11000000 10101000 00000001 01100101
点分十进制标记法 192.168.1.101
十六进制标记法 0xC0A80165

三、IP地址分配

  1. 前端(Prefix):即网络部分,用于描述主机所归属的网路
    • 分类地址:定长前缀(A/B/C/D/E类)
    • 无类地址:前缀长度可变
  2. 后缀(Postfix):即主机部分,用于表示主机在网络中的唯一地址
  3. A/B/C类地址:可以用于标识网络中的主机或路由器
前缀长度 前缀 首字节(十进制)
A 8位 0xxxxxxx 0-127
B 16位 10xxxxxx xxxxxxxx 128-191
C 24位 110xxxxx xxxxxxxx xxxxxxxx 192-223

4.子网掩码: 定义一个子网的网络前缀长度

  • 子网掩码位数:32位
  • 书写形式:二进制,点分十进制
  • 取值规则:对应前缀,前部位1,对应后缀,全部为0

5.路由聚合:减少路由表项数,提高路由效率,将可以聚合在一起的子网聚合成一个大的子网

3. 动态主机配置协议

DHCP在应用层实现,传输层使用UDP,DHCP服务器端口号67,DHCP客户端口号68

工作过程

  • 第一步:DHCP服务器发现:广播方式
  • 第二步:DHCP服务器提供:广播方式
  • 第三步:DHCP请求:广播方式
  • 第四步:DHCP确认

4. 网络地址转换

(Network Address Translation, NAT) 使私有地址在公共Internet上正常通讯

工作原理

    1. 从呢网出去的IP数据报,将其IP地址替换为NAT服务器用友的合法的公共IP地址,并将替换关系记录到NAT转换表中
    1. 从公共互联网返回的IP数据报,依据其目的IP地址检索NAT转换表,并利用检索到的内部私有IP地址替换目的IP地址,然后将IP数据报转发到内部网络

5. ICMP(互联网控制报文协议)

进行主机或路由器间的网络层差错报告与网络探测

差错报告报文

  • 终点不可达
  • 原点抑制
  • 时间超时
  • 参数问题
  • 路由重定向

询问报文

  • 回声请求/应答
  • 时间戳请求/应答

6. IPv6

  1. IPv6地址长度为128位

  2. IPv6地址表示方法

      1. 8组冒号分割的十六进制数,连续多组的 “0000” 可以采用压缩格式表示,利用“::”代替,注意:只能出现一次
      1. 在IPv6地址中嵌入IPv4的点分十进制
  3. 分类

      1. 单播地址:可做源地址和目的地址
      1. 组播地址:可做目的地址
      1. 任播地址: 可做目的地址
  4. IPv4到IPv6迁移

    1. 双协议栈:网路结点同时具备发送IPv4与IPv6数据报的能力
    2. 隧道:很好地解决IPv6通信中经过IPv4路由器的温恩提,同时也不会出现信息丢失的问题

六、路由算法与路由协议

1. 路由选择算法的分类

分类标准

  • 是否需要全局信息

    • 需要网络的完整信息 - 全局式路由选择算法 - 典型:链路状态路由选择算法(LS算法)
    • 不需要网络的完整信息 - 分布式路由选择算法 - 典型:距离向量路由选择算法(DV算法)
  • 静态动态

    • 静态 - 人工配置
    • 动态 - 网络发生变化,自动计算最佳路由 - LS/DV算法
  • 是否敏感

    • 敏感 - 负载敏感的路由选择算法
    • 延迟 - 负载迟钝的路由选择算法

2. 链路状态路由选择算法(LS算法)

链路状态路由选择算法(LS算法)

  • 利用Dijkstra算法求最短路径

3. 距离向量路由选择算法

分布式路由选择算法,每个节点仅掌握与所有邻居节点的直接链路代价

  • 基础是Bellman-Ford方程(简称B-F方程)

4. 层次化路由选择

层次化路由选择:大规模网络路由选择最有效可行的解决方法

  1. 自治系统(autonomous system,AS):互联网按组织边界划分为多个自治系统。每个自治系统由运行相同 路由协议和路由选择算法的路由器组成
  2. 网关路由器:每个自治系统存在至少一个与其他自治系统互联的路由器
  3. 层次化路由选择原理,大规模互联网的路由划分为两层
    • 自治系统内路由选择:计算到达自治系统内目的网络的路由
    • 自治系统间路由选择:负责其他自治系统网络的可达性信息

5. Internet路由选择协议

一. 内部网关协议(IGP):Internet自治系统内路由选择协议

1. 路由信息协议(Routing Infomation Protocol, RIP)

  1. 较小的AS。基于距离向量路由选择算法的IGP
  2. RIP报文:封装进UDP数据报
  3. 特性:
      1. RIP在度量路径时采用的是条数
      1. RIP的费用定义在源路由器和目的子网之间
      1. RIP被限制在网络直径不超过15跳的自治系统内使用

2. 开放最短路径优先协议(Open Shortest Path First, OSPF)

  1. OSPF:较大规模的A。基于链路状态路由选择算法的IGP
  2. 直接封装在IP数据报传输
  3. 优点:
      1. 安全
      1. 支持多条相同费用路径
      1. 支持区别化费用度量
      1. 支持单播路由与多播路由
      1. 分层路由

二. 外部网关协议(EGP):Internet自治系统间路由选择协议

  1. 边界网关协议(Border Gateway Protocol, BGP)实现跨自治系统的路由信息交换。典型版本是BGP4,
    BGP主要有4种报文:

    • OPEN(打开)报文
    • UPDATE(更新)报文
    • KEEPALIVE(保活)报文
    • NOTIFICATION(通知)报文
  2. 总结

    协议名称 封装 适用范围
    RIP UDP 较小AS内
    OSPF IP数据报 较大AS内
    BGP TCP报文段 跨AS