SAVI-MIB DEFINITIONS ::=BEGIN IMPORTS MODULE-COMPLIANCE,OBJECT-GROUP FROM SNMPv2-CONF MODULE-IDENTITY, OBJECT-IDENTITY, OBJECT-TYPE, Counter32, Unsigned32 FROM SNMPv2-SMI TEXTUAL-CONVENTION,MacAddress,TimeInterval,RowStatus FROM SNMPv2-TC InterfaceIndex FROM IF-MIB InetVersion,InetAddressType,InetAddress FROM INET-ADDRESS-MIB ip FROM IP-MIB ; saviMIB MODULE-IDENTITY LAST-UPDATED "201003080037Z" --March 08,2010 ORGANIZATION "IETF SAVI Working Group" CONTACT-INFO "Changqing An Postal: Network Research Center, Tsinghua University Beijing 100084 China Email: acq@tsinghua.edu.cn" DESCRIPTION "The MIB Module for managing SAVI implementations." ::= {ip 40} saviObjects OBJECT IDENTIFIER ::= { saviMIB 1 } -- Savi parameters saviObjectsSystemTable OBJECT-TYPE SYNTAX SEQUENCE OF SaviObjectsSystemEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table containing savi system-wide parameters." ::= { saviObjects 1 } saviObjectsSystemEntry OBJECT-TYPE SYNTAX SaviObjectsSystemEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry containing savi system-wide parameters for a particular IP version." INDEX { saviObjectsSystemIPVersion } ::= { saviObjectsSystemTable 1 } SaviObjectsSystemEntry ::= SEQUENCE { saviObjectsSystemIPVersion InetVersion, saviObjectsSystemMode INTEGER, saviObjectsSystemMaxDadDelay TimeInterval, saviObjectsSystemMaxDadPrepareDelay TimeInterval } saviObjectsSystemIPVersion OBJECT-TYPE SYNTAX InetVersion MAX-ACCESS not-accessible STATUS current DESCRIPTION "The IP version " ::= { saviObjectsSystemEntry 1 } saviObjectsSystemMode OBJECT-TYPE SYNTAX INTEGER { savi-disable(1), savi-default(2), savi-dhcp-only(3), savi-slaac-only(4), savi-dhcp-slaac-mix(5) } MAX-ACCESS read-write STATUS current DESCRIPTION "IP Address Assignment Methods. " ::= { saviObjectsSystemEntry 2 } saviObjectsSystemMaxDadDelay OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-write STATUS current DESCRIPTION "A constant. When A gratuitous ARP Request or Duplicate Address Detection Neighbor Solicitation is received from anchor, the lifetime of the BST(Binding State Table) entry MUST be set to be MAX_ARP_DELAY or MAX_DAD_DELAY respectively." ::= { saviObjectsSystemEntry 3 } saviObjectsSystemMaxDadPrepareDelay OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-write STATUS current DESCRIPTION "A constant. When a DHCPv4 DHCPACK or DHCPv6 REPLY message is received, the lifetime of the BST(Binding State Table) entry MUST be set to be MAX_ARP_PREPARE_DELAY or MAX_DAD_PREPARE_DELAY respectively." ::= { saviObjectsSystemEntry 4 } -- Interface parameters saviObjectsIfTable OBJECT-TYPE SYNTAX SEQUENCE OF SaviObjectsIfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table containing SAVI running parameters of each anchor." ::= { saviObjects 2 } saviObjectsIfEntry OBJECT-TYPE SYNTAX SaviObjectsIfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing SAVI running parameters of an anchor." INDEX { saviObjectsIfIPVersion, saviObjectsIfIfIndex } ::= { saviObjectsIfTable 1 } SaviObjectsIfEntry ::= SEQUENCE { saviObjectsIfIPVersion InetVersion, saviObjectsIfIfIndex InterfaceIndex, saviObjectsIfValidationStatus INTEGER, saviObjectsIfTrustStatus INTEGER, saviObjectsIfFilteringNum Unsigned32 } saviObjectsIfIPVersion OBJECT-TYPE SYNTAX InetVersion MAX-ACCESS not-accessible STATUS current DESCRIPTION "The IP version " ::= { saviObjectsIfEntry 1 } saviObjectsIfIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value that uniquely identifies the interface to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value of the IF-MIB's ifIndex." ::= { saviObjectsIfEntry 2 } saviObjectsIfValidationStatus OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "The validation status of the interface. enable(1), check source address. disable(2), don't check source address. " ::= { saviObjectsIfEntry 3 } saviObjectsIfTrustStatus OBJECT-TYPE SYNTAX INTEGER { no-trust(1), dhcp-trust(2), ra-trust(3), dhcp-ra-trust(4) } MAX-ACCESS read-write STATUS current DESCRIPTION "The trust status of the interface. no-trust(1), discard dhcp adv/reply and ra packet, dhcp-trust(2), permit dhcp adv/reply packet and discard ra packet, ra-trust(3), permit ra packet and discard dhcp adv/reply packet, dhcp-ra-trust(4), permit dhcp adv/reply and ra packet. " ::= { saviObjectsIfEntry 4 } saviObjectsIfFilteringNum OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The max filtering number of the Interface" ::= { saviObjectsIfEntry 5 } -- Savi Binding Table saviObjectsBindingTable OBJECT-TYPE SYNTAX SEQUENCE OF SaviObjectsBindingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Binding State Table containing the state of binding between source address and anchor." ::= { saviObjects 3 } saviObjectsBindingEntry OBJECT-TYPE SYNTAX SaviObjectsBindingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing the state of binding between source address and anchor. Entries are keyed on the anchor, binding type, source IP address version, and source IP address." INDEX { saviObjectsBindingIpAddressType, saviObjectsBindingType, saviObjectsBindingIfIndex, saviObjectsBindingIpAddress } ::= { saviObjectsBindingTable 1 } SaviObjectsBindingEntry ::= SEQUENCE { saviObjectsBindingIpAddressType InetAddressType, saviObjectsBindingType INTEGER, saviObjectsBindingIfIndex InterfaceIndex, saviObjectsBindingIpAddress InetAddress, saviObjectsBindingMacAddr MacAddress, saviObjectsBindingState INTEGER, saviObjectsBindingLifetime TimeInterval, saviObjectsBindingRowStatus RowStatus } saviObjectsBindingIpAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "IP address type of the binding source IP" ::= { saviObjectsBindingEntry 1 } saviObjectsBindingType OBJECT-TYPE SYNTAX INTEGER { static(1), slaac(2), dhcp(3) } MAX-ACCESS not-accessible STATUS current DESCRIPTION "IP address assignment methods." ::= { saviObjectsBindingEntry 2 } saviObjectsBindingIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value that uniquely identifies the interface to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value of the IF-MIB's ifIndex." ::= { saviObjectsBindingEntry 3 } saviObjectsBindingIpAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The binding source IP address" ::= { saviObjectsBindingEntry 4 } saviObjectsBindingMacAddr OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-create STATUS current DESCRIPTION "The binding source mac address." ::= { saviObjectsBindingEntry 5 } saviObjectsBindingState OBJECT-TYPE SYNTAX INTEGER { start(1), live(2), detection(3), query(4), bound(5) } MAX-ACCESS read-create STATUS current DESCRIPTION "The state of the binding entry. " ::= { saviObjectsBindingEntry 6 } saviObjectsBindingLifetime OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-create STATUS current DESCRIPTION "The remaining lifetime of the entry. If saviObjectsBindingType=static, a value of 2147483647 represents infinity." ::= { saviObjectsBindingEntry 7 } saviObjectsBindingRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this row, by which new entries may be created, or old entries deleted from this table. An Entry can be created or deleted only when saviObjectsBindingType=static." ::= { saviObjectsBindingEntry 8 } -- Savi Filtering Table saviObjectsFilteringTable OBJECT-TYPE SYNTAX SEQUENCE OF SaviObjectsFilteringEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Filtering Table is used to filter packets." ::= { saviObjects 4 } saviObjectsFilteringEntry OBJECT-TYPE SYNTAX SaviObjectsFilteringEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing the filtering parameters. Entries are keyed on the anchor." INDEX { saviObjectsFilteringIpAddressType, saviObjectsFilteringIfIndex, saviObjectsFilteringIpAddress } ::= { saviObjectsFilteringTable 1 } SaviObjectsFilteringEntry ::= SEQUENCE { saviObjectsFilteringIpAddressType InetAddressType, saviObjectsFilteringIfIndex InterfaceIndex, saviObjectsFilteringIpAddress InetAddress, saviObjectsFilteringMacAddr MacAddress } saviObjectsFilteringIpAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "IP address type of the filtering source IP" ::= { saviObjectsFilteringEntry 1 } saviObjectsFilteringIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value that uniquely identifies the interface to which this entry is applicable. The interface identified by a particular value of this index is the same interface as identified by the same value of the IF-MIB's ifIndex." ::= { saviObjectsFilteringEntry 2 } saviObjectsFilteringIpAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The filtering source IP address" ::= { saviObjectsFilteringEntry 3 } saviObjectsFilteringMacAddr OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The filtering source mac address." ::= { saviObjectsFilteringEntry 4 } -- Conformance information saviConformance OBJECT IDENTIFIER ::= { saviMIB 2 } saviCompliances OBJECT IDENTIFIER ::= { saviConformance 1 } -- Compliance statements saviCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for entities which implement SAVI." MODULE MANDATORY-GROUPS { systemGroup, ifGroup, bindingGroup, filteringGroup } ::= { saviCompliances 1} saviGroups OBJECT IDENTIFIER ::= { saviConformance 2 } --Units of conformance systemGroup OBJECT-GROUP OBJECTS { saviObjectsSystemMode, saviObjectsSystemMaxDadDelay, saviObjectsSystemMaxDadPrepareDelay } STATUS current DESCRIPTION "The system group of objects containing savi system parameter." ::= {saviGroups 1} ifGroup OBJECT-GROUP OBJECTS { saviObjectsIfValidationStatus, saviObjectsIfTrustStatus, saviObjectsIfFilteringNum } STATUS current DESCRIPTION "The if group of objects containing the savi running parameters of each anchor." ::= {saviGroups 2} bindingGroup OBJECT-GROUP OBJECTS { saviObjectsBindingMacAddr, saviObjectsBindingState, saviObjectsBindingLifetime, saviObjectsBindingRowStatus } STATUS current DESCRIPTION "The binding group of objects containing the binding information of anchor and soure ip address. " ::= {saviGroups 3} filteringGroup OBJECT-GROUP OBJECTS { saviObjectsFilteringMacAddr } STATUS current DESCRIPTION "The filtering group of objects containing the filtering information of anchor and soure ip address. " ::= {saviGroups 4} END