论文部分内容阅读
随着互联网的迅速发展,人们对网络带宽,网络性能和网络管理的要求也都愈来愈高。传统的二层以太网交换机已不能满足网络互连的需求;而与此同时,三层以太网交换机以其价格和性能上的优势成为必不可少的网络互连设备。因而对于三层交换机的设计与研究也成为一个热点。对于三层交换机设计而言,不但其主要的二/三层报文线速转发功能基本上都是依靠硬件来完成的;而且它的网络管理功能也要依靠管理交换机硬件来实现。而所有这些都需要交换机驱动的支持,因而交换机驱动的设计是交换机系统设计过程中的一个关键技术,它设计的好坏将对整个交换机系统的性能产生至关重要的影响。结合上述背景,本文首先介绍了在这种需求下以太网技术的发展历程以及现状,并在此基础上对三层交换技术和第三层交换机工作原理进行了阐述。然后,详细分析了BCM5615 芯片体系结构和数据转发流程,并根据芯片特性给出了一个具体的三层交换交换机的软硬件系统。以此为基础,结合嵌入式驱动开发特点,针对交换机驱动的功能需求,设计出符合此三层交换机系统的驱动子系统的功能模块划分方案:将驱动分成硬件抽象层,BSP 和SSP 三个模块。而后根据各模块的功能和在交换机体系结构中的层次设计出不同的驱动技术来实现。在设计和实现过程中仔细分析了各模块的内部结构及初始化流程,并详细论述了VxWorks 环境下交换机驱动程序的设计原理及实现方法。通过使用这种层次化模块结构设计,使得上层协议模块与交换机硬件充分隔离,为交换机软件系统的移植和扩展提供了良好的基础。本文通过设计并实现了一个能驱动交换机硬件,屏蔽底层硬件操作细节,为上层软件模块提供统一硬件控制接口的交换机驱动子系统;详细阐述基于SubEND 分层模型的交换机驱动程序的设计思想及实现过程;其中,重点描述了交换机驱动核心部分:SSP 在END 模型中的具体设计与实现。同时还对硬件抽象,高效收发包,任务调度机制,接口设计,函数挂接等技术的实现进行了研究和探讨。最后,根据交换机未来的发展应用,提出了今后交换机驱动研究与设计的重点。