Design Article

IMG1

Ethernet and Multimedia Applications - The History and the Future - Part 1

Neeraj Parik, Xilinx

11/21/2007 12:00 PM EST

Editor's Note: Like many folks, I use Ethernet in one form or another every day without actually having much of a clue as to how it works. Of course, the fact that FPGAs are increasing being used in Ethernet-based systems means that it would be useful for me to discover more. Hence, I was delighted to be presented with the opportunity to (a) read this two-part article and (b) share it with you.

See also Part 2


Abstract
Ethernet audio video bridging (AVB) is a new IEEE 802 specification, under development, that provides bandwidth and latency guarantees for interactive multimedia applications. In part one of this two-part article series, the focus is on the enhancements brought about by AVB and the details of various components of the proposed standard.

Introduction
Ethernet-based networks are the most dominant form of networks used in the world today. A significant portion of the Internet infrastructure is built on Ethernet-based bridges, hubs, switches and routers. Over the years, Ethernet has improved to support faster data rates and different operating schemes (full and half duplex). However, Ethernet was originally designed to handle purely static data and reliability; ordering and packet delay were not important considerations. The old Ethernet networks simply were not designed to address these new and growing convergence needs from voice, media and other dynamic content.

Traditionally, multimedia applications over Ethernet have been facilitated by either the high bandwidth or prioritization schemes defined at layer 2. These enhancements ensure that streams are transported, meeting very loose latency and bandwidth requirements. The multimedia traffic had to contend with TCP traffic, however, causing excessive delay and large jitters in packet arrival time.

Layer 3 networking standards have built-in quality of service (QoS) mechanisms in the form of differentiated services and integrated services to handle multimedia traffic, guaranteeing them assured bandwidth and small latency with low jitter. These schemes rely on resource reservation (RSVP) to negotiate such guarantees with the network. And because Ethernet is the backbone of networks everywhere, it needed updating to transport these streams with similar guarantees.

Historical advances in Ethernet
Ethernet was invented in 1978 by Bob Metcalfe. It was originally designed to be used for light industrial load applications for the purpose of simple data transport. Given its simple nature, flexibility, and low cost, it soon became the most popular local area network (LAN) technology.

Various technological advancements have increased Ethernet data throughput from 1 Mbps to 10 Mbps, 10 Mbps to 100 Mbps, and 1 Gbps to 10 Gbps. Many vendors use Ethernet in proprietary ways and support non-standard speeds such as 2 Gbps for switching backplane applications. Other ongoing advances in Ethernet include the development of 100 Gbps Ethernet and its use for metropolitan area networks (MAN). Today, there are more Ethernet ports than any other connectivity technology in the world.

Ethernet media types
Ethernet supports many different media types, ranging from low-cost, unshielded twisted pair to fiber optical networks. These different media types enable various Ethernet applications and provide good cost/performance trade-offs. For low-bandwidth home needs, low-cost, unshielded twisted pair cable is suitable, whereas metro networks or university campuses with high-bandwidth needs can use the costly fiber optical cables. The fiber optical cables support speeds as fast as 10 Gbps (proven up to 100 Gbps in laboratories) and transport data over long distances.

Advances in physical media technology such as CAT-5, shielded twisted pair and fiber optical cables have also enabled higher Ethernet speeds on traditional media, thus enabling high-bandwidth multimedia applications. In many cases, media plays an important role in application deployment because actual data throughput is lower than the actual media capacity. Consequently, over-provisioning – providing more bandwidth than an application needs – allows traffic to flow uninterrupted.

Half-Duplex Ethernet
The original Ethernet specifications relied on the carrier sense multiple access/collision detect (CSMA/CD) algorithm and supported only the half-duplex mode of operation (i.e., data sent only in one direction). In this mode, various stations either connected together on a single wire, sharing the transmission medium, or stations connected through a physical layer device called a hub.

In CSMA/CD, the station intending to send data first senses the medium idle for a small period, after which it transmits a frame. If another station sends data at the same time, a collision is detected and both (or all if more than two stations were sending data) stations back off for a random period of time. After this random back-off period, the transmission is attempted again.

CSMA/CD worked great for low-bandwidth applications in the 1980s and can still be found in use today in some LANs. However, because of the increasing popularity of Ethernet and pressing demands on its performance, Ethernet networks were segmented and connected through bridges. These bridges forward the traffic on a given LAN if and only if the desired destination resides on a given LAN (or if the current station location is unknown; in that case, the frame is broadcast as appearing on all LANs).

Full-Duplex Ethernet
The other advance in Ethernet that accompanied the development of bridge technology is micro-segmentation (where one station and switch on a given LAN or LANs are connected to form a catenet) to the point that stations are now mostly connected only through bridges/switches. The station and bridge connected on both ends of a transmission facility form an Ethernet LAN segment. Both the devices operate in full-duplex mode.

This mode of operation is different from the half-duplex mode of operation previously described, as both the simultaneous receipt and transmission of data traffic are possible. A flow control mechanism is provided if the station is swamped by more data it can handle. The station then sends a pause frame to the transmitter requesting that it stop transmission for a specified amount of time (included as one of the fields of the pause frame).


1. Full-duplex and half-duplex Ethernet.

Link Aggregation and Controller Protocol (LACP)
With the introduction of the full-duplex specification, Ethernet is now used to support higher bandwidth applications than could previously be deployed on half-duplex networks. By the early 1990s, Ethernet was widely deployed in LANs and the fastest speed available was 100 Mbps. This was not sufficient to support the traffic needs of the core switches used in campus backbones or to support multiple streaming multimedia applications from a server (such as a video server).

To meet this demand, link aggregation was developed. This protocol allows two or more bundled Ethernet links to appear as one single link to higher layers. The link aggregation protocol is completely specified in the 802.3ad link aggregation standard and is backward-compatible to the existing Ethernet. The link aggregation protocol maintains a soft state of the bundled links and can be reconfigured under configuration control. The link aggregation protocol can aggregate N full-duplex, 100 Mbps links to create an N*100 Mbps data pipe.

LACP mandates that all bundled links must operate at the same speed. The data-link layer mandates the link layer devices to maintain traffic ordering at a given priority level. Thus, traffic distribution across links must be carefully managed, especially during transitions (since LACP maintains a soft state). The traffic is distributed by specifying the use of a single Ethernet link (selected from among those bundled) for source address or destination address (SA or DA) pairs at a given priority level. This solves the problem for switches. If the link aggregation is with a server, then DA/SA pairs or higher layer protocol fields can distribute traffic among the links involved.

Architecturally, the LACP application is a client to the media access control (MAC) layer. The LACP defines frame collection and distribution along with an LACP agent. The LACP defines two modes to re-distribute traffic among links. First is with the use of special packets called markers. The frame collector at either end of the link parses special marker packets from the incoming stream. These packets are then passed to the LACP agent. The LACP agent can also instruct the distributor to generate marker response packets.

To redistribute traffic among Ethernet links, the higher layer sends a special marker packet at the point where it wishes to re-distribute traffic and waits for the marker response packet. The marker response packet is generated by the receiving agent only after all frames have been passed to the higher layer applications.

Another mode of operation is to wait for a period called a collector max delay, which is determined during the link aggregation phase. After sending an Ethernet frame, no further frames are sent on the link. It is assumed that the frame has been passed to higher layers within the collector max delay, so now link reconfiguration can happen safely.

As mentioned previously, the link aggregation maintains a soft state and can be reconfigured under configuration management. This reconfiguration may be required in normal operation to better manage the ongoing load and according to application demands. The link bundling happens through the exchange of the LACP protocol data unit (PDU). The LACP uses the concept of actor and partner, with the actor initiating the link distribution process. PDUs exchange information about their own Ethernet links (speed, priority, key) and what information the link has about its partners' links. Links at a particular speed that have the same key can be grouped together to form a single link, with priority acting as a breaker in case of a tie. The LACP allows a mode for users to override the soft state determined by the protocol.


2. Link aggregation between switches and a switch server.

Apart from increased bandwidth and incremental link bandwidth, there are various other advantages of link aggregation. Link aggregation provides higher availability, automatic load sharing and rapid reconfiguration in case of outage. Link aggregation is also completely backward-compatible to existing Ethernet and higher layer protocols. Fig 2 depicts link aggregation and its application. Virtually Bridged LANs (VLANs)
After the specification of the full-duplex mode of operation, the difficult part of performance enhancement falls on bridges. Numerous simultaneous advances were performed to specify the interoperation of switches and bridges and support multimedia applications over LANs. The IEEE 802.1 committee enhanced the operation of bridges by specifying a way for expedited forwarding of multimedia traffic, forwarding high-bandwidth multimedia traffic only to a minimal number of segments in the network, specifying VLANs to keep broadcast traffic from saturating the network.

The VLAN provides a mechanism for logical connectivity to be different from physical connectivity. Distant users (among which physical connectivity exists through switches and LAN segments) can be grouped together to a form a VLAN. The VLAN also provides an easy way to manage network users, since users can be assigned a different VLAN under software control. This provides enhanced security by isolating traffic to a limited segment, and provides bandwidth preservation by restricting broadcast traffic flooding. The bandwidth preservation in the network enables other multimedia applications.

Legacy devices/applications that don't use VLAN can still be used in a VLAN environment by specifying VLAN association rules. The VLAN association rules can be port-based (IEEE default) or could be done in other ways. The association rule is usually specified in the edge switches and can be MAC address-based, IP address-based, or a higher level protocol.

Parallel work has occurred in the 802.1v (VLAN mapping by protocol and application). The 802.1v standard would require changes to the existing application, network stack and NIC interfaces for its complete support. Upon receipt of VLAN-tagged frame, core switches could then forward Ethernet traffic based solely on a 12-bit VLAN identifier, thus providing line-rate switching at higher speeds. IEEE also provided a new definition of an Ethernet frame and specified a VLAN tag in the header field to enable VLAN-based operation. Note that tag awareness and VLAN awareness are different, however. A switch that makes its decision based on VLAN association (either through a VLAN tag or specified using VLAN association rules by the network administrator) is a VLAN-aware switch. A device that generates and interprets a VLAN tag (that is, basing some of its operation on tag) is tag-aware.

The operation of the virtually bridged LANs is specified in IEEE-802.1Q. This standard specifies the enhanced filtering services for switches that are Q-compliant (the term used to denote switches that are 802.1Q compliant), as well as interoperability with legacy D-compliant devices (the term used to refer to 802.1 D-compliant switches).

On receipt of an Ethernet frame, the switches apply a set of ingress rules, followed by forwarding and egress rules. Each of the rules (ingress, forwarding and egress) is a broad set depending on use model and application. An example of an ingress rule is that the switch may accept only tagged frames (core switches) or all frames (edge switches). The forwarding rules are applied by using the filtering database of switches; frames are not allowed to cross VLAN boundaries. An example of an egress rule could be insertion or stripping of the VLAN tag from the frame.

Users can register/de-register for a given VLAN using the multiple VLAN registration protocol (MVRP), discussed with more detail in the "Multiple Registration Protocol" section of this article). An interesting application of VLAN for multimedia communication is the creation of a VLAN for users interested in video conferencing (or viewing live video casts). After the video conference or video cast, the created VLAN will become extinct. The creation and destruction of VLAN is under the control of higher layer protocols. Such an application keeps high-bandwidth multimedia application traffic to a minimal number of segments.

There has been parallel work in the IEEE 802.1 in the form of 802.1s, which creates a spanning tree on a VLAN basis. The 802.1s specifies a forest of spanning trees and unused links to prevent loops in a base spanning tree that can then be used to carry active traffic (but for different VLANs, thus preventing loops). This would increase bandwidth among a set of users, thus enabling multimedia applications. Advances in VLAN-based spanning tree and protocol-based VLAN mapping would further enable multimedia applications.


3. Three different VLANs and a spanning tree forest.
(Click this image to view a larger, more detailed version)

Priority in Ethernet
An Ethernet frame doesn't have a mechanism to specify priority. However, other LAN technologies like token ring or fiber distributed data interface (FDDI) do have a native way to assign priority. Ethernet did not have native priority, as most of the time LANs were over-provisioned and required no such mechanisms. However these priority mechanisms do help meet some application demands like telnet sessions, video conferencing or audio recording sessions when there are high-load transients in the LAN caused by unrelated traffic (such as big FTP downloads or disk backups).

Various proprietary mechanisms prioritize traffic in half-duplex Ethernet. These mechanisms include – but are not restricted to – using smaller inter-frame gaps (IFGs), biased back-off algorithms and long preambles. All of these mechanisms give a particular station unfair advantage over other stations. Early support of priority in Ethernet was a port-based priority. In this mode, frames appearing at a certain Ethernet port are assigned a priority level. This priority level is true for only the ingress port and will be assigned a new priority level at the next hop in the LAN. This priority had very little meaning (and only local to switch) because the application best decides the priority for its traffic.

An interesting outcome from the IEEE VLAN project is a mechanism to specify user/application priority. The VLAN project added an extra 4 bytes (VLAN header) to the Ethernet frame. A few unused bits (3 bits) of the extra 4 bytes were assigned to assign a user priority to a given Ethernet frame. See Fig 4 for the VLAN header and user-priority fields in Ethernet frames.


4. VLAN-tagged Ethernet frame showing priority fields.
(Click this image to view a larger, more detailed version)

The three bits can be used to describe eight levels of priority for Ethernet traffic. IEEE recommends a separate priority level for audio and a separate priority level for video traffic (control and management has the highest priority, audio has been assigned the second highest priority, and video has been assigned the third highest priority). If the application were to assign priority to its traffic, this would require a change in the OS and network stack software as well to propagate the application assigned priority through software layers and instruct the NIC to generate Ethernet frames with the assigned priority.

The Ethernet priority essentially enables the expedited forwarding of frames with higher priority through the switch. The switches must support this by maintaining queues for different priority levels. If switches support less than seven queues (only seven priority levels were defined), then multiple priority levels will be assigned to the same queue. The Ethernet switches also support priority remapping at the input port of the switch under the configuration control. This is especially useful to handle traffic where some of the ports generate an unusual amount of high-priority traffic. A variety of mechanisms exist that could be used at the output port of the switch to service queued traffic (out of separate queues). Strict priority and weighted round-robin are the most popular schemes, although weighted round-robin is not IEEE-recommended. The switches could again be instructed to generate a different priority at its output ports. Multiple Registration Protocol
Because multicast address is generally used to refer to a group of logically related stations, and no Ethernet frame ever contains a multicast address as its source (since the source for a frame must be unique), the bridge never learns about multicast addresses through the normal address learning mechanism used for unicast addresses. So bridges treat multicast traffic as broadcast traffic.

Many video applications such as video conferencing rely on multicasting for their operation. A group of users participating in a video conference are assigned a temporary multicast address from the pool of addresses owned by a server, creating a multicast group of users. The multicast address is returned to the server's pool after the conferencing is over.

Treating multicast traffic (video-type) as broadcast traffic could saturate the network unnecessarily. Multicast addresses are also used by many network management applications like spanning tree protocols or routing information protocol (RIP). The amount of traffic generated by these applications is rather low.

To solve this problem, advances were made in LAN by the IEEE 802.1 working group for selective multicasting. Selective multicasting provides a mechanism to prevent unnecessary forwarding of multicast traffic on those segments where no intended user exists. Selective multicasting relies on the MRP specified in IEEE-802.1ak. (MRP was originally called GARP.) MRP is a very general protocol that allows registration and propagation of attributes within a network.

All bridges must implement the registrar capability. The participant (user/application) must implement applicant-only or simple applicant functionality. The bridges then propagate this information throughout the network. This also allows for an open-host model where the source of the traffic doesn't have to register or make advertisements and can be located anywhere in the network. The bridges maintain this user registration as soft state and receivers must periodically refresh their intent with bridges.

Listeners could also explicitly de-register by initiating a de-registration event. This event is similar to a registration and is propagated throughout the network. Maintaining the soft state allows automatic propagation of the registration through newly established routes, reaching all other devices in the network in case of topology changes. The registration of the attribute along the previously used paths eventually times out.

This soft-state approach also provides graceful support and recovery from occasional errors. The particular application of MRP used to register for multiple addresses is multiple MAC registration protocol (MMRP). Users interested in receiving a particular multicast traffic register their intent with bridges. The bridges forward multicast data traffic only on those ports where a registration for the multicast address was received.

With MMRP, explicit support is provided to legacy LANs by providing "forward all unregistered" and "forward all multicast traffic." Forward all unregistered relies on the fact that new multimedia-type applications, legacy applications and legacy protocols using multicast traffic for some of their applications would not have been registered. Thus a legacy LAN would register with such an attribute. Forward all multicast is used by devices like network routers or network monitors who intend to listen to all traffic on the LAN.

Another popular use of MRP is called multiple VLAN registration protocol (MVRP). This is for users to register or de-register for a particular VLAN. Because MRP is a generic protocol, the operation of the MVRP remains the same as MMRP. However, the definition of attributes carried within the frame now refers to VLAN context. The VLAN membership information declaration and propagation happens in a similar way.

To summarize the preceding discussion, most of the early advances in Ethernet focused on increasing bandwidth, while some of the later ones like selective multicasting and VLAN are designed to preserve bandwidth. Either way, it's the bandwidth that enabled multimedia applications over LAN. The 802.1p was the only attempt to assign priority to the multimedia traffic.

Let's now address 802.1AVB (audio video bridging). This advancement supports the complete set of requirements to enable high-quality multimedia applications over low-cost Ethernet networks.

The need for AVB
As stated previously, numerous advances have been made to Ethernet technology to enable multimedia applications. Most of these advances are either increasing operation speed, traffic isolation, or bandwidth preservation. An attempt to prioritize critical application data was made in 802.1p. Many popular video streams now demand bandwidths as high as 20 Mbps (HDTV stream). At the same time, Ethernet supports low-cost physical media (such as CAT-5 cables) that enable speeds as fast as 100 Mbps. This means that high-quality multimedia applications could be provided over the Ethernet if the Ethernet system (including endpoints and bridges) is carefully designed. Many interactive multimedia applications used in homes could also be enabled if the delay and jitter through the network were kept low.

Multimedia applications are not only high-bandwidth (especially high-resolution video), but streaming in nature, so there is a constraint on timeliness attached to audio/video streams. Another requirement for multimedia traffic is that occasional data loss is acceptable provided that timely delivery is guaranteed most of the time.

Some interactive multimedia applications over a LAN, such as recording a session in a home garage, require extremely low delays on the order of 2 milliseconds. Providing only a class of service to multimedia traffic doesn't guarantee any limits on end-to-end delay and jitter. The video traffic could still be delayed if high-quality (hi-fi) music streams are being played.

Interaction with TCP traffic (most data applications use TCP), which is self-similar and extremely transient in nature, could still lead to unacceptable user quality because this traffic could introduce excessive jitter in audio and video streams if the same network is shared. A point worth mentioning here would be that class of service could also lead to bundling and bunching effects caused by different priority-level traffic, thus introducing jitter. Over-provisioning has worked in the past for such cases, but the ability to support three or more HDTV streams (60 Mbps net) over low-cost 100 Mbps Ethernet would enable wide customer acceptance because of its price point.

What does the Ethernet AVB standardize and what problem does it solve?
With these multimedia application requirements, the IEEE 802.1 formed an audio/video task group. The charter of the task group is to provide specifications that will allow synchronized low-latency streaming services through 802 networks.

The first issue is to establish an AVB cloud where time-sensitive streaming services would be provided. The establishment of such a cloud is limited to full-duplex Ethernet links operating at speeds greater than 100 Mbps, with the limit on propagation delay and enhancing the established 802.1AB (logical link discovery protocol) to exchange "AVB-capable" protocol data units (PDUs).

Time synchronization specifies a protocol to provide time synchronization throughout an 802 network. This time synchronization will enable source-traffic shaping and quantify the latency and jitter through the bridged network. The time synchronization is being standardized in P802.1AS.

In addition to time synchronization, a stream reservation protocol (SRP) is being specified for admission control and resource reservation purposes. The SRP will provide end-to-end quality of service and latency guarantees by reserving resources at every bridge in the network where the stream is being forwarded. The SRP is similar to MMRP and MVRP in operation and relies on the MRP discussed earlier. The SRP is being standardized in P802.1Qat.

Additionally, enhancements will be required for LAN bridges to specify timely forwarding and queuing of time-sensitive steams. Various models for forwarding are being considered and discussed, with the pseudo-synchronous model (using timing synchronization) looking like the most promising option. The bridges will also absorb the jitter introduced in the stream traffic caused by asynchronous traffic (TCP traffic) and forward these streams within 250 microseconds.

A 250 microsecond-per-hop delay in a seven-hop network (the maximum number of hops specified in IEEE 802.1D) will allow less than a 2 millisecond delay in a LAN. These bridge enhancements are being standardized in P802.1Qav. At this point, the P802.1AS, P802.1Qav and P802.1Q specifications are in the evolution phase.

What's next? Part two of this article will focus on the details of the three components of AVB and how these components work in unison to enable high-bandwidth multimedia applications with guaranteed delay and jitter.

Acknowledgements
The author would like to thank Martin Rhodes of Xilinx and Vijay Prabhakaran of Stanford University for their comments and reviews.

Neeraj Parik is a Design Engineer in the Advanced Connectivity and Networking Division of Xilinx. He is involved in the development of Ethernet and PCI Express Intellectual Property cores.


print

email

rss

Bookmark and Share

Joinpost comment




Please sign in to post comment

Navigate to related information

Product Parts Search

Enter part number or keyword
PartsSearch

FeedbackForm