bionic (4) vale.4freebsd.gz

Provided by: freebsd-manpages_11.1-3_all bug

NAME

     vale — a very fast Virtual Local Ethernet using the netmap API

SYNOPSIS

     device netmap

DESCRIPTION

     vale is a feature of the netmap(4) module that implements multiple Virtual switches that can be used to
     interconnect netmap clients, including traffic sources and sinks, packet forwarders, userspace firewalls,
     and so on.

     vale is implemented completely in software, and is extremely fast.  On a modern machine it can move almost
     20 Million packets per second (Mpps) per core with small frames, and about 70 Gbit/s with 1500 byte frames.

OPERATION

     vale dynamically creates switches and ports as clients connect to it using the netmap(4) API.

     vale ports are named vale[bdg:][port] where vale is the prefix indicating a VALE switch rather than a
     standard interface, bdg indicates a specific switch (the colon is a separator), and port indicates a port
     within the switch.  Bridge and port names are arbitrary strings, the only constraint being that the full
     name must fit within 16 characters.

     See netmap(4) for details on the API.

   LIMITS
     vale currently supports up to 4 switches, 16 ports per switch, with 1024 buffers per port.  These hard
     limits will be changed to sysctl variables in future releases.

SYSCTL VARIABLES

     vale uses the following sysctl variables to control operation:

     dev.netmap.bridge   The maximum number of packets processed internally in each iteration.  Defaults to
                         1024, use lower values to trade latency with throughput.

     dev.netmap.verbose  Set to non-zero values to enable in-kernel diagnostics.

EXAMPLES

     Create one switch, with a traffic generator connected to one port, and a netmap-enabled tcpdump instance on
     another port:

           tcpdump -ni vale-a:1 &
           pkt-gen  -i vale-a:0 -f tx &

     Create two switches, each connected to two qemu machines on different ports.

           qemu -net nic -net netmap,ifname=vale-1:a ... &
           qemu -net nic -net netmap,ifname=vale-1:b ... &
           qemu -net nic -net netmap,ifname=vale-2:c ... &
           qemu -net nic -net netmap,ifname=vale-2:d ... &

SEE ALSO

     netmap(4)

     http://info.iet.unipi.it/~luigi/vale/

     Luigi Rizzo, Giuseppe Lettieri: VALE, a switched ethernet for virtual machines, June 2012,
     http://info.iet.unipi.it/~luigi/vale/

AUTHORS

     The vale switch was designed and implemented in 2012 by Luigi Rizzo and Giuseppe Lettieri at the
     Universita` di Pisa.

     vale was funded by the European Commission within FP7 Projects CHANGE (257422) and OPENLAB (287581).