Distributed Queue Dual Bus Protocal

The Distributed Queue Dual Bus (DQDB) Protocol is the primary technology utilized by Metropolitan Area Networks (MANs) as specified by the IEEE standard 802.6. For a MAN to be effective it requires a system that can function across long, “city-wide” distances of several miles, have a low susceptibility to error, adapt to the number of nodes attached and have variable bandwidth distribution. Though these requirements are similar to those of Local Area Networks (LANs), they require a different implementation due to the large distances inherent to MANs and so a different protocol is necessary.

The DQDB is composed of a two bus lines with stations attached to both and a frame generator at the end of each bus. The buses run in parallel in such a fashion as to allow the frames generated to travel across the stations in opposite directions. The frame generator is constantly producing empty frames consisting of fifty-three bytes (a five byte header and a forty-eight byte payload). Below is a picture of the basic DQDB architecture.

 

main menu

Each slot has a Busy bit and a Request bit. If the Busy bit is set, this means that this frame is carrying data, and cannot be used by a host. When a host wants to transmit on Bus A, it sets the Request bit on a passing frame on Bus B which notifies the other hosts that a request has been made. Each host maintains a Request Counter (RC) to keep track of the requests from down-steam. Each host also has another counter (CD), which counts down the number of empty frames that pass by. When a host wants to transmit data, it sets CD to RC, and resets RC to zero. CD then counts down, and the host is allowed to transmit when CD gets to zero. In other words, hosts that receive x requests from other hosts must let x frames go by until they can transmit data.

However, it has been found that although DQDB scales well for distance and for numbers of hosts, it is unfair under heavy load conditions. Stations near the end of a bus are mainly limited to one bus, while stations at the center or head of a bus have better access to empty frames and have shorter transmission paths. To counteract this, stations have another counter, the Bandwidth Balance (BWB). Effectively, this will cause more empty frames to pass by a host than are necessary, allowing hosts nearer the end of the bus to transmit more often. While this does increase fairness, it also cuts down on efficiency as some frames go unused.


After a destination host reads a frame that was intended for it, the frame cannot be reused even though it is no longer needed, because the Busy bit has been set. To allow frame reuse, a Previous Segment Read (PSR) bit is available in the header that enables hosts to signal that they have read the data and thus, the frame is no longer needed. To take advantage of this, “Eraser” hosts exist that buffer complete frames and can clear the Busy bit if the PSR bit is set. This adds a delay because of the buffering, however it improves throughput.

The DQDB protocol allows for a large number of hosts on a MAN to receive benefits comparable to those of a small number of hosts on a LAN. Using DQDB, networks can be thirty miles long and function in the range of 34 Mbps to 155 Mbps. Due to these reasons the DQDB protocol is accepted as the standard for MANs. The data rate fluctuates due to many hosts sharing a dual bus as well as the location of a single host in relation to the frame generator, but there are schemes to compensate for this problem making DQDB function reliably and fairly for all hosts.