论文部分内容阅读
七号信令网是现代通信的关键技术之一,网络规模和网络业务日益膨胀,对其维护和管理的监测系统成为目前通信系统建设中不可缺少的组成部分。整个检测网中的数据都要通过存在于监测系统底层的各类网卡设备发往上层,因此设计一个可以屏蔽异构板卡差异性的系统,并为上层提供一个公开、统一化的通用接口,成为了重要的内容。数据传输系统的主要任务是保证从网络层获取的数据可以完整、有序、无误地送往上层应用。然而当遇到突发数据流时现有的数据传输机制会因为缓冲区不足造成严重的丢包现象。且高速板卡的加入不仅会抢占普通板卡的资源使其数据传输出现异常,同时由于其数据传输的高速率与数据频繁拷贝的矛盾也造成了数据传输的瓶颈。本文面向网络中数据传输的实时要求,融合动态内存分配的精髓,就如何根据数据流流量实现缓冲内存的快速分配和管理、如何提高内存的利用率、如何减少内存的拷贝次数,为多板卡适配器系统设计了可动态分配缓冲空间的内存管理方案。本文通过对现有系统的研究,分析了普通板卡与高速板卡的数据传输机制存在的问题。对于普通板卡的缓存机制,基于现有内存分配技术为其设计了两个通过双向循环队列管理的备用缓存区和板卡数据缓冲区。系统通过对数据的流入量和流出量进行比较,动态地将备用缓冲区的存储块挂载到板卡缓冲区上,或将存储块从板卡缓冲区中回收给备用缓存。这样不仅减少了临时分配的开销,还有效地避免了碎片的产生。同时针对高速板卡的特性,将其缓存机制与普通板卡分离开,利用内存映射技术减少数据的拷贝过程,提高传输效率。最后对优化结构进行了试验,CPU的占用率和系统的丢包率都有明显下降。