ExponentialRateMeter.ned
NED File src/inet/queueing/meter/ExponentialRateMeter.ned
| Name | Type | Description |
|---|---|---|
| ExponentialRateMeter | simple module |
Attaches a ~RateTag to each packet specifying the data rate and packet rate of the received stream of packets. The algorithm takes older packets into account with an exponentially decreasing weight. |
Source code
// // Copyright (C) 2020 OpenSim Ltd. // // SPDX-License-Identifier: LGPL-3.0-or-later // package inet.queueing.meter; import inet.queueing.base.PacketMeterBase; import inet.queueing.contract.IPacketMeter; // // Attaches a ~RateTag to each packet specifying the data rate and // packet rate of the received stream of packets. The algorithm takes older // packets into account with an exponentially decreasing weight. // // @see ~StatisticalRateLimiter // simple ExponentialRateMeter extends PacketMeterBase like IPacketMeter { parameters: double alpha; // Parameter in the range of (0, 1) for the exponential weight decrease @class(ExponentialRateMeter); @signal[packetRate](type=double); @statistic[packetRate](title="packet rate"; record=vector; unit=pps; interpolationmode=linear); @signal[dataRate](type=double); @statistic[dataRate](title="data rate"; record=vector; unit=bps; interpolationmode=linear); }