基本的网络包处理主要包含:
- Packet input:报文输入。
- Pre-processing:对报文进行比较粗粒度的处理。
- Input classification:对报文进行较细粒度的分流。
- Ingress queuing:提供基于描述符的队列FIFO。
- Delivery/Scheduling:根据队列优先级和CPU状态进行调度。
- Accelerator:提供加解密和压缩/解压缩等硬件功能。
- Egress queueing:在出口上根据QOS等级进行调度。
- Post processing:后期报文处理释放缓存。
- Packet output:从硬件上发送出去。
原文链接:https://tonydeng.github.io/sdn-handbook/dpdk/forwarding.html