论文部分内容阅读
在Internet飞速发展的今日,网络传输的可靠性、可持续性越来越重要。而当今主流的局域网组网技术容易形成由于单台路由器故障而导致的整个局域网瘫痪的状况。本文引入了虚拟路由器冗余系统来解决这个问题。虚拟路由器冗余系统是路由器的一种容错系统,它把多台路由器虚拟为一台路由器并选举其中的一台路由器进行流量转发,其他路由器作为备份。它保证当主路由器失效时,能及时地从其他路由器中选择一台备用路由器来代替主路由器执行转发功能,从而保证通讯的连续性和可靠性。目前支持虚拟路由器冗余系统的公开协议有VRRP (Virtual Router Redundancy Protocol,虚拟路由冗余协议),RFC3768。但是VRRP存在一定的缺点,在简单组网中,一台虚拟路由器中只有一台主设备真正进行流量转发,其他备用设备没有进行流量转发,造成了设备和带宽的浪费;而且VRRP的负载分担功能不够灵活,配置困难且不会自适应改变。在这样的背景下,某公司在VRRP的基础上提出了VRRPE (Extended Virtual Router Redundancy Protocol,虚拟路由冗余协议扩展),通过给备份组路由器分配虚拟MAC地址并且对于局域网中主机的ARP请求按照路由器负载的不同回复不同的虚MAC的方式,成功实现了动态负载分担功能。在VRRPE协议下,局域网中的主机流量被较均匀地分配于备份组中的路由器上,当某台路由器出现故障时,分配在该路由器上的流量就会由其他路由器代为转发,真正实现了冗余备份和负载均衡,充分挖掘了备份组中各路由器资源。本文详细分析了VRRPE协议的基本原理,然后描述了基于VRRPE的应用于分布式路由器系统的软件实现框架,主要包括需求分析、模块设计、VRRPE协议状态机等重要模块实现,最后就整个系统的优缺点进行总结和展望。