-- DRAFT -- Copyright 1997-1998 by Allied Telesyn International, Inc. -- -- Name : ATDHCP.MIB -- Version : 1.0 -- Description : MIB for DHCP for Next Generation phoenix Switch. -- : This MIB will be used in Windows and UNIX Environment. -- : This could be made standard MIB file later by changing from -- : 'phoenix' to some standard name. This MIB is written keeping -- : Client in the perspective. More Objects for Server can be -- : added and applied for IETF as a draft. -- History : -- * 10-27-97 - Create. -- * 02-04-98 - changed the timers from INTEGER to TimeTicks. ATDHCP-MIB DEFINITIONS ::= BEGIN IMPORTS enterprises,Counter,IpAddress,TimeTicks FROM RFC1155-SMI DisplayString FROM RFC1213-MIB TRAP-TYPE FROM RFC-1215 OBJECT-TYPE FROM RFC-1212 alliedTelesyn,atiProduct,mibObject,atswitchMib FROM ATSWTCH2-MIB; -- The above IMPORTS can be moved to mgmt tree if this needs to be a standard. -- contact ram_bapu@alliedtelesyn.com for more information. -- -- General Definitions -- MacAddress ::= OCTET STRING (SIZE (6)) -- a 6 octet address BridgeId ::= OCTET STRING (SIZE (8)) -- the -- Bridge-Identifier -- as used in the -- Spanning Tree -- Protocol to uniquely identify a bridge. Its first two -- octets (in network byte order) contain a priority -- value and its last 6 octets contain the MAC address -- used to refer to a bridge in a unique fashion -- (typically, the numerically smallest MAC address -- of all ports on the bridge). -- Several objects in this MIB module represent values of -- timers used by the Spanning Tree Protocol. In this -- MIB, these timers have values in units of hundreths of -- a second (i.e. 1/100 secs). -- These timers, when stored in a Spanning Tree Protocol's -- BPDU, are in units of 1/256 seconds. Note, however, -- that 802.1D-1990 specifies a settable granularity of -- no more than 1 second for these timers. To avoid -- ambiguity, a data type is defined here as a textual -- convention and all representation of these timers -- in this MIB module are defined using this data type. An -- algorithm is also defined for converting between the -- different units, to ensure a timer's value is not -- distorted by multiple conversions. -- The data type is: Timeout ::= INTEGER -- a STP timer in units of 1/100 seconds -- To convert a Timeout value into a value in units of -- 1/256 seconds, the following algorithm should be used: -- -- b = floor( (n * 256) / 100) -- -- where: -- floor = quotient [ignore remainder] -- n is the value in 1/100 second units -- b is the value in 1/256 second units -- -- To convert the value from 1/256 second units back to -- 1/100 seconds, the following algorithm should be used: -- -- n = ceiling( (b * 100) / 256) -- -- where: -- ceiling = quotient [if remainder is 0], or -- quotient + 1 [if remainder is non-zero] -- n is the value in 1/100 second units -- b is the value in 1/256 second units -- -- Note: it is important that the arithmetic operations are -- done in the order specified (i.e., multiply first, divide -- second). atswitchDHCPGroup OBJECT IDENTIFIER ::= {atswitchMib 11} atswitchDHCPSysGroup OBJECT IDENTIFIER ::= {atswitchDHCPGroup 1 } atswitchDHCPTimerGroup OBJECT IDENTIFIER ::= {atswitchDHCPGroup 2 } --atswitchDHCPCurrentDHCPServerAddress OBJECT-TYPE -- SYNTAX IpAddress -- ACCESS read-only -- STATUS mandatory -- DESCRIPTION -- " -- The IP address of the DHCP server selected by the end of DHC -- Protocols 'REQUEST STATE' .DHCP client selects the server from the -- responses ( one or more ) in the SELECTSTATE and sends out a -- DHCPREQUEST to confirm the DHCP server selected. -- " -- ::= {atswitchDHCPSysGroup 1} atswitchDHCPCurrentDHCPClientAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION " Current IP address of the client. To start with,it might be null . This is filled by the server when sending a DHCPOFFER and the client uses the most comfortable offer from offers sent by different DHCP servers. A DHCPREQUEST packet is sent with the Client address agreed upon to the selected server ( Broadcast). Server Acks back this packet which is where Client/Server moves to the Bound state. Once reached into Bound state, the client address is made the official address on the client. " ::= {atswitchDHCPSysGroup 1} atswitchDHCPSubnetMask OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION " When the client/server reaches the BOUND state, this is one of the parameters set by the server. " ::= {atswitchDHCPSysGroup 2} atswitchDHCPCurrentRelayAgentAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION " The IP address of the DHCP relay Agent on the same subnet. Normally there will be no DHCP server on each of the subnet and this Relay Agent will act in sending server accross the subnets. There might not be any relay agent. This depends on the network Toplogy like where is the DHCP server and DHCP client. " ::= {atswitchDHCPSysGroup 3} atswitchDHCPNextDHCPServerAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION " The IP address of the next DHCP server to be used during bootstrap. This address is sent by the DHCP server in the messages DHCPOFFER, DHCPACK,DHCPNACK. " ::= {atswitchDHCPSysGroup 4} --atswitchDHCPTimerGroup OBJECT IDENTIFIER ::= {atswitchDHCPGroup 2 } atswitchDHCPLeaseTimer OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION " When the client/server reaches the BOUND state, this is one of the parameters set by the server. The lease time period in seconds for the DHCP client for using IP address on lease from the server. At the end of 50% of this timer a renewal request is sent by the client . This is the next Object atswitchDHCPRenewalTimer. " ::= {atswitchDHCPTimerGroup 1} atswitchDHCPReacquisitionTimer OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION " When the client/server reaches the BOUND state, this is one of the parameters set by the server. Mentioned in RFC2131 4.4.5 as T1, this renewal time period in secs for the DHCP client is for using IP address on lease from the server Once the Reacquisition Timer period in secs afetr the lease period is reached, the client sends a DHCPREQUEST to the DHCP server reque- -sting for renewal of the lease. Default would be 50% of the Lease timer which is represeneted by the above object. The client moves from BOUND to RENEW state once the DHCPREQUEST is sent after time T1 secs is passed from the start of to release time. T1 is always less than T2 ( see below for 'T2') which is lesss than the lease Timer period. " ::= {atswitchDHCPTimerGroup 2} atswitchDHCPExpirationTimer OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION " When the client/server reaches the BOUND state, this is one of the parameters set by the server. Mentioned in RFC2131 4.4.5 as T2,this Expiration time period in secs is the time period in secs during which DHCP has gone through the BOUND->RENEWAL state. After T1 secs and when the state machine reaches T2 secs, ( T1 < T2 < lease period), DHCP client sends another DHCPREQUEST to the server asking the server to renew the lease for the IP parameters. By default it would be 87.5% of the Lease timer .If there is DHCPACK then the DHCP client moves from REBIND to BOUND. Else it moves to INIT state where it starts all over again sending a request for DHCPDISCOVER. " ::= {atswitchDHCPTimerGroup 3 } END