[发明专利]多播缓存的释放方法及装置有效
申请号: | 201310558137.4 | 申请日: | 2013-11-11 |
公开(公告)号: | CN104639444B | 公开(公告)日: | 2019-10-15 |
发明(设计)人: | 胡学权 | 申请(专利权)人: | 南京中兴软件有限责任公司 |
主分类号: | H04L12/761 | 分类号: | H04L12/761;H04L12/861 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国 |
地址: | 210012 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存 释放 方法 装置 | ||
本发明公开一种多播缓存的释放方法及装置,其方法包括:将缓存中数据包的多播发送次数写入所述数据包的设定分片的缓存号所对应的缓存空间内,形成多播次数表;按照所述数据包的分片顺序对数据包进行读出;当采用尾分片对数据包进行读出时,根据所述设定分片的缓存号读取所述多播次数表,根据所述多播次数表判断所述数据包的尾分片是否为最后一次读出,若否,则更新多播次数表并读出所述数据包的尾分片,然后进入尾分片的下一次读出操作,若是,则读出所述数据包的尾分片并释放所述数据包。本发明减少了多播缓存的释放过程中读写多播次数表的次数,减小了内存的占用空间,降低了功耗,更加简单、有效。
技术领域
本发明涉及通信技术领域,尤其涉及一种多播缓存的释放方法及装置。
背景技术
随着信息技术的高速发展,网络已逐渐成为人们日常工作和生活必不可少的工具,而人们在使用网络时必不可少的要用到以太网交换芯片,以太网交换芯片能否正常工作主要取决于数据传输过程中缓存的管理和分配。
在以太网交换芯片中,数据包需要被存储然后再根据目的地址进行释放,现有大多数缓存管理机制的局限于单播的网络环境,而多播是一种有效的将数据分发到多个接收者的途径,现已得到越来越广泛的应用,而在缓存资源被多个多播组所共享的环境中采用单组缓存管理方案无法获得预期目的,若是多播缓存管理设计不当,则会影响多播的实现,因此需要有一种合理的多播缓存管理方法。
在实际应用中,若是以太网芯片支持多个以太网口,为了保证每个端口长短包能被公平的轮询,进行数据包的处理,常用的方法是对每个端口的数据包进行分片,然后各个端口按照分片进行轮询,这样导致数据包在缓存中是以分片的形式进行存储的,数据包的每个分片存储在不同的缓存空间,它们之间通过链表来进行联系,这样,需要一种技术方案来将多播数据包正确、高效地发送到目的端口。
发明内容
本发明的主要目的在于提供一种多播缓存的释放方法及装置,旨在简单、高效的释放多播缓存。
为了达到上述目的,本发明提出一种多播缓存的释放方法,包括:
将缓存中数据包的多播发送次数写入所述数据包的设定分片的缓存号所对应的缓存空间内,形成多播次数表;
按照所述数据包的分片顺序对数据包进行读出;当采用尾分片对数据包进行读出时,根据所述设定分片的缓存号读取所述多播次数表,根据所述多播次数表判断所述数据包的尾分片是否为最后一次读出,若否,则更新多播次数表并读出所述数据包的尾分片,然后进入尾分片的下一次读出操作,若是,则读出所述数据包的尾分片并释放所述数据包。
优选地,所述设定分片为所述数据包的头分片、中间分片或尾分片。
优选地,所述按照所述数据包的分片顺序对数据包进行读出的步骤包括:
A、当采用头分片对数据包进行读出时,根据所述数据包的头分片的缓存号将所述数据包的头分片从缓存中读出,并根据所述数据包的头分片的缓存号读取链表获取所述数据包的中间分片的缓存号;
B、当采用中间分片对数据包进行读出时,根据所述中间分片的缓存号将所述数据包的中间分片从缓存中读出,并读取链表获取所述数据包的尾分片的缓存号。
优选地,当所述设定分片为所述数据包的头分片时,所述步骤A还包括:
保存所述数据包的头分片的缓存号。
优选地,所述按照所述数据包的分片顺序对数据包进行读出;当采用尾分片对数据包进行读出时,根据所述设定分片的缓存号读取所述多播次数表,根据所述多播次数表判断所述数据包的尾分片是否为最后一次读出,若否,则更新多播次数表并读出所述数据包的尾分片,然后进入尾分片的下一次读出操作,若是,则读出所述数据包的尾分片并释放所述数据包的步骤包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京中兴软件有限责任公司,未经南京中兴软件有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310558137.4/2.html,转载请声明来源钻瓜专利网。