9 Protocol Processing

高效的协议实现需要注意很多琐碎的问题,例如减少数据访问和控制开销,使用高效计时器等等。这些问题在之前的章节中叙述。本章主要涉及其他一些问题:

  • 缓存管理
  • 校验和
  • 序列号簿记
  • 重组
  • 通用协议处理

9.1 缓存管理

缓存管理需要解决:管理空闲内存;找到合适大小的内存,尤其是实时的内存分配。另外,如果需要在多个用户或连接中共用空闲内存,那么提供某种形式的公平性是很重要的,以免某个用户独占所有资源。某些时候,需要动态的缓存限制机制。

9.1.1 缓存分配

9.1.2 缓存的共享

9.1.3 dpdk内存实现

9.2 CRC和Checksum

9.3 通用协议处理

9.4 重组

//TODO: XXX

9.4.1 高效重组

9.5 结论