Package: inet.linklayer.ethernet.modular
EthernetCutthroughLayer
compound module(no description)
Usage diagram
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
Used in compound modules
| Name | Type | Description |
|---|---|---|
| EthernetCutthroughInterface | compound module |
This module represents an Ethernet network interface with cut-through support. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| macTableModule | string | ||
| bitrate | double |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/layer |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| upperLayerIn | input | ||
| upperLayerOut | output | ||
| lowerLayerIn | input | ||
| lowerLayerOut | output | ||
| cutthroughIn | input | ||
| cutthroughOut | output |
Unassigned submodule parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| cutthroughSink.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| cutthroughSink.clockModule | string | "" |
relative path of a module that implements IClock; optional |
| cutthroughSink.datarate | double | nan bps | |
| cutthroughSource.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| cutthroughSource.datarate | double | nan bps | |
| cutthroughSource.macTableModule | string |
Source code
module EthernetCutthroughLayer { parameters: string macTableModule; double bitrate @unit(bps); *.datarate = default(this.bitrate); *.macTableModule = default(this.macTableModule); @display("i=block/layer"); gates: input upperLayerIn; output upperLayerOut; input lowerLayerIn; output lowerLayerOut; input cutthroughIn; output cutthroughOut; submodules: cutthroughSink: EthernetCutthroughSink { @display("p=200,100"); } cutthroughSource: EthernetCutthroughSource { @display("p=500,100"); } connections: upperLayerIn --> { @display("m=n"); } --> cutthroughSink.in; cutthroughSink.out --> { @display("m=s"); } --> lowerLayerOut; cutthroughIn --> { @display("m=w"); } --> cutthroughSink.cutthroughIn; lowerLayerIn --> { @display("m=s"); } --> cutthroughSource.in; cutthroughSource.out --> { @display("m=n"); } --> upperLayerOut; cutthroughSource.cutthroughOut --> { @display("m=e"); } --> cutthroughOut; }File: src/inet/linklayer/ethernet/modular/EthernetCutthroughLayer.ned