Network Interface Controller Drivers
- 1. Overview of Networking Drivers
- 2. Features Overview
- 2.1. Speed capabilities
- 2.2. Link status
- 2.3. Link status event
- 2.4. Removal event
- 2.5. Queue status event
- 2.6. Rx interrupt
- 2.7. Lock-free Tx queue
- 2.8. Free Tx mbuf on demand
- 2.9. Queue start/stop
- 2.10. MTU update
- 2.11. Jumbo frame
- 2.12. Scattered Rx
- 2.13. LRO
- 2.14. TSO
- 2.15. Promiscuous mode
- 2.16. Allmulticast mode
- 2.17. Unicast MAC filter
- 2.18. Multicast MAC filter
- 2.19. RSS hash
- 2.20. RSS key update
- 2.21. RSS reta update
- 2.22. VMDq
- 2.23. SR-IOV
- 2.24. DCB
- 2.25. VLAN filter
- 2.26. Ethertype filter
- 2.27. N-tuple filter
- 2.28. SYN filter
- 2.29. Tunnel filter
- 2.30. Flexible filter
- 2.31. Hash filter
- 2.32. Flow director
- 2.33. Flow control
- 2.34. Flow API
- 2.35. Rate limitation
- 2.36. Traffic mirroring
- 2.37. CRC offload
- 2.38. VLAN offload
- 2.39. QinQ offload
- 2.40. L3 checksum offload
- 2.41. L4 checksum offload
- 2.42. MACsec offload
- 2.43. Inner L3 checksum
- 2.44. Inner L4 checksum
- 2.45. Packet type parsing
- 2.46. Timesync
- 2.47. Rx descriptor status
- 2.48. Tx descriptor status
- 2.49. Basic stats
- 2.50. Extended stats
- 2.51. Stats per queue
- 2.52. FW version
- 2.53. EEPROM dump
- 2.54. Registers dump
- 2.55. LED
- 2.56. Multiprocess aware
- 2.57. BSD nic_uio
- 2.58. Linux UIO
- 2.59. Linux VFIO
- 2.60. Other kdrv
- 2.61. ARMv7
- 2.62. ARMv8
- 2.63. Power8
- 2.64. x86-32
- 2.65. x86-64
- 2.66. Usage doc
- 2.67. Design doc
- 2.68. Perf doc
- 2.69. Other dev ops not represented by a Feature
- 3. Compiling and testing a PMD for a NIC
- 4. ARK Poll Mode Driver
- 5. AVP Poll Mode Driver
- 6. BNX2X Poll Mode Driver
- 7. BNXT Poll Mode Driver
- 8. CXGBE Poll Mode Driver
- 9. DPAA2 Poll Mode Driver
- 10. Driver for VM Emulated Devices
- 11. ENA Poll Mode Driver
- 12. ENIC Poll Mode Driver
- 12.1. How to obtain ENIC PMD integrated DPDK
- 12.2. Configuration information
- 12.3. Flow director support
- 12.4. SR-IOV mode utilization
- 12.5. Generic Flow API support
- 12.6. Limitations
- 12.7. How to build the suite
- 12.8. Supported Cisco VIC adapters
- 12.9. Supported Operating Systems
- 12.10. Supported features
- 12.11. Known bugs and unsupported features in this release
- 12.12. Prerequisites
- 12.13. Additional Reference
- 12.14. Contact Information
- 13. FM10K Poll Mode Driver
- 14. I40E Poll Mode Driver
- 14.1. Features
- 14.2. Prerequisites
- 14.3. Pre-Installation Configuration
- 14.4. Driver compilation and testing
- 14.5. SR-IOV: Prerequisites and sample Application Notes
- 14.6. Sample Application Notes
- 14.7. Limitations or Known issues
- 14.7.1. MPLS packet classification on X710/XL710
- 14.7.2. 16 Byte Descriptor cannot be used on DPDK VF
- 14.7.3. Receive packets with Ethertype 0x88A8
- 14.7.4. Incorrect Rx statistics when packet is oversize
- 14.7.5. VF & TC max bandwidth setting
- 14.7.6. TC TX scheduling mode setting
- 14.7.7. VF performance is impacted by PCI extended tag setting
- 14.8. High Performance of Small Packets on 40G NIC
- 14.9. Example of getting best performance with l3fwd example
- 15. IXGBE Driver
- 16. I40E/IXGBE/IGB Virtual Function Driver
- 17. KNI Poll Mode Driver
- 18. LiquidIO VF Poll Mode Driver
- 19. MLX4 poll mode driver library
- 20. MLX5 poll mode driver
- 21. NFP poll mode driver library
- 22. QEDE Poll Mode Driver
- 23. Solarflare libefx-based Poll Mode Driver
- 24. SZEDATA2 poll mode driver library
- 25. Tun/Tap Poll Mode Driver
- 26. ThunderX NICVF Poll Mode Driver
- 27. Poll Mode Driver for Emulated Virtio NIC
- 28. Poll Mode Driver that wraps vhost library
- 29. Poll Mode Driver for Paravirtual VMXNET3 NIC
- 30. Libpcap and Ring Based Poll Mode Drivers
- 31. Fail-safe poll mode driver library
Figures
Fig. 16.2 Virtualization for a Single Port NIC in SR-IOV Mode
Fig. 16.3 Performance Benchmark Setup
Fig. 16.4 Fast Host-based Packet Processing
Fig. 16.5 Inter-VM Communication
Fig. 27.15 Host2VM Communication Example Using kni vhost Back End
Fig. 27.17 Host2VM Communication Example Using qemu vhost Back End
Fig. 29.1 Assigning a VMXNET3 interface to a VM using VMware vSphere Client