Kernel Log - Coming in 3.7 (Part 2): Networking
by Thorsten Leemhuis
Linux now supports network address translation (NAT) for IPv6. Other new features include server-side support for Google's TCP Fast Open (TFO) acceleration trick and a tethering driver for the iPhone 5.
Kernel developers have merged support for network address translation (NAT) with IPv6 into Linux (1, 2 and others). A number of Linux developers have previously questioned the utility of doing so, since NAT is unnecessary with the larger address space offered by IPv6. With its much larger address space and other features, IPv6 renders many of the reasons why NAT was much used with IPv4 redundant.
Despite that, the developers have now merged this feature, because the specification for NAT with IPv6 avoids some of the problems which dogged the IPv4 solution and it turns out that there are some use cases in which NAT for IPv6 can indeed prove useful. Some users and institutions, for example, would like to use NAT to keep their internal network topology opaque. Companies that use multiple internet connections from a number of different providers to improve availability provide a further reason for supporting NAT on IPv6, as it makes it easier to switch between the different connections.
As in almost every kernel version, some drivers have been extended to support additional hardware: iPhone tethering driver ipheth now supports the iPhone 5 and Atheros' ath9k wireless driver now supports the AR9565 Wi-Fi chip (1, 2, 3, 4 and others).
The Broadcom fullmac driver brcmfmac has added support for the 43242 and 43143 USB wireless chips; in conjunction with hostap, the driver can now set hardware up as an access point (master mode). Intel's e1000e Ethernet driver now supports the network component offered by the low power (LP) version of the Lynx Point platform controller hub (PCH).
Current state of development
On Saturday, Linus Torvalds released the sixth release candidate of Linux 3.7 and mentioned he would go on vacation on Sunday. He said that "Things have continued to be pretty calm" and mentions that he plans to do an RC7 – "but considering how calm things have been, I suspect that's the last -rc. Unless something dramatic happens". So, if Torvalds sticks to his usual pace, a final release of 3.7 is likely to arrive at the end of November or in the first few days of December.
- Kernel developers have merged the server-side code for TCP Fast Open (TFO) (1, 2, 3 and others). Linux 3.6 already contains client-side support for this experimental TCP extension developed by Google, which seeks to accelerate HTTP connection handshaking by combining the first two steps in the three-way handshake normally employed by TCP.
- Also new is support for Virtual eXtensible Local Area Networking (VXLAN), a draft tunnelling protocol submitted to the Internet Engineering Task Force (IETF), which, according to the kernel documentation, is able to get around the 4096 limit for the number of VLANs.
- The Team driver now supports non-Ethernet hardware.
- The bonding driver supports IPv6 transmit hashing.
- The subsystem maintainer discusses a number of other changes in the network subsystem in his main git pull request email for Linux 3.7.