inet icon indicating copy to clipboard operation
inet copied to clipboard

transport route visualizer

Open ManiAm opened this issue 6 years ago • 1 comments

The transportRouteVisualizer does not work for this specific TCP scenario.

Simulation configuration:

[Config Step1]
description = Dynamic routing with AODV when nodes are fixed
network = Network

*.configurator.addStaticRoutes = false

*.*.aodv.ttlStart = 4

# TCP parameters
*.source.numApps = 1
*.source.app[0].typename = "TcpSessionApp"
*.source.app[0].connectAddress = "destination"
*.source.app[0].connectPort = 10
*.source.app[0].sendBytes = 100MiB

*.destination.numApps = 1
*.destination.app[0].typename = "TcpSinkApp"
*.destination.app[0].localPort = 10

*.*.ipv4.arpType = "GlobalArp"

# wlan parameters
*.*.wlan[*].radio.transmitter.power = 2mW

# AODV RREQ
*.rreqVisualizer.*.displayLinks = true
*.rreqVisualizer.*.packetFilter = "aodv::Rreq"
*.rreqVisualizer.*.fadeOutMode = "simulationTime"
*.rreqVisualizer.*.fadeOutTime = 0.002s

# AODV RREP
*.rrepVisualizer.*.displayLinks = true
*.rrepVisualizer.*.packetFilter = "aodv::Rrep"
*.rrepVisualizer.*.fadeOutMode = "simulationTime"
*.rrepVisualizer.*.fadeOutTime = 5s
*.rrepVisualizer.*.lineColor = "blue"
*.rrepVisualizer.*.labelColor = "blue"

# AODV RERR
*.rerrVisualizer.*.displayLinks = true
*.rerrVisualizer.*.packetFilter = "aodv::Rerr"
*.rerrVisualizer.*.fadeOutMode = "simulationTime"
*.rerrVisualizer.*.fadeOutTime = 0.002s
*.rerrVisualizer.*.lineColor = "red"
*.rerrVisualizer.*.labelColor = "red"

*.visualizer.transportRouteVisualizer.displayRoutes = true
*.visualizer.transportRouteVisualizer.fadeOutTime = 1s

Network Description:

import inet.visualizer.integrated.IntegratedCanvasVisualizer;
import inet.visualizer.linklayer.DataLinkVisualizer;
import inet.networklayer.configurator.ipv4.Ipv4NetworkConfigurator;
import inet.physicallayer.ieee80211.packetlevel.Ieee80211ScalarRadioMedium;
import inet.node.inet.AdhocHost;
import inet.node.aodv.AodvRouter;
import inet.common.scenario.ScenarioManager;

network Network
{
    parameters:
    @display("bgb=659.36,730.368");
    
    @figure[rcvdPkText](type=indicatorText; pos=400,650; anchor=w; font=,18; textFormat="# received messages: %g"; initialValue=0);
    @statistic[numPacketReceived](source=destination.app[0].packetReceived; record=figure(count); targetFigure=rcvdPkText);
        
    submodules:
        visualizer: IntegratedCanvasVisualizer {
            @display("p=100.172,205.416");
        }
        rreqVisualizer: DataLinkVisualizer {
            @display("p=98.904,285.3");
        }
        rrepVisualizer: DataLinkVisualizer {
            @display("p=98.904,366.452");
        }
        rerrVisualizer: DataLinkVisualizer {
            @display("p=100.172,439.996");
        }
        configurator: Ipv4NetworkConfigurator {
            @display("p=100.172,45.648");
        }
        radioMedium: Ieee80211ScalarRadioMedium {
            @display("p=97.636,125.532");
        }
        scenarioManager: ScenarioManager {
            @display("p=100.172,524.952");
        }
        source: AodvRouter {
            @display("p=229.00801,68.996");
        }
        destination: AodvRouter {
            @display("p=488.84402,535.82");
        }
        aodvRouter1: AodvRouter {
            @display("p=421.316,318.556");
        }
        aodvRouter2: AodvRouter {
            @display("p=274.516,463.888");
        }
        aodvRouter3: AodvRouter {
            @display("p=306.812,211.392");
        }
        aodvRouter4: AodvRouter {
            @display("p=563.71204,350.85202");
        }
        aodvRouter5: AodvRouter {
            @display("p=421.316,99.824005");
        }
}

ManiAm avatar May 01 '18 04:05 ManiAm

Thanks for reporting!

This is a known limitation of the visualization feature. Currently, there's no support for identifying parts of the data which go through representation merging/splitting in the underlying network. Unfortunately, this is generally the case. The solution would be that the data should be tagged with color at the sender and followed through the network piece by piece until it reaches the receiver. Then all paths that the parts take could be visualized.

I leave this bug issue open, I expect this to be implemented after INET 4.0.

levy avatar May 02 '18 08:05 levy