Access Intelligence's BROADBAND GROUP
Communications Technology
Current Issue
Subscribe
Advertising Information
Meet the Editors
Advisory Board
Annual Awards
Custom Publishing
WebEvents
Show Dailies
Reprints
List Rentals
Archives
Search Career Center Contact Us Calendar Industry Partners Home

Archives

Communications Technology

Feature: Sifting Through the MAC Sublayer
Resolving Channel Contention in Broadcast Networks
By

This two-part tutorial focuses on the media access control (MAC) sublayer and the algorithms used at that level, which are found in Ethernet and wireless home networks. In this first part, we illustrate what the MAC sublayer is and where it fits in the protocol stack.

An interesting problem arises on a broadcast network where all of the devices share the same transmission medium. In such a system, only one device can transmit at a time. If multiple devices transmit simultaneously, all of the transmissions are garbled and lost. Clearly a mechanism is needed to control the access to the transmission medium. This task is the responsibility of the MAC sublayer.

A communications network is broken down into a series of layers that perform specific functions. These functions are accomplished by implementing a given set of rules called protocols at each layer. For any given layer, all devices on the network use the same protocol. This standardization of the protocols allows a given layer on one device to "talk" to the corresponding layer on another device. On a particular device, a given layer can communicate with the layers immediately above and below itself. An example of this hierarchy is shown in Figure 1.

This hierarchy is designed so each layer isolates the layer above it from the rest of the protocol stack. For example, when layer 3 passes data to layer 2, it is not aware of or involved with the protocols and techniques used by layers 2 and 1. As far as layer 3 is concerned, it is communicating directly with layer 3 on another device. The details of how this communication actually takes place are left to the lower layers.

The advantage of such a structure is that lower layers can be replaced as technology advances without affecting the communication of the upper layers as long as the interface between layers remains constant. As an example, layer 2 could be replaced with a more efficient protocol without affecting the protocols in layers 1 and 3.

The collection of protocols used by the different layers is organized into a protocol stack. An example of a protocol stack that is typical of that found in a modern communications system is shown in Figure 2.

The physical layer

The physical layer is the lowest layer on the protocol stack and interfaces directly with the transmission medium, or channel. The channel is the physical medium over which information is transmitted by the manipulation of some physical property, such as voltage. Examples of channels in a wired communications system include phone lines, coaxial cable and fiber-optic cable. Wireless channel examples include the earth’s atmosphere, the ocean and outer space.

The physical layer must deal with the various non-ideal effects of the channel including thermal noise, signal reflections due to a multipath channel and interference from other communications systems. Other effects are caused by imperfections in the transmitter and receiver components, such as an offset in the local oscillator frequency. Techniques to mitigate these effects include channel equalization, filtering, timing and frequency synchronization and error control coding. The goal of the physical layer is to take bits from the data link layer and move them across the channel error-free.

The data link layer

The data link layer’s task is to provide the network layer with an error-free communications link. The data in this layer is broken down into units called frames. It is the responsibility of the data link layer to determine if the frame arrived intact at the receiver.

A mechanism known as frame acknowledgement is employed where the receiver sends a frame back to the transmitter to inform it of the status of the received data frame. If there were a problem in the transmission, such as if a frame were garbled or lost completely, the transmitter could retransmit the frame.

This layer also handles data rate regulation. Transmitters and receivers often process data at different rates, and this imbalance can lead to overflow (the transmitter sends data faster than the receiver can process it) and underflow (the receiver processes data faster than the transmitter can send it) conditions at the receiver.

The network layer

The network layer is responsible for ensuring packets are properly routed from the transmitter to the receiver. Routing is trivial in a broadcast network because all nodes can see all packets. However, the routing problem becomes much more complex on a point-to-point network. A large-scale example of such a network is the Internet. Sending an e-mail from Los Angeles to New York is accomplished via a series of hops between nodes. The packets carrying the e-mail message will need to travel through several nodes before arriving at their destination and the routing issues are no longer trivial.

Further complicating the problem is the presence of congestion. When a node has sent too many packets at one time, the node forms a bottleneck on the network. The network layer protocol must handle the routing of packets while taking network congestion into account. Although a given route between two nodes might be optimum in the sense of the least distance traveled, it might be inefficient to use the route if it contains one or more congested nodes. The protocol might choose an alternative route that physically covers more distance, but that actually is faster because of less congestion.

The transport layer

The transport layer is in charge of setting up and tearing down connections between two machines on the network. The type of connection used depends on the required quality of service (QoS).

An application that involves transferring a file between two machines will require an error-free service, and would use a connection-oriented service. This type of service ensures that packets arrive error-free and in the order they were sent. The trade-off is that the service experiences a delay because of the overhead required to provide an error-free link, such as some of the throughput that is used for acknowledgements and retransmissions.

An application that is sending two-way audio is more concerned with having a low latency, and it can tolerate the presence of some errors. In audio and video systems, a long delay is more noticeable to the customer compared to a few errors. For these applications, a connectionless service would be used, which is unreliable because no guarantees are made to prevent errors. However, the latency also is lower than a connection-oriented service because of the reduction in overhead.

The application layer

The application layer sits at the top of the protocol stack, and it is concerned with the protocols used by various application software. Examples of some protocols used at this layer are shown in Table 1.

The MAC sublayer

The MAC sublayer is a subset of the data link layer and contains protocols addressing the problem of controlling access to the transmission medium in a broadcast network. Not all networks require a MAC sublayer. For example, most point-to-point networks are set up in a host-client configuration. The host machine waits idle until the client contacts it, then communications alternate between the two machines. An example of such a network is two personal computers (PCs) connected via their parallel ports.

Communications become more difficult in a broadcast network where several devices must communicate by sharing the same transmission medium. Because of the common transmission medium, all other machines on the network can hear a transmitted frame. Each device receives a unique address, called a MAC ID, when it is produced at the factory. A device determines which frames are intended for itself by examining the MAC ID in the frame header.

Without a protocol to regulate access to the shared medium, devices often would transmit simultaneously causing a collision and garbled frames. All frames involved in a collision will be in error and must be retransmitted. Because the physical layer handles any errors that occur as a result of impairments on the transmission medium, such as thermal noise, the only errors occuring at the MAC sublayer are caused by collisions.

Static allocation protocols

Static allocation protocols are the most basic method for controlling access to a shared transmission medium. These protocols divide the system bandwidth into N slices of equal size where N is the number of users in the system. The static nature of the allocation simplifies the implementation; each user is given the same amount of bandwidth, which does not change.

Although ease of implementation is a definite benefit of static allocation protocols, these protocols can result in an inefficient use of bandwidth in some systems. Static allocation protocols work best in systems where all N users are constantly transmitting equal amounts of data, thus consuming all of the available bandwidth. This equal bandwidth usage pattern is not valid for a large number of applications, and it is in these cases that static allocation protocols become inefficient.

Imagine a system with N users where only M users need to transmit data at any given time and M < N. The bandwidth allocation in this system is not efficient because N - M "slices" of the bandwidth are not being used at any point in time. The problem is exacerbated when the M transmitting users do not have equal bandwidth usage requirements. As an extreme example, one of the M users might need to transmit a few keystrokes to a remote terminal, while another might need to transmit high bit-rate streaming Moving Pictures Experts Group (MPEG) video. Static allocation protocols fail in situations such as these. However, despite their limited flexibility, they do work extremely well for systems with uniform bandwidth requirements for each user.

Frequency division multiplexing

The technique of frequency division multiplexing (FDM) is a good example of a static allocation protocol. The available frequency range of the system is divided into N equal parts called subbands and each user can only transmit on a single assigned subband. An example of an FDM spectrum is shown in Figure 3.

The subband assignment is constant, so if a user is not transmitting, their portion of the spectrum is wasted. Similarly, there is no mechanism to allow a user to have a bandwidth greater than a single subband. The inflexible nature of FDM can result in an inefficient use of the system bandwidth when users are not transmitting at all times, however, this arrangement also simplifies implementation. Each transmitter simply sends out a signal at a predetermined center frequency.

A good example of an FDM system is AM or FM radio where each radio station is assigned a constant subband of the available spectrum. FDM works well for radio because the stations are always transmitting and the bandwidth is efficiently used. Unfortunately, this constant bandwidth usage does not hold for typical computer networks.

Time division multiplexing

Time division multiplexing (TDM) is a static allocation protocol that works in the time domain instead of the frequency domain like FDM. Instead of dividing up the frequency range, TDM works by assigning all N users their own reserved time slot. Users in the system can transmit only during their corresponding time slot, and then must be silent at all other times. Once all N users’ time slots have passed, the slot assignment wraps around to the first user’s time slot and repeats.

Like FDM, TDM does not make efficient use of the available bandwidth when users are not constantly transmitting. If a user has nothing to transmit during his slot, no other user can transmit during that time either, and the system bandwidth remains unused for that time period (See figure 4).

TDM is slightly harder to implement than FDM because it requires global time synchronization. If a user is not synchronized to the TDM slot framework, when he thinks it is his time to transmit he actually will be transmitting during another user’s time slot. This situation will result in a collision, and both users’ data will be lost.

Although static protocols such as FDM and TDM are easy to implement, they are inefficient for controlling channel contention. Next month, we’ll review some of the dynamic allocation protocols that are available via the MAC layer.

Louis Litwin is with the technical staff of Thomson Multimedia Corporate Research. He may be reached at .

Time share

Broadcast networks need an efficient way to let users share the common transmission medium. In part one of this tutorial, static allocation protocols are introduced. Two common static protocols are frequency division multiplexing (FDM) and time division multiplexing (TDM).

Although simple to implement, these protocols are only efficient in systems where all users have constant transmissions at the same data rate. In systems where the users’ bandwidth requirements are heterogeneous, FDM and TDM are inefficient.

The second installment in next month’s issue will introduce the more efficient family of protocols known as dynamic allocation protocols.

The protocols mentioned demonstrate that, in general, the more polite the users of a network are, the more efficiently the bandwidth is utilized.


Table 1 Examples of Protocols Used in the Application Layer

Protocol

Acronym

Application

File Transfer Protocol

FTP

File Transfer

HyperText Transfer Protocol

HTTP

Web Browsing

Simple Mail Transfer Protocol

SMTP

E-mail

Telnet

-—

Virtual Terminal


 Back to December Issue


Access Intelligence's CABLE GROUP

Communications Technology | CableFAX Daily | CableFAX's CableWORLD | CT's Pipeline
CableFAX Magazine | CableFAX databriefs | Broadband Leaders Retreat | CableFAX Leaders Retreat

Access Intelligence, LLC Copyright © 2005 Access Intelligence, LLC. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of Access Intelligence, LLC is prohibited.