论文摘要
分布式系统一般要求其网络能够具有高可用性。网络的高可用性一般在系统、组件和链路三个级别上体现。实现网络高可用性的常用方法是采用冗余机制。设计者通过对节点间的网络进行冗余部署,使得节点间有多个物理网络可以互为备份,即当所有链路都工作正常时,各个链路可以平均分担网络上的负载,从而提高了网络的利用率;当其中有链路失效时,系统可以继续利用其他工作正常的链路来保证系统正常运行,这样就很好地实现了网络的容错及负载均衡。目前,已经存在一些技术来实现网络的容错及负载均衡,如SUN公司的Trunking技术、Cisco公司的Etherchannel技术及Linux bonding技术等,这些实现技术一般称作链路聚合或多网卡绑定,即将多条物理链路虚拟成一个逻辑链路或将节点机上的多块网卡虚拟为一块网卡。但这些技术实现要么需要特定的硬件支持,要么容易引入单点故障,无法用于分布式系统中常见的对等节点间高可靠通信。本课题主要研究网络通信的可靠性原理、冗余网络可靠性设计及其工程应用,重点探讨在底层实现网络通信的可靠备份和负载均衡问题。所实现的容错及负载均衡技术与上述技术有所不同。它是在不改变现有冗余物理网络硬件配置及工作方式的情况下,通过额外安装的虚拟网卡及本课题所研究实现的网络通信处理模块的支持,将物理的冗余网络虚拟成一个逻辑的单一网络,目的是设计实现一种通用的高可靠冗余网络通信方案,允许上层客户应用只需针对单一虚拟网络进行开发,而无需关注网络冗余和负载均衡等底层通信细节。这种技术使本机节点可以通过虚拟网卡透明地与冗余网络中的其他节点进行高可靠通信。全文共分六章。第一章主要论述了本课题研究的背景和意义;第二章简要介绍了目前存在的各种链路聚合实现技术及其它的工程解决方案;第二章介绍了课题研究及实现过程所涉及到的相关技术;第四章论述了本课题所要实现的冗余网络容错及负载均衡技术的原理;第五章论述了实现冗余网络容错及负载均衡技术各个模块所使用的算法;第六章对本课题研究作了一个总结,并提出了下一步所需要做的完善工作。
论文目录
目录中文摘要ABSTRACT第一章 绪论1.1 课题背景1.2 国内外发展现状1.3 课题的内容及目标1.4 课题研究的意义1.5 小结第二章 现有相关技术及工程解决方案介绍2.1 链路聚合技术2.1.1 链路聚合技术2.1.2 链路聚合的优点2.1.3 链路聚合的实现方法2.2 目前链路聚合技术的相关技术及实现2.2.1 SUN公司的Trunking技术2.2.2 3COM公司的动态存取(DynamicAccess)技术2.2.3 Cisco公司的以太网信道(Etherchannal)技术2.2.4 Linux Bonding技术2.3 目前存在的工程解决方案2.4 对上述几种技术实现的特性分析2.5 小结第三章 课题研究涉及的相关技术3.1 以太网基础3.2 TCP/IP协议3.2.1 TCP/IP的分层3.2.2 封装3.2.3 分用3.3 Socket编程技术3.3.1 Socket编程基本概念3.3.2 Socket编程模型3.3.3 广播3.3.4 多播3.4 多线程编程技术3.5 小结第四章 冗余局域网容错及负载均衡技术的原理4.1 网络可靠性原理4.2 TUN/TAP虚拟网卡技术4.2.1 TUN/TAP驱动程序简介4.2.2 TUN/TAP设备的工作原理4.3 NCPM应用架构4.3.1 架构详述4.3.2 NCPM对数据包的处理4.3.3 NCPM传输层协议的选择4.4 NCPM功能概述4.4.1 转发表4.4.2 NCPM的功能:4.5 NCPM模块算法选择4.6 与现有其他技术的比较4.7 小结第五章 冗余局域网容错及负载均衡技术的实现5.1 NCPM体系结构5.1.1 NCPM架构的选择5.1.2 心跳信息5.1.3 NCPM程序结构介绍5.2 初始化模块5.3 网络状态获取模块5.3.1 模块资源使用情况5.3.2 本机信息获取子模块5.3.3 心跳信息发送子模块5.3.4 心跳信息接收子模块5.3.5 链路状态检测子模块5.4 容错及负载均衡模块5.4.1 模块资源使用情况5.4.2 数据发送子模块5.4.3 数据接收子模块5.4.4 读取TUN设备子模块5.4.5 写入TUN设备子模块5.5 程序运行效果及功能测试5.6 小结第六章 总结及展望6.1 本课题的总结6.2 所做的工作及取得的成果6.3 下一步的工作展望参考文献致谢攻读学位期间发表的论文学位论文评阅及答辩情况表
相关论文文献
标签:冗余网络论文; 容错论文; 负载均衡论文; 虚拟网卡论文;