Libnet is a generic networking API that provides access to several protocols. It is not designed as a all in one solution to networking. Currently many features that are common in some network protocols are not available with Libnet, such as streaming via TCP/IP. We feel that Libnet should not provide specific features that are possible in other protocols. If we restrict Libnet to the minimal needed to communicate (datagram/packets) then this allows it to support more interfaces. 很好的学习linux网络变成的源码