-- ******************************************************************* -- CISCO-LWAPP-CLIENT-ROAMING-MIB.my: Wireless client roaming MIB -- December 2005, Devesh Pujari , Prasanna Viswakumar -- -- Copyright (c) 2005, 2006 by Cisco Systems, Inc. -- ******************************************************************* -- CISCO-LWAPP-CLIENT-ROAMING-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Counter32, Integer32, TimeTicks FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF MacAddress, TimeInterval FROM SNMPv2-TC cLApSysMacAddress, cLApDot11IfSlotId FROM CISCO-LWAPP-AP-MIB CLDot11Channel, CLDot11RfParamMode FROM CISCO-LWAPP-TC-MIB ciscoMgmt FROM CISCO-SMI; ciscoLwappClRoamMIB MODULE-IDENTITY LAST-UPDATED "200604110000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO " Cisco Systems, Customer Service Postal: 170 West Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553-NETS Email: cs-wnbu-snmp@cisco.com" DESCRIPTION "This MIB is intended to be implemented on all those devices operating as Central controllers, that terminate the Light Weight Access Point Protocol tunnel from Cisco Light-weight LWAPP Access Points. Information provided by this MIB is for CCX related features as specified in the CCX specifications. This MIB covers roaming RF parameters for CCX clients. The relationship between CC and the LWAPP APs can be depicted as follows: +......+ +......+ +......+ + + + + + + + CC + + CC + + CC + + + + + + + +......+ +......+ +......+ .. . . .. . . . . . . . . . . . . . . . . . . +......+ +......+ +......+ +......+ + + + + + + + + + AP + + AP + + AP + + AP + + + + + + + + + +......+ +......+ +......+ +......+ . . . . . . . . . . . . . . . . . . . +......+ +......+ +......+ +......+ + + + + + + + + + MN + + MN + + MN + + MN + + + + + + + + + +......+ +......+ +......+ +......+ The LWAPP tunnel exists between the controller and the APs. The MNs communicate with the APs through the protocol defined by the 802.11 standard. LWAPP APs, upon bootup, discover and join one of the controllers and the controller pushes the configuration, that includes the WLAN parameters, to the LWAPP APs. The APs then encapsulate all the 802.11 frames from wireless clients inside LWAPP frames and forward the LWAPP frames to the controller. GLOSSARY Access Point ( AP ) An entity that contains an 802.11 medium access control ( MAC ) and physical layer ( PHY ) interface and provides access to the distribution services via the wireless medium for associated clients. LWAPP APs encapsulate all the 802.11 frames in LWAPP frames and sends them to the controller to which it is logically connected. Basic Service Set ( BSS ) The IEEE 802.11 BSS of an AP comprises of the stations directly associating with the AP. Central Controller ( CC ) The central entity that terminates the LWAPP protocol tunnel from the LWAPP APs. Throughout this MIB, this entity is also referred to as 'controller'. Cisco Compatible eXtensions (CCX) Wireless LAN Access Points (APs) manufactured by Cisco Systems have features and capabilities beyond those in related standards (e.g., IEEE 802.11 suite of standards ,Wi-Fi recommendations by WECA, 802.1X security suite,etc). A number of features provide higher performance.For example, Cisco AP transmits a specific Information Element, which the clients adapt to for enhanced performance. Similarly, a number of features are implemented by means of proprietary Information Elements, which Cisco clients use in specific ways to carry out tasks above and beyond the standard. Other examples of feature categories are roaming and power saving. Client Roaming A client may decide to reassociate with another AP for reasons of its own choosing. The decision of whether or not to use the information contained in the AP list is up to the discretion of the implementor, as long as the roam time requirement is met. Light Weight Access Point Protocol ( LWAPP ) This is a generic protocol that defines the communication between the Access Points and the Central Controller. Mobile Node ( MN ) A roaming 802.11 wireless device in a wireless network associated with an access point. Mobile Node and client are used interchangeably. REFERENCE [1] Wireless LAN Medium Access Control ( MAC ) and Physical Layer ( PHY ) Specifications [2] Draft-obara-capwap-lwapp-00.txt, IETF Light Weight Access Point Protocol " REVISION "200604110000Z" DESCRIPTION "Initial version of this MIB module. " ::= { ciscoMgmt 523 } ciscoLwappClRoamMIBNotifs OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIB 0 } ciscoLwappClRoamMIBObjects OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIB 1 } ciscoLwappClRoamMIBConform OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIB 2 } clcrRoamDot11aRfParamConfig OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIBObjects 1 } clcrRoamDot11bRfParamConfig OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIBObjects 2 } clcrRoamReasonReport OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIBObjects 3 } clcrRoamDot11Stats OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIBObjects 4 } --******************************************************************** -- Clients Roaming RF Parameters for 802.11a band. --******************************************************************** clcrDot11aMode OBJECT-TYPE SYNTAX CLDot11RfParamMode MAX-ACCESS read-write STATUS current DESCRIPTION "This object represents how the controller chooses the values of the RF parameters needed to manage roaming in 802.11a networks. " DEFVAL { default } ::= { clcrRoamDot11aRfParamConfig 1 } clcrDot11aMinRssi OBJECT-TYPE SYNTAX Integer32 (-90..-80) UNITS "dBm" MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates the Minimum Received Signal Strength Indication (RSSI) in dBm required to associate with the AP. It also defines the edge of coverage for the BSS. If the client's average received signal power dips below this threshold, clients must have roamed to another AP with a stronger signal. " DEFVAL { -85 } ::= { clcrRoamDot11aRfParamConfig 2 } clcrDot11aHysteresis OBJECT-TYPE SYNTAX Integer32(2..4) UNITS "dB" MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates how much stronger the signal strength (dB) of a neighbor AP must be, in order for the client to roam to it. The use of roaming hysteresis is intended to reduce the amount of clients roaming back and forth between BSSs if the client is physically located on or near the border between two BSSs. " DEFVAL { 2 } ::= { clcrRoamDot11aRfParamConfig 3 } clcrDot11aAdaptiveScanThreshold OBJECT-TYPE SYNTAX Integer32(-77..-70) UNITS "dBm" MAX-ACCESS read-write STATUS current DESCRIPTION "This object configures the threshold for the strength of the signals received(RSSI) from an AP, as seen by an associated client, below which the client must be able to roam to a neighbor AP within the specified Transition Time configured through clcrDot11aTransitionTime. " DEFVAL { -72 } ::= { clcrRoamDot11aRfParamConfig 4 } clcrDot11aTransitionTime OBJECT-TYPE SYNTAX TimeInterval(100..10000) MAX-ACCESS read-write STATUS current DESCRIPTION "This object configures the maximum time duration permitted for the client to detect a suitable neighbor AP to roam to and to complete the roam, whenever the RSSI from the client?s associated AP is below the adaptive scan threshold configured through clcrDot11aAdaptiveScanThreshold. The time is expressed in 100th of a second. " DEFVAL { 500 } ::= { clcrRoamDot11aRfParamConfig 5 } --******************************************************************** -- Clients Roaming RF Parameters for 802.11b/g band. --******************************************************************** clcrDot11bMode OBJECT-TYPE SYNTAX CLDot11RfParamMode MAX-ACCESS read-write STATUS current DESCRIPTION "This object represents how the controller chooses the values of the RF parameters needed to manage roaming in 802.11b/g networks. " DEFVAL { default } ::= { clcrRoamDot11bRfParamConfig 1 } clcrDot11bMinRssi OBJECT-TYPE SYNTAX Integer32 (-90..-80) UNITS "dBm" MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates the minimum Received Signal Strength Indication (RSSI) in dBm required to associate with the AP. It also defines the edge of coverage for the BSS. If the client's average received signal power dips below this threshold, clients must have roamed to another AP with a stronger signal. " DEFVAL { -85 } ::= { clcrRoamDot11bRfParamConfig 2 } clcrDot11bHysteresis OBJECT-TYPE SYNTAX Integer32(2..4) UNITS "dB" MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates how much stronger the signal strength (dB) of a neighbor AP must be, in order for the client to roam to it. The use of roaming hysteresis is intended to reduce the amount of clients roaming back and forth between BSSs if the client is physically located on or near the border between two BSSs. " DEFVAL { 2 } ::= { clcrRoamDot11bRfParamConfig 3 } clcrDot11bAdaptiveScanThreshold OBJECT-TYPE SYNTAX Integer32(-77..-70) UNITS "dBm" MAX-ACCESS read-write STATUS current DESCRIPTION "This object configures the threshold for the strength of the signals received(RSSI) from an AP, as seen by an associated client, below which the client must be able to roam to a neighbor AP within the specified Transition Time configured through clcrDot11bTransitionTime. " DEFVAL { -72 } ::= { clcrRoamDot11bRfParamConfig 4 } clcrDot11bTransitionTime OBJECT-TYPE SYNTAX TimeInterval(100..10000) MAX-ACCESS read-write STATUS current DESCRIPTION "This object configures the maximum time duration permitted for the client to detect a suitable neighbor AP to roam to and to complete the roam, whenever the RSSI from the client is associated AP is below the adaptive scan threshold configured through clcrDot11aAdaptiveScanThreshold. The time is expressed in 100th of a second. " DEFVAL { 500 } ::= { clcrRoamDot11bRfParamConfig 5 } --******************************************************************** -- Client Roam Reason Report --******************************************************************** clcrRoamReasonReportTable OBJECT-TYPE SYNTAX SEQUENCE OF ClcrRoamReasonReportEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides the reasons for CCX clients roaming from one AP to another. When a CCX client associates to an AP, it will always send an IAPP information packet to the new AP listing the characteristics of the previous AP. An entry is added to this table when a roam reason report is sent by a CCX client when it roams to a new AP. " ::= { clcrRoamReasonReport 1 } clcrRoamReasonReportEntry OBJECT-TYPE SYNTAX ClcrRoamReasonReportEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry corresponds to the roam reason report sent by a CCX client to the new AP to which client associates. " INDEX { clcrRoamClientMacAddress, clcrRoamClientTimeStamp } ::= { clcrRoamReasonReportTable 1 } ClcrRoamReasonReportEntry ::= SEQUENCE { clcrRoamClientMacAddress MacAddress, clcrRoamClientTimeStamp TimeTicks, clcrRoamNewApMacAddress MacAddress, clcrRoamPrevApMacAddress MacAddress, clcrRoamPrevApChannel CLDot11Channel, clcrRoamPrevApSsid OCTET STRING, clcrRoamDisassocTimeInterval TimeInterval, clcrRoamReason INTEGER } clcrRoamClientMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the mac address of the client which has roamed to a new AP. " ::= { clcrRoamReasonReportEntry 1 } clcrRoamClientTimeStamp OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object indicates the time instance at which this report was received by the new AP, to which client roamed to. This represents number of seconds elapsed since 00:00:00 on January 1, 1970, Coordinated Universal Time (UTC). So a value of '1131362704' means 'Mon Nov 7 16:55:04 2005'. " ::= { clcrRoamReasonReportEntry 2 } clcrRoamNewApMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the mac address of the current AP to which client has roamed to. This AP receives the roam reason report. " ::= { clcrRoamReasonReportEntry 3 } clcrRoamPrevApMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the mac address of the previous AP to which client was associated. " ::= { clcrRoamReasonReportEntry 4 } clcrRoamPrevApChannel OBJECT-TYPE SYNTAX CLDot11Channel MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the channel number at which the client was associated to the previous AP. " ::= { clcrRoamReasonReportEntry 5 } clcrRoamPrevApSsid OBJECT-TYPE SYNTAX OCTET STRING(SIZE(1..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the SSID at which the client was associated to the previous AP. " ::= { clcrRoamReasonReportEntry 6 } clcrRoamDisassocTimeInterval OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time elapsed since the client disassociated, in hundredth of a second. " ::= { clcrRoamReasonReportEntry 7 } clcrRoamReason OBJECT-TYPE SYNTAX INTEGER { clcrUnspecified(0), clcrPoorLink(1), clcrLoadBalancing(2), clcrInsufficientCapacity(3), clcrDirectedRoam(4), clcrFirstAssociation(5), clcrRoamingIn(6), clcrRoamingOut(7), clcrBetterAp(8), clcrDisassociated(9) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the reason for a client to roam to a new AP. The semantics are as follows. clcrUnspecified - The reason is not known or can't be found. clcrPoorLink - Normal roam due to poor link (excessive retries, too much interference, RSSI too low, etc.) clcrLoadBalancing - Normal roam due to load balancing clcrInsufficientCapacity - Roaming occured due to the insufficient capacity on the previous AP (TSPEC rejected) clcrDirectedRoam - Roaming is directed by the 802.11 wireless Infrastructure clcrFirstAssociation - This is the first association to a particular WLAN clcrRoamingIn - Roaming in from cellular or other WAN clcrRoamingOut - Roaming out to cellular or other WAN clcrBetterAp - Normal roam due to better AP found clcrDisassociated - Deauthenticated or Disassociated from the previous AP. " ::= { clcrRoamReasonReportEntry 8 } --******************************************************************** -- Roaming Stats per 802.11 interface. --******************************************************************** clcrDot11StatsTable OBJECT-TYPE SYNTAX SEQUENCE OF ClcrDot11StatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table populates the statistics collected when the client roamed in the WLAN. There exists a row in this table for each conceptual row in cLApDot11IfTable that represents a dot11 interface of an AP. " ::= { clcrRoamDot11Stats 1 } clcrDot11StatsEntry OBJECT-TYPE SYNTAX ClcrDot11StatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry represents a conceptual row in clcrDot11StatsTable and corresponds to the roam reason report sent by a CCX client to the new AP which the client associates to. " INDEX { cLApSysMacAddress, cLApDot11IfSlotId } ::= { clcrDot11StatsTable 1 } ClcrDot11StatsEntry ::= SEQUENCE { clcrDot11NeighborRequestRx Counter32, clcrDot11NeighborReplySent Counter32, clcrDot11RoamReasonReportRx Counter32, clcrDot11BcastUpdatesSent Counter32 } clcrDot11NeighborRequestRx OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the count of the number of requests received from an E2E client for neighbor updates. " ::= { clcrDot11StatsEntry 1 } clcrDot11NeighborReplySent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the count of the number of replies sent to the client in reply to the request for neighbor updates received from the client. " ::= { clcrDot11StatsEntry 2 } clcrDot11RoamReasonReportRx OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object reports the count of the number of roam reason reports received from CCX clients. " ::= { clcrDot11StatsEntry 3 } clcrDot11BcastUpdatesSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the count of the number of broadcast neighbor updates sent by an AP. " ::= { clcrDot11StatsEntry 4 } --******************************************************************** --* Compliance statements --******************************************************************** ciscoLwappClRoamMIBCompliances OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIBConform 1 } ciscoLwappClRoamMIBGroups OBJECT IDENTIFIER ::= { ciscoLwappClRoamMIBConform 2 } clcrMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for the SNMP entities that implement the ciscoLwappRoamMIB module." MODULE MANDATORY-GROUPS { ciscoLwappClRoamDot11aRfParamsGroup, ciscoLwappClRoamDot11bRfParamsGroup, ciscoLwappClRoamroamReasonGroup, ciscoLwappClRoamroamingStatsGroup } ::= { ciscoLwappClRoamMIBCompliances 1 } --******************************************************************** --* Units of conformance --******************************************************************** ciscoLwappClRoamDot11aRfParamsGroup OBJECT-GROUP OBJECTS { clcrDot11aMode, clcrDot11aMinRssi, clcrDot11aHysteresis, clcrDot11aAdaptiveScanThreshold, clcrDot11aTransitionTime } STATUS current DESCRIPTION "This collection of objects represent the radio parameters for the 802.11a networks. " ::= { ciscoLwappClRoamMIBGroups 1 } ciscoLwappClRoamDot11bRfParamsGroup OBJECT-GROUP OBJECTS { clcrDot11bMode, clcrDot11bMinRssi, clcrDot11bHysteresis, clcrDot11bAdaptiveScanThreshold, clcrDot11bTransitionTime } STATUS current DESCRIPTION "This collection of objects represent the radio parameters for the 802.11b/g bands. " ::= { ciscoLwappClRoamMIBGroups 2 } ciscoLwappClRoamroamReasonGroup OBJECT-GROUP OBJECTS { clcrRoamNewApMacAddress, clcrRoamPrevApMacAddress, clcrRoamPrevApChannel, clcrRoamPrevApSsid, clcrRoamDisassocTimeInterval, clcrRoamReason } STATUS current DESCRIPTION "This collection of objects provide the reasons for clients roaming between APs. " ::= { ciscoLwappClRoamMIBGroups 3 } ciscoLwappClRoamroamingStatsGroup OBJECT-GROUP OBJECTS { clcrDot11NeighborRequestRx, clcrDot11NeighborReplySent, clcrDot11RoamReasonReportRx, clcrDot11BcastUpdatesSent } STATUS current DESCRIPTION "This collection of objects provide the counters related to roaming. " ::= { ciscoLwappClRoamMIBGroups 4 } END