Summary
In this chapter, we have looked at the kernel network filtering KPIs as well as how to implement a driver for an Ethernet controller. Some key points are as follows:
- The kernel network support is split into two parts: the BSD layer that implements support for all protocols and network services such as firewalls, and the I/O Kit, which provides facilities for writing drivers for network hardware.
- The kernel filtering KPI allows one to filter and manipulate network packets at various levels, including the socket, IP, and interface levels.
- The most important data-structure of the kernel network subsystem is the
mbuf structure used to store network packets or other related data. In kernel extensions, mbufs can be manipulated using the opaque ...