Medium Access Control (MAC) protocols for satellite links

A satellite link is normally used by several earth stations. Since all stations can not transmit data on the link at the same time (at least not using the same frequency) there has to be some mechanism for at any moment determine what station currently is allowed to use the link. The protocols that are used to provide this mechanism are called Medium Access Control (MAC) protocols. The MAC protocols are responsible for deciding what station gets to use the link when there is competition for it. The MAC protocol is only needed on the satellite's up link. The down link has only one sender, the satellite, and thus has no need for the mechanisms provided by a MAC protocol.

On terrestrial networks the most widely used protocol for allocating the capacity of a link among competing users is CSMA/CD (Carrier Detection Multiple Access / Collision Detection). This MAC protocol is for example used in ethernet LANs. CSMA/CD is a carrier sense MAC protocol. When a carrier sense MAC protocol is used on a link the stations on the link checks the links state before they start transmit any frames. If the link is in use no station will try to transmit frames on the link. But if a station finds the link idle it immediately starts transmitting frames.

On a satellite link carrier sensing is impossible due to the long delay of the link. The delay over a satellite link is normally around 270 ms. This means that when a station senses the state of the satellite link it hears what was going on 270 ms ago. There is a big risk that the channel's state has changed during that time period. Therefor carrier sensing MAC protocols are not suited for satellite links. Instead non carrier sense MAC protocols are used on satellite links. There exists five different classes of non carrier sense MAC protocols that are used on satellite links: polling, Aloha, FDM, TDM and CDMA.

Polling

This is the easiest but also most inefficient MAC protocol used for broadcast channels. The satellite regularly asks the stations if they have some frame to send. This behaviour is called polling. If a station responds and has a frame to transmit it is allowed to use the channel's whole bandwidth during a certain time period. During that time period no other station is allowed to send frames on the channel. When the time period expires the sending station has to stop it's transmission and the satellite starts to poll the stations again.

ALOHA

The Aloha protocol was originally developed at the University of Hawaii. It was used to connect geographically distributed nodes via a common radio link. There exists two versions of Aloha: the pure Aloha version and the slotted Aloha version. The pure Aloha version, which was originally used a the University of Hawaii, is much easier to implement than the slotted Aloha but it is not as efficient.

Pure ALOHA: When a station has a frame to send it transmits it on the channel without checking that the channel is unoccupied. If there is another frame on the channel the frames will collide and are destroyed. When the sending station has transmitted a frame it waits for the receiver to acknowledge the arrival of the frame. If no acknowledgement arrives after a certain time period the sender assumes that the packet has collided and retransmit the frame after a random time. The time period between retransmissions is random to avoid that the same frames will collide over and over again.

Slotted ALOHA: This is a technique that doubles the efficiency of pure ALOHA. The time is divided in time slots. Each slot represent the time it takes to transfer a frame. The senders are not allowed to transmit frames whenever they want. They are only permitted to transmit a frame at the beginning of a time slot. Thus when a frame is transmitted there is no risk that it will collide with another frame, since no other frames are allowed to be transmitted during the time when the frame is in the channel. The only time when frames can collide is in the beginning of a time slot. In order for this to work all ground stations has to be synchronised. The stations are synchronised by a reference station that regularly sends out a signal which the stations use to synchronise themselves.

Frequency Division Multiplexing (FDM)

FDM is probably the most widely used MAC protocol for broadcast links. Each sending station is allotted a unique frequency that is used to transmit the frames. Thus several stations can transmit frames simultaneously on the same link using different frequencies. The stations are said to transmit the frames on different channels where each channel correspond to one frequency. The frequencies can either be statically allocated, if the number of stations that use the link is small and fixed, or dynamically allocated if the number of stations fluctuate. To make sure that the channels do not interfere with each other the channels are separated by so called guard bands. A guard band is the smallest allowed frequency range between two channels. This means that part of the link's bandwidth can not be used.

Time Division Multiplexing

TDM is together with FDM the most frequently used MAC protocol within satellite communication. In TDM time is divided into time slots. Each time slot is reserved for one specific station. During that time slot no other station is allowed to transmit frames. The time slots can either be statically or dynamically allocated. The stations are synchronised by a reference station as described in the slotted Aloha section above.

Code Division Multiple Access (CDMA)

CDMA lets each station transmit frames at any time and the stations are permitted to use the whole frequency spectrum. By letting the stations use different coding the transmissions can be separated. Each station is allotted a unique m-bit code, the station's chip sequence. The value of m is usually either 64 or 128. To transmit a 1-bit a station transmit it's chip sequence. To transmit a 0-bit the station transmit the complement of the chip sequence. Assume that a station has the 8-bit chip sequence 01010110. Then the station transmits a 1-bit by transmitting the sequence 01010110 and transmits the sequence 10101001 to send a 0-bit.