Skip to content

Commit

Permalink
DirectionReverserLayer: Replaced the MessageDispatcher module with Lo…
Browse files Browse the repository at this point in the history
…calDelivery whcih checks the ethernet destination MAC address.
  • Loading branch information
levy committed Apr 12, 2024
1 parent 0ae76af commit c253bc7
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions src/inet/linklayer/ethernet/common/DirectionReverserLayer.ned
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@

package inet.linklayer.ethernet.common;

import inet.common.MessageDispatcher;
import inet.linklayer.ieee8021d.relay.Ieee8021dDelivery;
import inet.protocolelement.contract.IProtocolLayer;
import inet.queueing.common.PacketMultiplexer;
import inet.queueing.contract.IPacketDelayer;
import inet.queueing.contract.IPacketFlow;


//
// This module provides a layer that combines the decision for local delivery
// with the service of reversing the direction of an incoming packet to outgoing
Expand All @@ -33,7 +34,7 @@ module DirectionReverserLayer like IProtocolLayer
cutthroughBarrier: <default("")> like IPacketDelayer {
@display("p=100,150");
}
fork: MessageDispatcher {
localDelivery: LocalDelivery {
@display("p=100,300;i=-;b=10,10,oval,grey,,1");
}
delayer: <default("")> like IPacketDelayer {
Expand All @@ -49,11 +50,11 @@ module DirectionReverserLayer like IProtocolLayer
upperLayerIn --> { @display("m=n"); } --> join.in++;
join.out --> { @display("m=s"); } --> lowerLayerOut;

lowerLayerIn --> { @display("m=s"); } --> fork.in++;
fork.out++ --> cutthroughBarrier.in;
lowerLayerIn --> { @display("m=s"); } --> localDelivery.in;
localDelivery.deliveryOut --> cutthroughBarrier.in;
cutthroughBarrier.out --> { @display("m=n"); } --> upperLayerOut;

fork.out++ --> delayer.in;
localDelivery.forwardingOut --> delayer.in;
delayer.out --> reverser.in;
reverser.out --> join.in++;
}

0 comments on commit c253bc7

Please sign in to comment.