Icmp

Package: inet.networklayer.ipv4

Icmp

simple module

C++ definition

ICMP implementation.

<b>Author:</b> Jochen Reber

Icmp

Used in compound modules

Name Type Description
Ipv4NetworkLayer compound module

Network(1,2,3) layer of an IPv4 node.

Parameters

Name Type Default value Description
interfaceTableModule string

The path to the InterfaceTable module

routingTableModule string
crcMode string "declared"
quoteLength int 8B

Number of bytes from original packet to quote in ICMP reply

Properties

Name Value Description
display i=block/control

Gates

Name Direction Size Description
transportIn input
transportOut output
ipIn input

delivered ICMP packets

ipOut output

towards network

Source code

//
// ICMP implementation.
//
// @author Jochen Reber
//
simple Icmp
{
    parameters:
        string interfaceTableModule;   // The path to the InterfaceTable module
        string routingTableModule;
        string crcMode @mutable @enum("declared","computed") = default("declared");
        int quoteLength @mutable @unit("B") = default(8B); // Number of bytes from original packet to quote in ICMP reply
        @display("i=block/control");
    gates:
        input transportIn;
        output transportOut;
        input ipIn @labels(Ipv4ControlInfo/up);  // delivered ICMP packets
        output ipOut @labels(Ipv4ControlInfo/down);  // towards network
}

File: src/inet/networklayer/ipv4/Icmp.ned