Table Of Contents
Table Of Contents

Measuring Data Rate

Goals

In this example we explore the data rate statistics of application, queue, and filter modules inside network nodes.

INET version: 4.4

The Model

The data rate is measured by observing the packets as they are passing through over time at a certain point in the node architecture. For example, an application source module produces packets over time and this process has its own data rate. Similarly, a queue module enqueues and dequeues packets over time and both of these processes have their own data rate. These data rates are different, which in turn causes the queue length to increase or decrease over time.

Here is the network:

../../../../_images/Network.png

Here is the configuration:

[General]
network = DataRateMeasurementShowcase
description = "Measure data rate in several modules throughout the network"
sim-time-limit = 1s

# source application with roughly ~48Mbps throughput
*.source.numApps = 1
*.source.app[0].typename = "UdpSourceApp"
*.source.app[0].source.packetLength = 1200B
*.source.app[0].source.productionInterval = exponential(200us)
*.source.app[0].io.destAddress = "destination"
*.source.app[0].io.destPort = 1000

# destination application
*.destination.numApps = 1
*.destination.app[0].typename = "UdpSinkApp"
*.destination.app[0].io.localPort = 1000

# enable modular Ethernet model
*.*.ethernet.typename = "EthernetLayer"
*.*.eth[*].typename = "LayeredEthernetInterface"

*.*.eth[*].bitrate = 100Mbps

Results

Here are the results:

../../../../_images/source_outgoing.png
../../../../_images/destination_incoming.png
../../../../_images/switch_incoming.png
../../../../_images/switch_outgoing.png

Sources: omnetpp.ini, DataRateMeasurementShowcase.ned

Discussion

Use this page in the GitHub issue tracker for commenting on this showcase.