论文部分内容阅读
随着宽带通信技术的发展,特别是DWDM技术的成熟,网络的可用带宽不断扩展,链路的可靠性不断提高,原有的协议已经不能很好的适应这一发展趋势。此外,随着用户对网络资源需求的日益多样化,为了更好的满足用户对QoS和安全性等的需求,也需要改进现有的网络体系和协议。目前,实用的网络体系结构都是层次结构,TCP/IP是目前互联网所使用的主流技术体系。由于最初的TCP/IP协议栈本来就是为了窄带文本数据而开发的,为了适应宽带传输的要求该协议在原有的基础上不断的进行修改。而与此同时很多针对网络体系结构的研究也不断展开。本文首先介绍了一种基于服务元的无层次的网络体系结构,简要分析了服务元网络体系结构的特点,节点模型,服务元的定义以及提供的服务等。然后本文介绍了由美国MIT大学Eddie Kohler博士提出并由MIT计算机技术系并行与分布式操作系统实验室开发完成的Click路由系统,着重阐述了Click路由器系统定义和它的组成部分。结合服务元网络体系结构的思想和Click系统,我们开发了基于服务元网络体系的原型路由器,以下简称为SU路由器。接着本文论述了SU路由器,包括分析了它的软件架构,CPU的调度以及它的配置语言和编程环境等。在SU路由器中,定义了一个软件对象-“包处理元”。它是由包处理过程的一项最小操作定义的的实体,它完成最小包处理操作。路由器由包处理元对象组织构成,其配置图是一个由包处理元对象沿数据包流向连接而成的有向图。在该路由系统中,我设计实现了网卡软件模块,它包括网卡接收模块FromDevice和网卡发送模块ToDevice。因此本文最后着重论述了SU路由系统中网卡接收模块FromDevice和发送模块ToDevice的设计和实现,包括这两个模块的设计思想、类数据结构、函数流程、函数功能等,并提供了该路由系统的测试结果。本文在linux2.2.18内核下,采用面向对象的思想,用C++程序开发语言对SU原型路由器中网卡软件模块进行了设计,进而用C++语言进行内核模块编程实现其功能。论文取材于电子科技大学纵向项目XXXX创新基金,由于编程实现基于服务