wiki:802.11/MAC/Upper/MACHighFramework/LTG

Local Traffic Generator

The MAC High Framework has the capability of generating traffic to send wirelessly independent of any traffic that may arrive from other sources such as Ethernet. The framework for generating this traffic, called the Local Traffic Generator (LTG), is broken up into two pieces that handle: (a) the relative timing of packets (i.e. the LTG Schedule) and (b) the payload of those packets (i.e. the LTG Payload).

LTG Schedule

The LTG Schedule subsystem handles the timing of the generation of packets. Once configured and started, it will execute a callback that is provided by the upper-level MAC. An upper-level MAC can configure an LTG schedule as a particular type and provide it parameters that correspond to that type. In the Reference Design code, we have implemented two common LTG schedule types, but additional types may be added by users if needed:

Type: Periodic

The periodic LTG scheduler executes a callback provided by the upper-level MAC at a regular interval. This interval is specified by a single parameter.

Parameters:

  1. interval: the time the LTG scheduler waits before successive calls to the provided callback.

Type: Uniform Random

The uniform random LTG scheduler executes a callback provided by the upper-level MAC at a uniformly random interval. This interval is chosen at random with each successive call and is chosen within a range provided by two parameters.

Parameters:

  1. minimum interval: the shortest amount of time the LTG scheduler will wait before the next call to the provided callback.
  2. maximum interval: the longest amount of time the LTG scheduler will wait before the next call to the provided callback.

LTG Payload

Once the callback of the upper-level MAC is executed by the scheduler, it is the responsibility of the upper-level MAC to construct the locally-generated payload of the packet and enqueue it for transmission. Both the access point and station implementations of upper-level MACs contain examples of this process.

Last modified 10 years ago Last modified on Nov 25, 2013, 12:19:59 PM