vlan(4)
NAME
vlan - IEEE 802.1Q VLAN network interface
SYNOPSIS
To compile this driver into the kernel, place the following lines in your kernel configuration file: device miibus device vlan Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): if_vlan_load="YES"
DESCRIPTION
- The vlan driver demultiplexes frames tagged according to the
- IEEE 802.1Q
standard into logical vlan network interfaces, which allows - routing/bridging between multiple VLANs through a single switch
- trunk port.
- Each vlan interface is created at runtime using interface
- cloning. This
is most easily done with the ifconfig(8) create command or - using the
cloned_interfaces variable in rc.conf(5). - To function, a vlan interface must be assigned a parent in
- terface and
numeric VLAN tag using ifconfig(8). A single parent can be - assigned to
multiple vlan interfaces provided they have different tags. - The parent
interface is likely to be an Ethernet card connected to a - properly configured switch port. The VLAN tag should match one of those
- set up in
the switched network.
HARDWARE
- The vlan driver supports efficient operation over parent in
- terfaces that
can provide help in processing VLANs. Such interfaces are - automatically
recognized by their capabilities. Depending on the level of - sophistication found in a physical interface, it may do full VLAN pro
- cessing or
just be able to receive and transmit frames exceeding the - maximum Ethernet frame size by the length of a 802.1Q header. The capa
- bilities may be
user-controlled by the respective parameters to ifconfig(8), - vlanhwtag
and vlanmtu. However, a physical interface is not obliged - to react to
them: It may have either capability enabled permanently - without a way to
turn it off. The whole issue is very specific to a particu - lar device and
its driver. - By now, the list of physical interfaces able of full VLAN
- processing in
the hardware is limited to the following devices: bge(4), - em(4), ixgb(4),
nge(4), re(4), ti(4), txp(4), and vge(4). - The rest of the Ethernet interfaces can run VLANs using
- software emulation in the vlan driver. However, most of them lack the ca
- pability of
transmitting and receiving oversized frames. Assigning such - an interface
as the parent to vlan will result in a reduced MTU on the - corresponding
vlan interfaces. In the modern Internet, this is likely to - cause tcp(4)
connectivity problems due to massive, inadequate icmp(4) - filtering that
breaks the Path MTU Discovery mechanism. - The interfaces that support oversized frames are as follows:
bfe(4) supports long frames for vlan natively.- dc(4) supports long frames for vlan natively.
- de(4) requires defining BIG_PACKET in the
/usr/src/sys/pci/if_de.c source file andrebuilding the
kernel or module. The hack works only forthe 21041,
21140, and 21140A chips. - fxp(4) supports long frames for vlan natively.
- gem(4) supports long frames for vlan natively.
- hme(4) supports long frames for vlan natively.
- le(4) supports long frames for vlan natively.
- rl(4) supports long frames for vlan natively.
- sis(4) supports long frames for vlan natively.
- sk(4) supports long frames for vlan natively.
- ste(4) supports long frames for vlan natively.
- tl(4) has support for long frames.
- tx(4) supports long frames for vlan natively.
- xl(4) supports long frames only if the card is
- built on a
- newer chip (Cyclone and above).
- The vlan driver automatically recognizes devices that na
- tively support
oversized frames for vlan use and calculates the appropriate - frame MTU
based on the capabilities of the parent interface. The oth - er interfaces
listed above can handle oversized frames, but they do not - advertise this
ability of theirs. The MTU setting on vlan can be corrected - manually if
used in conjunction with such parent interface.
SEE ALSO
kqueue(2), miibus(4), ifconfig(8)
BUGS
No 802.1Q features except VLAN tagging are implemented.