Go to main content

Managing Network Virtualization and Network Resources in Oracle® Solaris 11.3

Exit Print View

Updated: April 2018
 
 

Exchanging VNIC Information by Using VDP

VNIC (VSI) information is exchanged between the system (station) and the external switch (bridge) by using the VSI discovery and configuration protocol (VDP). The VDP type-length value (TLV) units are exchanged by using the Edge Control Protocol (ECP), which reliably transmits the VDP packets between the peers. The VDP TLV units are exchanged when you create or delete a VNIC.

Implementation of VDP

The following EVB components enable the system to advertise the VNIC (VSI) information to the external switch:

  • A VSI profile consists of link properties that have been configured for the specific VNIC. Therefore, a system can have as many VSI profiles as there are configured VNICs.

  • The VSI identifier uniquely identifies a VSI instance. In Oracle Solaris, this VSI instance is the MAC address of the VNIC (VSI). The VSI Type ID and VSI Version identify the profile within a given VSI Manager ID.

  • The VSI Manager manages multiple VSI profiles on the system by mapping the VSI Type ID - VSI Version with a specific set of VNIC properties. Oracle Solaris has defined a default VSI Manager, oracle_v1, as a 3-byte encoding. This 3-byte encoding is used as the VSI Type ID by an Oracle Solaris host in the VDP packet.

  • A VSI Manager ID identifies the VSI Manager that is relevant to a specific VSI Type ID - VSI Version pair. The VSI Manager ID is represented as an IPv6 address. Oracle Solaris has defined a default VSI Manager ID, ORACLE_VSIMGR_V1.


Note -  Currently, there are no defined standards for defining a VSI profile and its specific properties. The definition of VSI types is vendor-specific and is closely linked to a VSI Manager ID.

    This oracle_v1 encoding supports the following properties:

  • Bandwidth limit

  • Bandwidth share

  • Link speed of the underlying link

  • Maximum transmission unit (MTU) of the VNIC

In Oracle Solaris, the system encodes the link information by using the oracle_v1 encoding and then transmits the information to the external switch. After the information is received by the switch, it decodes the encoded information by using the same oracle_v1 encoding.

    By default, an Oracle Solaris host sends the following elements to the external switch:

  • Oracle VSI Manager – oracle_v1

  • VSI Type ID – VNIC properties encoded by using oracle_v1 encoding

  • VSI Version – Always 0

    In Oracle Solaris, the VNIC information exchange mechanism is as follows:

  1. The external switch is configured to support the Oracle VSI Manager, oracle_v1.

  2. The external switch uses oracle_v1 to determine the properties encoded in the VSI Type ID.

  3. The external switch applies the property configuration on packets for that VNIC.

An Oracle organization-specific OUI TLV unit follows the VSI Manager ID TLV to indicate that it is the Oracle-specific VSI Manager ID. The absence of the Oracle specific TLV unit in the response from the switch indicates to the Oracle Solaris host that the switch does not support Oracle VSI Manager (encodings). Oracle Switch ES1-24 supports the Oracle VSI Manager, oracle_v1. For more information about configuration of EVB on Oracle Switch ES1-24, see Sun Ethernet Fabric Operating System, EVB Administration Guide.


Note -  In addition to supporting the VDP and ECP protocols, to interoperate with Oracle Solaris system, external switches must also support ORACLE_VSIMGR_V1, which is the default Oracle VSI Manager ID, and the Oracle organizationally unique identifier (OUI) TLV (subtype VDP_ORACLEOUI_VSIMGR_SUBTYPE, which is used to carry the encoding information).

How VDP Exchanges VNIC Information

A VNIC information exchange works as follows:

The system sends an association request (ASSOC) to the external switch by specifying the VNIC and its associated profile. The external switch responds to the association request with a success or failure response. The system can subsequently send a disassociation request (DEASSOC) to the external switch, which removes the association for a VNIC. For information about how to display and obtain the state of the request for a VNIC, see Displaying VDP and ECP State and Statistics.

    When you create a VNIC, the VDP exchange occurs as follows:

  1. A VDP association (ASSOC) request TLV unit containing the information about the VNIC is sent to the external switch by the system.

  2. The external switch receives the VDP (ASSOC) TLV unit and obtains the VNIC information by using the VSI Type ID, VSI Version, and VSI Manager ID.

  3. The external switch applies the property configuration for the VNIC.

  4. The external switch sends a VDP association (ASSOC) response TLV unit to the system stating that the external switch has configured properties for the VNIC.

    When you delete a VNIC, VDP exchange occurs as follows:

  1. A VDP disassociation (DEASSOC) request TLV unit containing the VSI ID is sent to the external switch by the system.

  2. The external switch receives the VDP (DEASSOC) TLV unit and obtains the VSI ID of the VSI that is deleted.

  3. The external switch removes the configuration for the deleted VNIC.

  4. The external switch sends a VDP disassociation (DEASSOC) response TLV unit to the system.


Note -  In Oracle Solaris, the VDP supports only ASSOC and DEASSOC VDP requests.