论文部分内容阅读
物联网飞速发展,种类和数量越来越多的嵌入式设备(包括终端和节点设备)将要接入互联网。随着数以亿计的设备即将连接网络,传统的IPv4网络显露出了众多缺陷,例如:地址分配不均衡和地址数量枯竭、骨干路由信息维护耗费大量资源、安全性不理想等。IPv6理论地址容量为232,可以提供数以十亿计“唯一的地址”服务;采用固定长度报文头,加快了报文处理速度;全支持IPsec,提供了更好的安全性;自动配置,方便了管理和维护工作。SOPC片上可编程系统配置灵活,可反复配置,降低产品前期研发和设计周期,可降低成本,适合用来实现多数入网设备及其上所运行的精简IPv6协议栈。本文设计和实现了可以在SOPC系统中运行的IPv6协议栈,便于一定场景下的设备接入物联网,进而为其应用提供网络支持,并且运行良好,节约了一定的系统资源,提升目标系统整体性能。
本文结合SOPC和IPv6技术,对系统的软硬件进行了设计和实现,具体的工作如下:
首先,利用Xilinx公司的Spartan3E FPGA开发板、集成开发环境ISE和嵌入式开发包EDK,构建了SOPC系统硬件环境。在此基础上,研究了嵌入式操作系统μC/OS-Ⅱ机制,并在以Microblaze处理器为核心的系统中进行了移植。
其次,详细介绍了SOPC系统中μIPv6的设计与实现。参考μIPv6协议栈,对IPv6体系中的功能进行了裁剪,去掉了路由转发、移动IP、IPSec、DHCPv6、多网络接口支持、IPv4与IPv6转换等非必要的功能模块,对设备接入IPv6网络的必备功能进行了实现,其中有IPv6协议、ICMPv6协议、邻居发现协议ND和无状态地址自动分配机制。在网络层基础之上,本文还设计和实现了传输层的用户数据包UDP协议,使协议栈可以支持应用层的UDP需求,并可以进行UDP承载能力测试。然后,对本文中SOPC系统的以外网实现方式进行了说明。
最后,本文对实现的UDP/IPv6协议栈进行了连通性和UDP承载能力测试,测试结果表明本协议栈可以实现IPv6网络的接入,并提供1Mb/sUDP承载能力。
在本论文的研究基础上,进一步完善TCP传输、IPv6协议扩展功能,或者针对特定的应用环境进行二次开发、裁剪和其他平台移植,增加新的模块,这样本文实现的协议栈可以得到更广泛的应用。