论文部分内容阅读
路由器是互联网基础设施的重要组成部分,网络的快速发展对路由器性能和功能要求不断提高,路由器体系结构如何适应技术和应用发展的需求,成为了网络领域的研究热点。近年来,虽然研究人员先后提出了主动网络、可编程网络、开放控制式路由器、软件可扩展路由器和面向用户控制的路由器等多种路由器体系结构,但从总体上讲,路由器体系结构技术进展仍不能适应网络技术的快速发展和网络规模不断扩大,在控制开放性、功能可扩展性、规模可伸缩性、系统可用性和应用感知性等方面仍面临诸多挑战。 论文针对当前路由器体系结构,尤其是路由器控制体系结构面临的问题进行了深入的研究,分析了ForCES、SoftRouter、NPForum、P1520、RCP等相关体系结构的特点,从规模、性能、控制、服务和应用感知等多维开放可扩展的理念出发,提出了一个结构灵活、开放可扩展的通用路由器体系结构—OpenRouter模型。OpenRouter模型将路由器划分为转发实体(FE)和控制实体(CE),其中控制实体又可以进一步垂直划分为控制服务层和操作服务层。OpenRouter模型的开放性特点来自于控制实体与转发实体之间、控制服务层与操作服务层之间、控制服务层与外部应用之间定义的三个层次的开放可编程接口。OpenRouter模型将这三个层次的编程接口分别定义为控制接口(C-API)、编程接口(P-API)和用户接口(U-API):C-API是一个分离控制协议,它使得路由器的控制功能完全独立于路由器交换功能,增强了路由器控制的伸缩性和灵活性;P-API能有效提高网络控制协议开发的通用性和灵活性;U-APl支持上层用户应用与网络控制协议之间的交互,实现应用对网络的主动控制和感知。同时,我们还分别在多个控制实体之间以及多个转发实体之间定义了三个对等层协同机制,有效支持OpenRouter模型的多维可扩展,它们分别是:控制服务协同协议(CSCP)、控制实体协同协议(CECP)和转发实体协同协议(FECP)。基于这三个协同协议,OpenRouter模型能支持控制协议在多控制实体间的分布并行处理、多控制实体间的协同和冗余备份,以及由多个转发实体构成的转发集群功能。 OpenRouter模型中,对等层协同机制是实现可扩展性的关键。本文主要研究了FE之间的转发实体协同协议和CE之间的控制实体协同协议的关键算法及协同策略。转发实体协同协议的核心是如何动态构造转发实体集群内部的转发路径。针对小规模的转发集群和大规模的转发集群这两种典型环境,本文分别提出了集中路径构造算法CPCA和分布路径构造算法DPCA,有效解决了转发集群内部拓扑发现与路径构造问题。根据CE间的控制实体协同协议的控制实体和转发实体实现差异,以及控制协同策略实现难度的不同,我们提出了四种控制协同策略CSB、RSGR、CPD与CPS,以及协同选举协议CSP,动态协商CE角色并完成故障角色转换。 路由器控制和转发分离的开放编程接口,增加了路由器体系结构的灵活性,但同时也造成控制平面的路由信息库与转发平面报文转发表之间的路由不一致问题。本文首先给出