最近在用 PF_RING 抓包过程中,发现个灵异的现象,高流量丢包时, 经常会出现正在处理的包的内容被覆盖。开始,怀疑是不是自己程序有地方越界写了,后来发现,如果自己拷贝一份,然后处理拷贝的那份,永远都不会发生覆盖现象。后来通过跟踪发现是,PF_RING 的共享内存 RING 区域对尾部处理有异常。因为 RING 尾部空间不够 一个 slot_len 大小时候, insert_off 会直接从 RING 头开始,所以尾部会有最多 slot_len - 1 的无用空间。

给 PF_RING 提交了一个 pull request,经过2周,已经接受,见 commit

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-12-05
  • 2021-11-24
  • 2022-12-23
  • 2022-12-23
  • 2021-09-16
  • 2022-12-23
猜你喜欢
  • 2021-09-21
  • 2022-01-25
  • 2021-08-22
  • 2021-08-14
  • 2021-10-15
  • 2022-12-23
相关资源
相似解决方案