# Packages
Package channel provides the implemention of channel-based data-link layer endpoints.
Package fdbased provides the implemention of data-link layer endpoints backed by boundary-preserving file descriptors (e.g., TUN devices, seqpacket/datagram sockets).
Package loopback provides the implemention of loopback data-link layer endpoints.
Package muxed provides a muxed link endpoints.
Package rawfile contains utilities for using the netstack with raw host files on Linux hosts.
Package sharedmem provides the implemention of data-link layer endpoints backed by shared memory.
Package sniffer provides the implementation of data-link layer endpoints that wrap another endpoint and logs inbound and outbound packets.
Package tun contains methods to open TAP and TUN devices.
Package waitable provides the implementation of data-link layer endpoints that wrap other endpoints, and can wait for inflight calls to WritePacket or DeliverNetworkPacket to finish (and new ones to be prevented).
Package wintun provides the implemention of data-link layer endpoints backed by boundary-preserving file descriptors (e.g., TUN devices, seqpacket/datagram sockets).