<?xml version="1.0" encoding="US-ASCII" ?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
    <!ENTITY rfc2119 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
       <!ENTITY rfc2578 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2578.xml'>
       <!ENTITY rfc2579 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2579.xml'>
       <!ENTITY rfc2580 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2580.xml'>
       <!ENTITY rfc3635 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3635.xml'>
       <!ENTITY rfc4188 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4188.xml'>
       <!ENTITY rfc1525 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1525.xml'>
       <!ENTITY rfc2863 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2863.xml'>
       <!ENTITY rfc2864 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2864.xml'>
       <!ENTITY rfc3410 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3410.xml'> 
       <!ENTITY rfc4836 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4836.xml'>
]>


<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<?rfc rfcedstyle="yes" ?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<!--<?rfc iprnotified="yes" ?>-->
<!--<?rfc strict="yes" ?>-->

<rfc number="4837" category="std">
    <front>
        <title abbrev="Managed Objects of EPON">Managed Objects of Ethernet Passive Optical Networks (EPON) </title>
		
		   <author initials='L.K' surname="Khermosh" fullname='Lior Khermosh'>
            <organization>PMC-SIERRA</organization>
	    <address>
	    <postal>
        <street>Kohav Hertzelia bldg,</street>
        <street>4 Hasadnaot St.,</street>
        <city>Hertzliya Pituach,</city>
        <code>46120</code>
        <country>ISRAEL</country>
        </postal>
     <phone>+972-9-9628000 Ext: 302</phone>
     <facsimile>+972-9-9628001</facsimile>
    <email>lior_khermosh@pmc-sierra.com</email>
    </address>
        </author>

	   <date month="June" year="2007"/>
        <area>Ethernet Interfaces and Hub MIB Working Group</area>
        <workgroup>EPON MIB WG</workgroup>
    	<abstract> <t> This document defines a portion of the Management Information Base
(MIB) for use with network management protocols in TCP/IP based
Internets. In particular, it defines objects for managing interfaces
   that conform to the Ethernet Passive Optical Networks (EPON) standard
   as defined in the IEEE Std 802.3ah-2004, which are extended capabilities to the
   Ethernet like interfaces.   </t> </abstract>


<!----------------------------------------------------------------->
 	
    </front>


<middle>

<section title="The Internet-Standard Management Framework">
        <t>For a detailed overview of the documents that describe the current
Internet-Standard Management Framework, please refer to Section 7 of
RFC 3410 <xref target="RFC3410"/>.

Managed objects are accessed via a virtual information store, termed
the Management Information Base or MIB.  MIB objects are generally
accessed through the Simple Network Management Protocol (SNMP).
Objects in the MIB are defined using the mechanisms defined in the
Structure of Management Information (SMI).  This memo specifies a MIB
module that is compliant to the SMIv2, which is described in STD 58,
RFC 2578 <xref target="RFC2578"/>; STD 58, RFC 2579 <xref target="RFC2579"/>; and STD 58, RFC 2580
<xref target="RFC2580"/>.</t>
</section>

	<section title="Overview">
            <t>This document defines a portion of the Management Information Base
(MIB) for use with network management protocols in TCP/IP based
Internets. In particular, it defines objects for managing interfaces that conform to the Ethernet Passive Optical Networks (EPON) standard as defined in <xref target="802.3ah"/>, which are extended capabilities to the Ethernet like interfaces. The document contains a list
of management objects based on the attributes defined in the relevant parts of <xref target="802.3ah"/> Annex 30A, referring to EPON. </t>

<section title="Terminology and Abbreviations"> 

        <t>
 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 <xref target="RFC2119"/>.</t>

<t>ACK - Acknowledge  </t>
<t>BER - Bit Error Rate  </t>
<t>BW - Bandwidth</t>
<t>CO - Central Office</t>
<t>CPE - Customer Premises Equipment</t>
<t>CRC - Cyclic Redundancy Check</t>
<t>EFM - Ethernet First Mile</t>
<t>EPON - Ethernet Passive Optical Network</t>
<t>FCS - Frame Check Sequence</t>
<t>FEC - Forward Error Correction</t>
<t>GMII - Gigabit Media Independent Interface</t>
<t>LAN - Local Area Network</t>
<t>LLID - Logical Link Identifier</t>
<t>MAC - Media Access Control</t>
<t>Mbps - Megabit per second</t>
<t>MDI - Medium Dependent Interface</t>
<t>MDIO - Management Data Input/Output</t>
<t>MPCP - Multi-Point Control Protocol</t>
<!-- RFC Editor Comment: Multi-Point (with a hyphen) and multipoint &
Multipoint (without the hyphen) are used throughout the text.  What is
the preferred representation of this term?  Is it possible to make
them consistent or do they need to appear in various forms?  We note
that the IEEE seems to use Multi-Point Control Protocol.  However,
MPLS and P2MP seem to use Multipoint as one word.  -->
<!-- Editor response: Obviously it is meant as the same term. Used as
in various forms in the original text and therefore I used the 
same terminology. I am using it consistently here in the risk of
deferring from the original text.   -->
<t>MP2PE - Multi-Point to Point Emulation</t>
<t>OAM - Operation Administration Maintenance</t>
<t>OLT - Optical Line Terminal (Server unit of the EPON)</t>
<t>OMP - Optical Multi-Point</t>
<t>ONU - Optical Network Unit (Client unit of the EPON)</t>
<t>P2MP - Point-to-Multipoint</t>
<t>P2PE - Point-to-Point Emulation</t>
<t>PCS - Physical Coding Sublayer</t>
<t>PHY - Physical Layer</t>
<t>PMA - Physical Medium Attachment</t>
<t>PMD - Physical Medium Dependent</t>
<t>PON - Passive Optical Network</t>
<t>RS - Reconciliation Sublayer</t>
<t>RTT - Round Trip Time</t>
<t>SLA - Service Level Agreement</t>
<t>SLD - Start of LLID Delimiter</t>
<t>TDM - Time Division Multiplexing</t>
<t>TQ - Time Quanta</t>
        
</section>

<section title="EPON Architecture Highlights"> 

<section title="Introduction"> <t>

The EPON standard, as defined in <xref target="802.3ah"/>, defines the
physical media (Layer 1) and media access (Layer 2) of the EPON
<!-- RFC Editor Comment: in the above, should "layer" be capitalized or lowercased? -->
<!-- Editor response: Capitalized -->
interface. The EPON is a variant of the Gigabit Ethernet protocol for
the Optical Access. The Optical Access topology is based on passive
optical splitting topology. 
The link of a Passive Optical Network (PON) is based on a single,
shared optical fiber with passive optical splitters dividing the
single fiber into separate subscribers. </t> 

<t>The Optical Line Terminal (OLT) is the server unit of the network,
located at the Central Office (CO).</t> 
<t>The Optical Network Unit (ONU) is the client unit of the network,
located at the Customer Premises Equipment (CPE).</t> 

<figure>
<preamble> The following diagram describes the PON topology: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
            Device with
            one or more P2MP
            interfaces such as OLT
            for EPON                       An EPON          IP host
            ------- OLT          ONU       "modem"          --------
 Other IEEE |     | interface |  interface ------ Other IEEE|      |
 interface  |     |-------\----------------|    | interface |      |
 ===========|     |        \               |    |===========|      |
            |     |         \              ------           --------
            |     |          \             ------           --------
            .     .           \------------|    |           |      |
            |     |------\                 |    |===========|      |
            |     |       \                ------           --------
            -------        \ etc
 ]]> 
   </artwork>
  <postamble /> 
  </figure>
<?rfc needLines="100" ?>
<t>The IEEE layering architecture of an EPON interface is defined in the diagram of Figure 56.2 <xref target="802.3ah"/>.
The following clauses in the <xref target="802.3ah"/> define the corresponding layers of an EPON interface:</t>
<t>clause 30 - Management</t>
<t>clause 60 - PMD for EPON media (Burst PMD)</t>
<t>clause 64 - MPCP (Multi-Point Control Protocol) - defines the Multi-Point architecture, and control protocol for the media access of EPON.</t>
<t>clause 65 - </t>
<t>   a) Virtual links definition for the EPON</t>
<t>   b) FEC</t>
<t>   c) PMA for the EPON.</t>

 </section>

<section title="Principles of Operation"> <t>
The specification of the EPON interface is based on the specification
of the gigabit Ethernet interface as described in <xref
target="802.3"/>, clauses 35 and 36. The Ethernet MAC is working in
gigabit rate. The media interface to the MAC is through the GMII
interface, as described in clause 35, and the PCS layer is based on the
gigabit Ethernet PCS as described in clause 36. The special EPON
layers are added to the Ethernet layering in the following places:</t>

<t>The MPCP is placed in the MAC control layer, providing the EPON
control protocol. The Emulation layer, located at the RS
(Reconciliation Sublayer), creates virtual private path to each
ONU. The FEC layer is located between the PCS and PMA layers,
enhancing reach and split performance of the optical link.</t> 

<figure>
<preamble> The following diagram describes the layering model of an EPON interface: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
   +==========================================+
   |               Higher layers              |
   +==========================================+
   |               802.1D Bridge              |
   +==========================================+
   | MAC client|        ...        |MAC client|
   +==========================================+
   |           MAC Control - (MPCP)           |            *NEW*
   +==========================================+
   |    MAC    |        ...        |    MAC   |
   +==========================================+
   |           P2P Emulation (P2PE)           |            *NEW*
   +==========================================+
                   |            |       
                   |    GMII    |       
                   |            |       
   +==========================================+
   |                    PCS                   |
   +==========================================+
   |                    FEC                   |            *NEW*
   +==========================================+
   |                    PMA                   |  *Enhanced parameters
   +==========================================+    for EPON*
   |                    PMD                   |  *Enhanced parameters
   +==========================================+    for EPON*
                   |            |       
                   |    MDI     |       
                   |            |       
                 /===================/
                /       Media       /
               /===================/
]]> 
   </artwork>
  <postamble /> 
  </figure>
 </section>

<section title="The Physical Media"> <t>
The physical link is a fiber optical link. The OLT and ONUs are
connected through passive optical splitters. Downlink denotes the
transmission from the OLT to the ONUs. Uplink denotes the transmission
from the ONUs to the OLT. Uplink and downlink are multiplexed using
separated wavelengths on the same fiber. The downlink is a broadcast
medium where the OLT transmits the data to all ONUs. The uplink is a
shared transmission medium for all of the ONUs. The uplink access is
based on time division multiplexing (TDM) and the management of the
TDM media access is defined by the Multi-Point Control Protocol
(MPCP). The MPCP is a control protocol based on an inband packet
messaging. The OLT sends control messages (GATE messages) allowing
ONUs to transmit, defining when the transmission occurs and what is
its duration. These messages define the transmission order and the
amount of BW for each ONU. A scheduling algorithm at the OLT, which is
not defined in the <xref target="802.3ah"/>, is responsible for
allocating the BW and controlling the delay of each ONU according to
its SLA. 
</t>
 </section>

<section title="PMD Specifications"> <t>
PMD specifications select the same optical wavelength plan as the 
<xref target="ITU-T.G.983"/>.  
<!-- RFC Editor Comment: this sentence is incomplete.  Does this mean
that "PMD specifications select the same optical wavelength plan as
the [ITU-T.G.983]"?  -->
<!-- Editor response: yes. Corrected-->
The transceivers are derivatives of existing Ethernet
optical transceivers, with dual wavelength on a single fiber, and
extended burst capabilities for the uplink. The uplink burst
capability is the burst transmission functionality for the ONUs and
burst reception functionality for the OLT. The <xref
target="802.3ah"/> selected very relaxed burst parameters to reduce
the device cost of EPON products. 
</t>
 </section>

<section title="Point-to-Point Emulation"> <t>
The downstream is a broadcast link, which means that the OLT transmission is
shared for all ONUs. The sharing of the transmission of the OLT has
some negative privacy aspects and should be limited to broadcast
traffic in nature only. The traffic dedicated to each ONU should not
be shared. The solution provided by <xref target="802.3ah"/> is to
partition the EPON link, in a virtual manner, between the ONUs. Each
ONU has a dedicated virtual link to the OLT. The <xref
target="802.3ah"/> also defines an additional link for broadcast
transmission. The medium becomes an aggregation of point-to-point
tunnels. The OLT cannot preserve its EPON interface as a single
interface connected to N devices (following the properties of the
physical interface). The EPON interface of the OLT is partitioned into
separate virtual interfaces; an interface for each virtual link. Hence,
the OLT behaves like a device with N virtual ports (and an additional
port for the broadcast transmission). The additional
single-copy-broadcast channel (tagged as all one LLID) is added to
allow the broadcast transmission within a single copy to all ONUs,
preserving the inherent advantage of BW efficiency of the PON shared
media. The ONUs filter the downlink traffic that is not intended for
their reception, according to the virtual link marking. An LLID tag is
attached at the preamble of the Ethernet packet denoting the virtual
link. The LLID marks the destination port in the downstream and source
port in the upstream. </t> 
<t>The virtual links concept is also used to avoid a violation of the
<xref target="802.1d"/> bridging rules for peer-to-peer traffic in the
PON. Peer-to-peer traffic is traffic between ONUs in the same PON. The
OLT cannot preserve the EPON interface as a single interface,
connected to N devices, and allow traffic between these devices without
violating the bridging rules. The source address and destination
address of the peer-to-peer traffic are behind the same port and
therefore the traffic should be discarded. The separation of the ONUs
into virtual links solves this issue. The OLT has N virtual ports for
the single physical EPON port. A bridge sees a single MAC Client for
every link pair.</t> 
<t>
The private paths concept solves the networking problems and provides subscriber isolation.
</t>
<t>As the tunneling is only a virtual tunneling, there is a single
physical interface and a single physical layer for the device so that
some attributes are shared. For example, the interface has a single
local MAC address.</t> 
<t> The virtual tunneling for an OLT with 3 ONUs is illustrated in the following diagram.
</t>

<figure>
<preamble/> 
<artwork xml:space="preserve">
<![CDATA[ 
                      Trunk Line
                          |
                          |
                          |
                         \|/ 
   +===============================================+
   |                 802.1D Bridge                 |
   +===============================================+
   | MAC client1|          ...         |MAC client3|
   +===============================================+
   |                     MP2PE                     |            
   +===============================================+
   |                      PHY                      |            
   =================================================
          |                 |                 |
          |                 |                 |
         \|/               \|/               \|/
   +============+    +============+    +============+
   |    PHY     |    |     PHY    |    |     PHY    |
   +============+    +============+    +============+
   |   MP2PE    |    |    MP2PE   |    |    MP2PE   |
   +============+    +============+    +============+
   | MAC client |    | MAC client |    | MAC client |
   +============+    +============+    +============+
   |    PHY     |    |     PHY    |    |     PHY    |
   +============+    +============+    +============+
         /|\               /|\               /|\
          |                 |                 |
          |                 |                 |
          |                 |                 |
     Subscriber1       Subscriber2       Subscriber3
]]> 
   </artwork>
  <postamble /> 
  </figure>

 </section>

<section title="Principles of the MPCP"> <t>
The EPON standard defines a media access control of an optical Access
network. The Access network has some substantial differences from the
legacy LAN for which the Ethernet was designed. The differences lie
mainly in the provisioning of the network. An Access network is an
administrated environment, with an operator providing the service and
subscribers consuming it. The operator is controlling the network and
managing its traffic. For instance, BW is controlled and subscribers
are billed for services. The MPCP protocol divides the Ethernet
interfaces into two unequal types of network units. The first
interface is an OLT interface, which is a server unit, controlling the
network. The second interface is an ONU interface, which is a client
unit, participating in the network. 
</t>
<t>The OLT, which is the server unit, manages the network. The MPCP
controls the TDM transmission of the uplink. The MPCP is implemented
at the MAC control layer and the MPCP messages are MAC control
messages using the 0x8808 Ethertype. These messages are not forwarded
out of the MAC. 
</t>
<t>
A concept of time must exist in the protocol in order to schedule the
uplink transmission. A timestamp, which is set by the OLT and
synchronized between the network units, is passed through the MPCP
messages. The timestamp is also used to measure the RTT of each
ONU. RTT is compensated by the OLT in the generation of the grants
for the uplink transmission. The difference of incoming timestamp to
local time allows the OLT to calculate the RTT. RTT compensation is
needed as the RTT in an Access network can have a significant
value. The standard allows the network to reach a 20 km distance, which
is equivalent to a 200 usec RTT (25 Kbytes of data).  
</t>
<t>The TDM control is done using GATE messages. These messages define,
for each ONU, the time for transmission and the length of
transmission. The RTT is reduced from the transmission time in the
GATE message to shift the transmission time of the ONU in the opposite
direction.</t> 
<t>
A scheduling algorithm at the OLT, which is not defined in the <xref
target="802.3ah"/>, is responsible for dividing the BW and controlling
the transmission delay of each ONU according to its SLA. The MPCP
defines a closed loop operation in order for this algorithm to be
efficient. The MPCP allows the ONUs to report on the amount of BW they
require for transmission using a special REPORT message. This allows
allocating BW to an ONU only when requested, relying on the
statistical burst property of the traffic, and allowing different peak
BW for different ONUs at different times; hence, allowing
oversubscription of the BW. The REPORT message reports the amount of
data waiting in the ONU queues. </t> 
<t>
In addition, the MPCP defines a protocol of auto-discovery and registration of ONUs.  
</t>

<figure>
<preamble> The registration process is defined in the diagram below: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
   OLT                                          ONU
    |                                            |
    |          Discovery Gate message           \|
    |--------------------------------------------|
    |                                           /|
    |                                            |
    |/         Register Request message          |
    |--------------------------------------------|
    |\                                           |
    |                                            |
    |          Register message                  |
    |           (assigning LLID)                \|
    |--------------------------------------------|
    |                                           /|
    |                                            |
    |               Gate message                \|
    |--------------------------------------------|
    |                                           /|
    |                                            |
    |/         Register ACK message              |
    |--------------------------------------------|
    |\                                           |
    |                                            |
    |                                            |
]]> 
   </artwork>
  <postamble /> 
  </figure>

<t> A new ONU requests to register (sends a REG_REQUEST message) in a
special discovery grant, allocated for that by the OLT. During that
time, more than one ONU might try to register. A collision in
transmission might occur, as the RTT of the new ONUs is not yet
known. A random backoff mechanism of the transmission is used to
schedule the following registration requests to avoid these
collisions. When the OLT receives a REG_REQUEST message of an ONU and
approves this ONU, then it sends a REGISTER message to this ONU
defining its LLID. From that point, the ONU transmission is scheduled
by its LLID, knowing the RTT, and no collision can occur. The ONU
replies with a REGISTER_ACK message and the registration process of
the MPCP ends. Higher layer protocols may be needed to
authenticate the ONU and allow it to participate in the network. 
</t>
 </section>

<section title="Forward Error Correction (FEC)"> <t>

The FEC is defined to enhance the link budget of the PON. As each
splitter attenuates the optical signal, the number of the splits and
the distance are limited by the link budget. Hence an FEC that
improves the link budget has a benefit.  The FEC code used is the
RS(239,255,8), similar to the FEC code in <xref target="ITU-T.G.975"/>,
improving the BER from 1E-4 to 1E-12.</t> 
<t> The FEC parity encapsulation is based on the framing of the
Ethernet packet. The Ethernet packets are spaced by MAC rate
adaptation, and the parity bytes are inserted after the packet in
the provided space. </t> 
<t> As the start and end of packet codewords also define the FEC
boundaries, and they are outside the FEC protection, they are replaced
by a series of symbols to reduce their vulnerability to errors.</t> 
<figure>
<preamble> The following diagram presents an FEC-protected frame: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
+-------------------------------------------------------------------+
|       |              |           |     |       |          |       |
| S_FEC | Preamble/SFD |   Frame   | FCS | T_FEC |  Parity  | T_FEC |
|       |              |           |     |       |          |       |
+-------------------------------------------------------------------+
]]> 
   </artwork>
  <postamble /> 
  </figure>

<t> The FEC is added in a separate layer between the PCS and PMA layers of the <xref target="802.3"/>.</t>
<t> The FEC layer introduces a fixed delay in receive path and transmit path.</t>
<t> The FEC layer is optional.</t>
 </section>
 </section>

<section title="Management Architecture"> <t>

Each one of the EPON layers is accompanied by a management
interface that is controlled through clause 30 of the <xref
target="802.3ah"/>. As the <xref target="802.3ah"/> specification may be used
for different applications, and some of the clauses may be used
separately, the IEEE management clause allocates for each one of them
a separate package. The MIB document follows this partition.</t> 


<figure>
<preamble> The following diagram presents the relation of the MIB groups to the <xref target="802.3ah"/> layers: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
+===========================+
|       Higher layers       |
+===========================+
|       802.1D Bridge       |
+===========================+
|MAC client| ... |MAC client|
+===========================+    \ +=============================+
|   MAC Control - (MPCP)    |----- |MpcpObjects| ... |MpcpObjects|
+===========================+    / +=============================+
|   MAC    | ... |   MAC    |           
+===========================+    \ +=============================+
|    P2P Emulation (P2PE)   |----- |OmpEmulat  |     |OmpEmulat  |
+===========================+    / |ionObjects | ... |ionObjects |
          |        |               +=============================+
          |  GMII  |  
          |        |      
+===========================+
|            PCS            |
+===========================+    \ +=============================+
|            FEC            |----- |FecObjects | ... |FecObjects |
+===========================+    / +=============================+
|            PMA            |      
+===========================+
|            PMD            |
+===========================+
          |        |      
          |  MDI   |      
          |        |      
      /===============/
     /     Media     /
    /===============/
]]> 
   </artwork>
  <postamble/> 
  </figure>

<t>The association is straightforward for the ONU interface. There is
one logical and one physical interface, and a single copy exists for
each layer that can be remotely queried by the OLT.</t> 
<t> At the OLT there is a single physical interface and N virtual
interfaces for the virtual links of the ONUs (and another virtual
interface for the broadcast virtual link). As can be seen from the
layering diagram above, the MAC layer is virtually
duplicated. Therefore, in this document it was selected that the
management of a virtual interface is like a physical interface, an
interface index is allocated for each one of the virtual links, and an
additional interface index is allocated for the OLT.</t> 

<t> To illustrate the interface modeling consider two devices; the first device has two
       physical interfaces, is typically located at
       a consumer's site, and is called an "ONU modem".</t> 

<figure>
<preamble> An "ONU modem" is shown in the figure below: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
                         --------
          ONU interface | ONU   | 10 megabit interface
          --------------| modem |-------------------- 
                        ---------
]]> 
   </artwork>
  <postamble/> 
  </figure>
       

<t>        This device would have 3 entries in the IF table, and one IF stack entry; for example:</t>

       <t>   ifIndex=1 - interface for 10 megabit interface</t>
       <t>   ifIndex=2 - interface for the optical interface</t>
       <t>   ifIndex=200 - interface for the ONU interface</t>
 <t> And then in the IF stack table:</t>
    <t>   ifStackHigherLayer=200, ifStackLowerLayer=2 - map between
           the physical and the ONU</t>

<t> 
       The second device has three physical interfaces,
       is typically located at the provider's site, and
       may be called a "headend". </t>

<figure>
<preamble> A "headend" is shown in the figure below: </preamble> 
<artwork xml:space="preserve">
<![CDATA[ 
                            ---------
          1st OLT interface | Head  | gigE interface
          ------------------| end   |-------------------- 
                            |       |
          ------------------|       |
          2nd OLT interface |       |
                            ---------
]]> 
   </artwork>
  <postamble/> 
  </figure>

<t>	   
       This device would have 5 entries (when there are no attached ONUs)
       in the IF table, for example:</t>
          <t>ifIndex=1 - interface for gigE interface</t>
          <t>ifIndex=2 - interface for 1st optical interface</t>
          <t>ifIndex=3 - interface for 2nd optical interface</t>
          <t>ifIndex=265535 - interface for the 1st OLT broadcast interface</t>
          <t>ifIndex=365535 - interface for the 2nd OLT broadcast interface</t>
<t> And then in the IF stack table:</t> 
  <t>     ifStackHigherLayer=265535, ifStackLowerLayer=2 - map between
           the 1st physical and its broadcast interface</t> 
 <t>      ifStackHigherLayer=365535, ifStackLowerLayer=3 - map between
           the 2nd physical and its broadcast interface</t> 

<t>
       If two ONUs connected to the first OLT interface, then
       for example, the following entries would be added to
       the IF table:</t>
         <t> ifIndex=200001 - interface for the 1st ONU of 1st OLT</t>
          <t>ifIndex=200002 - interface for the 2nd ONU of 1st OLT</t>
<t>  And in the IF stack table:</t>
<t>       ifStackHigherLayer=200001, ifStackLowerLayer=2 - map between
           the 1st physical and 1st ONU</t>
<t>       ifStackHigherLayer=200002, ifStackLowerLayer=2 - map between
           the 1st physical and 2nd ONU</t>

<t>
 For each physical interface, there would be an entry (ifIndex) in
       the tables of the interface MIB module <xref target="RFC2863"/>, MAU MIB module <xref target="RFC4836"/>, and Etherlike
       MIB module <xref target="RFC3635"/>. Additionally, there would be
       entries (ifIndexes) for the virtual interfaces of the OLT
       interface.  
 The justification for the additional allocation of indexes is that
 the virtual interfaces are quite well distinguished, as they connect
 different physical ONUs from the OLT side. For instance, there is a
 meaning for separate bad frames counter or bad octets counter for
 each virtual link, as the ONUs can be differently distanced. This is
 quite similar to a case of separate physical interfaces.</t>
 
 <t>The same partition concept exists for the MIB module of this
 document. Each row in the tables are indexed according to the ifIndex;
 specifically, there is a row for each virtual link. There are some
 control objects that are shared and are the same for the virtual
 interfaces (and they should have the same value for each ifIndex), but
 most of the objects have different values for N+1 logical interfaces
 at the OLT. This is done for each MIB group. It is a bit different
 from the <xref target="802.3ah"/> layering diagram, which presents the
 P2MP layer as a single layer, while duplicating the MAC and MAC client
 layers (please see the diagram above). However, from a management
 perspective, it is more convenient and neat to partition the
 management of the layers for the virtual links, as the atomic managed
 entity is the virtual link. It is also convenient to use the
 interface index of the virtual link for that purpose, as it is
 already used to index the rows of the virtual links at the Interface,
 MAU, and etherLike interfaces MIBs.</t> 


 </section>
  </section>

	<section title="MIB Structure">
            <t>This document defines the DOT3 EPON MIB module.
The DOT3 EPON MIB module defines the objects used for management of
the <xref target="802.3ah"/> Point-to-Multipoint (P2MP) interfaces. 
These MIB objects are included in four groups.</t>
<t>i) The Multi-Point Control Protocol (MPCP) MIB objects - MIB
objects related to <xref target="802.3ah"/>, clause 64, Multi-Point
Control Protocol attributes. The following tables are presented in
this group: </t> 
<t>The dot3MpcpControlTable defines the objects used for the configuration and
status indication, which are per logical link, of MPCP compliant interfaces. </t>
<t>
The dot3MpcpStatTable defines the statistics objects that are per logical link, of MPCP compliant interfaces.</t>
<t>The operational mode of an OLT/ONU for the tables is defined by the dot3MpcpMode object in the dot3MpcpControlTable.
</t>
<t> <vspace blankLines="1" />
ii) The OMPEmulation MIB objects - MIB objects related to <xref target="802.3ah"/>, clause
65, point-to-point emulation attributes. The following tables are presented in this group: </t>
<t>
The dot3OmpEmulationTable defines the objects used for the
configuration and status indication, which are per logical links, of OMPEmulation compliant interfaces.</t>
<t>
<?rfc needLines="5" ?>
The dot3OmpEmulationStatTable defines the statistics objects that are per logical link, of OMPEmulation compliant interfaces.</t>
<t> The operational mode of an OLT/ONU for the tables is defined by the dot3OmpEmulationType object in the dot3OmpEmulationTable.
</t>
<t> <vspace blankLines="1" />
iii) The FEC MIB objects -
MIB objects related to <xref target="802.3ah"/>, clause 60 and clause 65, EPON FEC attributes. The following table is presented in this group:
</t> <t> 
The dot3EponFecTable defines the objects used for the configuration
and status indication, which are per logical link, of FEC EPON compliant interfaces.</t>

<t> <vspace blankLines="1" />
iv) The EPON extended package MIB objects - MIB objects used for configuration and
status indication with extended capabilities of the EPON interfaces. The following tables are presented in this group: </t>
<t>
The dot3ExtPkgControlTable defines the objects, which are per logical link, used for the configuration and status indication of EPON compliant interfaces.</t>
<t>
The dot3ExtPkgQueueTable defines the objects, which are per logical link, and per queue, used for the configuration and status indication of the ONU queues reported in the MPCP REPORT message, of EPON compliant interfaces.
</t> <t>
The dot3ExtPkgQueueSetsTable defines the objects, which are per logical link, per queue, and per queue_set, used for the configuration and status indication of the ONU queue_sets reported in the MPCP REPORT message, of EPON compliant interfaces.
</t> <t>
The dot3ExtPkgOptIfTable defines the objects, which are per logical link, used for the control and status indication of the optical interface of EPON compliant interfaces.
</t>

<t><vspace blankLines="1" />
 As described in the architecture section, each row in the tables is
 indexed according to the ifIndex; specifically, there is a row for
 each virtual link. There are a few control objects that are shared
 and have the same value for the virtual interfaces (and they should
 have the same value for each ifIndex), but most of the objects have
 different values for N+1 logical interfaces at the OLT. This is done
 for each MIB group. It is a bit different from the <xref
 target="802.3ah"/> layering diagram, which presents the P2MP layer as
 a single layer while duplicating the MAC and MAC client
 layers.  However, from a management perspective, it is more convenient and
 neat to partition the management of the layers for the virtual links,
 as the atomic managed entity is the virtual link. It is also
 convenient to use the interface index of the virtual link for that
 purpose, as it is already used to index the rows of the virtual links
 at the Interface, MAU, and etherLike interfaces MIBs.</t> 

<t>
For example, provided below are the values of the MPCP control table of an OLT with 3 registered ONUs:</t>
 <t>The table below presents the MPCP control table of ONU1 in working mode. A single row exists in the table.</t>

 <texttable anchor='A'>
 <ttcol align='left'>MPCP control MIB object</ttcol>
<ttcol align='left'>Value</ttcol>
<c>ifIndex</c>						<c>100</c>
<c>dot3MpcpOperStatus</c>			<c>true</c>
<c>dot3MpcpAdminState</c>			<c>true</c>
<c>dot3MpcpMode </c>				<c>onu</c>
<c>dot3MpcpSyncTime</c>				<c>25</c>
<c>dot3MpcpLinkID</c>				<c>1</c>
<c>dot3MpcpRemoteMACAddress</c>		<c>OLT_MAC_Address</c>
<c>dot3MpcpRegistrationState</c>	<c>registered</c>
<c>dot3MpcpTransmitElapsed</c>		<c>10</c>
<c>dot3MpcpReceiveElapsed</c>		<c>10</c>
<c>dot3MpcpRoundTripTime</c>		<c>100</c>
<postamble/>
</texttable>
<t>OLT_MAC_Address is the MAC address of the OLT EPON interface.</t>

<t>The creation of the rows of the ONU interface is done at initialization. </t>
<t>For example, provided below are the values for the MPCP control table of the ONU, after initialization, before registration.</t>

<t>The table below presents the MPCP control table of ONU1 after initialization. A single row exists in the table.</t>
<texttable anchor='C'>
<ttcol align='left'>MPCP control MIB object</ttcol>
<ttcol align='left'>Value</ttcol>
<c>ifIndex</c>						<c>100</c>
<c>dot3MpcpOperStatus</c>			<c>true</c>
<c>dot3MpcpAdminState</c>			<c>true</c>
<c>dot3MpcpMode </c>				<c>onu</c>
<c>dot3MpcpSyncTime</c>				<c>0</c>
<c>dot3MpcpLinkID</c>				<c>0</c>
<c>dot3MpcpRemoteMACAddress</c>		<c>00:00:00:00:00:00</c>
<c>dot3MpcpRegistrationState</c>	<c>unregistered</c>
<c>dot3MpcpTransmitElapsed</c>		<c>0</c>
<c>dot3MpcpReceiveElapsed</c>		<c>0</c>
<c>dot3MpcpRoundTripTime</c>		<c>0</c>
<postamble/>
</texttable>

 <t>The table below presents the MPCP control table of the OLT in working mode. Four rows exist in the table associated with the virtual links.</t>
 <texttable anchor='B'>
        <ttcol align='left'>MPCP control MIB object</ttcol>
        <ttcol align='left'>Value</ttcol>
        <ttcol align='left'>Value</ttcol>
        <ttcol align='left'>Value</ttcol>
        <ttcol align='left'>Value</ttcol>
<c>ifIndex</c>					  <c>100001</c> <c>100002</c> <c>100003</c> <c>165535</c>
<c>dot3MpcpOperStatus</c>		  <c>true</c> <c>true</c> <c>true</c> <c>true</c>
<c>dot3MpcpAdminState</c>		  <c>true</c> <c>true</c> <c>true</c> <c>true</c>
<c>dot3MpcpMode </c>			  <c>olt</c> <c>olt</c> <c>olt</c> <c>olt</c>
<c>dot3MpcpSyncTime</c>			  <c>25</c> <c>25</c> <c>25</c> <c>25</c>
<c>dot3MpcpLinkID</c>			  <c>1</c> <c>2</c> <c>3</c> <c>65535</c>
<c>dot3MpcpRemoteMACAddress</c>   <c>ONU1_MAC_Address</c> <c>ONU2_MAC_Address</c> <c>ONU3_MAC_Address</c>		<c>BRCT_MAC_Address</c>
<c>dot3MpcpRegistrationState</c>   <c>registered</c> <c>registered</c> <c>registered</c> <c>registered</c>
<c>dot3MpcpTransmitElapsed</c>     <c>10</c> <c>10</c> <c>10</c> <c>10</c>
<c>dot3MpcpReceiveElapsed</c>      <c>10</c> <c>10</c> <c>10</c> <c>10</c>
<c>dot3MpcpRoundTripTime</c>       <c>100</c> <c>60</c> <c>20</c> <c>0</c>
        <postamble/>
    </texttable>
<t>ONU1_MAC_Address is the MAC address of ONU1 EPON interface.</t>
<t>ONU2_MAC_Address is the MAC address of ONU2 EPON interface.</t>
<t>ONU3_MAC_Address is the MAC address of ONU3 EPON interface.</t>
<t>BRCT_MAC_Address is the MAC address of the broadcast EPON interface, which is the OLT MAC address.</t>
<t>
The creation of the rows of the OLT interface and the broadcast virtual interface is done at initialization.</t>

<t> The creation of rows of the virtual interfaces at the OLT is done when the link is established (ONU registers) and the deletion is done when the link is deleted (ONU deregisters).</t>

<t>For example, provided below are the values of the MPCP control table of the OLT after initialization, before the ONUs register.</t>

 <t>The table below presents the MPCP control table of the OLT after initialization. A single row exists in this table associated with the virtual broadcast link.</t>
 <texttable anchor='D'>
        <ttcol align='left'>MPCP control MIB object</ttcol>
        <ttcol align='left'>Value</ttcol>
<c>ifIndex</c>						<c>165535</c>
<c>dot3MpcpOperStatus</c>			<c>true</c>
<c>dot3MpcpAdminState</c>			<c>true</c>
<c>dot3MpcpMode </c>				<c>olt</c>
<c>dot3MpcpSyncTime</c>				<c>25</c> 
<c>dot3MpcpLinkID</c>				<c>65535</c>
<c>dot3MpcpRemoteMACAddress</c>		<c>BRCT_MAC_Address</c>
<c>dot3MpcpRegistrationState</c>	<c>registered</c>
<c>dot3MpcpTransmitElapsed</c>		<c>10</c>
<c>dot3MpcpReceiveElapsed</c>		<c>100000</c>
<c>dot3MpcpRoundTripTime</c>		<c>0</c>
<postamble/>
    </texttable>
<?rfc needLines="5" ?>
<t>BRCT_MAC_Address is the MAC address of the broadcast EPON interface, which is the OLT MAC address.</t>

		</section>

<?rfc needLines="100" ?>
<section title="Relation to Other MIB Modules">

   <section title="Relation to the Interfaces MIB and Ethernet-like Interfaces MIB">
            <t>
EPON interface is a kind of Ether-like interface. This MIB module extends the objects of the 
Interface MIB and the Ether-like Interfaces MIB for an EPON type interface. </t>
<t>Implementing this module therefore MUST require implementation of
the Interfaces MIB module <xref target="RFC2863"/> and the
Ethernet-like Interfaces MIB module <xref target="RFC3635"/>.</t> 
<t>
Thus, each managed EPON interface would have a corresponding entry in
the mandatory tables of the Ether-like MIB module found in <xref
target="RFC3635"/>, and likewise in the tables of the Interface MIB
module found in <xref target="RFC2863"/>. Also each managed virtual
EPON interface would have a corresponding entry in the mandatory
tables of the Ether-like MIB module found in <xref target="RFC3635"/>,
and likewise in the tables of the Interface MIB module found in <xref
target="RFC2863"/> with a dedicated ifIndex for this interface.</t> 

<t>In this document, there is no replication of the objects from these
MIBs. Therefore, for instance, the document is defining
dot3MpcpRemoteMACAddress only while assuming that the local MAC address
object is already defined in <xref target="RFC3635"/>.</t> 
<t>
The interface MIB module <xref target="RFC2863"/> defines the
interface index (ifIndex). 
Interface Index, as specified in <xref target="RFC2863"/>, is used in
this MIB Module as an index to the EPON MIB tables. The ifIndex is
used to denote the physical interface and the virtual link interfaces
at the OLT. The OLT interface and the virtual link interfaces are
stacked using the ifStack table defined in <xref target="RFC2863"/>,
and the ifInvStack defined in <xref target="RFC2864"/>. The OLT
interface is the lower layer of all other interfaces associated with
the virtual links. 
</t>
<t>This document defines the specific EPON objects of an ONU interface
and an OLT interface. Information in the tables is per LLID. The rows
in the EPON MIB tables referring to the LLIDs are denoted with the
corresponding ifIndexes of the virtual link interfaces.</t>
  
<t> Please note that each virtual interface does not have a different
physical MAC address at the OLT, as the physical interface is the
same. It is specified in the <xref target="802.3ah"/>, Section
64.1.2. The corresponding object of the Ether-like interface MIB is
duplicated for all the virtual interfaces.</t> 

<t><vspace blankLines="1" />
For example, the values of the Interface MIB objects are presented in the following tables, for an OLT with 3 registered ONUs:</t>

        <t>The table below presents the objects of the
Interface MIB of an ONU in working mode.</t>

<texttable anchor='The table below presents the objects of the Interface MIB for an ONU in working mode.'>

        <ttcol align='left'>Interface MIB object</ttcol>
        <ttcol align='left'>Value</ttcol>
<c>ifIndex</c>			<c>1</c>
<c>ifDescr</c>			<c>"interface description"</c>
<c>ifType </c>			<c>ethernetCsmacd (6) 1000base-Px</c>
<c>ifMtu</c>			<c>MTU size (1522)</c>
<c>ifSpeed</c>			<c>1000000000</c>
<c>ifPhysAddress</c>	<c>ONU_MAC_Address</c>
<c>ifAdminStatus</c>	<c>up</c>
<c>ifOperStatus</c>		<c>Up</c>
<c>ifLastChange</c>		<c>ONUup_time </c>
<c>ifInOctets</c>		<c>ONU_octets_number</c>
<c>ifInUcastPkts</c>	<c>ONU_unicast_frame_number</c>
<c>ifInNUcastPkts</c>	<c>ONU_non_unicast_frame_number</c>
<c>ifInDiscards</c>		<c>ONU_discard_frame_number</c>
<c>ifInErrors</c>		<c>ONU_error_frame_number</c>
<c>ifInUnknownProtos</c> <c>ONU_unknown_frame_number</c>
<c>ifOutOctets</c>      <c>ONU_octets_number </c>
<c>ifOutUcastPkts</c>   <c>ONU_unicast_frame_number</c>
<c>ifOutNUcastPkts</c>  <c>ONU_non_unicast_frame_number</c>
<c>ifOutDiscards</c>    <c>ONU_discard_frame_number</c>
<c>ifOutErrors </c>     <c>ONU_error_frame_number</c>
<c>ifOutQLen </c>       <c>ONU_queue_frame_number</c>
	
        <postamble/>
    </texttable>
<t>ONU_MAC_Address is the MAC address of the ONU EPON interface.</t>

 <t>The table below presents the objects of the Interface MIB of the ONU interface.</t>
 <texttable anchor='The table below presents the objects of the Interface MIB for the ONU interface.'>

        <ttcol align='left'>Interface MIB object</ttcol>
        <ttcol align='left'>Value</ttcol>
<c>ifIndex</c>			<c>100</c>
<c>ifDescr</c>			<c>"interface description"</c>
<c>ifType </c>			<c>ethernetCsmacd (6) 1000base-Px</c>
<c>ifMtu</c>			<c>MTU size (1522)</c>
<c>ifSpeed</c>			<c>1000000000</c>
<c>ifPhysAddress</c>	<c>ONU_MAC_Address</c>
<c>ifAdminStatus</c>	<c>up</c>
<c>ifOperStatus</c>		<c>Up</c>
<c>ifLastChange</c>		<c>up_time </c>
<c>ifInOctets</c>		<c>ONU1_octets_number</c>
<c>ifInUcastPkts</c>	<c>ONU1_unicast_frame_number</c>
<c>ifInNUcastPkts</c>	<c>ONU1_non_unicast_frame_number</c>
<c>ifInDiscards</c>		<c>ONU1_discard_frame_number</c>
<c>ifInErrors</c>		<c>ONU1_error_frame_number</c>
<c>ifInUnknownProtos</c> <c>ONU1_unknown_frame_number</c>
<c>ifOutOctets</c>      <c>ONU1_octets_number </c>
<c>ifOutUcastPkts</c>   <c>ONU1_unicast_frame_number</c>
<c>ifOutNUcastPkts</c>  <c>ONU1_non_unicast_frame_number</c>
<c>ifOutDiscards</c>    <c>ONU1_discard_frame_number</c>
<c>ifOutErrors </c>     <c>ONU1_error_frame_number</c>
<c>ifOutQLen </c>       <c>ONU1_queue_frame_number</c>
	
        <postamble/>
    </texttable>

<t>ONU_MAC_Address is the MAC address of the ONU EPON interface.</t>

<t> The following values will be set in the ifStack and ifInvStack tables related to this example.</t>
    <t> ifStackTable:</t>
	<t>   ifStackHigherLayer=100, ifStackLowerLayer=1 - map between
           the physical interface and the ONU</t>
    <t> ifInvStackTable:</t>
	<t>   ifStackLowerLayer=1, ifStackHigherLayer=100,- map between
           the ONU and the physical interface</t>

 <t>The table below presents the Interface MIB objects of an OLT interface.</t>
 <texttable anchor='And the OLT interface:'>

        <ttcol align='left'>Interface MIB object</ttcol>
        <ttcol align='left'>Value</ttcol>
<c>ifIndex</c>			<c>2</c>
<c>ifDescr</c>			<c>"interface description"</c>
<c>ifType </c>			<c>ethernetCsmacd (6) 1000base-Px</c>
<c>ifMtu</c>			<c>MTU size (1522)</c>
<c>ifSpeed</c>			<c>1000000000</c>
<c>ifPhysAddress</c>    <c>OLT_MAC_Address</c>
<c>ifAdminStatus</c>    <c>up</c>
<c>ifOperStatus</c>		<c>Up</c>
<c>ifLastChange</c>		<c>OLTup_time </c>
<c>ifInOctets</c>		<c>OLT_octets_number</c>
<c>ifInUcastPkts</c>	<c>OLT_unicast_frame_number</c>
<c>ifInNUcastPkts</c>	<c>OLT_non_unicast_frame_number</c>
<c>ifInDiscards</c>		<c>OLT_discard_frame_number</c>
<c>ifInErrors</c>		<c>OLT_error_frame_number</c>
<c>ifInUnknownProtos</c> <c>OLT_unknown_frame_number</c>
<c>ifOutOctets</c>      <c>OLT_octets_number </c>
<c>ifOutUcastPkts</c>   <c>OLT_unicast_frame_number</c>
<c>ifOutNUcastPkts</c>  <c>OLT_non_unicast_frame_number</c>
<c>ifOutDiscards</c>    <c>OLT_discard_frame_number</c>
<c>ifOutErrors </c>     <c>OLT_error_frame_number</c>
<c>ifOutQLen </c>       <c>OLT_queue_frame_number</c>
	
        <postamble/>
    </texttable>
<t>OLT_MAC_Address is the MAC address of the OLT EPON interface.</t>

 <t>The table below presents the Interface MIB objects of an OLT interface, associated with the virtual link interfaces.</t>

 <texttable anchor='at the OLT in working mode the interfaces associated with the virtual links:'>
        <ttcol align='left'>Interface MIB object</ttcol>
        <ttcol align='left'>Value</ttcol>
        <ttcol align='left'>Value</ttcol>
        <ttcol align='left'>Value</ttcol>
        <ttcol align='left'>Value</ttcol>
<c>ifIndex</c>   <c>200001</c>   <c>200002</c>   <c>200003</c>   <c>265535</c>
<c>ifDescr</c>	 <c>"interface description"</c>   <c>"interface description"</c>   <c>"interface description"</c>   <c>"interface description"</c>
<c>ifType</c>   <c>ethernetCsmacd (6)</c>   <c>ethernetCsmacd (6)</c>   <c>ethernetCsmacd (6)</c>   <c>ethernetCsmacd (6)</c>
<c>ifMtu</c>   <c>MTUsize(1522)</c>   <c>MTUsize(1522)</c>   <c>MTUsize(1522)</c>   <c>MTUsize(1522)</c>
<c>ifSpeed</c>   <c>1000000000</c>   <c>1000000000</c>   <c>1000000000</c>   <c>1000000000</c>
<c>ifPhysAddress</c>   <c>OLT_MAC_Address</c>   <c>OLT_MAC_Address</c>   <c>OLT_MAC_Address</c>   <c>OLT_MAC_Address</c>
<c>ifAdminStatus</c>   <c>up</c>   <c>up</c>   <c>up</c>   <c>up</c>
<c>ifOperStatus</c>   <c>Up</c>   <c>Up</c>   <c>Up</c>   <c>Up</c>
<c>ifLastChange</c>   <c>ONU1_up_time</c>   <c>ONU2_up_time</c>   <c>ONU3_up_time</c>   <c>up_time</c>
<c>ifInOctets</c>   <c>ONU1_octets_number</c>   <c>ONU2_octets_number</c>   <c>ONU3_octets_number</c>   <c>BRCT_octets_number</c>
<c>ifInUcastPkts</c>   <c>ONU1_unic_frame_num</c>   <c>ONU2_unic_frame_num</c>   <c>ONU3_unic_frame_num</c>   <c>BRCT_unic_frame_num</c>
<c>ifInNUcastPkts</c>   <c>ONU1_non_unic_frame_num</c>   <c>ONU2_non_unic_frame_num</c>   <c>ONU3_non_unic_frame_num</c>   <c>BRCT_non_unic_frame_num</c>
<c>ifInDiscards</c>   <c>ONU1_disc_frame_num</c>   <c>ONU2_disc_frame_num</c>   <c>ONU3_disc_frame_num</c>   <c>BRCT_disc_frame_numr</c>
<c>ifInErrors</c>   <c>ONU1_err_frame_num</c>   <c>ONU2_err_frame_num</c>   <c>ONU3_err_frame_num</c>   <c>BRCT_err_frame_num</c>
<c>ifInUnknownProtos</c>   <c>ONU1_unknw_frame_num</c>   <c>ONU2_unknw_frame_num</c>   <c>ONU3_unknw_frame_num</c>   <c>BRCT_unknw_frame_num</c>
<c>ifOutOctets</c>   <c>ONU1_octets_number</c>   <c>ONU2_octets_number</c>   <c>ONU3_octets_number</c>   <c>BRCT_octets_number</c>
<c>ifOutUcastPkts</c>   <c>ONU1_unic_frame_num</c>   <c>ONU2_unic_frame_num</c>   <c>ONU3_unic_frame_num</c>   <c>BRCT_unic_frame_num</c>
<c>ifOutNUcastPkts</c>   <c>ONU1_non_unic_frame_num</c>   <c>ONU2_non_unic_frame_num</c>   <c>ONU3_non_unic_frame_num</c>   <c>BRCT_non_unic_frame_num</c>
<c>ifOutDiscards</c>   <c>ONU1_disc_frame_num</c>   <c>ONU2_disc_frame_num</c>   <c>ONU3_disc_frame_num</c>   <c>BRCT_disc_frame_num</c>
<c>ifOutErrors</c>   <c>ONU1_err_frame_num</c>   <c>ONU2_err_frame_num</c>   <c>ONU3_err_frame_num</c>   <c>BRCT_err_frame_num</c>
<c>ifOutQLen</c>   <c>ONU1_queue_frame_num</c>   <c>ONU2_queue_frame_num</c>   <c>ONU3_queue_frame_num</c>   <c>BRCt_queue_frame_num</c>

        <postamble/>
    </texttable>
<t>OLT_MAC_Address is the MAC address of the OLT EPON interface.</t>

<t> The following values will be set in the ifStack and ifInvStack tables related to this example:</t>
    <t> ifStackTable:</t>
<t>     ifStackHigherLayer=265535, ifStackLowerLayer=2 - map between
           the OLT physical interface and its broadcast virtual interface</t> 
<t>       ifStackHigherLayer=200001, ifStackLowerLayer=2 - map between
           the OLT physical interface and its virtual interface of the 1st ONU</t>
<t>       ifStackHigherLayer=200002, ifStackLowerLayer=2 - map between
           the OLT physical interface and its virtual interface of the 2nd ONU</t>
<t>       ifStackHigherLayer=200003, ifStackLowerLayer=2 - map between
           the OLT physical interface and its virtual interface of the 3rd ONU</t>

	
	<t> ifInvStackTable:</t>
<t>     ifStackLowerLayer=2, ifStackHigherLayer=265535,  - map between
           the broadcast interface of the OLT and the OLT physical interface </t> 
<t>       ifStackLowerLayer=2, ifStackHigherLayer=200001  - map between
           the OLT virtual interface of the 1st ONU and the OLT physical interface </t>
<t>       ifStackLowerLayer=2, ifStackHigherLayer=200002  - map between
           the OLT virtual interface of the 2nd ONU and the OLT physical interface </t>
<t>       ifStackLowerLayer=2, ifStackHigherLayer=200003  - map between
           the OLT virtual interface of the 3rd ONU and the OLT physical interface </t>


<t><vspace blankLines="1" />
The rows for the ONU interface, the OLT interface, and the OLT broadcast
interface are created in initialization. </t> 
<t> The creation of a row for a virtual link is done when the virtual
link is established (ONU registers), and deletion is done when the
virtual link is deleted (ONU deregisters). </t> 
<t><vspace blankLines="1" /> 
The EPON MIB module also extends the Interface MIB module with a set
of counters, which are specific for the EPON interface. The EPON MIB
module implements the same handling of the counters when the operation
of the interface starts or stops.  
The interface MIB document describes the possible behavior of counters
when an interface is re-initialized using the
ifCounterDiscontinuityTime indicator, indicating the discontinuity of
the counters. Please see [RFC2863], Section 3.1.5, page 11 for more
information. The counters of the EPON MIB should be handled in a
similar manner.</t> 

        </section>


   <section title="Relation to the IEEE 802.3 MAU MIBs">
            <t>
The MAU types of the EPON Interface are defined in the amended MAU MIB
document. This document assumes the implementation of the MAU MIB for
this purpose and does not repeat the EPON MAU types. Therefore,
implementing this module MUST require implementation of the MAU-MIB
module <xref target="RFC4836"/>. 
</t>
<t>The handling of the ifMAU tables for the EPON case is similar to
the handling described in the former section for the Interface and
Ether-like interface MIBs. A single row exists for the ONU in the
ifMauTable. A row for each virtual link (N+1 rows) exists at the OLT,
with a separate value of ifMauIfIndex for each virtual link. </t> 
<t> As specified above, the rows for the ONU interface, the OLT
interface, and the OLT broadcast interface are created in initialization. </t>
<t> The creation of a row for a virtual link is done when the virtual
link is established (ONU registers), and deletion is done when the
virtual link is deleted (ONU deregisters). </t> 

        </section>


 <section title="Relation to the EFM OAM MIB">
            <t>
The EPON interfaces are aimed to the optical access networks and most
probably will be accompanied with the implementation of the OAM
section of the <xref target="802.3ah"/>. Therefore, the EFM OAM MIB
module <xref target="EFM-MIB"/> MAY be implemented
when this MIB module is implemented defining managed objects for the
OAM layer that are complementary to the EFM EPON MIB module. As the
OAM is defined for a point-to-point link it is implemented in this case using the virtual links
that are defined for the P2MP network, so that an instance is held
for each Logical Link Identifier (LLID) of the EPON. The
corresponding ifIndex of the virtual link is used as the ifIndex of
the tables of the OAM MIB module for this purpose.</t> 
        </section>


<section title="Relation to the Bridge MIB">
            <t>
It is very probable that an EPON OLT will implement a bridging
functionality above the EPON interface layer, bridging between the
EPON users and the network. Bridge functionality is specified at <xref
target="802.1d"/>. In this scenario, the virtual ports of the EPON are
corresponding to the virtual bridge ports. There is a direct mapping
between the bridge ports and the LLIDs, which are virtual EPON
channels.</t> 
<t>Therefore, the bridge MIB modules (<xref target="RFC4188"/> and
<xref target="RFC1525"/>) MAY be implemented when the EFM EPON MIB
module is implemented for an EPON OLT, defining managed objects for
the bridge layer. </t> 
<t>The values of dot1dBasePortIfIndex would correspond to the ifIndex
of the virtual port (1 for LLID1, 2 for LLID2, etc.).
</t>
<t>The broadcast virtual EPON interface of the OLT has no direct
mapping to a virtual bridge port as it is not port specific but used
for broadcast traffic.</t> 

        </section>
 </section>


 
   <section title="Mapping of IEEE 802.3ah Managed Objects">
<t>
This section contains the mapping between the managed objects defined in this document and the attributes defined in <xref target="802.3ah"/>, clause 30. The tables are divided into relevant groups.</t>

 <texttable anchor='MPCP reference table'>
        <preamble>oMPCP managed object class (30.3.5)</preamble>
        <ttcol align='left'>dot3EPON MIB module object</ttcol>
        <ttcol align='left'>IEEE802.3ah attribute</ttcol>
        <ttcol align='left'>Reference</ttcol>
<c>ifIndex</c>                   <c>aMPCPID</c>                      <c>30.3.5.1.1</c>
<c>dot3MpcpOperStatus</c>           <c>aMPCPAdminState</c>              <c>30.3.5.1.2</c>
<c>dot3MpcpMode</c>                 <c>aMPCPMode</c>                    <c>30.3.5.1.3</c>
<c>dot3MpcpLinkID</c>              <c>aMPCPLinkID</c>                  <c>30.3.5.1.4</c>
<c>dot3MpcpRemoteMACAddress</c>     <c>aMPCPRemoteMACAddress</c>       <c>30.3.5.1.5</c>
<c>dot3MpcpRegistrationState</c>    <c>aMPCPRegistrationState</c>       <c>30.3.5.1.6</c>
<c>dot3MpcpMACCtrlFramesTransmitted</c>    <c>aMPCPMACCtrlFramesTransmitted</c>   
<c>30.3.5.1.7</c> 
<c>dot3MpcpMACCtrlFramesReceived</c> <c>aMPCPMACCtrlFramesReceived</c>  <c>30.3.5.1.8</c>
<c>dot3MpcpTxGate</c>                <c>aMPCPTxGate</c>                 <c>30.3.5.1.9</c>
<c>dot3MpcpTxRegAck</c>              <c>aMPCPTxRegAck</c>               <c>30.3.5.1.10</c>
<c>dot3MpcpTxRegister</c>            <c>aMPCPTxRegister</c>             <c>30.3.5.1.11</c>
<c>dot3MpcpTxRegRequest</c>          <c>aMPCPTxRegRequest</c>           <c>30.3.5.1.12</c>
<c>dot3MpcpTxReport</c>              <c>aMPCPTxReport</c>               <c>30.3.5.1.13</c>
<c>dot3MpcpRxGate</c>                <c>aMPCPRxGate</c>                 <c>30.3.5.1.14</c>
<c>dot3MpcpRxRegAck</c>              <c>aMPCPRxRegAck</c>               <c>30.3.5.1.15</c>
<c>dot3MpcpRxRegister</c>            <c>aMPCPRxRegister</c>             <c>30.3.5.1.16</c>
<c>dot3MpcpRxRegRequest</c>          <c>aMPCPRxRegRequest</c>           <c>30.3.5.1.17</c>
<c>dot3MpcpRxReport</c>              <c>aMPCPRxReport</c>               <c>30.3.5.1.18</c>
<c>dot3MpcpTransmitElapsed</c>       <c>aMPCPTransmitElapsed</c>        <c>30.3.5.1.19</c>
<c>dot3MpcpReceiveElapsed</c>        <c>aMPCPReceiveElapsed</c>         <c>30.3.5.1.20</c>
<c>dot3MpcpRoundTripTime</c>         <c>aMPCPRoundTripTime</c>          <c>30.3.5.1.21</c>
<c>dot3MpcpDiscoveryWindowsSent</c>  <c>aMPCPDiscoveryWindowsSent</c>   <c>30.3.5.1.22</c>
<c>dot3MpcpDiscoveryTimeout</c>      <c>aMPCPDiscoveryTimeout</c>       <c>30.3.5.1.23</c>
<c>dot3MpcpMaximumPendingGrants</c>  <c>aMPCPMaximumPendingGrants</c>   <c>30.3.5.1.24</c>
<c>dot3MpcpAdminState</c>          <c>aMPCPAdminControl</c>          <c>30.3.5.2.1</c>
<c>dot3MpcpSyncTime</c>              <c>SyncTime</c>                    <c>64.3.3.2</c>
	
        <postamble/>
    </texttable>


<texttable anchor='OMPEmulation reference table'>
        <preamble>oOMPEmulation managed object class (30.3.7)</preamble>
        <ttcol align='left'>dot3EPON MIB module object</ttcol>
        <ttcol align='left'>IEEE802.3ah attribute</ttcol>
        <ttcol align='left'>Reference</ttcol>
<c>ifIndex</c>            <c>aOMPEmulationID</c>             <c>30.3.7.1.1</c>
<c>dot3OmpEmulationType</c>          <c>aOMPEmulationType</c>           <c>30.3.7.1.2</c>
<c>dot3OmpEmulationSLDErrors</c>     <c>aSLDErrors</c>                  <c>30.3.7.1.3</c>
<c>dot3OmpEmulationCRC8Errors</c>    <c>aCRC8Errors</c>                 <c>30.3.7.1.4</c>
<c>dot3OmpEmulationGoodLLID</c>      <c>aGoodLLID</c>                   <c>30.3.7.1.5</c>
<c>dot3OmpEmulationOnuPonCastLLID</c> <c>aONUPONcastLLID</c>            <c>30.3.7.1.6</c>
<c>dot3OmpEmulationOltPonCastLLID</c> <c>aOLTPONcastLLID</c>            <c>30.3.7.1.7</c>
<c>dot3OmpEmulationBadLLID</c>        <c>aBadLLID</c>                   <c>30.3.7.1.8</c>
<c>dot3OmpEmulationBroadcastBitNotOnuLLid</c> <c/> <c/>
<c>dot3OmpEmulationOnuLLIDNotBroadcast</c> <c/> <c/>
<c>dot3OmpEmulationBroadcastBitPlusOnuLlid</c>  <c/> <c/>
<c>dot3OmpEmulationNotBroadcastBitNotOnuLlid</c> <c/> <c/>

        <postamble/>
    </texttable>


<texttable anchor='FEC reference table'>
        <preamble>oMAU managed object class (30.5.1)</preamble>
        <ttcol align='left'>dot3EPON MIB module object</ttcol>
        <ttcol align='left'>IEEE802.3ah attribute</ttcol>
        <ttcol align='left'>Reference</ttcol>
<c>dot3EponFecPCSCodingViolation</c> <c>aPCSCodingViolation</c>         <c>30.5.1.1.12</c>
<c>dot3EponFecAbility</c>         <c>aFECAbility</c>                 <c>30.5.1.1.13</c>
<c>dot3EponFecMode</c>            <c>aFECmode</c>                    <c>30.5.1.1.14</c>
<c>dot3EponFecCorrectedBlocks</c> <c>aFECCorrectedBlocks</c>         <c>30.5.1.1.15</c>
<c>dot3EponFecUncorrectableBlocks</c> <c>aFECUncorrectableBlocks</c> <c>30.5.1.1.16</c>
<c>dot3EponFecBufferHeadCodingViolation</c> <c/> <c/>

        <postamble/>
    </texttable>

       </section>
	
       <section title=" Definitions - The DOT3 EPON MIB Module ">
<figure>
<preamble/> 
<artwork xml:space="preserve">
<![CDATA[ 
DOT3-EPON-MIB DEFINITIONS ::= BEGIN

     IMPORTS
         MODULE-IDENTITY, mib-2, OBJECT-TYPE, Counter32,
         Integer32, Unsigned32, Counter64
             FROM SNMPv2-SMI
         TruthValue, MacAddress
             FROM SNMPv2-TC
         ifIndex
             FROM IF-MIB
         MODULE-COMPLIANCE, OBJECT-GROUP
             FROM SNMPv2-CONF
         ;

dot3EponMIB MODULE-IDENTITY
    LAST-UPDATED "200703290000Z"  -- March 29, 2007
    ORGANIZATION "IETF Ethernet Interfaces and Hub MIB Working
                 Group"
    CONTACT-INFO
                 "WG charter:
              http://www.ietf.org/html.charters/hubmib-charter.html 
                  Mailing Lists:
                    General Discussion: hubmib@ietf.org
                    To Subscribe: hubmib-request@ietf.org
                    In Body: subscribe your_email_address
                    Chair: Bert Wijnen
                    Postal: Lucent Technologies
                            Schagen 33
                            3461 GL Linschoten
                            Netherlands
                    Tel: +31-348-407-775
                    E-mail: bwijnen@lucent.com

                    Editor: Lior Khermosh
                    Postal: PMC-SIERRA
                            Kohav Hertzelia bldg,
                            4 Hasadnaot St.
                            Hertzliya Pituach 46120,
                            ISRAEL
                            P.O.Box 2089 Hertzliya Pituach 46120 Israel
                    Tel: +972-9-9628000 Ext: 302
                    E-mail: lior_khermosh@pmc-sierra.com"
    DESCRIPTION
            "The objects in this MIB module are used to manage the 
             Ethernet in the First Mile (EFM) Ethernet Passive Optical
             Network (EPON) Interfaces as defined in IEEE P802.3ah 
             clauses 60, 64, and 65.
         The following reference is used throughout this MIB module:
           [802.3ah] refers to:
             Information technology - Telecommunications and
             information exchange between systems - Local and
             metropolitan area networks - Specific requirements -
             Part 3: Carrier sense multiple access with collision
             detection (CSMA/CD) access method and physical layer
             specifications - Media Access Control Parameters, 
             Physical Layers and Management Parameters for subscriber
             access networks. IEEE Std 802.3ah-2004, October 2004.
             
          Of particular interest are clause 64 (Multi-Point Control 
          Protocol - MPCP), clause 65 (Point-to-Multipoint 
          Reconciliation Sublayer - P2MP RS), clause 60 (Ethernet
          Passive Optical Network Physical Medium Dependent - EPON
          PMDs), clause 30, 'Management', and clause 45, 'Management
          Data Input/Output (MDIO) Interface'.
          
          Copyright (C) The IETF Trust (2007).  This version 
          of this MIB module is part of 4837; see the RFC itself for 
          full legal notices.
          
          Key abbreviations: 
            BER - Bit Error Rate  
            BW - bandwidth
            CRC - Cyclic Redundancy Check
            EFM - Ethernet First Mile
            EPON - Ethernet Passive Optical Network
            FEC  - Forward Error Correction
            LLID - Logical Link Identifier
            MAC - Media Access Control
            Mbps - Megabit per second
            MDIO - Management Data Input/Output
            MPCP - Multi-Point Control Protocol
            OLT - Optical Line Terminal (Server unit of the EPON)
            OMP - Optical Multi-Point
            ONU - Optical Network Unit (Client unit of the EPON)
            P2MP - Point-to-Multipoint
            PHY - Physical Layer
            PMD - Physical Medium Dependent
            PON - Passive Optical Network
            RTT - Round Trip Time
            SLD - Start of LLID Delimiter
            TQ - Time Quanta
          "
          
    REVISION    "200703290000Z"  -- March 29, 2007
    DESCRIPTION "Initial version, published as RFC 4837."

    ::= { mib-2 155 }

dot3EponObjects OBJECT IDENTIFIER ::= { dot3EponMIB 1}

dot3EponConformance OBJECT IDENTIFIER ::= { dot3EponMIB 2}

-- MPCP MIB modules definitions ([802.3ah], clause 30.3.5)

dot3EponMpcpObjects
     OBJECT IDENTIFIER ::= { dot3EponObjects 1 }



dot3MpcpControlTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Dot3MpcpControlEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "A Table of dot3 Multi-Point Control Protocol (MPCP)
             MIB objects. The entries in the table are control and
             status objects of the MPCP.
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff)."
    ::= { dot3EponMpcpObjects 1 }

dot3MpcpControlEntry OBJECT-TYPE
    SYNTAX  Dot3MpcpControlEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An entry in the dot3 MPCP Control table. 
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual links is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX  { ifIndex }
    ::= { dot3MpcpControlTable 1}

Dot3MpcpControlEntry ::=
    SEQUENCE {
        dot3MpcpOperStatus                   TruthValue,
        dot3MpcpAdminState                   TruthValue,
        dot3MpcpMode                         INTEGER,
        dot3MpcpSyncTime                     Unsigned32,
        dot3MpcpLinkID                       Unsigned32,
        dot3MpcpRemoteMACAddress             MacAddress,
        dot3MpcpRegistrationState            INTEGER,
        dot3MpcpTransmitElapsed              Unsigned32,
        dot3MpcpReceiveElapsed               Unsigned32,
        dot3MpcpRoundTripTime                Unsigned32,
        dot3MpcpMaximumPendingGrants         Unsigned32
    }

dot3MpcpOperStatus OBJECT-TYPE
    SYNTAX  TruthValue
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "This object reflects the operational state of the 
             Multi-Point MAC Control sublayer as defined in
             [802.3ah], clause 64. When the value is true(1), the
             interface will act as if the Multi-Point Control Protocol
             is enabled. When the value is false(2), the interface
             will act as if the Multi-Point Control Protocol is
             disabled. The operational state can be changed using the
             dot3MpcpAdminState object.
             This object is applicable for an OLT, with the same 
             value for all virtual interfaces, and for an ONU."
    REFERENCE   "[802.3ah], 30.3.5.1.2."
    ::= { dot3MpcpControlEntry 1 }

dot3MpcpAdminState OBJECT-TYPE
    SYNTAX  TruthValue
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "This object is used to define the admin state of the
             Multi-Point MAC Control sublayer, as defined in 
             [802.3ah], clause 64, and to reflect its state.
             When selecting the value as true(1), the Multi-Point
             Control Protocol of the interface is enabled.
             When selecting the value as false(2), the Multi-Point
             Control Protocol of the interface is disabled.
             This object reflects the administrative state of the
             Multi-Point Control Protocol of the interface. 
             The write operation is not restricted in this document
             and can be done at any time. Changing
             dot3MpcpAdminState state can lead to disabling the
             Multi-Point Control Protocol on the respective interface,
             leading to the interruption of service for the users
             connected to the respective EPON interface.
             This object is applicable for an OLT, with the same 
             value for all virtual interfaces, and for an ONU."
    REFERENCE   "[802.3ah], 30.3.5.2.1."
    DEFVAL { false }
    ::= { dot3MpcpControlEntry 2 }


dot3MpcpMode  OBJECT-TYPE
    SYNTAX  INTEGER {
            olt(1),
            onu(2)
    }
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "This object is used to identify the operational
             state of the Multi-Point MAC Control sublayer as
             defined in [802.3ah], clause 64. Reading olt(1) for an
             OLT (server) mode and onu(2) for an ONU (client) mode.
             This object is used to identify the operational mode
             for the MPCP tables.
             This object is applicable for an OLT, with the same 
             value for all virtual interfaces, and for an ONU."
    REFERENCE   "[802.3ah], 30.3.5.1.3."
    DEFVAL { olt }
    ::= { dot3MpcpControlEntry 3 }

dot3MpcpSyncTime OBJECT-TYPE
    SYNTAX  Unsigned32
    UNITS       "TQ (16nsec)"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that reports the 'sync lock time' of the 
             OLT receiver in increments of Time Quanta (TQ)-16ns
             as defined in [802.3ah], clauses 60, 64, and 65. The value returned
             shall be (sync lock time ns)/16. If this value exceeds
             (2^32-1), the value (2^32-1) shall be returned.
             This object is applicable for an OLT, with the same 
             value for all virtual interfaces, and for an ONU."
    REFERENCE   "[802.3ah], 64.3.3.2."
   ::= { dot3MpcpControlEntry 4 }

dot3MpcpLinkID OBJECT-TYPE
    SYNTAX  Unsigned32
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that identifies the Logical Link
             Identifier (LLID) associated with the MAC of the virtual
             link as specified in [802.3ah], clause 65.1.3.2.2.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             The ONU and the corresponding virtual MAC of the OLT,
             for the same virtual link, have the same value. 
             Value is assigned when the ONU registers.
             Value is freed when the ONU deregisters."
    REFERENCE   "[802.3ah], 30.3.5.1.4."
    ::= { dot3MpcpControlEntry 5 }

dot3MpcpRemoteMACAddress OBJECT-TYPE
    SYNTAX  MacAddress
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that identifies the source_address
             parameter of the last MPCPDUs passed to the MAC Control.
             This value is updated on reception of a valid frame with
             1) a destination Field equal to the reserved multicast 
             address for MAC Control as specified in [802.3], Annex 
             31A; 2) the lengthOrType field value equal to the reserved
             Type for MAC Control as specified in [802.3], Annex 
             31A; 3) an MPCP subtype value equal to the subtype
             reserved for MPCP as specified in [802.3ah], Annex 31A.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             The value reflects the MAC address of the remote entity 
             and therefore the OLT holds a value for each LLID, which
             is the MAC address of the ONU; the ONU has a single
             value that is the OLT MAC address."
    REFERENCE   "[802.3ah], 30.3.5.1.5."
    ::= { dot3MpcpControlEntry 6 }

dot3MpcpRegistrationState OBJECT-TYPE
    SYNTAX  INTEGER {
            unregistered(1),
            registering(2),
            registered(3)
    }
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that identifies the registration state
             of the Multi-Point MAC Control sublayer as defined in
             [802.3ah], clause 64. When this object has the 
             enumeration unregistered(1), the interface is 
             unregistered and may be used for registering a link
             partner. When this object has the enumeration
             registering(2), the interface is in the process of
             registering a link-partner. When this object has the
             enumeration registered(3), the interface has an
             established link-partner.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    REFERENCE   "[802.3ah], 30.3.5.1.6."
    ::= { dot3MpcpControlEntry 7 }

dot3MpcpTransmitElapsed OBJECT-TYPE
    SYNTAX  Unsigned32
    UNITS       "TQ (16nsec)"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that reports the interval from the last
             MPCP frame transmission in increments of Time Quanta
             (TQ)-16ns. The value returned shall be (interval from
             last MPCP frame transmission in ns)/16. If this value
             exceeds (2^32-1), the value (2^32-1) shall be returned.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    REFERENCE   "[802.3ah], 30.3.5.1.19."
    ::= { dot3MpcpControlEntry 8 }

dot3MpcpReceiveElapsed OBJECT-TYPE
    SYNTAX  Unsigned32
    UNITS       "TQ (16nsec)"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that reports the interval from last MPCP frame
             reception in increments of Time Quanta (TQ)-16ns. The
             value returned shall be (interval from last MPCP frame
             reception in ns)/16. If this value exceeds (2^32-1), the
             value (2^32-1) shall be returned.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    REFERENCE   "[802.3ah], 30.3.5.1.20."
    ::= { dot3MpcpControlEntry 9 }

dot3MpcpRoundTripTime OBJECT-TYPE
    SYNTAX  Unsigned32 (0..'ffff'h)
    UNITS       "TQ (16nsec)"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that reports the MPCP round trip time in
             increments of Time Quanta (TQ)-16ns. The value returned
             shall be (round trip time in ns)/16. If this value
             exceeds (2^16-1), the value (2^16-1) shall be returned.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    REFERENCE   "[802.3ah], 30.3.5.1.21."
    ::= { dot3MpcpControlEntry 10 }

dot3MpcpMaximumPendingGrants OBJECT-TYPE
    SYNTAX  Unsigned32 (0..255)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that reports the maximum number of grants
             that an ONU can store for handling. The maximum number
             of grants that an ONU can store for handling has a
             range of 0 to 255.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero."
    REFERENCE   "[802.3ah], 30.3.5.1.24."
    ::= { dot3MpcpControlEntry 11 }


dot3MpcpStatTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF Dot3MpcpStatEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "This table defines the list of statistics counters of
             an interface implementing the [802.3ah], clause 64 MPCP.
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff)."
::= { dot3EponMpcpObjects 2 }

dot3MpcpStatEntry OBJECT-TYPE
    SYNTAX     Dot3MpcpStatEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry in the table of statistics counters of the
             [802.3ah], clause 64, MPCP interface.
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual link is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX  { ifIndex}
    ::= { dot3MpcpStatTable 1 }

Dot3MpcpStatEntry ::=
    SEQUENCE {
            dot3MpcpMACCtrlFramesTransmitted       Counter64,
            dot3MpcpMACCtrlFramesReceived          Counter64,
            dot3MpcpDiscoveryWindowsSent           Counter32,
            dot3MpcpDiscoveryTimeout               Counter32,
            dot3MpcpTxRegRequest                   Counter64,
            dot3MpcpRxRegRequest                   Counter64,
            dot3MpcpTxRegAck                       Counter64,
            dot3MpcpRxRegAck                       Counter64,
            dot3MpcpTxReport                       Counter64,
            dot3MpcpRxReport                       Counter64,
            dot3MpcpTxGate                         Counter64,
            dot3MpcpRxGate                         Counter64,
            dot3MpcpTxRegister                     Counter64,
            dot3MpcpRxRegister                     Counter64
    }
        
dot3MpcpMACCtrlFramesTransmitted OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of MPCP frames passed to the MAC sublayer for
             transmission. This counter is incremented when a 
             MA_CONTROL.request service primitive is generated within
             the MAC control sublayer with an opcode indicating an
             MPCP frame.
             This object is applicable for an OLT and an ONU. At the
             OLT it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system, and at other
             times as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.7."
    ::= { dot3MpcpStatEntry 1 }

dot3MpcpMACCtrlFramesReceived OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of MPCP frames passed by the MAC sublayer to the
             MAC Control sublayer. This counter is incremented when a
             ReceiveFrame function call returns a valid frame with 
             1) a lengthOrType field value equal to the reserved
             Type for 802.3_MAC_Control as specified in clause 31.4.1.3, and
             2) an opcode indicating an MPCP frame.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   REFERENCE   "[802.3ah], 30.3.5.1.8."
    ::= { dot3MpcpStatEntry 2}

dot3MpcpDiscoveryWindowsSent OBJECT-TYPE
    SYNTAX  Counter32
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of discovery windows generated. The counter is
             incremented by one for each generated discovery window.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   REFERENCE   "[802.3ah], 30.3.5.1.22."
    ::= { dot3MpcpStatEntry 3}

dot3MpcpDiscoveryTimeout OBJECT-TYPE
    SYNTAX  Counter32
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a discovery timeout
             occurs. Increment the counter by one for each discovery
             processing state-machine reset resulting from timeout 
             waiting for message arrival. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   REFERENCE   "[802.3ah], 30.3.5.1.23."
    ::= { dot3MpcpStatEntry 4}

dot3MpcpTxRegRequest OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REGISTER_REQ MPCP
             frame transmission occurs. Increment the counter by one
             for each REGISTER_REQ MPCP frame transmitted as defined
             in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.12."
    ::= { dot3MpcpStatEntry 5}

dot3MpcpRxRegRequest OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REGISTER_REQ MPCP
             frame reception occurs. 
             Increment the counter by one for each REGISTER_REQ MPCP
             frame received as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
  REFERENCE   "[802.3ah], 30.3.5.1.17."
    ::= { dot3MpcpStatEntry 6}

dot3MpcpTxRegAck OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REGISTER_ACK MPCP
             frame transmission occurs. Increment the counter by one
             for each REGISTER_ACK MPCP frame transmitted as defined
             in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
 REFERENCE   "[802.3ah], 30.3.5.1.10."
    ::= { dot3MpcpStatEntry 7}

dot3MpcpRxRegAck OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REGISTER_ACK MPCP
             frame reception occurs. 
             Increment the counter by one for each REGISTER_ACK MPCP
             frame received as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.15."
    ::= { dot3MpcpStatEntry 8}

dot3MpcpTxReport OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REPORT MPCP frame
             transmission occurs. Increment the counter by one for
             each REPORT MPCP frame transmitted as defined in
             [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.13."
    ::= { dot3MpcpStatEntry 9}

dot3MpcpRxReport OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REPORT MPCP frame
             reception occurs. 
             Increment the counter by one for each REPORT MPCP frame
             received as defined in [802.3ah], clause 64.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.18."
    ::= { dot3MpcpStatEntry 10}

dot3MpcpTxGate OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a GATE MPCP frame 
             transmission occurs. 
             Increment the counter by one for each GATE MPCP frame
             transmitted as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.9."
    ::= { dot3MpcpStatEntry 11}

dot3MpcpRxGate OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a GATE MPCP frame
             reception occurs. 
             Increment the counter by one for each GATE MPCP frame
             received as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.14."
    ::= { dot3MpcpStatEntry 12}

dot3MpcpTxRegister OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REGISTER MPCP frame
             transmission occurs. 
             Increment the counter by one for each REGISTER MPCP
             frame transmitted as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   REFERENCE   "[802.3ah], 30.3.5.1.11."
    ::= { dot3MpcpStatEntry 13}

dot3MpcpRxRegister OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a REGISTER MPCP frame
             reception occurs. 
             Increment the counter by one for each REGISTER MPCP
             frame received as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.5.1.16."
    ::= { dot3MpcpStatEntry 14}

-- Optical Multi Point Emulation (OMPEmulation)
-- managed object definitions

dot3OmpEmulationObjects OBJECT IDENTIFIER ::={dot3EponObjects 2}

dot3OmpEmulationTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Dot3OmpEmulationEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "A table of dot3 OmpEmulation MIB objects. The table 
             contain objects for the management of the OMPEmulation
             sublayer.
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff)."
    ::= { dot3OmpEmulationObjects 1 }

dot3OmpEmulationEntry OBJECT-TYPE
    SYNTAX  Dot3OmpEmulationEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An entry in the dot3 OmpEmulation table. 
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual links is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX  { ifIndex }
    ::= { dot3OmpEmulationTable 1 }

    Dot3OmpEmulationEntry ::=
    SEQUENCE {
            dot3OmpEmulationType               INTEGER
    }

dot3OmpEmulationType OBJECT-TYPE
    SYNTAX  INTEGER {
            unknown(1),
            olt(2),
            onu(3)
    }
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that indicates the mode of operation
             of the Reconciliation Sublayer for Point-to-Point
             Emulation (see [802.3ah], clause 65.1). unknown(1) value
             is assigned in initialization; true state or type is not
             yet known. olt(2) value is assigned when the sublayer is 
             operating in OLT mode. onu(3) value is assigned when the
             sublayer is operating in ONU mode.
             This object is applicable for an OLT, with the same 
             value for all virtual interfaces, and for an ONU."
    REFERENCE   "[802.3ah], 30.3.7.1.2."
    ::= { dot3OmpEmulationEntry 1}

dot3OmpEmulationStatTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF Dot3OmpEmulationStatEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "This table defines the list of statistics counters of
             [802.3ah], clause 65, OMPEmulation sublayer. 
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff)."
    ::= { dot3OmpEmulationObjects 2}

dot3OmpEmulationStatEntry OBJECT-TYPE
    SYNTAX     Dot3OmpEmulationStatEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry in the table of statistics counters of
             [802.3ah], clause 65, OMPEmulation sublayer.
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual links is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX  { ifIndex}
    ::= { dot3OmpEmulationStatTable 1 }

Dot3OmpEmulationStatEntry::=
    SEQUENCE {
            dot3OmpEmulationSLDErrors                 Counter64,
            dot3OmpEmulationCRC8Errors                Counter64,
            dot3OmpEmulationBadLLID                   Counter64,
            dot3OmpEmulationGoodLLID                  Counter64,
            dot3OmpEmulationOnuPonCastLLID            Counter64,
            dot3OmpEmulationOltPonCastLLID            Counter64,
            dot3OmpEmulationBroadcastBitNotOnuLlid    Counter64,
            dot3OmpEmulationOnuLLIDNotBroadcast       Counter64,
            dot3OmpEmulationBroadcastBitPlusOnuLlid    Counter64,
            dot3OmpEmulationNotBroadcastBitNotOnuLlid  Counter64
    }

dot3OmpEmulationSLDErrors OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that do not contain a valid
             SLD field as defined in [802.3ah], clause 65.1.3.3.1.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.7.1.3."
    ::= { dot3OmpEmulationStatEntry 1}

dot3OmpEmulationCRC8Errors OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause 65.1.3.3.1, but do
             not pass the CRC-8 check as defined in [802.3ah], clause
             65.1.3.3.3. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.7.1.4."
    ::= { dot3OmpEmulationStatEntry 2}

dot3OmpEmulationBadLLID OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause 65.1.3.3.1, and
             pass the CRC-8 check, as defined in [802.3ah], clause
             65.1.3.3.3, but are discarded due to the LLID check as
             defined in [802.3ah], clause 65.1.3.3.2.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.7.1.8."
    ::= { dot3OmpEmulationStatEntry 3}

dot3OmpEmulationGoodLLID OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause 65.1.3.3.1, and
             pass the CRC-8 check as defined in [802.3ah], clause
             65.1.3.3.3. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.7.1.5."
    ::= { dot3OmpEmulationStatEntry 4}

dot3OmpEmulationOnuPonCastLLID OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause 65.1.3.3.1,
             pass the CRC-8 check, as defined in [802.3ah], clause
             65.1.3.3.3, and meet the rules of acceptance for an
             ONU defined in [802.3ah], clause 65.1.3.3.2.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.3.7.1.6."
    ::= { dot3OmpEmulationStatEntry 5}

dot3OmpEmulationOltPonCastLLID OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause 65.1.3.3.1,
             pass the CRC-8 check, as defined in [802.3ah], clause 
             65.1.3.3.3, and meet the rules of acceptance for an
             OLT defined in [802.3ah], 65.1.3.3.2.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the ONU, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
  REFERENCE   "[802.3ah], 30.3.7.1.7."
    ::= { dot3OmpEmulationStatEntry 6}

dot3OmpEmulationBroadcastBitNotOnuLlid OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause
             65.1.3.3.1, pass the CRC-8 check, as defined in
             [802.3ah], clause 65.1.3.3.3, and contain the broadcast
             bit in the LLID and not the ONU's LLID (frame accepted)
             as defined in [802.3ah], clause 65.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   ::= { dot3OmpEmulationStatEntry 7}

dot3OmpEmulationOnuLLIDNotBroadcast OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause
             65.1.3.3.1, pass the CRC-8 check, as defined in
             [802.3ah], clause 65.1.3.3.3, and contain the ONU's LLID
             as defined in [802.3ah], clause 65. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   ::= { dot3OmpEmulationStatEntry 8}

dot3OmpEmulationBroadcastBitPlusOnuLlid OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause
             65.1.3.3.1, pass the CRC-8 check, as defined in
             [802.3ah], clause 65.1.3.3.3, and contain the broadcast
             bit in the LLID and match the ONU's LLID (frame
             reflected) as defined in [802.3ah], clause 65. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    ::= { dot3OmpEmulationStatEntry 9}

dot3OmpEmulationNotBroadcastBitNotOnuLlid OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of frames received that contain a valid SLD
             field, as defined in [802.3ah], clause
             65.1.3.3.1, pass the CRC-8 check, as defined in 
             [802.3ah], clause 65.1.3.3.3, and do not contain
             the ONU's LLID as defined in [802.3ah], clause 65.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    ::= { dot3OmpEmulationStatEntry 10}

--  FEC managed object definitions (30.5.1)
     
dot3EponFecObjects OBJECT IDENTIFIER ::={dot3EponObjects 3}

dot3EponFecTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Dot3EponFecEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "A table of dot3 EPON FEC management objects. 
             The entries in the table are control and status objects
             and statistic counters for the FEC layer.  
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff)."
    ::= { dot3EponFecObjects 1 }

dot3EponFecEntry OBJECT-TYPE
    SYNTAX  Dot3EponFecEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An entry in the dot3 EPON FEC table. 
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual links is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX  { ifIndex}
    ::= { dot3EponFecTable 1 }

Dot3EponFecEntry ::=
    SEQUENCE {
            dot3EponFecPCSCodingViolation           Counter64,
            dot3EponFecAbility                      INTEGER,
            dot3EponFecMode                         INTEGER,
            dot3EponFecCorrectedBlocks              Counter64,
            dot3EponFecUncorrectableBlocks          Counter64,
            dot3EponFecBufferHeadCodingViolation    Counter64
    }

dot3EponFecPCSCodingViolation OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "octets"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "For a 100 Mbps operation, it is a count of the number of
             times an invalid code-group is received, other than the
             /H/ code-group. For a 1000 Mbps operation, it is a count
             of the number of times an invalid codegroup is received,
             other than the /V/ code-group. /H/ denotes a special 
             4b5b codeword of [802.3] 100 Mbps PCS layer (clause 24),
             and /V/ denotes a special 8b10b codeword of the [802.3]
             1000 Mbps PCS layer (clause 36).
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.5.1.1.12."
    ::= { dot3EponFecEntry 1}

dot3EponFecAbility OBJECT-TYPE
    SYNTAX  INTEGER {
            unknown(1),
            supported(2),
            unsupported(3)
    }
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object that indicates the support of operation of the
             optional FEC sublayer of the 1000BASE-PX PHY specified
             in [802.3ah], clause 65.2.
             unknown(1) value is assigned in the initialization, for non
             FEC support state or type not yet known. unsupported(3)
             value is assigned when the sublayer is not supported. 
             supported(2) value is assigned when the sublayer is 
             supported.
             This object is applicable for an OLT, with the same 
             value for all virtual interfaces, and for an ONU.
             The FEC counters will have a zero value when the
             interface is not supporting FEC. 
             The counters:
              dot3EponFecPCSCodingViolation - not affected by FEC
              ability.          
              dot3EponFecCorrectedBlocks    - has a zero value when 
               dot3EponFecAbility is unknown(1) and unsupported(3).
              dot3EponFecUncorrectableBlocks  - has a zero value when 
               dot3EponFecAbility is unknown(1) and unsupported(3).
              dot3EponFecBufferHeadCodingViolation - has a zero value
               when dot3EponFecAbility is unknown(1) and 
               unsupported(3). "
    REFERENCE   "[802.3ah], 30.5.1.1.13."
    ::= { dot3EponFecEntry 2}

dot3EponFecMode OBJECT-TYPE
    SYNTAX  INTEGER {
            unknown(1),
            disabled(2),
            enabled(3)
    }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "An object that defines the mode of operation of the
             optional FEC sublayer of the 1000BASE-PX PHY, specified
             in [802.3ah], clause 65.2, and reflects its state.
             A GET operation returns the current mode of operation
             of the PHY. A SET operation changes the mode of
             operation of the PHY to the indicated value.
             unknown(1) value is assigned in the initialization for non
               FEC support state or type not yet known. 
             disabled(2) value is assigned when the FEC sublayer is
               operating in disabled mode.
             enabled(3) value is assigned when the FEC sublayer is
               operating in FEC mode.
             The write operation is not restricted in this document
             and can be done at any time. Changing dot3EponFecMode
             state can lead to disabling the Forward Error Correction
             on the respective interface, which can lead to a
             degradation of the optical link, and therefore may lead
             to an interruption of service for the users connected to
             the respective EPON interface.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             The counting of
             the FEC counters will stop when the FEC of the interface
             is disabled. 
             The counters:
              dot3EponFecPCSCodingViolation - not affected by FEC
              mode.          
              dot3EponFecCorrectedBlocks - stops counting when 
              Rx_FEC is not enabled. (unknown(1) and disabled(2)).         
              dot3EponFecUncorrectableBlocks - stops counting when
              Rx_FEC is not enabled (unknown(1) and disabled(2)).         
              dot3EponFecBufferHeadCodingViolation - stops counting 
              when Rx_FEC is not enabled (unknown(1) and
              disabled(2)).   
             The object:
              dot3EponFecAbility - indicates the FEC ability and
              is not affected by the dot3EponFecMode object."
    REFERENCE   "[802.3ah], 30.5.1.1.14."
    DEFVAL { unknown }
    ::= { dot3EponFecEntry 3}

dot3EponFecCorrectedBlocks OBJECT-TYPE
    SYNTAX  Counter64
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "For 10PASS-TS, 2BASE-TL, and 1000BASE-PX PHYs, it is a
             count of corrected FEC blocks. This counter will not
             increment for other PHY Types. Increment the counter by
             one for each received block that is corrected by the FEC
             function in the PHY.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.5.1.1.15."
    ::= { dot3EponFecEntry 4}

dot3EponFecUncorrectableBlocks OBJECT-TYPE
    SYNTAX  Counter64
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "For 10PASS-TS, 2BASE-TL, and 1000BASE-PX PHYs, it is a
             count of uncorrectable FEC blocks. This counter will not
             increment for other PHY Types. Increment the counter by
             one for each FEC block that is determined to be
             uncorrectable by the FEC function in the PHY.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    REFERENCE   "[802.3ah], 30.5.1.1.16."
    ::= { dot3EponFecEntry 5}

dot3EponFecBufferHeadCodingViolation OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "octets"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "For a 1000 Mbps operation, it is a count of the number of
             invalid code-group received directly from the link. The 
             value has a meaning only in 1000 Mbps mode and it is 
             zero otherwise.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    ::= { dot3EponFecEntry 6}

-- ExtendedPackage managed object definitions

dot3ExtPkgObjects OBJECT IDENTIFIER ::={dot3EponObjects 4}

dot3ExtPkgControlObjects OBJECT IDENTIFIER ::= { dot3ExtPkgObjects 1}

dot3ExtPkgControlTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Dot3ExtPkgControlEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "A table of Extended package Control management
             objects. Entries in the table are control and status
             indication objects of an EPON interface, which are
             gathered in an extended package as an addition to the
             objects based on the [802.3ah], clause 30, attributes. 
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff)."
    ::= { dot3ExtPkgControlObjects 1 }

dot3ExtPkgControlEntry OBJECT-TYPE
    SYNTAX  Dot3ExtPkgControlEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An entry in the Extended package Control table. 
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual links is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX  { ifIndex}
    ::= { dot3ExtPkgControlTable 1 }

Dot3ExtPkgControlEntry ::=
    SEQUENCE {
     dot3ExtPkgObjectReset                       INTEGER,
     dot3ExtPkgObjectPowerDown                   TruthValue,
     dot3ExtPkgObjectNumberOfLLIDs               Unsigned32,
     dot3ExtPkgObjectFecEnabled                  INTEGER,
     dot3ExtPkgObjectReportMaximumNumQueues      Unsigned32,
     dot3ExtPkgObjectRegisterAction              INTEGER
    }

dot3ExtPkgObjectReset OBJECT-TYPE
    SYNTAX  INTEGER {
            running(1),
            reset(2)
    }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "This object is used to reset the EPON interface. The
             interface may be unavailable while the reset occurs and
             data may be lost.
             Setting this object to running(1) will cause the 
             interface to enter into running mode. Setting this
             object to reset(2) will cause the interface to go into
             reset mode. When getting running(1), the interface is in
             running mode. When getting reset(2), the interface is in
             reset mode.
             The write operation is not restricted in this document
             and can be done at any time. Changing
             dot3ExtPkgObjectReset state can lead to a reset of the
             respective interface, leading to an interruption of
             service for the users connected to the respective EPON
             interface.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             A reset for a specific virtual interface resets only
             this virtual interface and not the physical interface.
             Thus, a virtual link that is malfunctioning can be
             reset without affecting the operation of other virtual 
             interfaces.
             The reset can cause Discontinuities in the values of the
             counters of the interface, similar to re-initialization
             of the management system. Discontinuity should be
             indicated by the ifCounterDiscontinuityTime object of
             the Interface MIB module."  
    DEFVAL { running }
    ::= { dot3ExtPkgControlEntry 1 }

dot3ExtPkgObjectPowerDown OBJECT-TYPE
    SYNTAX  TruthValue
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "This object is used to power down the EPON interface. 
             The interface may be unavailable while the power down
             occurs and data may be lost.
             Setting this object to true(1) will cause the interface
             to enter into power down mode. Setting this object to
             false(2) will cause the interface to go out of power
             down mode. When getting true(1), the interface is in
             power down mode. When getting false(2), the interface is
             not in power down mode.
             The write operation is not restricted in this document
             and can be done at any time. Changing
             dot3ExtPkgObjectPowerDown state can lead to a power down
             of the respective interface, leading to an interruption
             of service of the users connected to the respective EPON
             interface.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface.
             A power down/up of a specific virtual interface affects
             only the virtual interface and not the physical
             interface. Hence a virtual link, which needs a certain
             handling, can be powered down and then powered up without
             disrupting the operation of other virtual interfaces.
             The object is relevant when the admin state of the
             interface is active as set by the dot3MpcpAdminState."
    DEFVAL { false }
    ::= { dot3ExtPkgControlEntry 2 }

dot3ExtPkgObjectNumberOfLLIDs OBJECT-TYPE
    SYNTAX  Unsigned32
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A read only object that indicates the number of
             registered LLIDs. The initialization value is 0.
             This object is applicable for an OLT with the same 
             value for all virtual interfaces and for an ONU.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff). At the ONU the 
             number of LLIDs for an interface is one."
    ::= { dot3ExtPkgControlEntry 3 }

dot3ExtPkgObjectFecEnabled OBJECT-TYPE
    SYNTAX  INTEGER {
            noFecEnabled(1),
            fecTxEnabled(2),
            fecRxEnabled(3),
            fecTxRxEnabled(4)
    }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
           "An object defining the FEC mode of operation of the
            interface, and indicating its state. The modes defined in
            this object are extensions to the FEC modes defined in 
            the dot3EponFecMode object.
            When noFECEnabled(1), the interface does not enable FEC
            mode. 
            When fecTxEnabled(2), the interface enables the FEC
            transmit mode. 
            When fecRxEnabled(3), the interface enables the FEC
            receive mode.
            When fecTxRxEnabled(4), the interface enables the FEC 
            transmit and receive mode.
            This object is applicable for an OLT and an ONU. At the
            OLT, it has a distinct value for each virtual interface.
            The FEC counters are referring to the receive path. The
            FEC counters will stop when the FEC receive mode of the
            interface is disabled, as defined by fecRxEnabled(3)
            and fecTxRxEnabled(4) values.
            The counters:
             dot3EponFecPCSCodingViolation - not affected by FEC
             mode.          
             dot3EponFecCorrectedBlocks - stops counting when 
             Rx_FEC is not enabled (noFecEnabled(1) and 
             fecTxEnabled(2)).         
             dot3EponFecUncorrectableBlocks - stops counting when
             Rx_FEC is not enabled (noFecEnabled(1) and
             fecTxEnabled(2)).         
             dot3EponFecBufferHeadCodingViolation - stops counting 
             when Rx_FEC is not enabled (noFecEnabled(1) and
             fecTxEnabled(2)).   
            The objects:
             dot3EponFecAbility - indicates the FEC ability and is
             not affected by the FEC mode.
             dot3EponFecMode - indicates the FEC mode for combined RX
             and TX. 
            The write operation is not restricted in this document
            and can be done at any time. Changing
            dot3ExtPkgObjectFecEnabled state can lead to disabling
            the Forward Error Correction on the respective interface,
            which can lead to a degradation of the optical link, and
            therefore may lead to an interruption of service for the
            users connected to the respective EPON interface."
    DEFVAL { noFecEnabled }
    ::= { dot3ExtPkgControlEntry 4 }

dot3ExtPkgObjectReportMaximumNumQueues OBJECT-TYPE
    SYNTAX  Unsigned32 (0..7)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object, that defines the maximal number of queues in
             the REPORT message as defined in [802.3ah], clause 64. For
             further information please see the description of the
             queue table.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    DEFVAL { 0 }
    ::= { dot3ExtPkgControlEntry 5 }

dot3ExtPkgObjectRegisterAction OBJECT-TYPE
    SYNTAX  INTEGER {
            none(1),
            register(2),
            deregister(3),
            reregister(4)
    }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
           "An object configuring the registration state of an
           interface, and indicating its registration state.
            Write operation changes the registration state to its new
            value. 
            Read operation returns the value of the state.
            The registration state is reflected in this object and in
            the dot3MpcpRegistrationState object.
            none(1) indicates an unknown state,
            register(2) indicates a registered LLID,
            deregister(3) indicates a deregistered LLID,
            reregister(4) indicates an LLID that is reregistering.
            The following list describes the operation of the
            interface, as specified in the [802.3ah], when a write
            operation is setting a value.
             none(1) - not doing any action.
             register(2) - registering an LLID that has been requested
             for registration (The LLID is in registering mode. 
               dot3MpcpRegistrationState - registering(2) ).
  ]]>
  </artwork>
  </figure>
<!-- RFC Editor Comment: we do not understand the definition for
register(2).  Please reword this sentence.  Does this mean
"registering an LLID that has been requested for registration"?  -->
<!-- Editor response: Correct. Fixed. -->
  <figure>
  <artwork>
<![CDATA[
             deregister(3) - deregisters an LLID that is registered
               (dot3MpcpRegistrationState - registered(3) ).
             reregister(4) - reregister an LLID that is registered
               (dot3MpcpRegistrationState - registered(3) ).
             The behavior of an ONU and OLT interfaces, at each one
             of the detailed operation at each state, is described in
             the registration state machine of figure 64-22,
             [802.3ah]. 
            This object is applicable for an OLT and an ONU. At the
            OLT, it has a distinct value for each virtual interface.
            The write operation is not restricted in this document
            and can be done at any time. Changing
            dot3ExtPkgObjectRegisterAction state can lead to a change
            in the registration state of the respective interface
            leading to a deregistration and an interruption of
            service of the users connected to the respective EPON
            interface."
    DEFVAL { none }  
    ::= { dot3ExtPkgControlEntry 6 }

dot3ExtPkgQueueTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Dot3ExtPkgQueueEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "A table of the extended package objects for queue
             management. The [802.3ah] MPCP defines a report message
             of the occupancy of the transmit queues for the feedback
             BW request from the ONUs. These queues serve the uplink
             transmission of the ONU and data is gathered there until
             the ONU is granted for transmission. 
             The management table of the queues is added here mainly
             to control the reporting and to gather some statistics
             of their operation. This table is not duplicating
             existing management objects of bridging queues,
             specified in [802.1d], since the existence of a
             dedicated transmit queuing mechanism is implied in the
             [802.3ah], and the ONU may be a device that is not a
             bridge with embedded bridging queues. 
             The format of the REPORT message, as specified
             in [802.3], is presented below:
             +-----------------------------------+
             |          Destination Address      | 
             +-----------------------------------+
             |          Source Address           | 
             +-----------------------------------+
             |          Length/Type              | 
             +-----------------------------------+
             |          OpCode                   | 
             +-----------------------------------+
             |          TimeStamp                | 
             +-----------------------------------+
             |          Number of queue Sets     | 
             +-----------------------------------+   /|\
             |          Report bitmap            |    |
             +-----------------------------------+    |
             |          Queue 0 report           |    |
             +-----------------------------------+    | repeated for
             |          Queue 1 report           |    | every 
             +-----------------------------------+    | queue_set
             |          Queue 2 report           |    |
             +-----------------------------------+    |
             |          Queue 3 report           |    | 
             +-----------------------------------+    |
             |          Queue 4 report           |    |
             +-----------------------------------+    |
             |          Queue 5 report           |    |
             +-----------------------------------+    |
             |          Queue 6 report           |    |
             +-----------------------------------+    |
             |          Queue 7 report           |    |
             +-----------------------------------+   \|/
             |          Pad/reserved             | 
             +-----------------------------------+
             |          FCS                      | 
             +-----------------------------------+
                          
             The 'Queue report' field reports the occupancy of each
             uplink transmission queue.
             The number of queue sets defines the number of the 
             reported sets, as would be explained in the description
             of the dot3ExtPkgQueueSetsTable table. For each set the
             report bitmap defines which queue is present in the
             report, meaning that although the MPCP REPORT message
             can report up to 8 queues in a REPORT message, the
             actual number is flexible. The Queue table has a
             variable size that is limited by the
             dot3ExtPkgObjectReportMaximumNumQueues object, as an
             ONU can have fewer queues to report.
             The entries in the table are control and status 
             indication objects for managing the queues of an EPON
             interface that are gathered in an extended package as
             an addition to the objects that are based on the
             [802.3ah] attributes.
             Each object has a row for every virtual link and for
             every queue in the report. 
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff).
             The number of queues is between 0 and 7 and limited by
             dot3ExtPkgObjectReportMaximumNumQueues."
    ::= { dot3ExtPkgControlObjects 2 }

dot3ExtPkgQueueEntry OBJECT-TYPE
    SYNTAX  Dot3ExtPkgQueueEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An entry in the Extended package Queue table. At the
             OLT, the rows exist for each ifIndex and dot3QueueIndex.
             At the ONU, rows exist for the single ifIndex for each
             dot3QueueIndex. 
             Rows in the table are created when the ifIndex of the
             link is created. A set of rows per queue are added for
             each ifIndex, denoted by the dot3QueueIndex.
             A set of rows per queue in the table, for an ONU
             interface, are created at the system initialization.
             A set of rows per queue in the table, corresponding to
             the OLT ifIndex and a set of rows per queue 
             corresponding to the broadcast virtual link, are
             created at the system initialization.
             A set of rows per queue in the table, corresponding to
             the ifIndex of a virtual link, are created when the
             virtual link is established (ONU registers), and deleted
             when the virtual link is deleted (ONU deregisters)."
    INDEX  { ifIndex, dot3QueueIndex }
    ::= { dot3ExtPkgQueueTable 1 }

Dot3ExtPkgQueueEntry ::=
    SEQUENCE {
     dot3QueueIndex                              Unsigned32,
     dot3ExtPkgObjectReportNumThreshold           Unsigned32,
     dot3ExtPkgObjectReportMaximumNumThreshold    Unsigned32,
     dot3ExtPkgStatTxFramesQueue                  Counter64,
     dot3ExtPkgStatRxFramesQueue                  Counter64,
     dot3ExtPkgStatDroppedFramesQueue             Counter64
    }

dot3QueueIndex OBJECT-TYPE
    SYNTAX  Unsigned32 (0..7)
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An object that identifies an index for the queue table
             reflecting the queue index of the queues that are
             reported in the MPCP REPORT message as defined in
             [802.3ah], clause 64.
             The number of queues is between 0 and 7, and limited by
             dot3ExtPkgObjectReportMaximumNumQueues."
    ::= { dot3ExtPkgQueueEntry 1 }

dot3ExtPkgObjectReportNumThreshold OBJECT-TYPE
    SYNTAX  Unsigned32 (0..7)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "An object that defines the number of thresholds for each
             queue in the REPORT message as defined in [802.3ah],
             clause 64.
             Each queue_set reporting will provide information on the
             queue occupancy of frames below the matching Threshold.
             Read operation reflects the number of thresholds.
             Write operation sets the number of thresholds for each
             queue.
             The write operation is not restricted in this document
             and can be done at any time. Value cannot exceed the
             maximal value defined by the
             dot3ExtPkgObjectReportMaximumNumThreshold object. 
             Changing dot3ExtPkgObjectReportNumThreshold can lead to
             a change in the reporting of the ONU interface and
             therefore to a change in the bandwidth allocation of the
             respective interface. This change may lead a degradation
             or an interruption of service of the users connected to
             the respective EPON interface.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface
             and for each queue. At the ONU, it has a distinct value
             for each queue."
    DEFVAL { 0 }
    ::= { dot3ExtPkgQueueEntry 2 }

dot3ExtPkgObjectReportMaximumNumThreshold OBJECT-TYPE
    SYNTAX  Unsigned32 (0..7)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "An object, that defines the maximal number of thresholds
             for each queue in the REPORT message as defined in 
             [802.3ah], clause 64. Each queue_set reporting will
             provide information on the queue occupancy of frames
             below the matching Threshold. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface
             and for each queue. At the ONU, it has a distinct value
             for each queue."
    DEFVAL { 0 }
    ::= { dot3ExtPkgQueueEntry 3 }

 dot3ExtPkgStatTxFramesQueue OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a frame transmission
             occurs from the corresponding 'Queue'.
             Increment the counter by one for each frame transmitted,
             which is an output of the 'Queue'.
             The 'Queue' marking matches the REPORT MPCP message
             Queue field as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface
             and for each queue. At the ONU, it has a distinct value
             for each queue.
             At the OLT the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    ::= { dot3ExtPkgQueueEntry 4}

dot3ExtPkgStatRxFramesQueue OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "A count of the number of times a frame reception
             occurs from the corresponding 'Queue'.
             Increment the counter by one for each frame received,
             which is an input to the corresponding 'Queue'.
             The 'Queue' marking matches the REPORT MPCP message
             Queue field as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface
             and for each queue. At the ONU, it has a distinct value
             for each queue.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
    ::= { dot3ExtPkgQueueEntry 5}

dot3ExtPkgStatDroppedFramesQueue OBJECT-TYPE
    SYNTAX  Counter64
    UNITS      "frames"
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
             "A count of the number of times a frame drop
             occurs from the corresponding 'Queue'.
             Increment the counter by one for each frame dropped
             from the corresponding 'Queue'.
             The 'Queue' marking matches the REPORT MPCP message
             Queue field as defined in [802.3ah], clause 64. 
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface
             and for each queue. At the ONU, it has a distinct value
             for each queue.
             At the OLT, the value should be zero.
             Discontinuities of this counter can occur at 
             re-initialization of the management system and at other
             times, as indicated by the value of the 
             ifCounterDiscontinuityTime object of the Interface MIB
             module."  
   ::= { dot3ExtPkgQueueEntry 6}

dot3ExtPkgQueueSetsTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Dot3ExtPkgQueueSetsEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "A table of Extended package objects used for the
             management of the queue_sets. Entries are control and
             status indication objects of an EPON interface, which
             are gathered in an extended package as an addition to
             the objects based on the [802.3ah] attributes. The
             objects in this table are specific for the queue_sets,
             which are reported in the MPCP REPORT message as defined
             in [802.3ah], clause 64.
             The [802.3ah] MPCP defines a report message of the 
             occupancy of the transmit queues for the feedback BW
             request from the ONUs. These queues serve the uplink
             transmission of the ONU and data is gathered there until
             the ONU is granted for transmission. 
             The management table of the queues_sets is added here
             mainly to control the reporting and to gather some
             statistics of their operation. This table is not
             duplicating existing management objects of bridging
             queues, specified in [802.1d], since the existence of a
             dedicated transmit queuing mechanism is implied in the
             [802.3ah], and the ONU may be a device that is not a
             bridge with embedded bridging queues. 
             The format of the REPORT message, as specified
             in [802.3], is presented below:
             +-----------------------------------+
             |          Destination Address      | 
             +-----------------------------------+
             |          Source Address           | 
             +-----------------------------------+
             |          Length/Type              | 
             +-----------------------------------+
             |          OpCode                   | 
             +-----------------------------------+
             |          TimeStamp                | 
             +-----------------------------------+
             |          Number of queue Sets     | 
             +-----------------------------------+   /|\
             |          Report bitmap            |    |
             +-----------------------------------+    |
             |          Queue 0 report           |    |
             +-----------------------------------+    | repeated for
             |          Queue 1 report           |    | every 
             +-----------------------------------+    | queue_set
             |          Queue 2 report           |    |
             +-----------------------------------+    |
             |          Queue 3 report           |    | 
             +-----------------------------------+    |
             |          Queue 4 report           |    |
             +-----------------------------------+    |
             |          Queue 5 report           |    |
             +-----------------------------------+    |
             |          Queue 6 report           |    |
             +-----------------------------------+    |
             |          Queue 7 report           |    |
             +-----------------------------------+   \|/
             |          Pad/reserved             | 
             +-----------------------------------+
             |          FCS                      | 
             +-----------------------------------+
                          
             As can be seen from the message format, the ONU 
             interface reports of the status of up to 8 queues
             and it can report in a single MPCP REPORT message
             of a few sets of queues.
             The number of queue_sets defines the number of the 
             reported sets, and it can reach a value of up to 8. It
             means that an ONU can hold a variable number of sets
             between 0 and 7. 
             The dot3ExtPkgQueueSetsTable table has a variable
             queue_set size that is limited by the
             dot3ExtPkgObjectReportMaximumNumThreshold object as an
             ONU can have fewer queue_sets to report.
             The 'Queue report' field reports the occupancy of each
             uplink transmission queue. The queue_sets can be used to
             report the occupancy of the queues in a few levels as to
             allow granting, in an accurate manner, of only part of 
             the data available in the queues. A Threshold is
             defined for each queue_set to define the level of the
             queue that is counted for the report of the occupancy.
             The threshold is reflected in the queue_set table by the 
             dot3ExtPkgObjectReportThreshold object.
             For each queue set, the report bitmap defines which 
             queues are present in the report, meaning that 
             although the MPCP REPORT message can report of up to 8
             queues in a REPORT message, the actual number is
             flexible.
             The dot3ExtPkgQueueSetsTable table has a variable queue
             size that is limited by the
             dot3ExtPkgObjectReportMaximumNumQueues object as an ONU
             can have fewer queues to report.             
             Each object has a row for every virtual link, for each
             queue in the report and for each queue_set in the queue. 
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff).
             The number of queues is between 0 and 7 and limited by
             dot3ExtPkgObjectReportMaximumNumQueues.
             The number of queues_sets is between 0 and 7 and limited
             by dot3ExtPkgObjectReportMaximumNumThreshold."
    ::= { dot3ExtPkgControlObjects 3 }

dot3ExtPkgQueueSetsEntry OBJECT-TYPE
    SYNTAX  Dot3ExtPkgQueueSetsEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An entry in the Extended package queue_set table. At
             the OLT, the rows exist for each ifIndex, 
             dot3QueueSetQueueIndex and dot3QueueSetIndex. At the
             ONU, rows exist for the single ifIndex, for each
             dot3QueueSetQueueIndex and dot3QueueSetIndex. 
             Rows in the table are created when the ifIndex of the
             link is created. A set of rows per queue and per
             queue_set are added for each ifIndex, denoted by 
             dot3QueueSetIndex and dot3QueueSetQueueIndex.
             A set of rows per queue and per queue_set in the table,
             for an ONU interface are created at system
             initialization.
             A set of rows per queue and per queue_Set in the table,
             corresponding to the OLT ifIndex and a set of rows per
             queue and per queue_set, corresponding to the broadcast
             virtual link, are created at system initialization.
             A set of rows per queue and per queue_set in the table,
             corresponding to the ifIndex of a virtual link are
             created when the virtual link is established (ONU
             registers) and deleted when the virtual link is deleted
             (ONU deregisters)."
             INDEX { ifIndex, 
            dot3QueueSetQueueIndex,dot3QueueSetIndex}
    ::= { dot3ExtPkgQueueSetsTable 1 }

Dot3ExtPkgQueueSetsEntry ::=
    SEQUENCE {
     dot3QueueSetQueueIndex                      Unsigned32,
     dot3QueueSetIndex                           Unsigned32,
     dot3ExtPkgObjectReportThreshold             Unsigned32
    }

dot3QueueSetQueueIndex OBJECT-TYPE
    SYNTAX  Unsigned32 (0..7)
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An object that identifies the queue index for the 
             dot3ExtPkgQueueSetsTable table. The queues are reported
             in the MPCP REPORT message as defined in [802.3ah],
             clause 64.
             The number of queues is between 0 and 7, and limited by
             dot3ExtPkgObjectReportMaximumNumQueues.
             Value corresponds to the dot3QueueIndex of the queue
             table."
    ::= { dot3ExtPkgQueueSetsEntry 1 }

dot3QueueSetIndex OBJECT-TYPE
    SYNTAX  Unsigned32 (0..7)
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "An object that identifies the queue_set index for the 
             dot3ExtPkgQueueSetsTable table. The queues are reported
             in the MPCP REPORT message as defined in [802.3ah],
             clause 64.
             The number of queues_sets is between 0 and 7, and
             limited by dot3ExtPkgObjectReportMaximumNumThreshold."
    ::= { dot3ExtPkgQueueSetsEntry 2 }

    dot3ExtPkgObjectReportThreshold OBJECT-TYPE
    SYNTAX  Unsigned32
    UNITS       "TQ (16nsec)"
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "An object that defines the value of a threshold report 
             for each queue_set in the REPORT message as defined in
             [802.3ah], clause 64. The number of sets for each queue 
             is dot3ExtPkgObjectReportNumThreshold. 
             In the REPORT message, each queue_set reporting will
             provide information on the occupancy of the queues for
             frames below the matching Threshold.
             The value returned shall be in Time quanta (TQ), which 
             is 16nsec or 2 octets increments.
             Read operation provides the threshold value. Write
             operation sets the value of the threshold.
             The write operation is not restricted in this document
             and can be done at any time. Changing 
             dot3ExtPkgObjectReportThreshold can lead to a change in
             the reporting of the ONU interface and therefore to a 
             change in the bandwidth allocation of the respective
             interface. This change may lead a degradation or an
             interruption of service for the users connected to the
             respective EPON interface.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface,
             for each queue and for each queue_set. At the ONU, it has
             a distinct value for each queue and for each queue_set."
    DEFVAL { 0 }
    ::= { dot3ExtPkgQueueSetsEntry 3 }

--Optical Interface status tables

dot3ExtPkgOptIfTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF Dot3ExtPkgOptIfEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "This table defines the control and status indication
             objects for the optical interface of the EPON interface. 
             Each object has a row for every virtual link denoted by
             the corresponding ifIndex.
             The LLID field, as defined in the [802.3ah], is a 2-byte
             register (15-bit field and a broadcast bit) limiting the
             number of virtual links to 32768. Typically the number
             of expected virtual links in a PON is like the number of
             ONUs, which is 32-64, plus an additional entry for
             broadcast LLID (with a value of 0xffff).
             Although the optical interface is a physical interface,
             there is a row in the table for each virtual interface.
             The reason for having a separate row for each virtual
             link is that the OLT has a separate link for each one of
             the ONUs. For instance, ONUs could be in different
             distances with different link budgets and different
             receive powers, therefore having different power alarms.
             It is quite similar to a case of different physical
             interfaces."
    ::= { dot3ExtPkgControlObjects 5}

dot3ExtPkgOptIfEntry OBJECT-TYPE
    SYNTAX     Dot3ExtPkgOptIfEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry in the optical interface table of the EPON
             interface. 
             Rows exist for an OLT interface and an ONU interface.
             A row in the table is denoted by the ifIndex of the link
             and it is created when the ifIndex is created.
             The rows in the table for an ONU interface are created
             at system initialization.
             The row in the table corresponding to the OLT ifIndex
             and the row corresponding to the broadcast virtual link
             are created at system initialization.
             A row in the table corresponding to the ifIndex of a
             virtual links is created when a virtual link is
             established (ONU registers) and deleted when the virtual
             link is deleted (ONU deregisters)."
    INDEX       { ifIndex }
    ::= { dot3ExtPkgOptIfTable 1 }

 Dot3ExtPkgOptIfEntry ::=
   SEQUENCE {
     dot3ExtPkgOptIfSuspectedFlag             TruthValue,
     dot3ExtPkgOptIfInputPower                Integer32,
     dot3ExtPkgOptIfLowInputPower             Integer32,
     dot3ExtPkgOptIfHighInputPower            Integer32,
     dot3ExtPkgOptIfLowerInputPowerThreshold  Integer32,
     dot3ExtPkgOptIfUpperInputPowerThreshold  Integer32,
     dot3ExtPkgOptIfOutputPower               Integer32,
     dot3ExtPkgOptIfLowOutputPower            Integer32,
     dot3ExtPkgOptIfHighOutputPower           Integer32,
     dot3ExtPkgOptIfLowerOutputPowerThreshold Integer32,
     dot3ExtPkgOptIfUpperOutputPowerThreshold Integer32,
     dot3ExtPkgOptIfSignalDetect              TruthValue,
     dot3ExtPkgOptIfTransmitAlarm             TruthValue,
     dot3ExtPkgOptIfTransmitEnable            TruthValue
     }

dot3ExtPkgOptIfSuspectedFlag OBJECT-TYPE
  SYNTAX  TruthValue
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "This object is a reliability indication.
     If true, the data in this entry may be unreliable.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 1 }

dot3ExtPkgOptIfInputPower OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "The optical power monitored at the input.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
::= { dot3ExtPkgOptIfEntry 2 }

dot3ExtPkgOptIfLowInputPower OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "The lowest optical power monitored at the input during the
     current 15-minute interval.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 3 }

dot3ExtPkgOptIfHighInputPower OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "The highest optical power monitored at the input during the
     current 15-minute interval.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 4 }

dot3ExtPkgOptIfLowerInputPowerThreshold OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-write
  STATUS  current
  DESCRIPTION
    "The lower limit threshold on input power.  If
     dot3ExtPkgOptIfInputPower drops to this value or below,
     a Threshold Crossing Alert (TCA) should be sent.
     Reading will present the threshold value. Writing will
     set the value of the threshold.
     The write operation is not restricted in this document
     and can be done at any time. Changing
     dot3ExtPkgOptIfLowerInputPowerThreshold can lead to a Threshold
     Crossing Alert (TCA) being sent for the respective interface.
     This alert may be leading to an interruption of service for the
     users connected to the respective EPON interface, depending on
     the system action on such an alert.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 5 }

dot3ExtPkgOptIfUpperInputPowerThreshold OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-write
  STATUS  current
  DESCRIPTION
    "The upper limit threshold on input power.  If
     dot3ExtPkgOptIfInputPower reaches or exceeds this value,
     a Threshold Crossing Alert (TCA) should be sent.
     Reading will present the threshold value. Writing will
     set the value of the threshold.
     The write operation is not restricted in this document
     and can be done at any time. Changing
     dot3ExtPkgOptIfUpperInputPowerThreshold can lead to a Threshold
     Crossing Alert (TCA) being sent for the respective interface.
     This alert may be leading to an interruption of service for the
     users connected to the respective EPON interface, depending on
     the system action on such an alert.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
 ::= { dot3ExtPkgOptIfEntry 6 }

dot3ExtPkgOptIfOutputPower OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "The optical power monitored at the output.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 7 }

dot3ExtPkgOptIfLowOutputPower OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "The lowest optical power monitored at the output during the
     current 15-minute interval.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 8 }

dot3ExtPkgOptIfHighOutputPower OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-only
  STATUS  current
  DESCRIPTION
    "The highest optical power monitored at the output during the
     current 15-minute interval.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
 ::= { dot3ExtPkgOptIfEntry 9 }

dot3ExtPkgOptIfLowerOutputPowerThreshold OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-write
  STATUS  current
  DESCRIPTION
    "The lower limit threshold on output power.  If
     dot3ExtPkgOptIfOutputPower drops to this value or below,
     a Threshold Crossing Alert (TCA) should be sent.
     Reading will present the threshold value. Writing will
     set the value of the threshold.
     The write operation is not restricted in this document
     and can be done at any time. Changing
     dot3ExtPkgOptIfLowerOutputPowerThreshold can lead to a Threshold
     Crossing Alert (TCA) being sent for the respective interface.
     This alert may be leading to an interruption of service for the
     users connected to the respective EPON interface, depending on
     the system action on such an alert.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
::= { dot3ExtPkgOptIfEntry 10 }

dot3ExtPkgOptIfUpperOutputPowerThreshold OBJECT-TYPE
  SYNTAX  Integer32
  UNITS  "0.1 dbm"
  MAX-ACCESS  read-write
  STATUS  current
  DESCRIPTION
    "The upper limit threshold on output power.  If
     dot3ExtPkgOptIfOutputPower reaches or exceeds this value,
     a Threshold Crossing Alert (TCA) should be sent.
     Reading will present the threshold value. Writing will
     set the value of the threshold.
     The write operation is not restricted in this document
     and can be done at any time. Changing
     dot3ExtPkgOptIfUpperOutputPowerThreshold can lead to a Threshold
     Crossing Alert (TCA) being sent for the respective interface.
     This alert may be leading to an interruption of service of the
     users connected to the respective EPON interface, depending on
     the system action on such an alert.
     This object is applicable for an OLT and an ONU. At the
     OLT, it has a distinct value for each virtual interface."
  ::= { dot3ExtPkgOptIfEntry 11 }

dot3ExtPkgOptIfSignalDetect OBJECT-TYPE
    SYNTAX  TruthValue
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "When getting true(1), there is a valid optical signal at
             the receive that is above the optical power level for
             signal detection. When getting false(2) the optical
             signal at the receive is below the optical power level
             for signal detection.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    DEFVAL { false }
    ::= { dot3ExtPkgOptIfEntry 12 }

dot3ExtPkgOptIfTransmitAlarm OBJECT-TYPE
    SYNTAX  TruthValue
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "When getting true(1) there is a non-valid optical signal
             at the transmit of the interface, either a higher level
             or lower level than expected. When getting false(2) the
             optical signal at the transmit is valid and in the
             required range.
             This object is applicable for an OLT and an ONU. At the
             OLT, it has a distinct value for each virtual interface."
    DEFVAL { false }
    ::= { dot3ExtPkgOptIfEntry 13 }

dot3ExtPkgOptIfTransmitEnable OBJECT-TYPE
    SYNTAX  TruthValue
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "Setting this object to true(1) will cause the optical
             interface to start transmission (according to the
             control protocol specified for the logical interface).
             Setting this object to false(2) will cause the
             interface to stop the optical transmission.
             When getting true(1), the optical interface is in
             transmitting mode (obeying to the logical control
             protocol).
             When getting false(2), the optical interface is not in
             transmitting mode.
             The write operation is not restricted in this document
             and can be done at any time. Changing
             dot3ExtPkgOptIfTransmitEnable state can lead to a halt
             in the optical transmission of the respective interface
             leading to an interruption of service of the users 
             connected to the respective EPON interface.
             The object is relevant when the admin state of the
             interface is active as set by the dot3MpcpAdminState.
             This object is applicable for an OLT and an ONU. At the
             OLT it, has a distinct value for each virtual interface."
    DEFVAL { false }
    ::= { dot3ExtPkgOptIfEntry 14 }

-- Conformance Statements

-- Conformance Groups

dot3EponGroups      OBJECT IDENTIFIER ::= { dot3EponConformance 1 }

dot3MpcpGroupBase OBJECT-GROUP
    OBJECTS {
            dot3MpcpOperStatus,
            dot3MpcpAdminState,
            dot3MpcpMode,
            dot3MpcpSyncTime,
            dot3MpcpLinkID,
            dot3MpcpRemoteMACAddress,
            dot3MpcpRegistrationState,
            dot3MpcpMaximumPendingGrants,
            dot3MpcpTransmitElapsed,
            dot3MpcpReceiveElapsed,
            dot3MpcpRoundTripTime
    }
    STATUS  current
    DESCRIPTION
           "A collection of objects of dot3 Mpcp Control entity state
            definition. Objects are per LLID."
    ::= { dot3EponGroups 1 }

dot3MpcpGroupStat OBJECT-GROUP
    OBJECTS {
            dot3MpcpMACCtrlFramesTransmitted,
            dot3MpcpMACCtrlFramesReceived,
            dot3MpcpDiscoveryWindowsSent,
            dot3MpcpDiscoveryTimeout,
            dot3MpcpTxRegRequest,
            dot3MpcpRxRegRequest,
            dot3MpcpTxRegAck,
            dot3MpcpRxRegAck,
            dot3MpcpTxReport,
            dot3MpcpRxReport,
            dot3MpcpTxGate,
            dot3MpcpRxGate,
            dot3MpcpTxRegister,
            dot3MpcpRxRegister
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3 Mpcp Statistics.
             Objects are per LLID."
    ::= { dot3EponGroups 2 }

dot3OmpeGroupID OBJECT-GROUP
    OBJECTS {
            dot3OmpEmulationType
                    
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3 OMP emulation entity
             state definition. Objects are per LLID."
    ::= { dot3EponGroups 3 }

dot3OmpeGroupStat OBJECT-GROUP
    OBJECTS {
            dot3OmpEmulationSLDErrors,
            dot3OmpEmulationCRC8Errors,
            dot3OmpEmulationBadLLID,
            dot3OmpEmulationGoodLLID,
            dot3OmpEmulationOnuPonCastLLID,
            dot3OmpEmulationOltPonCastLLID,
            dot3OmpEmulationBroadcastBitNotOnuLlid,
            dot3OmpEmulationOnuLLIDNotBroadcast,
            dot3OmpEmulationBroadcastBitPlusOnuLlid,
            dot3OmpEmulationNotBroadcastBitNotOnuLlid
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3 OMP emulation
             Statistics. Objects are per LLID."
    ::= { dot3EponGroups 4 }

dot3EponFecGroupAll OBJECT-GROUP
    OBJECTS {
            dot3EponFecPCSCodingViolation,
            dot3EponFecAbility,
            dot3EponFecMode,
            dot3EponFecCorrectedBlocks,
            dot3EponFecUncorrectableBlocks,
            dot3EponFecBufferHeadCodingViolation
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3 FEC group control and 
            statistics. Objects are per LLID."
    ::= { dot3EponGroups 5 }

dot3ExtPkgGroupControl OBJECT-GROUP
    OBJECTS {
            dot3ExtPkgObjectReset,
            dot3ExtPkgObjectPowerDown,
            dot3ExtPkgObjectNumberOfLLIDs,
            dot3ExtPkgObjectFecEnabled,
            dot3ExtPkgObjectReportMaximumNumQueues,
            dot3ExtPkgObjectRegisterAction
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3ExtPkg control
             definition. Objects are per LLID."
    ::= { dot3EponGroups 6 }

dot3ExtPkgGroupQueue OBJECT-GROUP
    OBJECTS {
     dot3ExtPkgObjectReportNumThreshold,
     dot3ExtPkgObjectReportMaximumNumThreshold,
     dot3ExtPkgStatTxFramesQueue,
     dot3ExtPkgStatRxFramesQueue,
     dot3ExtPkgStatDroppedFramesQueue        
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3ExtPkg Queue
             control. Objects are per LLID, per queue."
    ::= { dot3EponGroups 7 }

dot3ExtPkgGroupQueueSets OBJECT-GROUP
    OBJECTS {   
     dot3ExtPkgObjectReportThreshold
    }
    STATUS  current
    DESCRIPTION
            "A collection of objects of dot3ExtPkg queue_set
             control. Objects are per LLID, per queue, per
             queue_set."
    ::= { dot3EponGroups 8 }

dot3ExtPkgGroupOptIf OBJECT-GROUP
    OBJECTS {
   dot3ExtPkgOptIfSuspectedFlag,
     dot3ExtPkgOptIfInputPower,
     dot3ExtPkgOptIfLowInputPower,
     dot3ExtPkgOptIfHighInputPower,
     dot3ExtPkgOptIfLowerInputPowerThreshold,
     dot3ExtPkgOptIfUpperInputPowerThreshold,
     dot3ExtPkgOptIfOutputPower,
     dot3ExtPkgOptIfLowOutputPower,
     dot3ExtPkgOptIfHighOutputPower,
     dot3ExtPkgOptIfLowerOutputPowerThreshold,
     dot3ExtPkgOptIfUpperOutputPowerThreshold,
     dot3ExtPkgOptIfSignalDetect,
     dot3ExtPkgOptIfTransmitAlarm,
     dot3ExtPkgOptIfTransmitEnable
     }
    STATUS  current
    DESCRIPTION
            "A collection of objects of control and status indication
             of the optical interface. 
             Objects are per LLID."
    ::= { dot3EponGroups 9 }

-- Compliance

   dot3EponCompliances
       OBJECT IDENTIFIER ::= { dot3EponConformance 2 }

dot3MPCPCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "The compliance statement for Multi-Point 
                 Control Protocol interfaces."

    MODULE  -- this module
    MANDATORY-GROUPS { dot3MpcpGroupBase}

    GROUP       dot3MpcpGroupStat
   DESCRIPTION "This group is mandatory for all MPCP supporting
                interfaces for statistics collection."
   ::= { dot3EponCompliances 1}

dot3OmpeCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "The compliance statement for OMPEmulation
                 interfaces."

    MODULE  -- this module
    MANDATORY-GROUPS { dot3OmpeGroupID}

    GROUP       dot3OmpeGroupStat
    DESCRIPTION "This group is mandatory for all OMPemulation
                 supporting interfaces for statistics collection."

    ::= { dot3EponCompliances 2}

dot3EponFecCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "The compliance statement for FEC EPON interfaces.
                 This group is mandatory for all FEC supporting 
                 interfaces for control and statistics collection."
          
    MODULE  -- this module
    MANDATORY-GROUPS { dot3EponFecGroupAll }

    ::= { dot3EponCompliances 3}

dot3ExtPkgCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "The compliance statement for EPON Interfaces 
                 using the extended package."
    MODULE  -- this module
    MANDATORY-GROUPS { dot3ExtPkgGroupControl }

    GROUP       dot3ExtPkgGroupQueue
    DESCRIPTION " This group is mandatory for all EPON interfaces
                 supporting REPORT queue management of the extended 
                 package."
  
    GROUP       dot3ExtPkgGroupQueueSets
    DESCRIPTION " This group is mandatory for all EPON interfaces
                 supporting REPORT queue_sets management of the
                 extended package."
  
    GROUP       dot3ExtPkgGroupOptIf
    DESCRIPTION "This group is mandatory for all EPON interfaces
                 supporting optical interfaces management,
                 of the extended package."
  
    ::= { dot3EponCompliances 4}

END

  ]]> 
  </artwork>
  <postamble /> 
  </figure>
        </section>

	
<section title="IANA Considerations">
            <t>IANA has allocated a single object identifier for the
MODULE-IDENTITY of the DOT3-EPON-MIB module under the MIB-2 tree.  </t>
   <t>The MIB module in this document uses the following IANA-assigned
      OBJECT IDENTIFIER values recorded in the SMI Numbers registry:</t>
<figure>
<preamble/>  
<artwork xml:space="preserve">
<![CDATA[ 
      Descriptor        OBJECT IDENTIFIER value
      ----------        -----------------------

      dot3EponMIB        { mib-2 155 }
]]> 
   </artwork>
  <postamble /> 
  </figure>

		</section>
	<section title="Acknowledgements">
        <t>
		This document is the result of the efforts of the HUBMIB Working
   Group.  Some special thanks to Dan Romascanu, who was WG chair during
   most of the development of this document, and who carefully reviewed
   and commented on the initial versions of this document. Also, some special thanks to Bert Wijnen, who is the current WG chair, for his review and comments on the final stages of this document.</t>
   <t>
   Special thanks are due
   to David Perkins for his detailed and helpful MIB Doctor review
   of this document. </t>
<t>Also, some special thanks to some of the IEEE802.3ah Working Group people for their contribution and additional reviews of the document.
</t>
	
		</section>
	<section title="Security Considerations">
        <t>
   There are number of managed objects defined in this MIB module that
   have a MAX-ACCESS clause of read-write or read-create. Writing to these objects
   can have potentially disruptive effects on network operation, including:</t>
        <t>  Changing dot3MpcpAdminState state can lead to disabling
	the Multi-Point Control Protocol on the respective interface,
	leading to the interruption of service for the users connected
	to the respective EPON interface. </t> 
        <t>  Changing dot3EponFecMode state can lead to disabling the
	Forward Error Correction on the respective interface, which can
	lead to a degradation of the optical link, and therefore may
	lead to an interruption of service for the users connected to
	the respective EPON interface.</t> 
        <t>  Changing dot3ExtPkgObjectReset state can lead to a reset
	of the respective interface leading to an interruption of
	service for the users connected to the respective EPON
	interface.</t> 
        <t>  Changing dot3ExtPkgObjectPowerDown state can lead to a
	power down of the respective interface, leading to an
	interruption of service for the users connected to the
	respective EPON interface.</t> 
        <t>  Changing dot3ExtPkgObjectFecEnabled state can lead to
	disabling the Forward Error Correction on the respective
	interface, which can lead to a degradation of the optical link,
	and therefore may lead to an interruption of service for the
	users connected to the respective EPON interface.</t> 
        <t>  Changing dot3ExtPkgObjectRegisterAction state can lead to
	a change in the registration state of the respective interface,
	leading to a deregistration and an interruption of service for
	the users connected to the respective EPON interface.</t> 
        <t>  Changing dot3ExtPkgObjectReportNumThreshold can lead to a
	change in the reporting of the ONU interface and therefore to
	a change in the bandwidth allocation of the respective
	interface. This change may lead a degradation or an
	interruption of service for the users connected to the
	respective EPON interface.</t> 
        <t>  Changing dot3ExtPkgObjectReportThreshold can lead to a
	change in the reporting of the ONU interface and therefore to
	a change in the bandwidth allocation of the respective
	interface. This change may lead a degradation or an
	interruption of service for the users connected to the
	respective EPON interface.</t> 
        <t>  Changing dot3ExtPkgOptIfLowerInputPowerThreshold can lead
	to a Threshold Crossing Alert (TCA) being sent for the
	respective interface. This alert may be leading to an
	interruption of service for the users connected to the
	respective EPON interface, depending on the system action on
	such an alert.</t> 
        <t>  Changing dot3ExtPkgOptIfUpperInputPowerThreshold can lead
	to a Threshold Crossing Alert (TCA) being sent for the
	respective interface. This alert may be leading to an
	interruption of service for the users connected to the
	respective EPON interface, depending on the system action on
	such an alert.</t> 
        <t>  Changing dot3ExtPkgOptIfLowerOutputPowerThreshold can
	lead to a Threshold Crossing Alert (TCA) being sent for the
	respective interface. This alert may be leading to an
	interruption of service for the users connected to the
	respective EPON interface, depending on the system action on
	such an alert.</t> 
        <t>  Changing dot3ExtPkgOptIfUpperOutputPowerThreshold can
	lead to a Threshold Crossing Alert (TCA) being sent for the
	respective interface. This alert may be leading to an
	interruption of service for the users connected to the
	respective EPON interface, depending on the system action on
	such an alert.</t> 
        <t>  Changing dot3ExtPkgOptIfTransmitEnable state can lead to
	a halt in the optical transmission of the respective interface,
	leading to an interruption of service for the users connected
	to the respective EPON interface.</t> 
 
<t> <vspace blankLines="1" />
The user of this MIB module must therefore be aware that support for
SET operations in a non-secure environment without proper protection
can have a negative effect on network operations.
<vspace blankLines="1" />
The readable objects in this MIB module (i.e., those with MAX-ACCESS
other than not-accessible) may be considered sensitive in some
environments since, collectively, they provide information about the
performance of network interfaces and can reveal some aspects of
their configuration.  In such environments it is important to control	
even GET and NOTIFY access to these objects and possibly even to
encrypt their values when sending them over the network via SNMP.
<vspace blankLines="1" />
SNMP versions prior to SNMPv3 did not include adequate security. Even
if the network itself is secure (for example by using IPsec), even
then, there is no control as to who on the secure network is allowed
to access and GET/SET (read/change/create/delete) the objects in this
MIB module.
<vspace blankLines="1" />
It is RECOMMENDED that implementers consider the security features as
provided by the SNMPv3 framework (see [RFC3410], section 8),
including full support for the SNMPv3 cryptographic mechanisms (for
authentication and privacy).
<vspace blankLines="1" />
Further, deployment of SNMP versions prior to SNMPv3 is NOT
RECOMMENDED.  Instead, it is RECOMMENDED to deploy SNMPv3 and to
enable cryptographic security.  It is then a customer/operator
responsibility to ensure that the SNMP entity giving access to an
instance of this MIB module is properly configured to give access to
the objects only to those principals (users) that have legitimate
rights to indeed GET or SET (change/create/delete) them.
	</t>
        </section>

    </middle>

    <back>
        <references title='Normative References'>
	&rfc2578;
&rfc2579; 
&rfc2580; 
&rfc4836;
&rfc3635;  
&rfc2864;  
&rfc2863;
&rfc2119; 


  <reference anchor="802.3ah">
    <front>
      <title>
        Institute of Electrical and Electronic Engineers, IEEE Std
        802.3ah-2004. Information technology - Telecommunications and
        information exchange between systems - Local and
        metropolitan area networks - Specific requirements -
        Part 3: Carrier sense multiple access with collision
        detection (CSMA/CD) access method and physical layer
        specifications - Media Access Control Parameters, Physical
        Layers and Management Parameters for subscriber access
        networks.
       </title>
      <author>
        <organization>IEEE</organization>
      </author>
      <date day="22" month="October" year="2004"/>
    </front>
    <seriesInfo name="IEEE Std" value="802.3ah-2004"/>
    </reference>

  <reference anchor="802.3">
    <front>
      <title>
       Institute of Electrical and Electronic Engineers, IEEE Std
802.3-2002, "IEEE Standard for Carrier Sense Multiple Access with
Collision Detection (CSMA/CD) Access Method and Physical Layer
Specifications.
      </title>
      <author>
        <organization>IEEE</organization>
      </author>
      <date day="05" month="December" year="2002"/>
    </front>
     </reference>

  <reference anchor="ITU-T.G.983">
    <front>
      <title>
       ITU-T, SERIES G: TRANSMISSION SYSTEMS AND MEDIA,
DIGITAL SYSTEMS AND NETWORKS, Digital transmission systems - Digital sections and digital
line system - Optical line systems for local and access
networks Broadband optical access systems based on
Passive Optical Networks (PON), ITU-T Recommendation G.983.1
      </title>
      <author>
        <organization>ITU</organization>
      </author>
      <date day="01" month="October" year="1998"/>
    </front>
     </reference>

  <reference anchor="802.1d">
    <front>
      <title>
       Institute of Electrical and Electronic Engineers, 
	   802.1D-2004, IEEE Standard for Local and metropolitan area networks
Media Access Control (MAC) Bridges.
	   </title>
      <author>
        <organization>IEEE</organization>
      </author>
      <date day="09" month="June" year="2004"/>
    </front>
     </reference>



  <reference anchor="ITU-T.G.975">
    <front>
      <title>
	  ITU-T, SERIES G: TRANSMISSION SYSTEMS AND MEDIA, DIGITAL SYSTEMS AND NETWORKS
Digital sections and digital line system - Optical fibre submarine cable systems
Forward error correction for submarine systems, ITU-T  Recommendation  G.975
      </title>
      <author>
        <organization>ITU</organization>
      </author>
      <date day="01" month="October" year="2000"/>
    </front>
     </reference>


  </references>


			<references title='Informative References'>


&rfc3410;
&rfc1525;
&rfc4188;

  <reference anchor="EFM-MIB">
    <front>
      <title>Definitions and Managed Objects for OAM Functions on Ethernet Like
                                Interfaces</title>
      <author initials="M" surname="Squire" fullname="Matt Squire">
        <organization>Hatteras Networks</organization>
      </author>
      <date day="1" month="March" year="2006" />
    </front>
    <seriesInfo name="Work" value="in Progress"
/>
  </reference>

</references> 
    
    </back>

</rfc>
