diff --git a/doc/source/glossary.rst b/doc/source/glossary.rst new file mode 100644 index 00000000..c6e7e524 --- /dev/null +++ b/doc/source/glossary.rst @@ -0,0 +1,165 @@ +======== +Glossary +======== + +.. glossary:: + + Calico + + A virtual networking solution that uses IP routing (layer 3) to provide + connectivity in the form of a flat IP network instead of bridging and + tunneling. + + Refer to the `Calico documentation`__ for more information. + + __ http://docs.projectcalico.org + + Linux Bridge + + The native networking "backend" found in Linux. + + Refer to the `Linux Foundation wiki`__ for more information. + + __ https://wiki.linuxfoundation.org/networking/bridge + + Open vSwitch + + A software implementation of a :term:`virtual multilayer network switch + ` + + Refer to the `OVS documentation`__ for more information. + + __ http://docs.openvswitch.org + + VEB + Virtual Ethernet Bridge + + A virtual Ethernet switch that implmented in a virtualized server + environment. It is anything that mimics a traditional external layer 2 + (L2) switch or bridge for connecting VMs. Generally implemented as a + :term:`vSwitch`, though hardware-based VEBs using SR-IOV are possible. + + Refer to this `Virtual networking technologies brief`__ for more + information. + + __ http://cs.nyu.edu/courses/fall14/CSCI-GA.3033-010/Network/SDN.pdf + + vSwitch + Virtual Switch + + A software-based virtual switch that connects virtual NICs to other + virtual NICs and the broader physical network. + + Refer to this `presentation`__ for more information. + + __ http://cs.nyu.edu/courses/fall14/CSCI-GA.3033-010/Network/SDN.pdf + + VEPA + Virtual Ethernet Port Aggregator + + An approach to virtual networking where VM traffic is handled on the + physical network rather than by a virtual switch. Unlike :term:`VNTag`, + frames are not tagged and the switch will use a single port to handle all + :term:`VIFs ` for a host. + + The basis of the :term:`802.1Qbg` spec. + + Refer to this `presentation`__ for more information. + + __ http://www.ieee802.org/1/files/public/docs2009/new-hudson-vepa_summary-0509.pdf + + VN-Tag + VNTag + + An approach to virtual networking where an interface virtualizer (IV) is + used in place of a :term:`VEB` to connect multiple :term:`VIFs ` to a + single, external, IV-capable hardware bridge. Each VIF is tagged with a + unique ID (`vif_id`) which is used to route traffic through IVs, and VIFs + are then treated like any other interface. + + The basis of the :term:`802.1Qbh` and :term:`802.1Qbr` specs. + + Refer to this `Cisco presentation`__ for more information. + + __ https://learningnetwork.cisco.com/docs/DOC-27114 + + vhost + + An alternative to :term:`virtio` that allows a userspace process to share + *virtqueues* directly with the kernel, preventing the QEMU process from + becoming a bottleneck. + + vhost-user + + A variation of :term:`vhost` that operates entirely in userspace. This + allows processes operating in userspace, such as virtual switches, to + avoid the kernel entirely and maximize performance. + + Refer to the `QEMU documentation`__ for more information. + + __ https://github.com/qemu/qemu/blob/master/docs/specs/vhost-user.txt + + virtio + + A class of virtual device emulated by QEMU. Virtio devices have + *virtqueues* which can be used to share data from host to guest. + + Refer to the `libvirt Wiki`__ for more information. + + __ https://wiki.libvirt.org/page/Virtio + + virtio-net + + A network driver implementation based on virtio. Guests share *virtqueues* + with the QEMU process, which in turn receives this traffic and forwards it + to the host. + + Refer to the `KVM documentation`__ for more information. + + __ http://www.linux-kvm.org/page/Virtio + + VIF + + A virtual network interface. + + IEEE 802.1Q + 802.1Q + + A networking standard that supports virtual LANs (VLANs) on an Ethernet + network. + + Refer to the `IEEE spec`__ for more information. + + __ http://www.ieee802.org/1/pages/802.1Q.html + + IEEE 802.1Qbg + 802.1Qbg + + An amendment to the :term:`802.1Q` spec known as "Edge Virtual Bridging", + 802.1Qbg is an approach to networking where VM traffic is handled on the + physical network rather than by a virtual switch. Originally based on + :term:`VEPA`. + + Refer to the `IEEE spec`__ for more information. + + __ http://www.ieee802.org/1/pages/802.1bg.html + + IEEE 802.1Qbh + 802.1Qbh + + A withdrawn amendment to the :term:`802.1Q` spec known as "Bridge Port + Extensions", replaced by :term:`802.1Qbr` spec. + + Refer to the `IEEE spec`__ for more information. + + __ http://www.ieee802.org/1/pages/802.1bh.html + + IEEE 802.1Qbr + 802.1Qbr + + An amendment to the :term:`802.1Q` spec known as "Bridge Port Extensions", + + + Refer to the `IEEE spec`__ for more information. + + __ http://www.ieee802.org/1/pages/802.1br.html diff --git a/doc/source/index.rst b/doc/source/index.rst index b847d046..02c4f727 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -8,6 +8,7 @@ Contents: vif_types host_info + glossary Indices and tables ================== diff --git a/doc/source/vif_types.rst b/doc/source/vif_types.rst index 711368ab..9170cb40 100644 --- a/doc/source/vif_types.rst +++ b/doc/source/vif_types.rst @@ -41,11 +41,12 @@ VIFDirect This class provides a configuration where the guest is connected to a physical network device. The connection to the device may operate in one of a number of -different modes, VEPA (either 802.1qbg 802.1qbh), passthrough (exclusive -assignment of the host NIC) or bridge (ethernet layer bridging of traffic). The -passthrough mode would be used when there is a network device which needs to -have a MAC address or VLAN configuration. For passthrough of network devices -without MAC/VLAN configuration, the `VIFHostDevice` should be used instead. +different modes, :term:`VEPA` (either :term:`802.1qbg` or :term:`802.1qbh`), +passthrough (exclusive assignment of the host NIC) or bridge (ethernet layer +bridging of traffic). The passthrough mode would be used when there is a +network device which needs to have a MAC address or VLAN configuration. For +passthrough of network devices without MAC/VLAN configuration, the +`VIFHostDevice` should be used instead. VIFVHostUser ------------ @@ -53,14 +54,14 @@ VIFVHostUser This class provides another totally generic type of configuration, where the guest is exposing a UNIX socket for its control plane, allowing an external userspace service to provide the backend data plane via a mapped memory region. -The process must implement the virtio-net vhost protocol on this socket in -whatever means is most suitable. +The process must implement the :term:`virtio-net` vhost protocol on this socket +in whatever means is most suitable. VIFHostDevice ------------- This class provides a way to pass a physical device to the guest. Either an -entire physical device, or a SR-IOV PCI device virtual function, are permitted. +entire physical device, or an SR-IOV PCI device virtual function, are permitted. VIF port profile objects @@ -93,14 +94,14 @@ device supporting the 801.1Qbg spec. VIFPortProfileFPOpenVSwitch --------------------------- -This profile provides the metadata required to associate a fast path vhost-user -VIF with an Open vSwitch port. +This profile provides the metadata required to associate a fast path :term:`vhost-user` +VIF with an :term:`Open vSwitch` port. VIFPortProfileFPBridge ---------------------- This profile provides the metadata required to associate a fast path vhost-user -VIF with a Linux bridge port. +VIF with a :term:`Linux bridge` port. VIFPortProfileFPTap -------------------