User Manual
Publication date: January, 2005
Revision A1
29
How does a MAC work?
The MAC sub-layer has two primary jobs to do:
1. Receiving and transmitting data. When receiving data, it parses frame to
detect error; when transmitting data, it performs frame assembly.
2. Performing Media access control. It prepares the initiation jobs for a
frame transmission and makes recovery from transmission failure.
Frame transmission
As Ethernet adopted Carrier Sense Multiple Access with Collision Detect
(CSMA/CD), it detects if there is any carrier signal from another network device
running over the physical medium when a frame is ready for transmission. This is
referred to as sensing carrier, also “Listen”. If there is signal on the medium, the
MAC defers the traffic to avoid a transmission collision and waits for a random
period of time, called backoff time, then sends the traffic again.
After the frame is assembled, when transmitting the frame, the preamble
(PRE) bytes are inserted and sent first, then the next, Start of frame Delimiter (SFD),
DA, SA and through the data field and FCS field in turn. The followings summarize
what a MAC does before transmitting a frame.
MAC will assembl e the frame. First, the preamble and Start-of-Frame delimi ter
will be put in the fields of PRE and SFD, followed DA, SA, tag ID if tagged VLAN is
applied, Ethertype or the value of the data length, and payload data field, and finally
put the FCS data in order into the responded fields.
Listen if there is any traffic running over the medium. If yes, wait.
If the medium is quiet, and no longer senses any carrier, the MAC waits for a
period of time, i.e. inter-frame gap time to have the MAC ready with enough time
and then start transmitting the frame.
During the transmission, MAC keeps monitoring the status of the medium. If no
collision happens until the end of the frame, it transmits successfully. If there is a
collision happened, the MAC will send the patterned jamming bit to guarantee the
collision event propagated to all involved network devices, then wait for a random
period of time, i.e. backoff time. When backoff time expires, the MAC goes back to
the beginning state and attempts to transmit again. After a collision happens, MAC
increases the transmission attempts. If the count of the transmission attempt
reaches 16 times, the frame in MAC’s queue will be discarded.