Subject: [Capwap] I put the text to close #3

From: young <[email-masked]>
Date: Mon, 30 Mar 2009 05:25:59 -0800

Hi,

As per discussion in the IETF 74th meeting, 
We give the following text to close #3, 
#3  Suggest Let Base MIB to Support a WTP Profile Function

Kindly check whether it is ok or not.

1) In the overview section, the new section is added to explain
 what is WTP profile.
////////////////////////////////////////////////////
5.7.  WTP Profile
   In a centralized WLAN architecture, the operator needs to prepare
   configurations for WTPs to be managed before they connect to the AC.
   Also, it should have a way to change the configuration of WTPs after
   they connect to the AC.  The WTP Profile for a WTP offers such
   functions.  The WTP Profile is a profile which includes several
   configuration parameters such as static IP for a specific WTP, and
   operator creates it before a specific WTP connects to the AC, and
   operator could change WTP's current configuration by changing the
   value of parameters in the profile.  In each profile for a specific
   WTP, operator MUST specify the serial number of a WTP before it
   connects to the AC.  As CAPWAP messages carry the serial number
   [RFC5415] of WTP, the AC system is able to match a WTP with its
   profile configured for it.
   Another important function of WTP profile is to trigger system to
   create WTP Virtual Radio Interface.  When operator creates a WTP
   profile, he MUST specify the model number [RFC5415] of a WTP.  As a
   PHY radio number is pre-decided by WTP's model number, the creation
   of a WTP profile triggers system to create specific number of WTP
   Virtual Radio Interfaces.  With the ifIndex of WTP Virtual Radio
   Interface, operator could configure and manage WTP's radios by the
   wireless binding MIB modules.

2)  Add a new table capwapBaseWtpProfileTable
////////////////////////////////////////////////////
capwapBaseWtpProfileTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CapwapBaseWtpProfileEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of objects that prepare configuration (WTP profile)
         for WTPs to be managed before they connect to the AC.
         Operator could change a WTP's current configuration by
         changing the value of parameters in the WTP profile.
         Values of all read-create objects in this table are
         persistent at restart/reboot."
    ::= { capwapBaseWtps 1 }

CapwapBaseWtpProfileEntry ::= SEQUENCE {
      capwapBaseWtpProfileId                CapwapBaseWtpProfileIdTC,
      capwapBaseWtpProfileName              SnmpAdminString,
      capwapBaseWtpProfileWTPSerialId       CapwapBaseWtpIdTC,
      capwapBaseWtpProfileWTPModelNumber    SnmpAdminString,

All the objects as followed are moved from current table CapwapBaseWtpTable.
At present, we kept their old name to let you easily find out what
Objects are moved from CapwapBaseWtpTable.
////////////////////////////////////////////////////
      capwapBaseWtpName                     OCTET STRING,
      capwapBaseWtpLocation                 OCTET STRING,
      capwapBaseWtpStaticIpEnable           TruthValue,
      capwapBaseWtpStaticIpType             InetAddressType,
      capwapBaseWtpStaticIp                 InetAddress,
      capwapBaseWtpNetmask                  InetAddress,
      capwapBaseWtpGateway                  InetAddress,
      capwapBaseWtpFallbackEnable           INTEGER,
      capwapBaseWtpEchoInterval             Unsigned32,
      capwapBaseWtpIdleTimeout              Unsigned32,
      capwapBaseWtpMaxDiscoveryInterval     Unsigned32,
      capwapBaseWtpReportInterval           Unsigned32,
      capwapBaseWtpSilentInterval           Unsigned32,
      capwapBaseWtpStatisticsTimer          Unsigned32,
      capwapBaseWtpWaitDTLSTimer            Unsigned32,
      capwapBaseWtpEcnSupport               INTEGER,
////////////////////////////////////////////////////
      capwapBaseWtpProfileRowStatus         RowStatus
    }

3) Current capwapBaseWtpStateTable adds a new object
capwapBaseWtpStateCurrWtpProfileId
////////////////////////////////////////////////////
capwapBaseWtpStateCurrWtpProfileId OBJECT-TYPE
    SYNTAX      CapwapBaseWtpProfileIdTC
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Represents the current ID of a WTP profile. Operator could
         query a WTP' current configuration through it."
    ::= { capwapBaseWtpStateEntry 6 }

4) capwapBaseWtpTable is changed and only keep the read-only objects.
All read-write objects are moved to CapwapBaseWtpTable.
////////////////////////////////////////////////////
CapwapBaseWtpEntry ::= SEQUENCE {
      capwapBaseWtpCurrId                       CapwapBaseWtpIdTC,
      capwapBaseWtpPhyIndex                     PhysicalIndex,
      capwapBaseWtpBaseMacAddress               PhysAddress,
      capwapBaseWtpTunnelModeOptions            CapwapBaseTunnelModeTC,
      capwapBaseWtpMacTypeOptions               CapwapBaseMacTypeTC,
      capwapBaseWtpDiscoveryType                INTEGER,
      capwapBaseWtpRadiosInUseNum               Unsigned32,
      capwapBaseWtpRadioNumLimit                Unsigned32,
      capwapBaseWtpRetransmitCount              Counter32,
      capwapBaseWtpMaxDiscoveries               Unsigned32,
      capwapBaseWtpMaxFailedDTLSSessionRetry    Unsigned32,
      capwapBaseWtpMaxRetransmit                Unsigned32,
      capwapBaseWtpDataChannelKeepAliveTimer    Unsigned32,
      capwapBaseWtpDataChannelDeadInterval      Unsigned32,
      capwapBaseWtpDiscoveryInterval            Unsigned32,
      capwapBaseWtpDTLSSessionDeleteTimer       Unsigned32,
      capwapBaseWtpImageDataStartTimer          Unsigned32,
      capwapBaseWtpRetransmitInterval           Unsigned32
    }

5) capwapBaseWirelessBindingTable is changed with INDEX
///////////////////////////////////////////////
    INDEX {
      capwapBaseWtpProfileId,
      capwapBaseWirelessBindingRadioId
    }

6) Add a new table capwapBaseWtpModelTable
/////////////////////////////////////////////
We did not discuss it during the IETF 74 meeting.
Why it is required, please see 7) example change as followed.
The step 2 in the example explains the reason.
- capwapBaseWtpModelTable Table

capwapBaseWtpModelTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CapwapBaseWtpModelEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of objects that allow operator to query properties
         of a specific model number."
    ::= { capwapBaseWtps 5 }

capwapBaseWtpModelEntry  OBJECT-TYPE
    SYNTAX      CapwapBaseWtpModelEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A set of objects that allow operator to query properties
         of a specific model number."
    INDEX {
      capwapBaseWtpModelMfgName,
      capwapBaseWtpModelNumber
    }
    ::= { capwapBaseWtpModelTable 1 }

CapwapBaseWtpModelEntry ::= SEQUENCE {
      capwapBaseWtpModelMfgName     SnmpAdminString,
      capwapBaseWtpModelNumber      SnmpAdminString,
      capwapBaseWtpModelRadioNum    Unsigned32
    }

capwapBaseWtpModelMfgName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Represents the name of the manufacturer."
    ::= { capwapBaseWtpModelEntry 1 }

capwapBaseWtpModelNumber OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
         "Represents the model number of a WTP."
    REFERENCE
        "Section 4.6.40. of CAPWAP Protocol Specification, RFC 5415."
    ::= { capwapBaseWtpModelEntry 2 }

capwapBaseWtpModelRadioNum OBJECT-TYPE
    SYNTAX      Unsigned32 (0..255)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Represents the maximum radio number supported by the WTP."
    ::= { capwapBaseWtpModelEntry 3 }

-- End of capwapBaseWtpModelTable Table

7) To improve the readability of the section:
  8.  Example of CAPWAP-BASE-MIB Module Usage, and to let it work with new 
changes of WTP profile. We updated the it.
////////////////////////////////////////////////////
Example of CAPWAP-BASE-MIB Module Usage

   Here takes IEEE 802.11 binding as an example to explain how the MIB
   modules would be used.

   1) Create a WTP profile for a WTP to be managed
   Before a WTP to be managed by the AC, operator creates a WTP profile
   for it on the AC.

   Suppose WTP's serial ID is '12345678', and operator creates a WTP
   profile as followed:

       In CapwapBaseWtpProfileTable
       {
         capwapBaseWtpProfileId               = 1,
         capwapBaseWtpProfileName             = 'WTP profile example',
         capwapBaseWtpProfileWTPSerialId      = '12345678',
         capwapBaseWtpProfileWTPModelNumber   = 'WTP123',
         capwapBaseWtpName                    = 'WTP profile 12345678',
         capwapBaseWtpLocation                = 'office',
         capwapBaseWtpStaticIpEnable          = true(1),
         capwapBaseWtpStaticIpType            = ipv4(1),
         capwapBaseWtpStaticIp                = '192.168.0.100',
         capwapBaseWtpNetmask                 = '255.255.255.0',
         capwapBaseWtpGateway                 = '192.168.0.1',
         capwapBaseWtpFallbackEnable          = true,
         capwapBaseWtpEchoInterval            = 30,
         capwapBaseWtpIdleTimeout             = 300,
         capwapBaseWtpMaxDiscoveryInterval    = 20,
         capwapBaseWtpReportInterval          = 120,
         capwapBaseWtpSilentInterval          = 30,
         capwapBaseWtpStatisticsTimer         = 120,
         capwapBaseWtpWaitDTLSTimer           = 60,
         capwapBaseWtpEcnSupport              = limited(0)
       }

   Suppose the model number 'WTP123' has one PHY radio and this PHY
   radio is identified by ID 1, the creation of this WTP profile
   triggers the AC system to create a WTP Virtual Radio Interface.
   Suppose the ifIndex of WTP Virtual Radio Interface is 10, the
   following information is stored in the
   CapwapBaseWirelessBindingTable.

      In CapwapBaseWirelessBindingTable
      {
        capwapBaseWtpProfileId                          = '12345678',
        capwapBaseWirelessBindingRadioId                = 1,
        capwapBaseWirelessBindingVirtualRadioIfIndex    = 10,
        capwapBaseWirelessBindingType                   = dot11(2)
      }

   By the mechanism of WTP Virtual Radio Interface, it seems WTP PHY
   radios are located on the AC.  The WTP Virtual Radio Interface is
   modeled by ifTable [RFC2863].

      In ifTable
      {
        ifIndex              = 10,
        ifDescr              = 'WTP Virtual Radio Interface',
        ifType               = xxx,
   RFC Editor - please replace xxx with the value
   allocated by IANA for IANAifType of WTP Virtual Radio Interface
        ifMtu                = 0,
        ifSpeed              = 0,
        ifPhysAddress        = '000000',
        ifAdminStatus        = true,
        ifOperStatus         = false,
        ifLastChange         = 0,
        ifInOctets           = 0,
        ifInUcastPkts        = 0,
        ifInDiscards         = 0,
        ifInErrors           = 0,
        ifInUnknownProtos    = 0,
        ifOutOctets          = 0,
        ifOutUcastPkts       = 0,
        ifOutDiscards        = 0,
        ifOutErrors          = 0
       }

   2) Query the ifIndexes of WTP Virtual Radio Interfaces

   Before operator configures parameters for PHY radios, he should query
   and get the ifIndexes of WTP Virtual Radio Interfaces which
   corresponds to the PHY radios.

   By CapwapBaseWtpModelTable, he is able to get the maximum radio
   number supported by a specific model number.  In this example, he
   gets the maximum number for the model number 'WTP123' is 1, then he
   knows that there is only one PHY radio required to be configured.

       In CapwapBaseWtpModelTable
       {
         capwapBaseWtpModelMfgName     = 'capwap',
         capwapBaseWtpModelNumber      = 'WTP123',
         capwapBaseWtpModelRadioNum    = 1
       }

   In the step 1), CapwapBaseWirelessBindingTable already stored the
   mapping relationship between the ifIndex of WTP Virtual Radio
   Interface and PHY radio.  From it, operator could get the ifIndex of
   WTP Virtual Radio Interface is 10 (corresponding to PHY radio 1).

   Now, it is time to configure the wireless binding parameters.

   3) Configure specific wireless binding parameters by WTP Virtual
   Radio Interface

   It is to be done on the AC through specific wireless binding MIB
   module such as IEEE 802.11 MIB module.

   For example, to configure parameter for WTP Virtual Radio Interface
   (the ifIndex is 10) by IEEE 802.11 Dot11OperationTable
   [IEEE.802-11.1999].

      In Dot11OperationTable
      {
        ifIndex                         = 10,
        dot11MACAddress                 = '000000',
        dot11RTSThreshold               = 2347,
        dot11ShortRetryLimit            = 7,
        dot11LongRetryLimit             = 4,
        dot11FragmentationThreshold     = 256,
        dot11MaxTransmitMSDULifetime    = 512,
        dot11MaxReceiveLifetime         = 512,
        dot11ManufacturerID             = 'capwap',
        dot11ProductID                  = 'capwap'
      }

   4) WTP reports its current configuration status

   According to [RFC5415], after join phase and before WTP get
   configuration from the AC, WTP reports its current configuration
   status to the AC through configuration status request message.  The
   data of MIB objects is updated on the AC.  For example, for IEEE
   802.11 binding, the AC updates data in the ifTable [RFC2863] and IEEE
   802.11 MIB module so on according to message content.  As an example
   for the ifIndex 10, its ifOperStatus in ifTable is updated according
   to current radio operational status in the CAPWAP message.

   5) Query WTP and radio statistics data

   After WTPs come to run status, operator could query WTP and radio
   statistics data through CAPWAP-BASE-MIB and specific binding MIB
   module on the AC.  For example, through dot11CountersTable in the
   IEEE 802.11 MIB module, operator could query counter data for radio
   which is identified by the ifIndex of a virtual radio interface.
   With capwapBaseWtpTable table in the CAPWAP-BASE-MIB module, operator
   could query properties of WTPs which are in run status.

   6) MIB operations through a CAPWAP protocol wireless binding MIB
   module

   For example, for CAPWAP IEEE 802.11 binding protocol [RFC5416], Some
   MIB operations such as MAC mode configuration for a WLAN depend on
   the CAPWAP Protocol Binding MIB for IEEE 802.11
   [I-D.ietf-capwap-802dot11-mib].  In the
   [I-D.ietf-capwap-802dot11-mib], it gives more explain.

   7) Query other properties of WTP

   Operator could query MIB objects in the ENTITY-MIB [RFC4133] module
   by capwapBaseWtpPhyIndex in the capwapBaseWtpTable of CAPWAP-BASE-MIB
   module.  The properties of WTP such as software version, hardware
   version and so on are available in the ENTITY-MIB module.

_________________________________________________________________
To unsubscribe or modify your subscription options, please visit:
http://lists.frascone.com/mailman/listinfo/capwap

Archives: http://lists.frascone.com/pipermail/capwap