Simple Module EtherAppSrv
Package: inet.applications.ethernet
File: src/inet/applications/ethernet/EtherAppSrv.ned
C++ definition
Server side of the EtherCli model -- generates EtherAppResp packets
with the number of bytes requested by the client in EtherAppReq.
It should be connected directly to EtherLLC or a Ieee802NicXXX module.
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:
Name |
Type |
Description |
EtherHost
|
compound module
|
An example host with one Ethernet port and a traffic generator that
generates request-reply traffic directly over Ethernet. This host model
does not contain higher layer protocols (IP, TCP). By default it is
configured to use half-duplex MAC (CSMA/CD).
|
Parameters:
Name |
Type |
Default value |
Description |
registerSAP |
bool
|
|
whether to sent IEEE802CTRL_REGISTER_DSAP on startup
|
localSAP |
int
|
0xf1 |
|
Properties:
Name |
Value |
Description |
display |
i=block/app |
|
Gates:
Name |
Direction |
Size |
Description |
in |
input |
| |
out |
output |
| |
Signals:
Name |
Type |
Unit |
sentPk |
cPacket |
|
rcvdPk |
cPacket |
|
Statistics:
Name |
Title |
Source |
Record |
Unit |
Interpolation Mode |
sentPk |
packets sent |
sentPk |
count, sum(packetBytes), vector(packetBytes) |
|
none |
rcvdPk |
packets received |
rcvdPk |
count, sum(packetBytes), vector(packetBytes) |
|
none |
endToEndDelay |
end-to-end delay |
messageAge(rcvdPk) |
histogram, vector |
s |
none |
Source code:
//
// Server side of the EtherCli model -- generates ~EtherAppResp packets
// with the number of bytes requested by the client in ~EtherAppReq.
// It should be connected directly to ~EtherLLC or a Ieee802NicXXX module.
//
simple EtherAppSrv
{
parameters:
bool registerSAP; // whether to sent IEEE802CTRL_REGISTER_DSAP on startup
int localSAP = default(0xf1);
@display("i=block/app");
@signal[sentPk](type=cPacket);
@signal[rcvdPk](type=cPacket);
@statistic[rcvdPk](title="packets received"; source=rcvdPk; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none);
@statistic[sentPk](title="packets sent"; source=sentPk; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none);
@statistic[endToEndDelay](title="end-to-end delay"; source="messageAge(rcvdPk)"; unit=s; record=histogram,vector; interpolationmode=none);
gates:
input in @labels(Ieee802Ctrl/up);
output out @labels(Ieee802Ctrl/down);
}