Network pon_srv

Package: default
File: simulations/pon_srv.ned

(no description)

PON_Splitter EPON_ONU EtherHost EPON_ONU EPON_ONU EtherHost EtherHost EtherHost EPON_OLT ServiceConfig

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.

Properties:

Name Value Description
isNetwork

Unassigned submodule parameters:

Name Type Default value Description
pon_Splitter.haltOn int 10
epon_onu.onu_port.epon_mac.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.

epon_onu.onu_port.epon_mac.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.

epon_onu.onu_port.epon_mac.queueModule string ""

name of optional external queue module

epon_onu.onu_port.epon_mac.mtu int 1500
epon_onu.onu_port.onu_Q_mgmt.regTimeOut int
epon_onu.onu_port.onu_Q_mgmt.queueLimit int
epon_onu.onu_port.onu_Q_mgmt.statsGranularity double
epon_onu.epon_ONU_relay.addressTableFile string
epon_onu.epon_ONU_relay.addressTableSize int
epon_onu.epon_ONU_relay.agingTime double
epon_onu.mac.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.

epon_onu.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

epon_onu.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

epon_onu.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

epon_onu.mac.queueModule string ""

name of optional external queue module

epon_onu.mac.mtu int 1500
host1.cli.destAddress string ""

destination MAC address, or module path name of destination station; empty means off

host1.cli.startTime double this.waitTime

time of sending the first request

host1.cli.waitTime double uniform(0s,1s)

interval between sending requests

host1.cli.reqLength int 100B

length of request packets

host1.cli.respLength int 1KB

length of response packets

host1.mac.promiscuous bool false

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

host1.mac.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.

host1.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

host1.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

host1.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

host1.mac.mtu int 1500
epon_onu3.onu_port.epon_mac.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.

epon_onu3.onu_port.epon_mac.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.

epon_onu3.onu_port.epon_mac.queueModule string ""

name of optional external queue module

epon_onu3.onu_port.epon_mac.mtu int 1500
epon_onu3.onu_port.onu_Q_mgmt.regTimeOut int
epon_onu3.onu_port.onu_Q_mgmt.queueLimit int
epon_onu3.onu_port.onu_Q_mgmt.statsGranularity double
epon_onu3.epon_ONU_relay.addressTableFile string
epon_onu3.epon_ONU_relay.addressTableSize int
epon_onu3.epon_ONU_relay.agingTime double
epon_onu3.mac.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.

epon_onu3.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

epon_onu3.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

epon_onu3.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

epon_onu3.mac.queueModule string ""

name of optional external queue module

epon_onu3.mac.mtu int 1500
epon_onu2.onu_port.epon_mac.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.

epon_onu2.onu_port.epon_mac.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.

epon_onu2.onu_port.epon_mac.queueModule string ""

name of optional external queue module

epon_onu2.onu_port.epon_mac.mtu int 1500
epon_onu2.onu_port.onu_Q_mgmt.regTimeOut int
epon_onu2.onu_port.onu_Q_mgmt.queueLimit int
epon_onu2.onu_port.onu_Q_mgmt.statsGranularity double
epon_onu2.epon_ONU_relay.addressTableFile string
epon_onu2.epon_ONU_relay.addressTableSize int
epon_onu2.epon_ONU_relay.agingTime double
epon_onu2.mac.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.

epon_onu2.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

epon_onu2.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

epon_onu2.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

epon_onu2.mac.queueModule string ""

name of optional external queue module

epon_onu2.mac.mtu int 1500
host3.cli.destAddress string ""

destination MAC address, or module path name of destination station; empty means off

host3.cli.startTime double this.waitTime

time of sending the first request

host3.cli.waitTime double uniform(0s,1s)

interval between sending requests

host3.cli.reqLength int 100B

length of request packets

host3.cli.respLength int 1KB

length of response packets

host3.mac.promiscuous bool false

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

host3.mac.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.

host3.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

host3.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

host3.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

host3.mac.mtu int 1500
host4.cli.destAddress string ""

destination MAC address, or module path name of destination station; empty means off

host4.cli.startTime double this.waitTime

time of sending the first request

host4.cli.waitTime double uniform(0s,1s)

interval between sending requests

host4.cli.reqLength int 100B

length of request packets

host4.cli.respLength int 1KB

length of response packets

host4.mac.promiscuous bool false

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

host4.mac.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.

host4.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

host4.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

host4.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

host4.mac.mtu int 1500
host2.cli.destAddress string ""

destination MAC address, or module path name of destination station; empty means off

host2.cli.startTime double this.waitTime

time of sending the first request

host2.cli.waitTime double uniform(0s,1s)

interval between sending requests

host2.cli.reqLength int 100B

length of request packets

host2.cli.respLength int 1KB

length of response packets

host2.mac.promiscuous bool false

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

host2.mac.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.

host2.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

host2.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

host2.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

host2.mac.mtu int 1500
epon_olt.epon_OLT_relay.addressTableFile string

set to empty string if not used

epon_olt.epon_OLT_relay.addressTableSize int

max size of address table

epon_olt.epon_OLT_relay.agingTime double

max idle time for address table entries (when it expires, entry is removed from the table)

epon_olt.mac.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.

epon_olt.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

epon_olt.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

epon_olt.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

epon_olt.mac.queueModule string ""

name of optional external queue module

epon_olt.mac.mtu int 1500
epon_olt.olt_if.epon_mac.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.

epon_olt.olt_if.epon_mac.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.

epon_olt.olt_if.epon_mac.queueModule string ""

name of optional external queue module

epon_olt.olt_if.epon_mac.mtu int 1500
epon_olt.olt_if.olt_Q_mgmt.slotLength int
epon_olt.olt_if.olt_Q_mgmt.slotNumber int
epon_olt.olt_if.olt_Q_mgmt.regTimeInt int
epon_olt.olt_if.olt_Q_mgmt.regAckTimeOut int
epon_olt.olt_if.olt_Q_mgmt.queueLimit int
epon_olt.olt_if.olt_Q_mgmt.datarateLimit int

Limit the assigned bandwidth to scale down the simulation

serviceConfig.services string "DATA"

Service Names (whatever you like here)

serviceConfig.srvPrior string "1.0"

Service priority. Total sum must be 1

serviceConfig.vlanMap string "0"

Vlan map

serviceConfig.msrPerFlow string "1000000"

MSR per flow, default 1Mbps (-1 = Unlimited)

serviceConfig.mrrPerFlow string "1000000"

MRR per flow, default 1Mbps (-1 = Unlimited)

Source code:

network pon_srv
{
    types:
        channel GFX extends DatarateChannel
        {
            datarate = 1Gbps;
        }
    submodules:
        pon_Splitter: PON_Splitter {
            @display("p=230,142");
        }
        epon_onu: EPON_ONU {
            @display("p=432,66");
        }
        host1: EtherHost {
            @display("p=538,66");
        }
        epon_onu3: EPON_ONU {
            @display("p=432,185");
        }
        epon_onu2: EPON_ONU {
            @display("p=432,123");
        }
        host3: EtherHost {
            @display("p=538,130");
        }
        host4: EtherHost {
            @display("p=538,192");
        }
        host2: EtherHost {
            @display("p=86,72");
        }
        epon_olt: EPON_OLT {
            @display("p=141,142");
        }
        serviceConfig: ServiceConfig {
            @display("p=221,34");
        }
    connections:

        // to splitter
        epon_olt.epon <--> GFX <--> pon_Splitter.portu;
        pon_Splitter.portg++ <--> GFX <--> epon_onu.epon;
        pon_Splitter.portg++ <--> GFX <--> epon_onu2.epon;
        pon_Splitter.portg++ <--> GFX <--> epon_onu3.epon;

        // Hosts
        epon_onu.ethg <--> DatarateChannel <--> host1.ethg;
        epon_onu2.ethg <--> DatarateChannel <--> host3.ethg;
        epon_onu3.ethg <--> DatarateChannel <--> host4.ethg;
        epon_olt.ethg <--> DatarateChannel <--> host2.ethg;

}