📑 Table of Contents

netgraph is the graph based kernel networking subsystem of FreeBSD since 3.4 and DragonFly BSD since the fork from FreeBSD.[1] Netgraph provides support for L2TP, PPTP, ATM, Bluetooth using a modular set of nodes that are the graph.

Netgraph has also been ported on other Operating Systems:

  • NetBSD kernel 1.5V[2] (not integrated into mainline kernel)
  • Linux kernel 2.4 and 2.6 by 6WIND (Commercial closed source port)
  • Linux kernel 3.0 by LANA

History

edit

Netgraph was originally designed and implemented at Whistle Communications by Julian Elischer and Archie Cobbs for the Whistle InterJet small office router product. The purpose of the project was to create a flexible framework for implementing new networking protocols. Key requirements included the ability to prototype with user-space programs while still retaining the ability to interact with data flows normally hidden within the kernel.

References

edit
  1. ^ "netgraph.4". Super User's BSD Cross Reference. DragonFly BSD. 2014-12-12. Retrieved 2019-03-04.
  2. ^ Barnim Dzwillo, tech-net mailing list, 2001
edit

📚 Artikel Terkait di Wikipedia

Matthew Dillon

Firewalls, networking 802.11 drivers ALTQ Bluetooth BPF CARP ipfw NDIS netgraph PF Subsystems busdma DPorts ioctl kqueue moused OpenPAM sysctl hw.sensors

Bluetooth

FreeBSD has included Bluetooth since its v5.0 release, implemented through netgraph. NetBSD has included Bluetooth since its v4.0 release. Its Bluetooth stack

FreeBSD

Linuxulator (ELF) 3.x 16 October 1998 Initial SMP; CAM SCSI; initial USB; PAM; Netgraph 4.x 14 March 2000 31 January 2007 IPv6 and IPsec (KAME); OpenSSH in base;

Bluetooth stack

BSD § 1.12. A netgraph-based implementation from FreeBSD has also been available in the tree since 2008, dating to an import of Netgraph from the FreeBSD

DragonFly BSD

Firewalls, networking 802.11 drivers ALTQ Bluetooth BPF CARP ipfw NDIS netgraph PF Subsystems busdma DPorts ioctl kqueue moused OpenPAM sysctl hw.sensors

NetFlow

OpenBSD v5, v9, IPFIX Software like fprobe, ipt-netflow, pflow, flowd, Netgraph ng_netflow or softflowd IPv6 support depend on the software used VMware

Teredo tunneling

for Linux, *BSD, and Mac OS X, ng_teredo is a relay and server based on netgraph for FreeBSD from the LIP6 University and 6WIND.[citation needed] NICI-Teredo

Comparison of operating system kernels

Yes ? Yes ? ? ? ? ? Yes gif ? ? ? FreeBSD kernel Legacy kernel PPP and netgraph-based kernel PPP Yes Yes Yes ? ? ? ? ? Yes Yes gif ? ? Yes Linux kernel