1 网络层的核心功能

  转发(forwarding):将分组从路由器的输入端口转移到合适的输出端口
  路由(routing): 确定分组从源到目的经过的路径(路由算法)
 

2 网络层服务模型

  无连接服务和连接服务
 
  1)无连接服务
    不事先为系列分组的传输确定传输路径
    每个分组独立确定传输路径
    不同分组可能传输路径不同
    典型的无连接服务就是数据报网络
 
  2)连接服务
    首先为系列分组的传输确定从源到目的经过的路径(建立连接)
    然后沿该路径(连接)传输系列分组
    系列分组传输路径相同
    传输结束后拆除连接
    典型的连接服务就是虚电路网络(virtual-circuit network )
 

3 虚电路网络(Virtual circuits)(VC)

3.1 简介

  一条从源主机到目的主机,类似于电路的路径(逻辑连接)
    每个分组的传输利用链路的全部带宽
    源到目的路径经过的网络层设备共同完成虚电路功能
  

 

 

3.2 通信过程

  呼叫建立(call setup)→数据传输→拆除呼叫 
 

3.3 VC的实现

3.3.1 每条虚电路包括
    1) 从源主机到目的主机的一条路径
    2)虚电路号(VCID), 沿路每段链路一个编号
    3)沿路每个网络层设备(如路由器),利用VC转发表记录经过的每条虚电路
 
3.3.2 关于VCID
    1)沿某条虚电路传输的分组,携带对应虚电路的VCID,而不是目的地址
    2)同一条VC ,在每段链路上的VCID通常不同(由于每一段链路的通信能力是不一样的,所能支持的虚电路号的数量是不同的,一般来说,链路带宽越大,所能支持的虚电路号越多,所以采用局部化管理)
    3)路由器转发分组时依据转发表改写/替换VCID
 

3.4 VC转发表

     如上图,主机H1要和H2通信,先要建立连接。会生成从源主机到目的主机的一条路径(具体怎么选择路径的就不关注的),如上图红线。

  在路由器R1的VC转发表会记录一条数据,输入接口1输入VCID为12,会被转发到输出接口3,且VCID被替换为22

  在路由器R2的VC转发表会记录一条数据,输入接口1输入VCID为22,会被转发到输出接口3,且VCID被替换为32

  H1给H2发送数据,VCID为12,从接口1点到R1,R1查询VC转发表,将数据转发到接口3输出,且把VCID替换为22

  数据通过接口1到达R2,R2查询VC转发表,将数据转发到接口3输出,且把VCID替换为32,最后到达H2

 

4 数据报网络

4.1 简介

  1)网络层无连接
  2)每个分组携带目的地址
  3)路由器根据分组的目的地址转发分组
    基于路由协议/算法构建转发表
    检索转发表
    每个分组独立选路,也就是说,同一批分组到达目标的路径可能不同(因为,虽然目标地址一致,但是转发表是会更新变化的)

 

4.2 数据报转发表

  路由算法确定通过网络的端到端的路径
  转发表确定在本路由器如何转发分组

    如果,转发表里面记录所有的ip的转发信息,ip地址是32位的,大概40多亿个ip,那么这个转发表也太大了。所以这么存储时不可行的。

  所以,可以采用地址范围而不是具体的某个ip。

  

 

4.3 最长前缀匹配优先

  例

  

    那么:11001000 00010111 00010110 10100001 应该从接口0转发
    那么:11001000 00010111 00011000 10101010,这个和1号接口描述的地址范围以及2号接口描述的地址范围都可以匹配上,优先匹配更详细的地址范围,所以应该从接口1转发
 

5 数据报网络和VC网络

  数据报网络  
    1)计算机之间的数据交换
      “弹性”服务,没有严格时间需求
    2)链路类型众多
      特点、性能各异
      统一服务困难
    3)“智能”端系统 (计算机)
      可以自适应、性能控制、差错恢复
    4)简化网络,复杂“边缘
  
  VC网络  
    电话网络演化而来
    核心业务是实时对话
      严格的时间、可靠性需求
      需要有保障的服务
    “哑(dumb)” 端系统(非智能)
      电话机
      传真机
    简化“边缘” ,复杂网络