基于块状链表结构的6lowpan数据包重装缓存方法技术

技术编号:8536638 阅读:232 留言:0更新日期:2013-04-04 21:25
本发明专利技术公开了一种基于块状链表结构的6lowpan数据包重装缓存方法,针对sk-buff结构的存储方式,考虑到轻量级的IPV6网络数据包应用环境与存储内容的不同,采用块状链表结构实现其缓存机制,利用数组与链表相结合的方式对6lowpan数据包分片进行存储与重装。包括基于块状链表结构的数据缓存方法,以及采用基于块状链表结构的数据缓存方法对6lowpan数据包进行分片处理的方法。本发明专利技术解决6lowpan实现过程中,对于多节点并发发送数据包时,由于单一缓存机制的限制导致的数据包丢包情况,且块状链表由于数组大小固定,且存储顺序不受限制,不会因数据问题而导致链表退化。

【技术实现步骤摘要】

本专利技术涉及一种61owpan数据重装缓存方法,属于无线传感网络的应用

技术介绍
61owpan协议的发展促使基于IP的无线传感网络应用的发展。目前,Contiki OS是其中主流的实现轻量级IP协议的操作系统。Contiki OS通过61owpan协议实现Ipv6数据包基于IEEE802. 15. 4协议的传输,操作系统中所搭载的协议栈为轻量级的IPV6协议栈——UIPv6协议栈(Uip)。 Uip有很低的内存需求。在默认配置中它仅需要大约IKB的RAM和几KB ROM。在 Uip协议栈中,Uip通过将待重组的数据包存入单独的缓存区来实现IP分片的重组,将该缓冲区与用于Uip测试的数据包缓冲区相互隔离可以有效的防止IP分片遭到改写。当所有的IP分片都被重组完毕时,生成的IP数据包传递给传输层。由于Uip仅为重组的分片分配一个单独的缓冲区,所以Uip不支持多个数据包同时重组。采用这个设计的原因是在当今网络中,IP分片相对而言不太普遍。然而,在61owpan协议实现过程中,61owpan适配层会对从IP层传输下来的数据包进行检测与处理,如果IPV6的数据包载荷超过了 80本文档来自技高网...

【技术保护点】
一种基于块状链表结构的6lowpan数据包缓存方法,其特征在于,在基于6lowpan的无线传感器网络中,根据接收节点对于接收到数据包分片时缓存的状态分为以下A、B、C三种情况处理:A、当链表为空链表,即不存在其他已经缓存的数据包分片,此时对所接收到的数据包分片处理过程如下:A1、读取数据包分片的首部,根据首部字段size的值判断该数据包负载的总大小,然后根据该数据包负载的总大小建立缓冲区,同时根据首部字段tag的值判断该数据包分片所属于的数据包标示信息;?A2、为6lowpan分片数据包建立由next、scis、tag、size、Ip?len组成的五元组;其中各字段定义如下:next代表下一节...

【技术特征摘要】
1.一种基于块状链表结构的61owpan数据包缓存方法,其特征在于,在基于61owpan的无线传感器网络中,根据接收节点对于接收到数据包分片时缓存的状态分为以下A、B、C三种情况处理 A、当链表为空链表,即不存在其他已经缓存的数据包分片,此时对所接收到的数据包分片处理过程如下 Al、读取数据包分片的首部,根据首部字段size的值判断该数据包负载的总大小,然后根据该数据包负载的总大小建立缓冲区,同时根据首部字段tag的值判断该数据包分片所属于的数据包标示信息; A2、为61owpan分片数据包建立由next、scis、tag、size、Ip-1en组成的五元组;其中各字段定义如下next代表下一节点指针,在每个节点中所表示的意义相同;scis为指向所分配缓冲区的开端的指针;tag用于标示属于同一数据包的一组分片;siZe代表缓冲区的大小,与整个数据包大小一致;Ip-1en表示已经处理过的数据包分片长度,其随着处理数据包分片的数量的增加而增加; A3、将scis指针指向缓冲区地址;将next指针指向链表的头指针,插入五元组; A4、继续接收其他数据包分片,返回步骤Al ; B、当链表为非空链表,即存在其他已经缓存的数据包分片,此时对所接收的数据包分片处理过程如下 B1、读取数据包分片的首部,根据首部字段size的值判断该数据包负载的总大小,根据首部字段tag的值判断该数据包分片所属于的数据包标示信息; B2、根据BI中所读取的tag的值,在链表中查找是否已存在相同tag值的链表节点,若存在相同tag值的链表节点,则转B3 ;若不存在相同tag值的链表节点,则转B4 ; B3、根据所查找到的链表节点中的scis指针,将该数据包分片存储至已分配好的缓冲区; B4、为该61owpan分片数据包建立由next、scis、tag、size、Ip-1en组成的五元组,根据size的大小建立缓冲区,scis指针指向缓冲区地址;将该节点插入到上一节点后,保存指针; B5、返回步骤BI继续接收其他数据包分片; C、当链表的最后一个节点已存储了正在接收的数据包分片信息,则丢弃该数据包分片。2.一种采用权利要求1所述的基于块状链表结构的61owpan数据包缓存方法对61owpan数据包进行分片处理的方法,其特征在于,采用单向链表的结构对缓存进行维护与管理,包括以下步骤 步骤(1),...

【专利技术属性】
技术研发人员:孙知信骆冰清
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1