Compound Module PPPInterface

Package: inet.linklayer.ppp
File: src/linklayer/ppp/PPPInterface.ned

PPP interface. Complements the PPP module with an output queue for QoS and RED support.

See also: PPPInterfaceNoQueue

OutputQueue PPP

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
BurstHost compound module

Definition of an IP node with a transport generator that connects to IP directly, without TCP or UDP.

ExtRouter compound module

External router.

LDP_LSR compound module

An LDP-capable router.

OSPFRouter compound module

An OSPFv2 router.

Router compound module

IP router.

Router6 compound module

IPv6 router.

RSVP_LSR compound module

An RSVP-TE capable router.

RTPHost compound module (no description)
StandardHost compound module

IP host with SCTP, TCP, UDP layers and applications.

StandardHost6 compound module

IPv6 host with TCP, UDP layers and applications.

TCPSpoofingHost compound module

IP host with TCPSpoof in the application layer.

WirelessHost compound module

Models a host with one wireless (802.11b) card in infrastructure mode. This module is basically a StandardHost with an Ieee80211NicSTA added. It should be used in conjunction with WirelessAP, or any other AP model which contains Ieee80211NicAP.

WirelessHostSimplified compound module

Models a host with one wireless (802.11b) card in infrastructure mode, but using a simplified NIC that does not support handovers. This module is basically a StandardHost with an Ieee80211NicSTASimplified added. It should be used in conjunction with WirelessAPSimplified, or any other AP model which contains Ieee80211NicAPSimplified.

Parameters:

Name Type Default value Description
queueType string "DropTailQueue"

Properties:

Name Value Description
display i=block/ifcard

Gates:

Name Direction Size Description
netwIn input
netwOut output
phys inout

Unassigned submodule parameters:

Name Type Default value Description
ppp.mtu int 4470

Source code:

//
// \PPP interface. Complements the PPP module with an output queue
// for QoS and RED support.
//
// @see PPPInterfaceNoQueue
//
module PPPInterface
{
    parameters:
        string queueType = default("DropTailQueue");
        @display("i=block/ifcard");
    gates:
        input netwIn;
        output netwOut;
        inout phys @labels(PPPFrame);
    submodules:
        queue: <queueType> like OutputQueue {
            parameters:
                @display("p=60,85;q=l2queue");
        }
        ppp: PPP {
            parameters:
                queueModule = "queue";
                txQueueLimit = 1; // queue sends one packet at a time
                @display("p=88,165");
        }
    connections:
        netwIn --> { @display("m=n"); } --> queue.in;
        queue.out --> ppp.netwIn;
        netwOut <-- { @display("m=n"); } <-- ppp.netwOut;
        phys <--> { @display("m=s"); } <--> ppp.phys;
}