LAN Interface Cards
Introductory Ethernet

History of Ethernet

Ethernet Packet Format
Preamble
Start Frame Delimiter
MAC Addresses
Length/Type
MAC Client Data
Pad
Frame Check Sequence

Ethernet Access
Half-Dumplex
Full-Duplex

Ethernet Packet Format
PCI Bus Interface
Tx MAC
Tx Buffer Manager
Rx MAC
Rx Buffer Manager
Packet Recognition
MIB

Introductory Ethernet

     Ethernet is the most common local area network (LAN) technology. The original version and most widely used Ethernet supports a data transmission rate of 10 Mb/s. Newer versions of Ethernet called "Fast Ethernet" and "Gigabit Ethernet" support data rates of 100 Mbps and 1 Gbps, respectively. An Ethernet LAN can use a coaxial cable, a twisted pair wiring, or a fiber optic cable. Ethernet devices use Carrier Sense Multiple Access with Collision Detection (CSMA/CD) protocol to compete for network access.

 

History of Ethernet

       Ethernet was first developed in the early 1970s by Bob Metcalfe and David Boggs of the Xerox Palo Alto Research Center (PARC). It interconnected Xerox Alto computers and laser printers at a data transmission rate of 2.94 Mb/s.

      In the late 1970s, Digital Equipment Corporation (DEC), Intel, and Xerox joined forces to standardize an Ethernet system for general public use. In 1980 they released Version 1.0 of the first Ethernet specification called the "DIX standard". This standard defined the "thick" Ethernet system (10Base5), which used a 10 Mb/s CSMA/CD protocol. The first Ethernet controller boards using the DIX standard reached the general market in 1982. The three companies again came together and released the final version of the DIX standard, Version 2.0, in late 1982.

      In 1983, the Institute of Electrical and Electronic Engineers (IEEE) released its first standard called IEEE 802.3 also known as “Carrier Sense Multiple Access with Collision Detection (CSMA/CD).” This standard was largely based on the pre-existing DIX standard, but did make some changes, especially to the definition of Ethernet frame format. In 1997, the IEEE defined a standard called 802.3x, which defined full-duplex Ethernet operation. Finally, in 1998, the IEEE released the 1 Gbps 802.3z 1000Base-X standard, commonly known as "Gigabit Ethernet".

 

Ethernet Packet Format

The current format of an Ethernet frame is defined as follows:

Preamble - A sequences of 56 bits having alternating 1 and 0 values that are used for synchronization. They serve to give components in the network time to detect the presence of a signal, and being reading the signal before the frame data arrives.

Start Frame Delimiter - A sequence of 8 bits having the bit configuration 10101011 that indicates the start of the frame.

Destination & Source MAC Addresses - The Destination MAC Address field identifies the receiving station or stations. The Source MAC Address identifies the transmitting station.

Length/Type - If the value in this field is less than or equal to 1500, then the Length/Type field indicates the number of bytes in the subsequent MAC Client Data field. If the value of this field is greater than or equal to 1536, then the Length/Type field indicates the nature of the MAC client protocol.

MAC Client Data - This field contains the data transferred from the source station to the destination station or stations. The maximum size of this field is 1500 bytes.

 

Pad - If the size of the MAC Client Data field is less than 46 bytes, then use of this field is necessary to bring the frame size up to the minimum length. A minimum Ethernet frame size is 64 bytes from the Destination MAC Address field through the Frame Check Sequence.

 

Frame Check Sequence - This field contains a 4-byte cyclical redundancy check (CRC) value used for error checking.

 

Ethernet Access

Half-Duplex Ethernet is the traditional form of Ethernet that uses the CSMA/CD protocol. With CSMA/CD two or more stations share a common connection line. When transmitting frames, a station waits for an idle period on the line when no other station is simultaneously trying to transmit frames. The original transmitting station then transmits the frame by broadcasting it over the line so that it is detected by all of the other stations on the network. Should another device send data at the same time, a collision has occurred. The transmitting station then intentionally transmits a jam sequence to inform all stations on the network that the frame transmission failed due to a collision. The original transmitting station then remains silent for a random period of time before attempting to transmit again. This process is repeated until the frame is eventually transmitted successfully.

Backoff - Backoff is the process that a transmitting station uses to determine how long it waits following a collision before attempting to retransmit the frame. The backoff algorithm implemented in Ethernet is officially known as truncated binary exponential backoff. Following a collision, each station generates a random number that falls within a specified range of values. It then waits that number of slot times before attempting retransmission. The range of values increases exponentially after each failed retransmission. If a station is unsuccessful in transmitting after 16 attempts, the MAC function reports an excessive collision error.

Full-Duplex is a standard that does not use the CSMA/CD protocol. Full-duplex mode allows two stations to simultaneously exchange data over a point to point link that provides independent transmit and receive paths. Since each station can simultaneously transmit and receive data, the aggregate throughput of the link is effectively doubled.

 Full-duplex links must meet the following requirements:

  • The physical medium must be capable of supporting simultaneous transmission and reception without interference.
  • Full-duplex operation is restricted to point to point links connecting exactly two stations. Since there is no contention for a shared medium, collisions cannot occur and the CSMA/CD protocol is unnecessary.
  • Both stations on the link must be capable of, and be configured for full-duplex operation.

Advantages of Full Duplex:

  • Throughput is doubled by permitting simultaneous transmit and receive.
  • The efficiency of the link is improved by eliminating the potential for collisions.
Segment lengths are no longer limited by the timing requirements of half-duplex.

 

Ethernet Card

PCI Bus Interface

The PCI Bus Interface implements PCI v2.2 bus protocols and configuration space. Supports BUS master reads and writes to CPU memory and CPU access to on chip register space.

Tx MAC

Implements the receive portion of the IEEE 802.3 MAC.  It receives packet data from the Tx Buffer Manager and sends it out through the transmit portion.

 

Tx Buffer Manager

Contains a 2 KB transmit FIFO, which is used to store packets (up to four) coming from the PCI memory space.  These packets are sent to the Tx MAC.

Rx MAC  -

Implements the receive portion of the IEEE 802.3 MAC.  It retrieves packet data from the receive portion and sends it to the Rx Buffer Manager.

Rx Buffer Manager

Contains a 2 KB receive FIFO, which is used to store packets (up to four) coming from the Rx MAC.  These packets are sent to the PCI memory space.

Packet Recognition

This device looks at packets and based on the destination and packet type decides whether to drop or receive them.

MIB

This device contains counters to track transmits and receives to protect from FIFO overflow.

 

Fahrudin Alagic

Jon Olafsson

SC 546

Spring 2001