EtherAppSrv

Package: inet.applications.ethernet

EtherAppSrv

simple module

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.

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);
}
File: src/inet/applications/ethernet/EtherAppSrv.ned