Kernel-Log – Was 3.1 bringt (1): Netzwerk
Seite 2: LAN, Staccato, Perlen
LAN
Die bei 2.6.39 aufgenommene Unterstützung für Ipset erhielt eine Reihe von Verbesserungen, um die vom Firewall-Code konsultierten Tabellen mit Filter-Informationen flexibler und einfacher nutzen zu können. So lassen sich nun Adressen und Interface-Namen als Paar mit eigenem Namen übergeben, was für Egress- oder Ingress-Filterung interessant ist; der Kernel kann kann zudem als IP-Bereiche übergebene Adressen automatisch in die korrekten Subnetz-Definitionen konvertieren.
Der experimentelle und standardmäßig ausgeschaltete Zero-Copy-TX-Support für Macvtap und Vhost-net soll die Netzwerkperformance beim Virtualisieren verbessern, da es die Kopiervorgänge für Netzwerkpakete eliminiert, die KVM-Gastsysteme verlassen. Die Unterstützung in Vhost-Net ist allerdings als experimentell gekennzeichnet und muss über die Modul-Option experimental_zcopytx aktiviert werden.
Staccato
- An der Mesh-Impementation BATMAN-adv (Better Approach To Mobile Ad-Hoc Networking - Advanced) gab es eine Reihe von Änderungen, welche die Performance, das Bekanntmachen von Clients und die Roaming-Unterstützung verbessern sollen.
- Der WLAN-802.11-Funk-Simulator-Treiber Mac80211_hwsim bietet nun Schnittellen, über die sich Userspace-Programme wie Wmediumd um das Senden und Empfangen von Netzwerkpaketen kümmern können.
- Der Broadcom-NetXtreme-II-Treiber bnx2x beherrscht ab Linux 3.1 auch den "Warpcore" genannten Ăśbertragungsmodus bei den Bausteine der Reihe 578xx.
- Zum Netzwerk-Code stößt ein Subsystem für Near Field Communication (NFC), das viele berührungslose Bezahlsysteme nutzen (Dokumentation, 1, 2, 3, 4).
- Der bei Linux 3.0 integrierte "Berkeley Packet Filter Just in Time Compiler" unterstĂĽtzt jetzt auch PPC64-Systeme.
- Der Netzwerk-Stack bietet nun eine "fanout" genannte Funktion, die via AF_PACKET aufgefangene Pakete an verschiedene Sockets verteilt; das ist fĂĽr Userland-Traffic-Analyse-Werkzeuge wie Suricata interessant (1, 2, 3).
- Einige weitere Änderungen am Netzwerk-Subsystem finden sich im nächsten Abschnitt und in den beiden Haupt-Git-Pull-Request von Subsystem-Verwalter David Miller (1, 2, 3).
Die kleinen Perlen
Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den "offiziellen" Kernel-Quellen auf Kernel.org. Der über diese Links angezeigten Commit-Kommentar und der darunter ausgegebene Patch liefern zahlreiche weitere Informationen zur jeweiligen Änderungen.
Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.
LAN
- [
   Â] add pci-id for DGE-530T - [
   2] be2net: support multiple TX queues - [
   5] bnx2x: 57712 parity handling - [
   Â] bnx2x: Add autogrEEEn support - [
   5] bnx2x: Add new MAC support for 578xx - [
   1] bnx2x: Add new PHY 54616s - [
   Â] bnx2x: Add new phy BCM8722 - [
   2] bnx2x: PFC support for 578xx - [
   Â] bnx2x: Update date to 2011/06/13 and version to 1.70.00-0 - [
   Â] e1000e: Add Jumbo Frame support to 82583 devices - [
   Â] igb: Add support of SerDes Forced mode for certain hardware - [
   1] ixgbe: add support for Dell CEM - [
   Â] myri10ge: update version - [
CÂ Â 4]Â myri_sbus: remove driver - [
CÂ N4]Â net: add Faraday FTGMAC100 Gigabit Ethernet driver - [
 DNÂ] net/fec: add device tree probe support - [
   9] New 7.0 FW: bnx2x, cnic, bnx2i, bnx2fc - [
   Â] qlcnic: add external loopback support - [
   1] qlcnic: multi protocol internal loopback support added. - [
   Â] r8169: Add support for D-Link 530T rev C1 (Kernel Bug 38862) - [
   Â] r8169: support RTL8111E-VL. - [
   Â] skbuff: skb supports zero-copy buffers - [
CÂ Â 1]Â skge: make support for old Genesis chips optional - [
CÂ Â Â]Â skge: update version - [
   Â] sky2: support for new Optima chipsets (EXPERIMENTAL) - [
   Â] sky2: version 1.29
WLAN
- [
   Â] ath9k_htc: Add device ID for Sony UWA-BR100 - [
CÂ Â Â]Â b43: add an option to register BROKEN bcma driver - [
  NÂ] b43: add bus device abstraction layer - [
CÂ Â Â]Â b43: add Kconfig option for compiling SSB driver - [
CÂ NÂ]Â b43: HT-PHY: add place for writing HT PHY support - [
CÂ NÂ]Â b43: LCN-PHY add place for new PHY support - [
   Â] bcma: enable support for 14e4:4357 (BCM43225) - [
   Â] iwlagn: add correct firmware name for 135 series - [
   Â] iwlagn: add module parameter to disable stuck queue watchdog timer - [
   1] iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state - [
   2] iwlagn: rewrite HW crypto - [
   Â] nl80211: advertise GTK rekey support, new triggers - [
   Â] rt2800usb: Add new device ID for Belkin - [
   Â] rt2x00: Add device ID for RT539F device. - [
   Â] rt2x00: Add new rt73 buffalo USB id - [
   Â] rt2x00: Add rt2870 device id for Dvico usb key - [
   2] wl12xx: Support routing FW logs to the host
Various
- [
   Â] ASIX: Add AX88772B USB ID - [
   Â] Bluetooth: Add enable_le module parameter - [
   Â] Bluetooth: Add LE SMP Cryptoolbox functions - [
   Â] Bluetooth: Add simple SMP pairing negotiation - [
   Â] Bluetooth: Add SMP confirmation checks methods - [
   Â] Bluetooth: Add support for LE Start Encryption - [
   Â] Bluetooth: Add support for Pairing features exchange - [
CÂ Â Â]Â Bluetooth: Add support for using the crypto subsystem - [
  NÂ] Bluetooth: Implement the first SMP commands - [
   Â] bonding: add min links parameter to 802.3ad - [
 D Â] bonding: document two undocumented options. - [
CÂ N3]Â caif: Add CAIF HSI Link layer driver - [
   Â] Disable router anycast address for /127 prefixes - [
   2] gianfar v5: implement nfc - [
   Â] inetpeer: lower false sharing effect - [
 D 1] inetpeer: remove unused list - [
   Â] net: add 802.1ad / 802.1ah / QinQ ethertypes - [
 DNÂ] net: Add documentation for netdev features handling - [
 DN2] net: add Documentation/networking/scaling.txt - [
   Â] net: add external loopback test in ethtool self test - [
  N2] net: Compute protocol sequence numbers and fragment IDs using MD5. - [
 D Â] net: doc: fix compile warning of no format arguments in ifenslave.c - [
   1] netfilter: ipset: hash:net,iface fixed to handle overlapping nets behind different interfaces - [
   3] netfilter: ipset: options and flags support added to the kernel API - [
CÂ N4]Â NFC: pn533: add NXP pn533 nfc device driver - [
   Â] sctp: Add sysctl support for Auto-ASCONF. - [
   Â] snmp: reduce percpu needs by 50% - [
 D Â] stmmac: improve and up-to-date the documentation - [
   1] tcp: RFC2988bis + taking RTT sample from 3WHS for the passive open side - [
 D Â] Update description of net.sctp.sctp_rmem and net.sctp.sctp_wmem tunables - [
 D Â] Update documented default values for various TCP/UDP tunables
Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in den vorangegangenen Kernel-Logs auf heise open. Neue Ausgaben des Kernel-Logs werden auf den Identi.ca- und Twitter-Konten "@kernellog" erwähnt; die englischen, bei den Kollegen von "The H" erscheinenden Übersetzungen auf den Identi.ca- und Twitter-Konten "@kernellog2". Gelegentlich zwitschert der Autor des Kernel-Logs unabhängig davon über einige Kernel-Log-Themen bei Identi.ca und Twitter als "@kernellogauthor". (thl). (thl)