We are fast entering the age of gigabit networking, where information is passed along wide area and local area networks at speeds surpassing one billion bits per second. With improvements in fiber optic signalling and the development of inexpensive high-performance computers, both the capability and the demand for gigabit networking are here.
As a networking professional who needs to prepare for the immediate future of computer networking, you will find Gigabit Networking a fascinating and practical look at the advances that are making high-speed networking a reality. Key technologies, important protocols, applications, and the practical issues involved in implementing gigabit networks are all addressed. The book covers in detail such topics as:
This important book will bring you up to date on the state of gigabit networking, and will give you the knowledge you need to launch yourself into the age of truly high-speed networking.
"'Gigabit Networks by Craig Partridge is an excellent resource on networks performance issues and talks in detail about microkernal designs.' As you can see the reviewer referenced this book by Prentice Hall by mistake - there will be a correction in an upcoming issue."
"The discussion on ATM cell networking, for instance, is excellent. Partridge (Gigabit Networking) clearly has a good grasp of this subject (and I hope he'll write more on ATMs in the future.)"
-Dr. Dobb's Developer Update
"I would recommend this book (Gigabit Networking) to everybody who is interested in computer networks."
(All chapters, except Chapters 1, 15 and 16, conclude with a Summary.)
1. An Introduction to Gigabit Networking.
Change in the Wind.
What is Changing?
Rules of the Road.
What Follows this Chapter.
Essentials of Fiber Optics.
Transmitters and Receivers.
An Example of Fiber Optic Signalling: SONET.
Another Example: WDM Networks.
What Is a Cell?
Fragmenting Data into Cells.
Adaptation Layer Protocols.
Cell Error Recovery.
ATM Inside the Telephone Networks.
ATM Conceptual Model.
ATM Cell Format.
ATM Cell Header at the NNI.
ATM at the User-Network Interface.
Signalling an ATM Connection.
Putting the ATM Bits on the Wire.
Issues in ATM.
The Canonical Cell Switch.
Input Buffering Revisited.
An Optical Cell Switch.
The Cost of Port Controllers.
Shared Media Cell Networks.
Local Area Switching Technologies.
Issues in Packet Network Design.
Local Area Packet Technologies.
Wide Area Packet Technologies.
New Computing Applications.
Applications with Humans in the Loop.
The Impact of New Applications.
The Model Machine.
The Costs of Moving Data.
Reducing Memory Copy Costs.
Other Processor-Memory Interactions.
What about Cells?
A Summary of System Performance Issues.
Support for Real-Time Applications.
Gigabit Speeds and Today’s Protocols.
Architecture of TCP/IP.
Techniques for Going Fast.
Limitations of Today’s Protocols.
Converging on the Shape of Gigabit Protocols.
Why Shape Traffic?
Isochronous Shaping with Priority Schemes.
Shaping Bursty Traffic Patterns.
Terminology and Issues.
Weighted Fair Queueing.
Jitter Control Schemes.
Statistical Multiplexing Revisited.
The Host’s Role in Flow Setup.
Protocols to Establish a Flow.
Distributed Systems Today.
Alternative Approaches to Distributed Systems.
Enhancing Distributed Services.
Putting the Pieces Together.
After Gigabits, Terabits?
Testbeds and Research Programs.
Conferences and Journals.
Getting Items in the Bibliography.
Computing environments keep improving. Most improvements are incremental, changes such as a 50% increase in CPU speed or a doubling of memory capacity in a chip. Every so often the accumulated changes become large enough to transform some part of computer science. More powerful processors made it possible to share the CPU among several users, leading to multiprocessing operating systems like UNIX and MVS. The advent of timesharing transformed the study of operating systems. The advent of high-quality graphics has led to WYSIWYG interfaces.
Computer networking is undergoing such a transformation. The widespread use of optical fiber to transmit data has made tremendous increases in network bandwidth possible. Furthermore, greater CPU power, increasing disk capacity, and support for digital audio and video are creating demand for a new class of network services, which are not supported by today's networking protocols. The result of these trends is a world I occasionally describe as the gigabit environment, a computing milieu in which most or all of the components of a computer system are processing, storing, displaying, or moving data at speeds exceeding 1 gigabit per second. Although the gigabit environment does not yet quite exist (except, perhaps, at some supercomputer centers), it is fast approaching.
This book examines a critical part of the gigabit environment: the gigabit per second computer networks that make it possible to share vast quantities of data among many computer systems.
Since the mid-1980s considerable work has been done on designing, developing, and studying networks capable of transmitting data at gigabit per second rates, and by now much of this work has produced tangible results: prototype networks, proposed protocol architectures, influential studies identifying key research issues, and most important, increased industry and government funding for the construction and study of major research testbeds.
This book is based on that research and presents gigabit networking as we now know it. Key technologies, important protocols and applications, and where research is still incomplete, important unsolved issues are all presented. The goal is to give the reader a sturdy understanding of an important emerging field.
The author of any survey has to be selective about what material is presented. Inevitably, the result is a book that becomes one person's perspective on the field rather than a complete survey. But I have worked hard to try to make sure that this survey presents as broad a range of work as possible, given constraints on reasonable book length and time and resources to search out new work.
At the same time, I believe that anyone who takes the time to write a survey of a field should also give the reader some opinions about the strengths and limitations of the topics discussed in the survey. A survey without such a perspective is little better than a list of facts. So, scattered through the book are thoughts about important issues. I do not expect the reader to always agree with me.
Because this text assumes a background in networking and focuses solely on gigabit networking, it is not sufficient as a stand-alone text for an undergraduate course. However, several chapters can serve as supplements to an existing text such as Tanenbaum's Computer Networks, Comer's Internetworking with TCP/IP, or Spragin's Telecommunications. Chapter 2 provides a useful tutorial on fiber optic networking. Chapters 5, 6, and 7 describe a number of high-speed networking technologies; and Chapters 9 and 10 may provide a useful perspective on protocol performance when studying the internetwork and transport layers. A study of flow control can be supplemented by Chapters 11, 12, and 13, which describe the difficult problems of performance guarantees.
For a graduate course on data networking, this book provides an introduction to a number of the key research issues in data networking and thus could serve as a useful textbook, perhaps supplemented by selected readings from the research literature.
Julio Escobar and Zygmunt Haas provided extensive comments on Chapter 2 that saved me from making a number of embarrassing mistakes. Chris Wilcox helped me better understand SONET. Bob Braudes, John Burruss, Norman Chang, Bruce Davie, Ole Jacobson, Joe Pagan, Steve Pink, Howard Salwen, and Jonathan Smith provided insightful comments on a number of chapters. Early in the writing of the book, both Dave Crocker and Brian Kernighan helped me work out a better presentation style in early drafts of Chapters 3 through 5, which helped immeasurably with later chapters. Simone Payment and Marty Rabinowitz of Addison-Wesley helped me with various issues of tasteful formatting.
A number of people provided advance copies of papers or reviewed pieces of the manuscript related to their work for accuracy. For their help, I'd like to thank David Anderson, Abhaya Asthana, Dave Banks, DickBinder, Dave Borman, Charlie Catlett, Chris Cooper, Jon Crowcroft, Deborah Estrin, Greg Finn, Ed Foudriat, Sandy Fraser, Victor Frost, Mark Garrett, Rafael Gidron, Rich Gitlin, Bryan Gorman, David Greaves, Roch Guerin, Gerard Holzmann, Jim Hughes, Van Jacobson, Bob Kahn, Chuck Kalmanek, Jim Kurose, Larry Landweber, Will Leland, Paul Messina, Dave Mills, Biswanath Mukherjee, Joe Pasquale, John Renwick, Paul Rupert, TimSalo, Chuck Seitz, Dave Sincoskie, Dan Stevenson, Dave Tennenhouse, and Lixia Zhang. Also thanks to Lawrence S. Brakmo for the data used to generate the slow-start graph in Chapter 10, and Mark Garrett for the data for the MPEG graph in Chapter 8.
I also want to thank the folks who got me into writing this book in the first place and helped me through the process. Dan Lynch all but dared me to put together a course on gigabit networking for INTEROP 1990. Experience with that course and interaction with the hundreds of students who have taken it to date have helped shape this book. I met John Wait of Addison-Wesley when we were both stuck in the Houston airport by a snowstorm in 1987, and he and his team (Kim Dawley, Kathleen Duff, and Kathleen Habib) have since waited patiently for me to produce a book on networking. Brian Kernighan's help, both as series editor and in his comments on several drafts of this book, was immensely helpful. Thanks also to my employer, Bolt Beranek and Newman, for allowing me to undertake this work, and to the Swedish Institute of Computer Science, where I spent a very productive sabbatical year. Finally, thanks to my wife, Carolyn, who had to put up with losing her husband on many weekends and evenings as I pounded away at the keyboard.
Palo Alto, August 1993