-- MIB file created 16-Dec-2009 19:27:47, by -- SMICng version 2.2.11-beta(PRO)(Solaris), January 20, 2001. Enterprise key cisco.com CISCO-VIRTUAL-NIC-MIB DEFINITIONS ::= BEGIN -- From file: "CISCO-VIRTUAL-NIC-MIB.my" -- Compile options "4 7 F H N O W 03 06 0B 0G 0N 0T" IMPORTS MacAddress FROM SNMPv2-TC-v1 InterfaceIndex FROM IF-MIB SnmpAdminString FROM SNMP-FRAMEWORK-MIB InetAddressType, InetAddress FROM INET-ADDRESS-MIB ciscoMgmt FROM CISCO-SMI Gauge FROM RFC1155-SMI OBJECT-TYPE FROM RFC-1212; ciscoVirtualNicMIB OBJECT IDENTIFIER ::= { ciscoMgmt 710 } -- MODULE-IDENTITY -- LastUpdated -- 200910260000Z -- OrgName -- Cisco Systems, Inc. -- ContactInfo -- Cisco Systems -- Customer Service -- -- Postal: 170 West Tasman Drive -- San Jose, CA 95134 -- USA -- -- Tel: +1 800 553-NETS -- -- E-mail: cs-lan-switch-snmp@cisco.com -- Descr -- This MIB module defines MIB objects which provide -- mechanisms to manage the parameters used by or -- related to Virtual NIC. -- -- Virtual switch extends across one or more -- virtualization servers which host the VM instances. -- Each virtualization server is represented as a line -- card module and is assigned to a unique slot in -- the virtual chassis. -- -- All the ports on the virtual switch which can be -- hooked up to VM VNICs or to special hypervisor ports -- (e.g. vmk or vswif ports) are represented as virtual -- ethernet interfaces. -- -- Virtual ethernet interfaces(veths) represent -- the switching ports on the virtual switch which -- provide networking connectivity to virtual packet -- based interfaces such as the Virtual NIC (VNIC) -- interfaces defined on a Virtual Machine (VM). -- -- These interfaces are configurable and provide -- operational information to the network administrator. -- -- The assignment of virtual ethernet interface ports -- to a VM does not change when the VM is migrated. -- -- Glossary: -- -- APC - Asymmetric Port Channel -- -- DVS - Distributed Virtual switch -- -- NIC - Network Interface Card -- -- NIV - Network interface virtualization -- -- PCI - Peripheral Component Interconnect -- -- VEM - Virtual Ethernet Module -- -- VNIC - Virtual Network Interface Card -- -- VSM - Virtual Supervisor Module -- -- VM - Virtual Machine -- -- VMK - Virtual Machine Kernel -- -- VMKNIC - Virtual Machine Kernel Network Interface Card -- -- VSWIF - a virtual management port on hosts running -- VMware ESX. -- -- UUID - Universally Unique identifier -- -- connectee - Entity connected to a system using veth. -- eg: Virtual machine -- -- System Diagram : -- ************** -- * VSM * -- ************** -- ' ' -- ' ' -- ' ' -- ' ' -- ******** ******** -- * VEM * * VEM * -- ******** ******** -- ' ' ' -- ' ' ' -- ****** ****** ****** -- * VM * * VM * * VM * -- ****** ****** ****** -- RevDate -- 200910260000Z -- RevDescr -- Initial version of this MIB module. ciscoVirtualNicMIBNotifs OBJECT IDENTIFIER ::= { ciscoVirtualNicMIB 0 } ciscoVirtualNicMIBObjects OBJECT IDENTIFIER ::= { ciscoVirtualNicMIB 1 } ciscoVirtualNicMIBConformance OBJECT IDENTIFIER ::= { ciscoVirtualNicMIB 2 } cvnInterfaceObjects OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBObjects 1 } cvnConnecteeObjects OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBObjects 2 } ciscoVirtualNicMIBCompliances OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBConformance 1 } ciscoVirtualNicMIBGroups OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBConformance 2 } cvnVethIfTable OBJECT-TYPE SYNTAX SEQUENCE OF CvnVethIfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of virtual ethernet interfaces managed by VSM." ::= { cvnInterfaceObjects 1 } cvnVethIfEntry OBJECT-TYPE SYNTAX CvnVethIfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing management information for a particular virtual ethernet interface. Entries are created by the system when virtual Ethernet interfaces are registered to VSM. Entries are removed when virtual Ethernet interfaces are removed from VSM." INDEX { cvnVethInterface } ::= { cvnVethIfTable 1 } CvnVethIfEntry ::= SEQUENCE { cvnVethInterface InterfaceIndex, cvnVethAdapter SnmpAdminString, cvnVethOwner SnmpAdminString, cvnVethHostID Gauge, cvnVethHostAddrType InetAddressType, cvnVethHostAddr InetAddress, cvnVethPortProfileUsed SnmpAdminString, cvnVethIfProfileAlias SnmpAdminString, cvnVethIfAdditionalState INTEGER, cvnVethStateReason SnmpAdminString } cvnVethInterface OBJECT-TYPE SYNTAX InterfaceIndex -- Rsyntax INTEGER(1..2147483647) ACCESS not-accessible STATUS mandatory DESCRIPTION "The value of ifIndex for the virtual ethernet interface." ::= { cvnVethIfEntry 1 } cvnVethAdapter OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the network adapter used by virtual ethernet interface port. This object contains the Network Adapter ID if Virtual Machine is attached to VNIC. This object contains VMK ID if the Virtual Machine is attached to VMKNIC. This object contains value of 'vswif' if the Virtual Machine is attached to VSWIF." ::= { cvnVethIfEntry 2 } cvnVethOwner OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The name of the Virtual Machine that owns this virtual ethernet interface. When a Virtual Machine attaches to one of the port in physical server via this virtual ethernet interface, this VM will be considered as the owner of this virtual ethernet interface. When Virtual Machine moves from one host to another, its virtual ethernet interface remains unchanged." ::= { cvnVethIfEntry 3 } cvnVethHostID OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "A unique identifier, assigned by the system, of the registered VEM. A VEM is registered and host a virtual ethernet interface when a Virtual Machine attaches to such VEM by using virtual ethernet interface. A unique identifier, logical module number, is assigned for every VEM. This object contains value of zero if VEM is directly attached to the switch." ::= { cvnVethIfEntry 4 } cvnVethHostAddrType OBJECT-TYPE SYNTAX InetAddressType -- Rsyntax INTEGER { -- ?? enum value of zero may cause problems -- unknown(0), -- ipv4(1), -- ipv6(2), -- ipv4z(3), -- ipv6z(4), -- dns(16) -- } ACCESS read-only STATUS mandatory DESCRIPTION "The type of Internet address of the VEM which hosts the VM." ::= { cvnVethIfEntry 5 } cvnVethHostAddr OBJECT-TYPE SYNTAX InetAddress -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The Internet address of the VEM which hosts the VM. The type of this address is determined by the value of the cvnVethHostAddrType object. This object also indicates the management address of the VEM. Value of this object may be changed when virtual ethernet interface moves from one VEM to another VEM." ::= { cvnVethIfEntry 6 } cvnVethPortProfileUsed OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The name of port profile which has been applied to the current virtual ethernet interface. Port Profile contains a set of configuration parameters. For example, switchport mode, channel group no., channel group mode, security policy. Port profile is assigned during the registration of virtual ethernet interface." ::= { cvnVethIfEntry 7 } cvnVethIfProfileAlias OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The profile alias as seen in external virtualization server for the profile used by this virtual ethernet interface." ::= { cvnVethIfEntry 8 } cvnVethIfAdditionalState OBJECT-TYPE SYNTAX INTEGER { none(1), participating(2), suspended(3), errDisabled(4), nonParticipating(5) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the additional state of the virtual ethernet interface. none - no additional state. participating - interface is up and participating. Virtual machine is currently connected to system using this interface. suspended - interface is down and has been suspended. errDisabled - interface is down due to error disabled. nonParticipating - interface is up but not participating." ::= { cvnVethIfEntry 9 } cvnVethStateReason OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the reason for the additional state specified in cvnVethIfAdditionalState." ::= { cvnVethIfEntry 10 } cvnPinningTable OBJECT-TYPE SYNTAX SEQUENCE OF CvnPinningEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of virtual ethernet interfaces which supports pinning functionality in VSM. Pinning is a mechanism of directing traffic to or from a interface through a particular interface in a switch. By default, system use load balancing algorithm to pick the best possible physical interface automatically. However, user may use pinning functionality to instrument the finite control on the traffic flow between virtual ethernet interfaces and actual physical interfaces in VSM. For example, user may want to configure that packets from a particular virtual ethernet interface always go out through first interface in the port channel irrespective of load balancing policy on the switch. In order to achieve this, user can pin the virtual ethernet interface to first interface of the switch." ::= { cvnInterfaceObjects 2 } cvnPinningEntry OBJECT-TYPE SYNTAX CvnPinningEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing pinning management information for a particular virtual ethernet interface. Entry is created by the system when a virtual Ethernet interface with pinning functionality is registered to VSM. Entry is removed when a virtual Ethernet interface with pinning functionality is removed from VSM." INDEX { cvnVethInterface } ::= { cvnPinningTable 1 } CvnPinningEntry ::= SEQUENCE { cvnPinnedSubGrpId INTEGER } cvnPinnedSubGrpId OBJECT-TYPE SYNTAX INTEGER(-1..2147483647) ACCESS read-write STATUS mandatory DESCRIPTION "This object indicates the sub-group ID to which virtual ethernet interface is pinned. This object returns negative vlaue (-1) if subgroup id is not assigned." ::= { cvnPinningEntry 1 } cvnConnecteeTable OBJECT-TYPE SYNTAX SEQUENCE OF CvnConnecteeEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of connectees which are currently attached to virtual ethernet interfaces. Virtual machine connects to a physical entity using a virtual ethernet interface. In this scenario the Virtual Machine is called connectee, physical entity is called host. Whenever a Virtual Machine is connected using virtual ethernet interface we have mapping between physical and virtual interfaces. This object gives the mapping of all virtual ehternet interfaces to their corresponding physical entities." ::= { cvnConnecteeObjects 1 } cvnConnecteeEntry OBJECT-TYPE SYNTAX CvnConnecteeEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing management information for a particular connectee. Entry is created when a connectee connects to VSM. Entry is deleted when a connectee has been disconnected." INDEX { cvnVethInterface } ::= { cvnConnecteeTable 1 } CvnConnecteeEntry ::= SEQUENCE { cvnConnecteeAttachType INTEGER, cvnDVSPort Gauge, cvnConnecteeName SnmpAdminString, cvnConnecteeUuid SnmpAdminString, cvnConnecteeType INTEGER, cvnConnecteeMac MacAddress, cvnConnecteeDeviceName SnmpAdminString, cvnConnecteeDeviceType INTEGER } cvnConnecteeAttachType OBJECT-TYPE SYNTAX INTEGER { none(1), vem(2), niv(3) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates how virtual ethernet interface is attached to this system. none - virtual ethernet interface is not participating. vem - Always a dynamic attachment. For this type of attachment switching is done by host at software layer. niv - A fixed or dynamic attachment. For this type of attachment switching is done in asics" ::= { cvnConnecteeEntry 1 } cvnDVSPort OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the port of DVS to which virtual ethernet interface is attached." ::= { cvnConnecteeEntry 2 } cvnConnecteeName OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the name of the connectee attached to virtual ethernet interface. For example it will return name of virtual machine or host connected to the system" ::= { cvnConnecteeEntry 3 } cvnConnecteeUuid OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the UUID of the connectee attached to this virtual ethernet interface." ::= { cvnConnecteeEntry 4 } cvnConnecteeType OBJECT-TYPE SYNTAX INTEGER { unknown(1), vmwareVm(2), vmwareHost(3) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the type of connectee attached to this virtual ethernet interface. Connectee type can be host, Virtual Machine from different vendors etc. unknown - The type of connectee is unknown. vmwareVm - Connectee is a Virtual Machine vmwareHost - Connectee is a host" ::= { cvnConnecteeEntry 5 } cvnConnecteeMac OBJECT-TYPE SYNTAX MacAddress -- Rsyntax OCTET STRING(SIZE(6)) ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the MAC address of the connectee." ::= { cvnConnecteeEntry 6 } cvnConnecteeDeviceName OBJECT-TYPE SYNTAX SnmpAdminString -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the device ID or port ID of the connectee to which virtual ethernet interface is attached to." ::= { cvnConnecteeEntry 7 } cvnConnecteeDeviceType OBJECT-TYPE SYNTAX INTEGER { unknown(1), pnic(2), vnic(3), vswif(4), vmknic(5) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the type of connectee device attached to this virtual ethernet interface. Connectee Device type can be VMKNIC, VSWIF,VNIC etc. unknown - The device type is none of followings. pnic - Physical NIC vnic - Virtual NIC vswif - Virtual Switch Interface vmknic - Virtual machine kernel NIC" ::= { cvnConnecteeEntry 8 } cvnVethGroup OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBGroups 1 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- A collection of objects providing the virtual -- ethernet interface management information on the device. -- objects -- cvnVethAdapter, cvnVethOwner, cvnVethHostID, -- cvnVethHostAddrType, cvnVethHostAddr, cvnVethPortProfileUsed, -- cvnVethIfProfileAlias, cvnVethIfAdditionalState, -- cvnVethStateReason cvnPinningGroup OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBGroups 2 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- A collection of objects providing management -- information of pinning functionality. -- objects -- cvnPinnedSubGrpId cvnConnecteeGroup OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBGroups 3 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- A collection of objects providing management -- information of connectee. -- objects -- cvnConnecteeAttachType, cvnDVSPort, cvnConnecteeName, -- cvnConnecteeUuid, cvnConnecteeType, cvnConnecteeMac, -- cvnConnecteeDeviceName, cvnConnecteeDeviceType virtualNicMIBCompliance OBJECT IDENTIFIER ::= { ciscoVirtualNicMIBCompliances 1 } -- MODULE-COMPLIANCE -- Status -- mandatory -- Descr -- The compliance statement for entities which -- implement the CISCO-VIRTUAL-NIC-MIB. -- Module -- >>current<< -- MandGroup -- cvnVethGroup -- OptGroup -- cvnPinningGroup -- OptGroup -- cvnConnecteeGroup -- ObjVar -- cvnPinnedSubGrpId END