3Com B.Dolnik Internet Draft 3Com Corporation Document: draft-dolnik-usb-mib-01.txt March 2000 Category: Experimental Definitions of Managed Objects for the Universal Serial Bus (USB) Interface Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026 [18]. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it defines objects for managing Universal Serial Bus (USB) interfaces. Table of Contents 1. Conventions used in this document..................................1 2. The SNMP Management Framework......................................2 3. Glossary...........................................................2 4. Overview...........................................................3 4.1. Structure of the MIB.............................................3 4.2. Relationship to the Interfaces MIB...............................3 5. Definitions........................................................4 6. Security Considerations...........................................17 7. References........................................................17 8. Author's Addresses................................................19 9. Full Copyright Statement..........................................20 1. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC-2119 [19]. B.Dolnik Experimental 1 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 2. The SNMP Management Framework The SNMP Management Framework presently consists of five major components: o An overall architecture, described in RFC 2571 [1]. o Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and described in STD 16, RFC 1155 [2], STD 16, RFC 1212 [3] and RFC 1215 [4]. The second version, called SMIv2, is described in STD 58, RFC 2578 [5], STD 58, RFC 2579 [6] and STD 58, RFC 2580 [7]. o Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and described in STD 15, RFC 1157 [8]. A second version of the SNMP message protocol, which is not an Internet standards track protocol, is called SNMPv2c and described in RFC 1901 [9] and RFC 1906 [10]. The third version of the message protocol is called SNMPv3 and described in RFC 1906 [10], RFC 2572 [11] and RFC 2574 [12]. o Protocol operations for accessing management information. The first set of protocol operations and associated PDU formats is described in STD 15, RFC 1157 [8]. A second set of protocol operations and associated PDU formats is described in RFC 1905 [13]. o A set of fundamental applications described in RFC 2573 [14] and the view-based access control mechanism described in RFC 2575 [15]. A more detailed introduction to the current SNMP Management Framework can be found in RFC 2570 [RFC2570]. Managed objects are accessed via a virtual information store, Termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI. This memo specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (use of Counter64). Some machine-readable information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine- readable information is not considered to change the semantics of the MIB. 3. Glossary USB Universal Serial Bus B. Dolnik Experimental 2 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 CDC Communication Device Class 4. Overview This MIB contains set of objects required for management of the USB interface. This specification is derived in part from the parameters described in the document "USB Class definitions for Communication Devices"[24]. In Current status this MIB is specifically describes 2 USB interface subclasses of the Communication Device Class Abstract Control Model, used by Remote NDIS[23] and Ethernet Networking Control Model. It could be extended in the future to specify other type of USB classes and subclasses. 4.1. Structure of the MIB The MIB consist of the mandatory usbMibBasicGroup, describing the physical USB port (one table entry per physical port) and conditionally-mandatory groups usbMibCDCGroup and usbMibCDCEtherGroup. The last 2 groups describe virtual connections for the particular physical port. Because physical port theoretically may support more then one CDC connection, it could be more then one UsbCDCEtherEntry and/or UsbCDCEntry entry per physical port. The additional table, ifCDCEtherXmtAddressTable is conditionally-mandatory for the CDC connections that support transmit frame filtering based on destination address. 4.2. Relationship to the Interfaces MIB This section clarifies the relation of this MIB to the Interfaces MIB[17]. Each USB interface of one of the CDC subclasses MUST have the entry in the Interfaces MIB with the ifIndex identical to usbCDCIfIndex. Layering Model This MIB doesnÆt specify the layering model and donÆt support sublayers. Virtual Circuits Every CDC interface of the particular USB port is a separate virtual circuit and MUST have its own entry in the ifTable. ifRcvAddressTable ifRcvAddressTable is not a requirement for this MIB. If the USB interface supports filtering for the outgoing traffic transmitted to the host, the usbCDCEtherXmtAddressTable MUST be supported. ifPhysAddress For the USB interface which usbCDCSubclass is æethernetÆ or æacmÆ and it uses Remote NDIS over the Abstract Control Model, ifPhysAddress contains the IEEE 802.3 address which is placed in the source-address field of Ethernet frames which are transferred through this interface. B. Dolnik Experimental 3 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 ifType ifType of the USB interface MUST have the IANA value of usb (160). ifSpeed ifSpeed for this interface returns maximum raw bandwidth in bits/s supported by the USB port. For the full-speed interface this value is 12000000. ifSpecific For agents which implement the deprecated ifSpecific object, an instance of this object that is associated with USB interface MUST have the OBJECT IDENTIFIER value: usbMib OBJECT IDENTIFIER ::= {experimental 130} ifConnectorPresent ifConnectorPresent will normally be ætrueÆ 5. Definitions USB-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Counter32, Integer32, experimental FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF TEXTUAL-CONVENTION, MacAddress, TruthValue FROM SNMPv2-TC InterfaceIndexOrZero FROM IF-MIB; usbMib MODULE-IDENTITY LAST-UPDATED "200003010000Z" -- March 01, 2000 ORGANIZATION "3Com" CONTACT-INFO " Benjamin Dolnik Postal: 3Com Corporation 3800 Golf Road Rolling Meadows, IL 60008 USA Phone: +1 847 262 2098 E-mail: benjamin_dolnik@3com.com" DESCRIPTION "The MIB module to describe the USB interface." ::= { experimental 103 } B. Dolnik Experimental 4 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 -- Generic information usbMibObjects OBJECT IDENTIFIER ::= { usbMib 1 } usbNumber OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of ports regardless of their current state in the usb general port table" ::= { usbMibObjects 1 } -- -- usb Generic Port Table -- usbPortTable OBJECT-TYPE SYNTAX SEQUENCE OF UsbPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of port entries. The number of entries is given by the value usbNumber." ::= { usbMibObjects 2 } usbPortEntry OBJECT-TYPE SYNTAX UsbPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Status and parameter values for the USB port." INDEX { usbPortIndex } ::= { usbPortTable 1 } UsbPortEntry ::= SEQUENCE { usbPortIndex Integer32, usbPortType INTEGER, usbPortRate INTEGER } usbPortIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The unique identifier of the USB port hardware. By convention and if possible, hardware port numbers map directly to external connectors." ::= { usbPortEntry 1 } B. Dolnik Experimental 5 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 usbPortType OBJECT-TYPE SYNTAX INTEGER { host(1), device(2), hub(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of the USB port" ::= { usbPortEntry 2 } usbPortRate OBJECT-TYPE SYNTAX INTEGER { low-speed (1), full-speed(2), high-speed(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The USB port rate that could be low-speed(1) for 1.5 Mbps, full-speed(2) for 12Mbps or high-speed(3) for USB 2.0" ::= { usbPortEntry 3 } -- -- usb Device MIB -- usbDeviceTable OBJECT-TYPE SYNTAX SEQUENCE OF UsbDeviceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of USB device ports. Usually the device has only one USB device port" ::= { usbMibObjects 3 } usbDeviceEntry OBJECT-TYPE SYNTAX UsbDeviceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Status and parameter values for the USB device port." INDEX { usbDeviceIndex } ::= { usbDeviceTable 1 } UsbDeviceEntry ::= SEQUENCE { usbDeviceIndex Integer32, usbDevicePower B. Dolnik Experimental 6 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 INTEGER, usbDeviceVendorID OCTET STRING, usbDeviceProductID OCTET STRING, usbDeviceNumberConfigurations Integer32, usbDeviceActiveClass INTEGER, usbDeviceStatus INTEGER, usbDeviceEnumCounter Counter32, usbDeviceRemoteWakeup TruthValue, usbDeviceRemoteWakeupOn TruthValue } usbDeviceIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The index is identical to usbPortIndex for the correspondent USB port" ::= { usbDeviceEntry 1 } usbDevicePower OBJECT-TYPE SYNTAX INTEGER { unknown(1), self-powered(2), bus-powered(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "the way USB device port is powered" ::= { usbDeviceEntry 2 } usbDeviceVendorID OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-only STATUS current DESCRIPTION "The USB device port vendor HEX-formatted string as it is provided to the USB host by the USB device" ::= { usbDeviceEntry 3 } usbDeviceProductID OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-only B. Dolnik Experimental 7 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 STATUS current DESCRIPTION "The product ID HEX-formatted string as it is provided to the USB host by the USB device" ::= { usbDeviceEntry 4 } usbDeviceNumberConfigurations OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of configurations the USB port supports. Device port should support at least one configuration" ::= { usbDeviceEntry 5 } usbDeviceActiveClass OBJECT-TYPE SYNTAX INTEGER { other(1), cdc(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object returns USB Device Class type of the active configuration" ::= { usbDeviceEntry 6 } usbDeviceStatus OBJECT-TYPE SYNTAX INTEGER { unattached(1), attached(2), powered(3), default(4), address(5), configured(6), suspended(7) } MAX-ACCESS read-only STATUS current DESCRIPTION "Current status of the USB device state machine" ::= { usbDeviceEntry 7 } usbDeviceEnumCounter OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Total number reconnections (enumerations) since device is operational" ::= { usbDeviceEntry 8 } B. Dolnik Experimental 8 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 usbDeviceRemoteWakeup OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "If set to true(1), the device supports Remote Wakeup function. If set to false(2), the device doesn't support it" ::= { usbDeviceEntry 9 } usbDeviceRemoteWakeupOn OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "If set to true(1), the remote wakeup function is activated by the host. If set to false(2), remote wakeup function is not active." ::= { usbDeviceEntry 10 } -- -- Table of the CDC interfaces -- usbCDCTable OBJECT-TYPE SYNTAX SEQUENCE OF UsbCDCEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of Communication Device Class (CDC) interfaces supported by the USB device. It could be more then one CDC interface for the device that expose more then one interface to the network" ::= { usbMibObjects 4 } usbCDCEntry OBJECT-TYPE SYNTAX UsbCDCEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Status and parameter values for CDC device" INDEX { usbCDCIndex, usbCDCIfIndex } ::= { usbCDCTable 1 } UsbCDCEntry ::= SEQUENCE { usbCDCIndex Integer32, usbCDCIfIndex InterfaceIndexOrZero, usbCDCSubclass INTEGER, usbCDCVersion B. Dolnik Experimental 9 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 OCTET STRING, usbCDCDataTransferType INTEGER, usbCDCDataEndpoints Integer32, usbCDCStalls Counter32 } usbCDCIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The index is identical to usbPortIndex for the correspondent USB port" ::= { usbCDCEntry 1 } usbCDCIfIndex OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "The variable uniquely identifies the interface index which this CDC device is representing" ::= { usbCDCEntry 2 } usbCDCSubclass OBJECT-TYPE SYNTAX INTEGER { other(0), directLine(1), acm(2), telephony(3), multichannel(4), capi(5), ethernet(6), atm(7) } MAX-ACCESS read-only STATUS current DESCRIPTION "Subclass used in data transfer in Communication Device Class" REFERENCE "USB Class definitions for Communication Devices ver 1.1, p.28 " ::= { usbCDCEntry 3 } usbCDCVersion OBJECT-TYPE SYNTAX OCTET STRING (SIZE (2)) MAX-ACCESS read-only STATUS current DESCRIPTION B. Dolnik Experimental 10 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 "String that describes the version of Communication Device Class in HEX format (Major, Minor) " ::= { usbCDCEntry 4 } usbCDCDataTransferType OBJECT-TYPE SYNTAX INTEGER { synchronous(1), asynchronous(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "Type of data transfer for Data Class Interface used by the Communication Device. Isochronious mode is used for synchronous(1) and bulk transfer mode is used for asynchronous(2)" ::= { usbCDCEntry 5 } usbCDCDataEndpoints OBJECT-TYPE SYNTAX Integer32 (0..16) MAX-ACCESS read-only STATUS current DESCRIPTION "Number of the data endpoints (IN and OUT) used by the Communication Device. If the networking device is in default interface setting, there are are no data endpoints and no traffic is exchanged. Under the normal operation there should be 2 Data Endpoints (one IN and one OUT) for the networking device. For the multichannel model this number could be larger then 2" ::= { usbCDCEntry 6 } usbCDCStalls OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Total number of times USB Data interface recovered from stall since re-initialization and while the port state was 'up' or 'test'." ::= { usbCDCEntry 7 } -- -- Table of the CDC Ethernet-type interface or interface that uses -- Remote NDIS over Abstract Control Model -- usbCDCEtherTable OBJECT-TYPE SYNTAX SEQUENCE OF UsbCDCEtherEntry MAX-ACCESS not-accessible B. Dolnik Experimental 11 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 STATUS current DESCRIPTION "A list of Communication Device Class (CDC) USB devices that support Ethernet Networking Control Model." ::= { usbMibObjects 5 } usbCDCEtherEntry OBJECT-TYPE SYNTAX UsbCDCEtherEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Status and parameter values for CDC devices that support Ethernet Networking Control Model" INDEX { usbCDCEtherIndex, usbCDCEtherIfIndex } ::= { usbCDCEtherTable 1 } UsbCDCEtherEntry ::= SEQUENCE { usbCDCEtherIndex Integer32, usbCDCEtherIfIndex InterfaceIndexOrZero, usbCDCEtherMacAddress MacAddress, usbCDCEtherPacketFilter BITS, usbCDCEtherDataStatisticsCapabilities BITS, usbCDCEtherDataCheckErrs Counter32 } usbCDCEtherIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The index is identical to usbPortIndex for the correspondent USB port" ::= { usbCDCEtherEntry 1 } usbCDCEtherIfIndex OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "The variable uniquely identifies the interface index to which this CDC device is connected " ::= { usbCDCEtherEntry 2 } usbCDCEtherMacAddress OBJECT-TYPE SYNTAX MacAddress B. Dolnik Experimental 12 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 MAX-ACCESS read-only STATUS current DESCRIPTION "The 48bit MAC address that is provided by USB CDC device to the host. This address will be used as the source address of Ethernet frames sent by the host over the particular CDC interface." ::= { usbCDCEtherEntry 3} usbCDCEtherPacketFilter OBJECT-TYPE SYNTAX BITS { packetPromiscuous(0), packetAllMulticast(1), packetDirected(2), packetBroadcast(3), packetMulticast(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "Bitmap indicates the host requirements to the USB device to perform Ethernet packet filtering of the particular type frames directed to the host" REFERENCE "USB Class definitions for Communication Devices ver 1.1, p.66 Table 62" ::= { usbCDCEtherEntry 4 } usbCDCEtherDataStatisticsCapabilities OBJECT-TYPE SYNTAX BITS { frameXmitOk(0), frameRcvOk(1), frameXmitErr(2), frameRcvErr(3), frameRcvNoBuff(4), bytesXmitDirectOk(5), framesXmitDirectOk(6), bytesXmitMulticastOk(7), framesXmitMulticastOk(8), bytesXmitBroadcastOk(9), framesXmitBroadcastOk(10), bytesRcvDirectOk(11), framesRcvDirectOk(12), bytesRcvMulticastOk(13), framesRcvMulticastOk(14), bytesRcvBroadcastOk(15), framesRcvBroadcastOk(16), framesRcvCrcErr(17), xmitQueueLen(18), rcvErrAlignment(19), xmitOneCollision(20), xmitMoreCollisions(21), xmitDeferred(22), B. Dolnik Experimental 13 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 xmitMaxCollision(23), rcvOverrun(24), xmitUnderrun(25), xmitHearbeatFailure(26), xmitTimesCrsLost(27), xmitLateCollisions(28) } MAX-ACCESS read-only STATUS current DESCRIPTION "Bitmap indicates the ability to collect Ethernet statistics of different types as it provided in Ethernet Networking Functional Descriptor. If the Particular bit is set, the device could provide the corresponding statistics counter to the host" REFERENCE "USB Class definitions for Communication Devices ver 1.1, p.46 Table 42" ::= { usbCDCEtherEntry 5 } usbCDCEtherDataCheckErrs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Total number of frames with an invalid frame check sequence, input from the USB Data interface since system re-initialization and while the port state was 'up' or 'test'." ::= { usbCDCEtherEntry 6 } usbCDCEtherXmtAddressTable OBJECT-TYPE SYNTAX SEQUENCE OF UsbCDCEtherXmtAddressEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains an entry for each multicast address for which the system will transmit packets/frames on a particular USB interface." ::= { usbMibObjects 5 } usbCDCEtherXmtAddressEntry OBJECT-TYPE SYNTAX UsbCDCEtherXmtAddressEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of objects identifying an address for which the system will send packets/frames on the particular USB interface identified by the index values usbCDCIndex and ifIndex." INDEX {usbCDCEtherIndex, usbCDCEtherIfIndex, ifCDCEtherXmtAddress } ::= { usbCDCEtherXmtAddressTable 1 } B. Dolnik Experimental 14 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 UsbCDCEtherXmtAddressEntry ::= SEQUENCE { ifCDCEtherXmtAddress MacAddress } ifCDCEtherXmtAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "An address for which the system will will send packets/frames on the particular USB interface. The address only could be set by the host by using the command for USB interface." ::= { usbCDCEtherXmtAddressEntry 1 } -- -- notification group is for future extension. -- usbMibNotification OBJECT IDENTIFIER ::= { usbMib 2 } usbMibConformance OBJECT IDENTIFIER ::= { usbMib 3 } usbMibCompliances OBJECT IDENTIFIER ::= { usbMibConformance 1 } usbMibGroups OBJECT IDENTIFIER ::= { usbMibConformance 2 } -- compliance statements usbMibBasicCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for devices that implement USB MIB" MODULE -- usbMib -- unconditionally mandatory groups MANDATORY-GROUPS { usbMibBasicGroup } -- unconditionally mandatory group GROUP usbMibBasicGroup DESCRIPTION "Group of objects that are mandatory to support by device implementing this MIB" -- conditionally mandatory group GROUP usbMibCDCGroup DESCRIPTION "This group is implemented only in devices having at least one CDC interface" -- conditionally mandatory group GROUP usbMibCDCEtherGroup DESCRIPTION B. Dolnik Experimental 15 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 "This group is implemented only in devices having at least one CDC interface that uses Ethernet Networking Control Model or remote NDIS" -- conditionally mandatory group GROUP usbCDCEtherXmtAddressGroup DESCRIPTION "This group is implemented only for USB CDC interfaces that have transmit multicast filtering capabilities." ::= {usbMibCompliances 1} usbMibBasicGroup OBJECT-GROUP OBJECTS { usbNumber, usbPortIndex, usbPortType, usbPortRate, usbDeviceIndex, usbDevicePower, usbDeviceVendorID, usbDeviceProductID, usbDeviceNumberConfigurations, usbDeviceActiveClass, usbDeviceStatus, usbDeviceEnumCounter, usbDeviceRemoteWakeup, usbDeviceRemoteWakeupOn } STATUS current DESCRIPTION "Group of objects that are mandatory to support by device implementing this MIB" ::= { usbMibGroups 1 } usbMibCDCGroup OBJECT-GROUP OBJECTS { usbCDCIndex, usbCDCIfIndex, usbCDCSubclass, usbCDCVersion, usbCDCDataTransferType, usbCDCDataEndpoints, usbCDCStalls } STATUS current DESCRIPTION "This group is implemented only in devices having at least one CDC interface" ::= { usbMibGroups 2 } B. Dolnik Experimental 16 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 usbMibCDCEtherGroup OBJECT-GROUP OBJECTS { usbCDCEtherIndex, usbCDCEtherIfIndex, usbCDCEtherMacAddress, usbCDCEtherPacketFilter, usbCDCEtherDataStatisticsCapabilities, usbCDCEtherDataCheckErrs } STATUS current DESCRIPTION "This group is implemented only in devices having at least one CDC interface that uses Ethernet Networking Control Model or remote NDIS" ::= { usbMibGroups 3 } usbCDCEtherXmtAddressGroup OBJECT-GROUP OBJECTS { ifCDCEtherXmtAddress } STATUS current DESCRIPTION "This group is implemented only for USB CDC interfaces that have transmit multicast filtering capabilities." ::= { usbMibGroups 4 } END 6. Security Considerations This MIB contains readable objects whose values provide the number and status of a device's network interface of the USB type. There are no management objects defined in this MIB that have a MAX- ACCESS clause of read-write and/or read-create. So, if this MIB is implemented correctly, then there is no risk that an intruder can alter or create any management objects of this MIB via direct SNMP SET operations. There are a number of managed objects in this MIB that may be considered to contain sensitive information. Therefore, it may be important in some environments to control read access to these objects and possibly to even encrypt the values of these object when sending them over the network via SNMP. It is recommended that the implementers consider the security features as provided by the SNMPv3 framework. Specifically, the use of the User-based Security Model RFC2274[20] and the View-based Access Control Model RFC2275[21] is recommended. 7. References [1] Harrington, D., Presuhn, R. and B. Wijnen, "An Architecture for Describing SNMP Management Frameworks", RFC 2571, April 1999. B. Dolnik Experimental 17 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 [2] Rose, M. and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based Internets", STD 16, RFC 1155, May 1990. [3] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD 16, RFC 1212, March 1991. [4] Rose, M., "A Convention for Defining Traps for use with the SNMP", RFC 1215, March 1991. [5] McCloghrie, K., Perkins, D. and J. Schoenwaelder, "Structure of Management Information for Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [6] McCloghrie, K., Perkins, D. and J. Schoenwaelder, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [7] McCloghrie, K., Perkins, D. and J. Schoenwaelder, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [8] Case, J., Fedor, M., Schoffstall, M. and J. Davin, "Simple Management Protocol", STD 15, RFC 1157, May 1990. [9] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, January 1996. [10] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Transport Mappings for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1906, January 1996. [11] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)", RFC 2572, April 1999. [12] Blumenthal, U. and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2574, April 1999. [13] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1905, January 1996. [14] Levi, D., Meyer, P. and B. Stewart, "SNMP Applications", RFC2573, April 1999. [15] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", RFC 2575, April 1999. [17] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB using SMIv2", RFC 2233, November 1997. B. Dolnik Experimental 18 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 [18] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996. [19] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997 [20] Blumenthal, U., and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2274, IBM T. J. Watson Research, January 1998. [21] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", RFC 2275, IBM T. J. Watson Research, BMC Software, Inc., Cisco Systems, Inc., January 1998 [22] Universal Serial Bus specification. Compaq Computer Corporation, Intel Corporation, Microsoft Corporation, NEC Corporation. Revision 1.1 September 1998 [23] Remote NDIS Specification. Microsoft Corporation. Revision 0.80 October 1999 [24] Uneversal Serial Bus Class Definitions for Communication Devices. Version 1.1 January 1999 8. Author's Addresses Benjamin Dolnik 3Com Corporation 3800 Golf road Rolling Meadows, IL 60008 Email: benjamin_dolnik@3com.com B. Dolnik Experimental 19 Draft-dolnik-usb-mib-00 USB interface MIB March 2000 9. Full Copyright Statement "Copyright (C) The Internet Society (2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other then English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. B. Dolnik Experimental 20