论文部分内容阅读
随着光网络的发展以及IPv6 网络的逐渐部署,网络接口的速度越来越高,路由器处理报文的速度也必须随之更快。对于40G 的接口,每个报文的路由器处理时间只有8ns,这在目前的技术条件很难使用单处理器达到。目前高速路由器广泛使用的是分布式处理结构,它对每个网络接口卡配备一个转发引擎,各自独立处理本地流量。这样一方面实际流量大的接口的处理可能能力不够,另一方面实际流量低的接口可能处理能力过剩。本文提出了一种新的路由器结构(集群路由器结构),它使用分布式的物理结构连接多个路由器,在节点间分担流量以提高效率; 并采用开放的抽象平台,能支持异构节点的协作和系统扩展。对于集群路由器面临的问题,本文依次从软件平台、负载模型、负载均衡、路由查找等方面展开研究。用排队论的理论分析了适合集群路由器的负载模型和负载均衡算法,分析了保持系统多路径延时平均的方式,并对分析结果使用OPNet 仿真工具进行了仿真验证。论文还分析了影响路由器查找表更新速度的关键因素,提出了受控前缀扩展的路由查找算法,并使用真实的IPv6 路由表对算法进行了验证。论文首先提出了一种分层抽象的路由器平台结构,它可以适应目前广泛采用的分布式处理结构的路由器,也可以适应集群路由器。该结构能为异构平台上路由器应用提供统一的抽象环境,将不同的路由器组合为有机的整体。通过引入虚拟设备将分布的物理结构屏蔽,从而不影响各成员路由器原有的结构,因此支持功能、性能和结构的扩展。文中详细设计了各个层次的功能,并在Linux 操作系统下的PC 上开发了部分功能,成功的将三台PC 通过以太网连接为一台集群路由器,完全未改变Linux 系统自带的转发功能,证明该了平台具有实际意义,并且是可实现的。根据集群路由器内部的数据流模式,提出了“比例分担”和“并行分担”这两种集群路由器负载模型。论文还通过对两个队列的调度的研究和仿真,得到了队列公平的调度比例计算公式,保证了本地流量和分担流量能公平的得到路由处理,以及负载经过不同节点时的延时相同。通过仿真证明在“比例分担”负载模型下,集群路由器能够公平的对过载流量进行分担,且各节点对本地流量和分担流量的调度能将两队列延时差异限制在8%以内,进而保证了所有路径的延时相同。论文基于限制处理路径的最大延时,提出了自适应动态分配的负载均衡算法,解决了集群路由器“比例分担”负载模型中的处理能力共享和负载均衡的特殊问题,保证了各个集群节点可以延时公平的分担负载。论文还引入计次传递机制,避免负载均衡中可