计算机工程与应用 ›› 2023, Vol. 59 ›› Issue (16): 240-247.DOI: 10.3778/j.issn.1002-8331.2204-0068
杨济科,嵩天,李天龙,杨雅婷
YANG Jike, SONG Tian, LI Tianlong, YANG Yating
摘要: 命名数据网(named data networking,NDN)是一种以信息为中心的新型网络架构方案,网内缓存是其核心功能之一。现有缓存模块主要以应用级缓存实现为主,存在网络操作效率低、设备兼容性差、部署位置受限等问题。相比于应用级缓存模块,内核级缓存模块可以直接且广泛地部署于通用网络设备上,有助于推动网内缓存技术的规模应用以及NDN网络方案的实际部署。然而,由于NDN网内缓存机制涉及频繁的逐包缓存操作,将网内缓存功能引入内核将会影响内核处理性能。针对这一性能问题,设计并实现了一种内核级缓存方法。该方法维护一个哈希表进行缓存的精确查找,利用NDN名称的结构性,在节点间构建字典树支撑NDN缓存模糊匹配功能。提出使用细粒度的逐槽锁保护缓存查找表,原子操作保护替换队列,将缓存操作多线程并行化。在Linux内核中实现了所提的多线程缓存模块,实验结果表明,所提出的方法可以将缓存模块查找延迟降低至现有方案的一半,并且通过多线程将吞吐量提升至6.785?Mpacket/s。