分布式系统中冗余网络容错及负载均衡技术研究

分布式系统中冗余网络容错及负载均衡技术研究

论文摘要

分布式系统一般要求其网络能够具有高可用性。网络的高可用性一般在系统、组件和链路三个级别上体现。实现网络高可用性的常用方法是采用冗余机制。设计者通过对节点间的网络进行冗余部署,使得节点间有多个物理网络可以互为备份,即当所有链路都工作正常时,各个链路可以平均分担网络上的负载,从而提高了网络的利用率;当其中有链路失效时,系统可以继续利用其他工作正常的链路来保证系统正常运行,这样就很好地实现了网络的容错及负载均衡。目前,已经存在一些技术来实现网络的容错及负载均衡,如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 下一步的工作展望
  • 参考文献
  • 致谢
  • 攻读学位期间发表的论文
  • 学位论文评阅及答辩情况表
  • 相关论文文献

    标签:;  ;  ;  ;  

    分布式系统中冗余网络容错及负载均衡技术研究
    下载Doc文档

    猜你喜欢