一、路由器结构概括

1、高层面(非常简化)通用路由器体系架构

(1)路由:运行路由选择算法/协议(RIP、OSFF、BGP)生成路由表

(2)转发:从输入到输出链路交换数据报-根据路由表进行分组的转发 二、分布式交换

1、输出端口:根据数据报头部的信息如:目的地址,在输入端口内存中的转发表中查找合适的输出端口(匹配+行动)

(1)基于目标的转发:仅仅依赖于IP数据报的目标IP地址

(2)通用转发:基于头部字段的任意集合进行转发

2、输入端口缓存:当交换机的速率小于输入端口的汇聚速率时,在输入端口可能要排队,排队延迟以及由于输入缓存溢出或造成丢失。

排队队头的数据报阻止了队列中其他数据报向前移动,即排在队头的数据报可能跟其他数据报是走同一个端口,而这个端口被其他数据报占用,那他也就只能等待,而等待过程排在他后面的数据报也需要跟着等待

3、交换结构

(1)memory:内存交换方式

分组被拷贝到系统内存,CPU从分组头部提取出目标地址,查找转发表,找到对应的输出端口,拷贝到输出端口。转发速率被内存的带宽限制(数据报通过BUG两遍),一次只能转发一个分组

路由器处理vlan_缓存


(2)bus:总线交换

a. 方式:数据报通过共享总线,从输入端口转发到输出端口,即数据报发送到共享总线,每个输出端口都获得数据报,若数据报不是该端口,则将其丢弃

b. 局限性:总线竞争,交换速度受限于总线带宽,一次只能处理一个分组

路由器处理vlan_网络协议_02


(3)通过互联网络(crossbar等的交换)

a. 可以同时并发转发多个分组,克服总线带宽限制

b. Banyan(榕树)网络,crossbar(纵横)和其他的互联网络被开发,将多个处理器连接成多处理器

c. 当分组从端口A到达,转给端口y;控制器短接相应的两个总线

d. 高级设计:将数据报分片为固定长度的信元,通过交换网络交换

d. Cisco12000:以60Gbps的交换速率通过互联网

路由器处理vlan_缓存_03


4、缓存的必要性:当数据报从交换机构的到达速度比传输速度快,就需要输出端口缓存;当缓冲区被用完时,来的分组会将其抛弃。

5、分组的优先级: 由 调度 规则选择排队的数据报进行传输,即先传输哪个分组。

6、排队:多打一的可能性,就会排队,排队会造成延迟;排队的缓冲区用完,也会造成丢失。

三、调度
1、调度:选择下一个要通过链路传输的分组
2、调度机制
(1)FIFO:按照分组到来的次序发送
(2)优先权调度:发送最高优先权的分组(不同类别有不同的优先权,类别可能依赖于标记或其他的头部字段:e.g.,IP,source/dest,port,numbers,ds,etc)
(3)每个分组分一定的优先级,没有谁比谁绝对优先,而是每个分组占一定的比例
3、丢失策略:
(1)丢弃刚到达的分组(tail drop)
(2)根据优先权丢失/移除分组(priority)
(3)随机地丢弃/移除(random)