Data Communication and Computer Networks Tutorial - Third Edition

Author: University of Wisconsin
Publisher:
Publishing Date: 2005-01-01
Features: This book systematically introduces the fundamental theories and applications in the field of data communications and computer networks. Compared to the previous two editions, the third edition has significant updates in both content and organization, placing greater emphasis on the integration of theory and practical applications. The main contents include: transmission media and data encoding, analog and digital signals, establishing connections, data compression, data integrity, data security, flow control, local area networks, network interconnection, Internet protocols and applications, Internet programming, circuit technology, etc. Additionally, each chapter is accompanied by a large number of review questions and exercises. This book is suitable as a textbook and reference for computer science majors in higher education institutions and can also be used as a reference for professionals in related fields. This book systematically introduces the fundamental content in the field of data communications and computer networks. Compared to the previous two editions, the third edition has significant updates in both content and organization. The book inherits the strengths of the previous two editions, such as a systematic theoretical structure, concise and easy-to-understand narrative language, and selected review questions and exercises at the end of each chapter. At the same time, it places greater emphasis on combining with practical applications in addition to introducing fundamental theories. For aspects that are relatively important in applications, such as data compression, data integrity, data security, and flow control, separate chapters are dedicated to detailed explanations. Additionally, the content related to Internet protocols and applications, and Internet programming has been greatly enriched, making the book not only a theoretical textbook but also highly practical for guidance.
Translator's Preface This book is translated from William A. Shay's Understanding Data Communications Networks (Third Edition) (Brooks/Cole Publishing Inc., 2004). The first edition was published nine years ago, and the second edition was published five years ago. It systematically introduces the fundamental content in the field of data communications and computer networks and has been adopted by many universities in the United States as a textbook. After the second edition was published, significant changes occurred in the field of data communications and computer networks, and the third edition reflects these changes. Compared to the previous two editions, the third edition has significant updates in both content and organization. At the same time, it places greater emphasis on combining with practical applications in addition to introducing fundamental theories. For aspects that are relatively important in applications, such as data compression, data integrity, data security, and flow control, separate chapters are dedicated to detailed explanations. Additionally, the content related to Internet protocols and applications, and Internet programming has been greatly enriched. New or expanded content includes transmission media, DSL technology, Universal Serial Bus (USB) and FireWire (IEEE 1394 standard) protocols, Synchronous Optical Network (SONET), Frame Relay protocol, gigabit and ten-gigabit Ethernet standards, 802.11 wireless LAN standards, switched Ethernet, virtual LANs, classless inter-domain routing, multicast, quality of service, Real-Time Transport Protocol (RTP), compression technology, Advanced Encryption Standard (AES) and Rijndael algorithm, Pretty Good Privacy (PGP) secure programming, Secure Sockets Layer (SSL), IPSec, Transport Layer Security (TLS), X.509 certificates, firewalls, security threats, and CGI programming, etc. The book inherits the strengths of the previous two editions, such as a systematic theoretical structure, concise and easy-to-understand narrative language, and selected review questions and exercises at the end of each chapter. Review questions help readers review the important content of each chapter, while exercises focus on requiring readers to apply the knowledge learned to solve practical problems. References up to 2003 are listed at the end of each chapter. The book also includes explanations of data communication and network terminology and commonly used abbreviations at the end. The book serves as both a theoretical textbook and a highly practical guide. It can be used as a textbook and teaching aid for related courses in computer science at higher education institutions and also as a reference book or for further study and training for professionals in this field. This book was translated under the leadership of Professor Gao Chuanshan of Fudan University, who translated the first chapter, glossary, and abbreviations. Li Junwei translated Chapters 2, 3, and 4, Chen Qi translated Chapters 5, 6, and 7, Xu Dan translated Chapters 8, 9, and 10, and Qu Guang translated Chapters 11, 12, and 13. The final draft was compiled and reviewed by Gao Chuanshan. Due to time and limitations, there may be imperfections, and we welcome criticism and corrections.
Translator's Introduction Professor Gao Chuanshan was born in 1942 and graduated from Fudan University in 1963. He served as a visiting scholar in the Department of Computer Science at the University of Illinois (UIUC) from 1981 to 1983. He is currently the Deputy Dean of the School of Technology and Science at Fudan University, a professor and doctoral supervisor in the Department of Computer Science and Engineering, and the Director of the Computer and Communication Laboratory. He also serves as a committee member of the National Computer Rank Examination (NCRE) of the Ministry of Education. He has long been engaged in teaching and research on computer systems, software, and applications, with expertise in data communications, computer networks, and distributed systems and their applications. He has published more than 140 academic papers in domestic and international journals and conferences and has formally published more than 20 books. His scientific and technological achievements have won three first prizes, two second prizes, and three third prizes at the provincial and ministerial level for scientific and technological progress. Since 1992, he has been enjoying special allowances from the State Council of the People's Republic of China. In 1993, he won the third prize of the Guohua Science and Technology Fund Award. In 1995, he was named an Outstanding Educator of Shanghai. In 1999, he won the third prize of the Shanghai Municipal People's Government Decision-Making Consultation Research Achievement Award. In 2002, Data Communications and Computer Networks won the first prize of the National Outstanding Textbook Award for Higher Education. To date, he has trained 66 master's students, 19 doctoral students, and 3 postdoctoral researchers, of whom 46 have obtained master's degrees, 10 have obtained doctoral degrees, and 2 have completed their postdoctoral research and returned to their respective fields. William A. Shay received his Ph.D. in 1978 from the University of Wisconsin-Milwaukee and is currently a professor and chair of the Department of Information and Computer Science at the University of Wisconsin-Green Bay. He is committed to curriculum development and textbook writing. In addition to this book, he has also written Introduction to Operating Systems.
Purpose The second edition of this book was published five years ago, but in the past few years, significant changes have occurred in the field of data communications and computer networks. For example:
- Web-based software is becoming increasingly prevalent.
- The demand for secure connections for web sites is very common.
- Higher security requirements and more tools to handle security threats have emerged.
- New encryption standards have been developed, and older standards are gradually being phased out.
- Quality of Service (QoS) issues have led to the need for new protocols.
- New connection technologies (such as DSL, USB, and FireWire) are becoming very common.
- Ethernet has been extended to gigabit speeds.
- The emergence of audio compression formats like MP3 and computer games has completely changed how people use the Internet.
- Wireless technology is replacing traditional technologies in many aspects.
- Some protocols that were once commonly used or considered promising are now rarely used.
The world is no longer the same as when the previous edition was published, and the new edition reflects these changes. Although most of the content has changed, the goal remains basically the same. It is written for undergraduate students in computer science, who have completed at least two semesters of software design courses and have the necessary knowledge of discrete mathematics and calculus before learning it. The book covers the content of introductory courses in data communications and computer networks, such as transmission media, analog and digital signals, data transmission, compression and encryption methods, network topology, network security, LAN protocols, Internet-based protocols and applications, circuit-switching technology, and web applications, etc. The book mainly includes the following content:
- Differences and advantages and disadvantages of various transmission media.
- Analog and digital signals, modulation and demodulation techniques, and how modulating devices such as modems, cable modems, and DSL modems work.
- The impact of transmission noise on protocols and how they detect corrupted information.
- How protocols respond when noise causes information to be corrupted or lost.
- Standards (such as AES, ATM, DES, EIA-232, HDLC, IEEE 802.3, IEEE 802.5, IEEE 802.11, IPv6, JPEG, MP3, MPEG, OSI, SONET, TCP/IP, and X.25) and standardization organizations, and why these standards are needed.
- Data compression techniques, types of data that can be compressed, and comparisons of different compression techniques.
- Worms, viruses, and other threats to network computers.
- The need for security and the effectiveness of various encryption methods.
- The differences between public-key encryption systems and private-key encryption systems.
- How to establish secure connections to remote stations.
- The need for and various methods of flow control.
- LAN protocols and competition strategies on shared transmission media.
- Wireless standards.
- Methods of connecting LANs.
- Routing strategies.
- The need to support real-time video applications and the response to Quality of Service (QoS) issues.
- How to design and build practical client/server applications.
- How increasing web usage and multimedia applications are affecting existing protocols and the work being done to address these changes.
Content and Structure The third edition of the book has undergone many modifications, some based on reader feedback and others based on technological advancements. Some figures have been made clearer and more understandable, and the descriptions of many protocols have been improved. Additionally, some content that is becoming a common topic has been expanded to include new developments and removed topics that are no longer important in the field.
- The most significant change is the reorganization of the book into 13 chapters, as follows:
Chapter 1: Communication, Standards, and Protocols
Chapter 2: Transmission Media and Data Encoding
Chapter 3: Analog and Digital Signals
Chapter 4: Establishing Connections
Chapter 5: Data Compression
Chapter 6: Data Integrity
Chapter 7: Data Security
Chapter 8: Flow Control
Chapter 9: Local Area Networks
Chapter 10: Network Interconnection
Chapter 11: Internet Protocols and Applications
Chapter 12: Internet Programming
Chapter 13: Circuit Technology
This reorganization makes teaching easier and allows instructors to select specific topics to meet course requirements. Some chapters correspond to parts of certain chapters in the previous edition, while others are combinations of different chapters from the previous edition. Of course, many chapters contain a lot of new material.
- The most significant change is the inclusion of many new or expanded topics, such as:
- Transmission media, including metallic conductors, fiber optics, wireless, and satellite communications.
- DSL technology.
- Universal Serial Bus (USB) and FireWire (IEEE 1394 standard) protocols.
- Synchronous Optical Network (SONET).
- Arithmetic compression, fax compression, and MP3 compression techniques.
- Advanced Encryption Standard (AES) and Rijndael algorithm.
- Pretty Good Privacy (PGP) secure programming.
- Secure Sockets Layer (SSL), Transport Layer Security (TLS), and X.509 certificates.
- Firewalls.
- Security threats.
- Ethernet, fast Ethernet, and gigabit Ethernet standards, as well as the introduction to ten-gigabit Ethernet standards.
- 802.11 wireless LAN standards.
- Switched Ethernet.
- Virtual LANs.
- Third and fourth-layer protocols, including classless inter-domain routing, routing and routers, multicast, quality of service issues, Real-Time Transport Protocol (RTP), and IPSec.
- Internet applications.
- Project-based CGI programming, including practical examples of web-based ordering systems using Linux and Perl scripts.
- Frame Relay protocol.
Although it is difficult (almost impossible) to cover all these topics in a single semester course, the wide range of topics allows instructors to choose flexibly based on their needs. The book combines theory and application. The theory provides a solid foundation for further study, while the application brings students closer to the reality of communication systems and networks and provides them with valuable experience. All students will benefit from the application, while the more theoretical material poses a challenge to ambitious students. Additionally, Chapter 12 provides practical models for client/server applications that students can build themselves. Each chapter builds on the next. For example, when learning about multiplexing, competition, or compression, students need to understand how signals propagate through different media. When learning about LANs, they need to understand the competition problem on multi-access lines, noise channels, and flow control. When learning about wide-area network protocols, they need to understand LAN protocols and why they are not suitable for larger networks. The specific content of each chapter is summarized as follows:
Chapter 1 introduces the field of communication and networks, covering current issues and applications in the field. It describes the need for standards, lists relevant standardization organizations, and summarizes the long-standing protocol model—Open Systems Interconnection (OSI). The chapter concludes with an outlook on the future.
Chapter 2 explores different types of transmission media (cables, wired, wireless, satellite, and fiber optics) and their advantages and disadvantages, as well as various methods of encoding data.
Chapter 3 provides an in-depth introduction to analog and digital signals, the modulation techniques used to convert between them, and the impact of noise on bit rates. It also discusses modems, cable modems, and DSL technology.
Chapter 4 focuses on establishing connections (i.e., transmission methods), communication carriers (telephone systems, SONET, and T1), interface standards (EIA-232, USB, and FireWire), and how multiple devices access the same medium (multiplexing methods and various competition protocols).
Chapter 5 covers compression techniques suitable for compressing different types of data and how they identify different types of redundancy in data.
Chapter 6 discusses the integrity of transmitted data, including error detection and correction techniques such as check bits, cyclic redundancy checks (CRC), and Hamming codes.
Chapter 7 discusses data security, including encryption techniques (public-key and private-key), encryption standards, key exchange algorithms, authentication methods, X.509 certificates, and secure connections. It also covers firewalls and various threats (viruses, worms, hackers, and denial-of-service attacks).
Chapter 8 introduces flow control algorithms, outlining how devices handle information exchange and lost or damaged data. It also introduces formal methods for verifying the correctness of protocols.
Chapter 9 describes LAN protocols, including different versions of Ethernet (original, fast Ethernet, and gigabit Ethernet), token ring networks, and IEEE 802.11 wireless LAN standards.
Chapter 10 introduces methods of connecting various networks, covering second-layer connections (bridges and switches), address learning, spanning tree algorithms, switched Ethernet, and virtual LANs. It also introduces third-layer connections, discussing various routing algorithms (Dijkstra, Bellman-Ford, RIP, and BGP), and describes issues caused by network congestion and deadlock.
Chapter 11 explores Internet-related issues, introducing the Internet Protocol (IPv4 and IPv6) and Quality of Service (QoS) issues. It also covers multicast and other protocols designed to provide real-time services for the Internet, as well as TCP (connection management, flow control, and congestion management) and summarizes some common Internet applications (Telnet, SSH, FTP, and SMTP).
Chapter 12 is designed for instructors who wish to incorporate student projects into their courses. It provides practical examples of client/server applications, including socket programming, CGI (Common Gateway Interface) programming using C and Perl scripts, and sample code for file transfer, search engines, and online ordering systems.
Chapter 13 introduces circuit-based technologies such as ISDN, X.25, Frame Relay, and ATM.
The problems at the end of each chapter are divided into two parts. The first part is review questions, and the answers can all be found directly in the corresponding chapters. These questions encourage readers to review the text and identify the important content that the author or teacher considers significant. I believe this method is better from a teaching perspective than simply listing key points at the end of the chapter, as it encourages students to read the textbook sequentially like a novel. However, reading complex material often requires reading it multiple times and then returning to the textbook to understand different concepts. A colleague once told me about her conversation with a student who was struggling with extra-curricular assignments. The student worked part-time and decided not to force himself to study in a dull way but instead took the book to work and read it whenever he had a chance. Later that semester, his grades improved. He told the teacher that he only truly began to understand the material after reading it five or six times. Review questions alone are not enough. The second part is exercises, which require readers to apply and compare the knowledge they have learned, make logical reasoning, and consider other optional solutions. The answers to the exercises are not always simple statements that can solve the problem, but require in-depth analysis, which is closer to typical real-world problems.
Supplementary Materials The related website for this book is http://www.uwgb.edu/shayw/udcn3, which provides a wealth of supplementary materials to facilitate teaching.
Acknowledgments Very little work, such as writing a textbook, can be completed by one person alone. Many people have provided me with a lot of help and given me valuable suggestions and support. I especially thank the following people for giving me many good suggestions in the previous two editions:
Abdullah Abonamah, University of Akron
James E. Holden, Clarion University
David Kieper, University of Wisconsin-Green Bay
David Whitney, San Francisco State University
George W. Ball, Alfred University
Dr. Subramakrishnan, Bowling Green State University
Lance Leventhal, J. Archer Harris, Ph.D., James Madison University
Mehran Basiratmand, Florida International University
Dr. Seyed H. Roosta, Mount Mercy College
Judith Molka, University of Pittsburgh
Dr. Paul N. Higbee, North Florida University
Ron Bates, Dean, DeAnza College
Brit Williams, Ph.D., Kenyon College
Dan O’Connell, Fredonia College, SUNY
Dr. Gene H. Hill, Price, Old Dominion University
Bruce Derr, Jon L. Spear, Syracuse University
Stan Wine, Hunter College, and New Era of Networks
Mohammad El-Soussi, Santa Barbara City College
Dr. J. Mark Pullen, George Mason University
Janet M. Urlaub, Sinclair Community College
I would like to thank those who took the time to review the manuscript of the third edition and those who provided valuable suggestions for improving the second edition. I carefully reviewed all the comments and suggestions, and many of them were included in the final draft.
I would like to thank the reviewers of this edition:
Irvin Jay Levy, Gordon College
Mark Pullen, George Mason University
Aby Tehranipour, Eastern Michigan University
Camelia Zlatea, DePaul University
I would like to thank all the people at Brooks/Cole Publishing Company, including editor Kallie Swanson and assistant editor Aarti Jayaraman. I would also like to thank Penmarin Books for managing the publishing process, Cindy Kogut for copyediting the manuscript, and George Barile of Accurate Art for writing the descriptions for the new edition. It is their efforts that turned a manuscript into a book. At the same time, I would like to thank my family—Judy, Dan, and Tim—for their help, which allowed me to have "free time" to write.
Finally, I would like to thank all the readers of this book. I welcome any comments and can be reached at William A. Shay, Department of Information and Computing Sciences, University of Wisconsin-Green Bay, Green Bay, WI 54311-7001, or via email at shayw@uwgb.edu.
William A. Shay

📌 Related Posts