Simple Module EPON_mac

Package: PON.common
File: src/common/EPON_mac.ned

C++ definition

TODO auto-generated module

EPON_mac

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Used in compound modules:

If a module type shows up more than once, that means it has been defined in more than one NED file.

OLT_IF (compound module)

TODO auto-generated module

ONU_Port (compound module)

TODO auto-generated module

Parameters:

Name Type Default value Description
promiscuous bool true

if true, all packets are received, otherwise only the ones with matching destination MAC address

address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

txQueueLimit int 2

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule=="" The 2nd frame is used in case of changing registers with MPCP ... sometimes 1 is already transmitted and the next MPCP decides to transmitt again with the new times.

queueModule string ""

name of optional external queue module

mtu int 1500

Properties:

Name Value Description
display i=block/queue

Gates:

Name Direction Size Description
upperLayerIn input

to EtherLLC or MACRelayUnitPP

upperLayerOut output

to EtherLLC or MACRelayUnitPP

phys inout

to physical layer or the network

direct input

Gate for sending directly (MPCP registration Process)

Source code:

//
// TODO auto-generated module
//
simple EPON_mac
{
    parameters:
        bool promiscuous = default(true);     // if true, all packets are received, otherwise only the
                                // ones with matching destination MAC address
        string address = default("auto");       // MAC address as hex string (12 hex digits), or
                                // "auto". "auto" values will be replaced by
                                // a generated MAC address in init stage 0.
        int txQueueLimit = default(2); 	// maximum number of frames queued up for transmission;
                                		// additional frames are dropped. Only used if queueModule==""
                                		// The 2nd frame is used in case of changing registers with MPCP
                                		// ... sometimes 1 is already transmitted and the next MPCP decides 
                                		// to transmitt again with the new times.
        string queueModule = default("");    // name of optional external queue module
        int mtu = default(1500);
        @display("i=block/queue");
    gates:
        input upperLayerIn;    // to EtherLLC or MACRelayUnitPP
        output upperLayerOut;  // to EtherLLC or MACRelayUnitPP
        inout phys;            // to physical layer or the network
        input direct @loose;   // Gate for sending directly (MPCP registration Process)

}