ALOHA Protocol



This is a brief summary of an MLDesigner model that simulates both ALOHA and Slotted ALOHA protocols. It demonstrates modeling techniques and shows the protocol design capability of MLDesigner. ALOHA is a random (or contention) access protocol developed at the University of Hawaii for sharing broadcast channel access among a number of users with  relatively low throughput demand. There are two main ALOHA versions: unslotted, which has no coordination between system stations, and slotted, which uses a master clock to provide synchronized channel time slots to improve throughput. ALOHA protocols are often used in satellite communications systems and cellular radio systems and are a precursor to the popular Ethernet protocol.

2. Parameters



The ALOHA model is extensively parameterized. System-level parameters are shown below.

AlohaType:  This parameter has two possible values: Unslotted and Slotted. It determines whether to execute the ALOHA or Slotted ALOHA protocol.

SafeDistance: The minimum distance in seconds between two packets to avoid collision.

RoundTripDelay: The satellite round-trip delay in seconds.

SatelliteQueueSize: The maximum number of elements that can be held in each of the two queues used in the Satellite_Station module.

EarthStationQueueSize: The maximum number of packets that can be held in the queue<br />of the Single_Earth_Station module.

PacketLengthInBits: Length of the packet used in both ALOHA and Slotted ALOHA models.

RandomizationParameter: A uniformly selected random number between one and this parameter, multiplied by the PacketLengthInSecond parameter, determines the backoff time delay.

PacketLengthInSecond: Time required transmitting a packet of length PacketLengthIn-Bits.

SlotSize: Size of the time slot used in the Slotted ALOHA model.

MeanInterArrival: Mean time between two packets arriving at an earth station for transmission.

TrafficStopTime: Time to stop generating traffic in all the earth stations. This can be different than the RunLength parameter.

Load: Combined traffic, generated in all earth stations, as the percentage of the satellite  channel capacity.

ChannelSpeed: Data rate in bps for the satellite channel.

RunLength: Simulation iteration length in seconds.

GlobalSeed: Seed used in generating random numbers.

WarmupTime: In this early period of the simulation, data are not collected. This is the time to reach the steady state.

NumberEarthStations: Total number of Earth stations in the system.

3. Data Structures



The Aloha model uses two MLDesigner data structures: AlohaPacket and AlohaType. AlohaType configures the model to run as slotted or unslotted. AlohaPacker has seven fields:

  • Source: Earth station originating the packet.
  • TimeCreated: Time at which Source creates the packet.
  • TimeFinished: Time at which the packet is delivered successfully.
  • TimeTransmission: Time at which Source transmits or retransmits the packet.
  • Length: Packet length in bits.
  • Collision: Flag showing possible packet collision.
  • RetransmissionCount: Number of times Source retransmits the packet until it is delivered successfully.

 

4. Modules in the Aloha_System_Nodes20 Model



This section presents the functional description of the modules used in the Aloha_System_Nodes20 model.

4.1. Satellite_Station Module

The Satellite_Station module is shown brlow. The primary function of the module is to detect collisions; it also includes both packet transmission delay and satellite round-trip delay.

Satellite station module

4.2. Single_Earth_Station Module

The Single_Earth_Station module shown in Figure5 represents a single earth station. It implements both ALOHA and Slotted ALOHA protocols. It consists of Packet_Generator and Transmit_Receive modules.

Single earth station module

The Packet_Generator module, shown in Figure 4, generates packets of the AlohaPacket  type with the interarrival time exponentially distributed.

The Transmit_Receive module, shown in Figure 5, en-queues the newly generated packets in a FIFO queue and transmits them one at a time whenever the station's previously sent packet is correctly delivered.

Packet generator module
Transmit receive module

4.3. AlohaStatistics Module

The AlohaStatistics module, shown in Figure 6, computes statistics on the simulated data and displays the results in graphs.

Statistics module

5. Sample Results



Sample results from selected ALOHA simulation runs are shown below.

Delay scattergraph for a 20 node slotted ALOHA simulation
Retransmission count histogram for a 20 node slotted ALOHA simulation
Throughput vs Time for a 20 station unslotted 10-iteration simulation