Netis / cloud-probe

A Software Probe for network packet capturing and forwarding in Cloud/Kubernetes and Virtualized environment.
BSD 3-Clause "New" or "Revised" License
958 stars 172 forks source link

咨询cp流量转发的数据处理逻辑 #185

Closed KevinDu2023 closed 2 months ago

KevinDu2023 commented 2 months ago

CPM1.2.1 PA:cp-0.7.4.X86_64_CENTOS.RPM cp部署模式:微探针模式,流量转发口跟业务通讯口为同一个网口,在该网口抓包发现: 请求(No.27731)与响应(No.27740)延迟6ms,但是转发出来的vxlan封装的请求(No.27743)与响应(No.27752)延迟小于1ms,由于间隔时间变的很短,导致发送到BPC后,请求(No.2011)和响应(No.2008)乱序了,两张图如下:

所以,理解下cp数据包转发逻辑是怎样的?是抓到包立即转发出去,还是抓包后会缓存一部分数据包再一起转发出去吗?才会导致转发出来的数据包的时间间隔变的很短。

robbietu commented 2 months ago

CP是单线程,抓到数据包后立即封装然后立即调用socket发送。之后再去处理下一个包