软硬件资源的不断成熟和完善,使得嵌入式系统应用得到了十分迅猛的发展。另一方面,互联网技术的发展,使得Internet逐渐深入到人们的日常生活中。嵌入式控制网络与信息网络的互联不仅拓宽了控制系统的控制范围,而且丰富了信息系统的内容。因此,嵌入式系统与Internet相结合将成为嵌入式系统和互联网络发展的重要方向。 现阶段,Internet规模的日益扩大与IPv4地址匮乏之间的矛盾越来越突出。为解决IPv4网络存在的各种问题而出现的IPv6协议具有海量的地址空间、优化的路由算法、自动化的地址配置等;同时还增加了对安全性、QoS等的良好支持。因此,Internet从IPv4过渡到IPv6是一种必然的趋势。综上,对IPv6协议进行研究并将其引入嵌入式系统,实现嵌入式设备接入网络的功能,具有较高的科研价值和现实意义。 本文在对嵌入式系统相关概念和嵌入式IPv6协议栈进行介绍的基础上,阐述了IPv6协议簇中核心协议的原理、报头结构和参数等。接着根据嵌入式TCP/IP协议栈的设计要点,提出嵌入式IPv6协议栈的总体设计,进一步对协议栈的进程模型、内存管理、平台无关性和通讯机制进行了研究。然后对协议栈的裁剪和数据包的处理流程进行分析,给出各模块的详细设计与实现,主要有IPv6模块、ICMPv6模块、邻居发现(ND)模块和UDP模块。最后将协议栈嵌入到uC/OS-II操作系统中并搭建测试环境对IPv6协议栈进行功能性测试,结果表明协议栈功能正常,可以完成基本的通讯功能。 协议栈根据嵌入式系统资源有限和应用相对单一的情况进行裁剪,采用分层结构实现;同时在实现基本功能的前提下,为功能的扩展提供了接口;另外,将协议栈与硬件、编译器和操作系统相关的代码独立开来,实现了协议栈在不同平台的良好移植。关键词:嵌入式系统,因特网,ARM,IPv6,ICMPv6,邻居发现协议