You are on page 1of 8

MLDesign Technologies, Inc. www.mldesigner.

com

ALOHA Protocol
This is a brief summary of an MLDesigner model that simulates both ALOHA and Slot-
ted ALOHA protocols. It demonstrates modeling techniques and shows the protocol de-
sign capability of MLDesigner. ALOHA is a random (or contention) access protocol de-
veloped at the University of Hawaii for sharing broadcast channel access among a num-
ber of users with relatively low throughput demand. There are two main ALOHA ver-
sions: 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..

1. Model Overview
This ALOHA model uses satellite connections between stations. The model consists of
three top-level modules: an earth station (Single_Earth_Station), a central satellite station
(Satellite_Station) that serves as the communications link between the earth stations and a
statistics module (AlohaStatistics.)

To simplify the design, collision detection, transmission delay and satellite round-trip de-
lay are all implemented in the satellite. If the satellite detects a collision while receiving
a packet, it tags the packet to indicate collision before broadcasting it to all earth stations.
The transmitting earth station continues to retransmit the packet until it receives the pack-
et back from the satellite without a collision flag. At that point, it discards the packet and
begins to transmit the next packet in its queue. In this implementation each earth station
has at most one outstanding packet and all packets are of equal size.

The earth station module supports both regular ALOHA and slotted ALOHA operation.
Data structures are used to represent the packets and to indicate slotted and unslotted op-
eration. The ALOHAStatistics module contains all the statistics collection and reporting
operations.

The MLDesigner system, shown in Figure1, consists of 20 earth stations communicating


through a satellite. It can be expanded or reduced by adding or removing earth station
modules and adjusting one configuration parameter. A second parameter selects slotted or
unslotted operation.

1
MLDesign Technologies, Inc. www.mldesigner.com

M ReceiveMemory M SafePacketsMemory
M SendMemory M CollisionPacketsMemory

Satellite_Station#1 AlohaStatistics#1

Single_Earth_Station#1 Single_Earth_Station#8 Single_Earth_Station#15

Single_Earth_Station#2 Single_Earth_Station#9 Single_Earth_Station#16

Single_Earth_Station#3 Single_Earth_Station#10 Single_Earth_Station#17

Single_Earth_Station#4 Single_Earth_Station#11 Single_Earth_Station#18

Single_Earth_Station#5 Single_Earth_Station#12 Single_Earth_Station#19

Single_Earth_Station#6 Single_Earth_Station#13 Single_Earth_Station#20

Single_Earth_Station#7 Single_Earth_Station#14

Figure 1: Top-level ALOHA system with 20 stations

2. Parameters
The ALOHA model is extensively parameterized. System-level parameters are shown be-
low.

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
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 trans-
mission.
TrafficStopTime: Time to stop generating traffic in all the earth stations. This can be dif-
ferent than the RunLength parameter.

2
MLDesign Technologies, Inc. www.mldesigner.com

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_Sys-
tem_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.

3
MLDesign Technologies, Inc. www.mldesigner.com

-SafeDistance Init#1 False

E SatelliteTimer
1 1
Local Memory SafeDistance RestartTimer#1 ServiceTimer#1
2
(LastTransmissionTime) 3

2
SimpleFIFO Write
F- F< I==0 (Collision Backward Queue) Message#1
Local Memory

2
(NewTransmissionTime)
SimpleFIFO 1
Write Or
(Collision Forward Queue)
Message#2
2

1 Select 1
2
TimeTransmission PacketLengthInSecond
3 Insert
RoundTripDelay
Collision
M SendMemory

M ReceiveMemory
ActiveRead SendMemory
Write ReceiveMemory
>>>SATELLITE UPLINK TRAFFIC>>>
<<<SATELLITE DOWNLINK TRAFFIC<<<

Figure 2: 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_Genera-
tor and Transmit_Receive modules.

M SendMemory

M ReceiveMemory

M SafePacketsMemory

M CollisionPacketsMemory

Packet_Generator#1 Transmit_Receive#1

Figure 3: Single earth station module

The Packet_Generator module, shown in Figure6, generates packets of the AlohaPacket


type with the interarrival time exponentially distributed.

4
MLDesign Technologies, Inc. www.mldesigner.com

PoissonPulseTrain_2_3#1

Create AlohaPacket

Insert TNow in Insert PacketOut


TimeCreated Length

GenIntConst#1

Figure 4: Packet generator module

The Transmit_Receive module, shown in Figure7, 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.

WriteMessage#1
M SendMemory

PacketIn Insert 2 Unslutted Insert TNow in


FIFOWithReject#1 EIO Aloha_Type#1 Write SendMemory
Source Slotted TimeTransmission
1

>>>SATELLITE UPLINK TRAFFIC>>>


WaitForNextSlot#1
EarthStationID

Retransmission Counter

LocalMemory#1 Int_Num_Packet_Length_Delay#1 [Backoff Time]

M CollisionPacketsMemory
[Packet is in collision, retransmit it]
2

Write 1
EIO
CollisionPacketsMemory
M ReceiveMemory
T

2 F T
EIO Collision#1 This_Sender#1 ActiveRead ReceiveMemory

M SafePacketsMemory [Packet is delivered correctly]


1

Write Insert TNow in <<<SATELLITE DOWNLINK TRAFFIC<<<


SafePacketsMemory TimeFinished

Figure 5: Transmit receive module

5
MLDesign Technologies, Inc. www.mldesigner.com

4.3. AlohaStatistics Module


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

M CollisionPacketsMemory

CollisionPackets 1.0 CollisionsVsLoadGraph

M SafePacketsMemory

Select
SatePackets
Length ThroughputVsLoadGraph

Select
TimeFinished ScatterGraph2#1

Select
HistogramGraph2#1
TimeCreated

BatchStatisticsGraph2#1

BatchMeanGraph2#1

ThroughputAndDelayGraph#1

Select
Length ThroughputVsTimeGraphTemp#1

Select
RetransmissionCount HistogramGraph#1

RetransmissionCountVsLoadGraph

Figure 6: Statistics module

5. Sample Results
Sample results from selected ALOHA simulation runs are shown below.

6
MLDesign Technologies, Inc. www.mldesigner.com

2
x10 Delay Scatter Graph
Set(1,1)
1.2

1.0

D 0.8
e
l 0.6
a
y
0.4

0.2

0.0

0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4 2.6 2.8 3.0
2
Time x10
Figure 7: Delay scattergraph for a 20 node slotted ALOHA simulation

RetransmissionCount Histogram Graph


20 Set(1,1)
18
16
S 14
a 12
m
p 10
l 8
e
s 6
4
2
0

0 5 10 15 20 25 30 35 40
RetransmissionCount

Figure 8: Retransmission count histogram for a 20 node slotted ALOHA simulation


T
h
r Throughput vs Time Graph
o Set(2,1)
u 0.25 Set(2,2)
g Set(2,3)
h Set(2,4)
p 0.20 Set(2,5)
u Set(2,6)
t Set(2,7)
0.15
O Set(2,8)
v Set(2,9)
e 0.10 Set(2,10)
r
C
a 0.05
p
a
0.00
c
i 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4 2.6 2.8 3.0
t 2
y Time x10

Figure 9: Throughput vs Time for a 20 station unslotted 10-iteration simulation

7
MLDesign Technologies, Inc. www.mldesigner.com

Note: Model developed by Dr. Keyvan Farhangian of KVON Technologies.

You might also like