Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
UDBP(4)		       FreeBSD Kernel Interfaces Manual		       UDBP(4)

     udbp -- USB Double	Bulk Pipe driver

     To	compile	this driver into the kernel, place the following line in your
     kernel configuration file:

	   device udbp

     Alternatively, to load the	driver as a module at boot time, place the
     following line in loader.conf(5):


     The udbp driver provides support for host-to-host cables that contain at
     least two bulk pipes (one for each	direction).  This typically includes
     cables branded for	use with Windows USB Easy Transfer, and	many cables
     based on the Prolific PL2xx1 series of USB	bridge chips.  A useful	(but
     non-comprehensive)	list of	compatible USB host cables is listed in	the
     SEE ALSO section below.

     It	requires netgraph(4) to	be available.  This can	be done	either by
     adding options NETGRAPH to	your kernel configuration file,	or alterna-
     tively loading netgraph(4)	as a module, either from /boot/loader.conf or
     from the command line, before the udbp module.

	   options NETGRAPH
	   device udbp

     Add the udbp driver to the	kernel.

	   kldload netgraph
	   kldload udbp

     Load the netgraph(4) module and then the udbp driver.

	   ngctl mkpeer	udbp0: eiface data ether
	   ifconfig ngeth0 ether aa:dd:xx:xx:xx
	   ifconfig ngeth0 inet	169.254.x.x/16

     Create a new Ethernet network interface node and connect its ether	hook
     to	the data hook of the udbp driver.

     This enables FreeBSD to communicate with a	Linux peer (e.g. using the
     plusb driver).  The Linux node should be configured to prefer link-local
     IPv4 addresses (e.g. using	Network	Manager	in Debian and Red Hat derived

     Whilst both FreeBSD and Linux are able to interoperate by loosely follow-
     ing CDC EEM 1.0 in	their behaviour, neither implementation	has been ex-
     pressly designed to follow	its specification.

     netgraph(4), ng_eiface(4),	ohci(4), uhci(4), usb(4), ngctl(8)

     Universal Serial Bus: Communications Class	Subclass Specification for
     Ethernet Emulation	Model Devices, USB Implementers	Forum, Inc., Revision
     February 2, 2005.

     Total Commander: Supported	cables for USB cable connection, Ghisler
     Software GmbH.,

     The point-to-point	nature and additional latency of USB host-host links
     makes them	unsuitable as a	"drop-in" replacement for an Ethernet LAN; for
     a USB 3.0 SuperSpeed cable, latency is comparable to 100BaseTX Ethernet
     (but often	worse),	with throughput	comparable to 2.5GBASE-T.

     However, their energy efficiency makes them attractive for	embedded ap-
     plications.  A Plugable PL27A1 cable claims 24mA of USB3 bus power, as
     compared to 150mA for a typical USB 3.0 to	Gigabit	Ethernet interface.

     The udbp driver first appeared in FreeBSD 5.0.

     The udbp driver does not support the special packets described in section
     5.1 of the	CDC EEM	specification.

     The udbp driver was written by Doug Ambrisko <>,
     Julian Elischer <> and Nick Hibma

     This manual page was written by Nick Hibma	<> and up-
     dated by Bruce Simpson <>.

FreeBSD	13.0		       October 20, 2017			  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help