A New Binary Logarithmic Arbitration Method for Ethernet

Recently, Ethernet celebrated its twentieth anniversary. Over those years, the processing speed of the attached hosts has increased by several orders of magnitude, to the point where the relative bandwidth of a 10 Mbps Ethernet has fallen from more than adequate to support large enterprise networks (whose utilizations were typically only a few percent, anyway), to marginally fast enough to support a single high performance desktop workstation. At the same time, the Ethernet standard has also evolved to incorporate new technology at the physical layer, including new media, new signalling methods, and support for higher data rates. However, the MAC layer protocols have remained essentially unchanged from the early days of undemanding applications running on large numbers of slow hosts. In this paper, we argue that it is time to review the MAC layer and incorporate advances made in the protocol performance field over the last twenty years. First, we describe several little-known facts about the dynamic behaviour of the current Truncated Binary Exponential Backoff (BEB) algorithm, and explain how these features can cause significant performance problems for a variety of interesting network configurations. We then show that the backoff algorithm can be modified to eliminate all of these performance anomalies, without sacrificing performance or interoperability with existing Ethernet compatible devices. Indeed, the actual performance characteristics of the resulting algorithm, which we call the Binary Logarithmic Arbitration Method (BLAM), closely follow the stated design goals for BEB. I. Performance Implications of the Current MAC Layer Protocol I.a. How Ethernet is Used The original design goals for Ethernet were ‘‘to design a communication system which can grow smoothly to accommodate several buildings full of personal computers [emphasis added] and the facilities needed for their support’’ [21]. In other words, the environment for which it was designed consisted of a large, loosely-coupled collection of slow hosts (such as the Xerox Alto minicomputer [30]), that used the network for occasional access to such services as archival file servers, shared printers, etc. Although no SPECmark rating is available for the Alto, its relative slowness (compared to Ethernet) should be obvious from the fact that simple address filtering in the presence of back-to-back minimum-length packets was reported to use up 20% of the CPU [30]. Of course, present day hosts have much more processing power than an Alto, and new styles of network interaction have emerged, including remote file systems, diskless workstations, X-terminals, multimedia, and more. High end desktop workstations can easily saturate a 10Mbps Ethernet, and (as of Fall 1992) a few could even saturate a 100Mbps FDDI ring. Thus, at the present time few people would recommend trying to support more than a few dozen hosts on a single 10Mbps Ethernet. (Of course, 100Mbps Ethernet would provide sufficient bandwidth to support several hundred hosts with similar traffic demands.) Indeed, 10Mbps may even be seen as a performance bottleneck for a single high performance workstation being used in a data-intensive application like multimedia, computer aided design, or data visualization.