LTG Flow Configurations

An LTG Flow Configuration is defined by two things:
  • Packet payload specification - responsible for setting the Tx parameters (rate, power) and creating the MAC header and payload of LTG packets.
  • Packet generation schedule - responsible for scheduling the creation and enqueue of LTG packets.

The 802.11 Reference Design code defines two schedules and three payload specifications. These schedules and payloads are used to define three LTG Flow Configurations in the reference code.

For more information on the LTG framework in C please refer to the user guide LTG docs.

Flow Config

class FlowConfig[source]

Base class for LTG Flow Configurations.

class FlowConfigCBR(dest_addr, payload_length, interval, duration=None)[source]

Class to implement a Constant Bit Rate LTG flow configuration to a given device.

Parameters:
  • dest_addr (int) – Destination MAC address
  • payload_length (int) – Length of the LTG payload (in bytes)
  • interval (float) – Interval between packets (in float seconds); actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • duration (float) – Duration of the traffic flow (in float seconds)
class FlowConfigAllAssocCBR(payload_length, interval, duration=None)[source]

Class to implement a Constant Bit Rate LTG flow configuration to all associated devices.

Parameters:
  • payload_length (int) – Length of the LTG payload (in bytes)
  • interval (float) – Interval between packets (in float seconds); actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • duration (float) – Duration of the traffic flow (in float seconds)
class FlowConfigRandomRandom(dest_addr, min_payload_length, max_payload_length, min_interval, max_interval, duration=None)[source]

Class to implement an LTG flow configuration with random period and random sized payload to a given device.

Parameters:
  • dest_addr (int) – Destination MAC address
  • min_payload_length (int) – Minimum length of the LTG payload (in bytes)
  • max_payload_length (int) – Maximum length of the LTG payload (in bytes)
  • min_interval (float) – Minimum interval between packets (in float seconds); actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • max_interval (float) – Maximum interval between packets (in float seconds) actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • duration (float, optional) – Duration of the traffic flow (in float seconds)

Schedule

class Schedule[source]

Base class for LTG Schedules.

class SchedulePeriodic(interval, duration=None)[source]

LTG Schedule that will generate a payload every ‘interval’ microseconds.

Parameters:
  • interval (float) – Interval between packets (in float seconds); actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • duration (float, optional) – Duration of the traffic flow (in float seconds)
class ScheduleUniformRandom(min_interval, max_interval, duration=None)[source]

LTG Schedule that will generate a payload a uniformly random time between min_interval and max_interval microseconds.

Parameters:
  • min_interval (float) – Minimum interval between packets (in float seconds); actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • max_interval (float) – Maximum interval between packets (in float seconds); actual packet creation interval will be quantized to the interval of the fast timer in CPU High. Currently this interval is 64 usec.
  • duration (float, optional) – Duration of the traffic flow (in float seconds)

Payload

class Payload[source]

Base class for LTG Payloads.

class PayloadFixed(dest_addr, length)[source]

LTG payload that will generate a fixed payload of the given length.

Parameters:
  • dest_addr (int) – Destination MAC address
  • length (int) – Minimum length of the LTG payload (in bytes)
class PayloadUniformRandom(dest_addr, min_length, max_length)[source]

LTG payload that will generate a payload with uniformly random size between min_length and max_length bytes.

Parameters:
  • dest_addr (int) – Destination MAC address
  • min_length (int) – Minimum length of the LTG payload (in bytes)
  • max_length (int) – Maximum length of the LTG payload (in bytes)
class PayloadAllAssocFixed(length)[source]

LTG payload that will generate a fixed payload of the given length to all associated deivces.

Parameters:length (int) – Length of the LTG payload (in bytes)