82% found this document useful (11 votes)
3K views58 pages

Elements of Computer Networking: An Integrated Approach (Concepts, Problems and Interview Questions)

Salient Features of Book: All the concepts are discussed in a lucid, easy to understand manner. A reader without any basic knowledge in computers can comfortably follow this book. Helps to build logic in the students which becomes stepping stone for understanding computer networking protocols. Interview questions collected from the actual interviews of various Software companies (and past compititive examinations like GATE) will help the students to be successful in their campus interviews. Hundreds of solved problems help the students of various universities do well in their examinations like B.C.A, B.Sc, M.Sc, M.C.A, B.E, B.Tech, M.Tech, etc. Works like a handy reference to the Software professionals. Table of Contents (Chapters): 1) Organization of Chapters 2) Introduction 3) Networking Devices 4) OSI and TCP/IP Models 5) LAN Technologies 6) ARP and RARP 7) IP Addressing 8) Network Routing 9) TCP and UDP 10) TCP Error Control 11 )TCP Flow Control 12) TCP Congestion Control 13) Session layer 14) Presentation layer 15) Network Security 16) Application Layer Protocols 17) Miscellaneous Chapters About the Authors Narasimha Karumanchi is the founder of CareerMonk and author of few books on data structures, algorithms, and design patterns. He was a software developer who has been both interviewer and interviewee over his long career. Most recently he worked for Amazon Corporation, IBM labs, Mentor Graphics, and Microsoft. He filed patents which are under processing. He authored the following books which got translated to international languages: Chinese, Japanese, Korea and Taiwan. Also, around 58 international universities were using these books as reference for academic courses. Elements of Computer Networking Data Structures and Algorithms Made Easy Data Structures and Algorithms Made Easy in Java Data Structures and Algorithms Made Easy for GATE Peeling Design Patterns IT Interview Questions Coding Interview Questions Narasimha held M.Tech. in computer science from IIT, Bombay, after finishing his B.Tech. from JNT university. He has also taught data structures and algorithms at various training institutes and colleges. Dr. A. Damodaram joined as faculty of Computer Science & Engineering at JNTU, Hyderabad in the year 1989. In two decades of dedicated service, he performed distinguished services to the University as a Professor, Head of the Department, Vice Principal, Director of UGC-Academic Staff College, Director, School of Continuing & Distance Education and presently Director, University Academic Audit Cell. Dr. M. Sreenivasa Rao, is the current Director School of IT and also Professor of SIT Computer Science. His articles and publications are published all over the world.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
82% found this document useful (11 votes)
3K views58 pages

Elements of Computer Networking: An Integrated Approach (Concepts, Problems and Interview Questions)

Salient Features of Book: All the concepts are discussed in a lucid, easy to understand manner. A reader without any basic knowledge in computers can comfortably follow this book. Helps to build logic in the students which becomes stepping stone for understanding computer networking protocols. Interview questions collected from the actual interviews of various Software companies (and past compititive examinations like GATE) will help the students to be successful in their campus interviews. Hundreds of solved problems help the students of various universities do well in their examinations like B.C.A, B.Sc, M.Sc, M.C.A, B.E, B.Tech, M.Tech, etc. Works like a handy reference to the Software professionals. Table of Contents (Chapters): 1) Organization of Chapters 2) Introduction 3) Networking Devices 4) OSI and TCP/IP Models 5) LAN Technologies 6) ARP and RARP 7) IP Addressing 8) Network Routing 9) TCP and UDP 10) TCP Error Control 11 )TCP Flow Control 12) TCP Congestion Control 13) Session layer 14) Presentation layer 15) Network Security 16) Application Layer Protocols 17) Miscellaneous Chapters About the Authors Narasimha Karumanchi is the founder of CareerMonk and author of few books on data structures, algorithms, and design patterns. He was a software developer who has been both interviewer and interviewee over his long career. Most recently he worked for Amazon Corporation, IBM labs, Mentor Graphics, and Microsoft. He filed patents which are under processing. He authored the following books which got translated to international languages: Chinese, Japanese, Korea and Taiwan. Also, around 58 international universities were using these books as reference for academic courses. Elements of Computer Networking Data Structures and Algorithms Made Easy Data Structures and Algorithms Made Easy in Java Data Structures and Algorithms Made Easy for GATE Peeling Design Patterns IT Interview Questions Coding Interview Questions Narasimha held M.Tech. in computer science from IIT, Bombay, after finishing his B.Tech. from JNT university. He has also taught data structures and algorithms at various training institutes and colleges. Dr. A. Damodaram joined as faculty of Computer Science & Engineering at JNTU, Hyderabad in the year 1989. In two decades of dedicated service, he performed distinguished services to the University as a Professor, Head of the Department, Vice Principal, Director of UGC-Academic Staff College, Director, School of Continuing & Distance Education and presently Director, University Academic Audit Cell. Dr. M. Sreenivasa Rao, is the current Director School of IT and also Professor of SIT Computer Science. His articles and publications are published all over the world.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
You are on page 1/ 58

Elements of

Computer Networking
An Integrated Approach

By
N a ra s i mh a K a ru m a n c h i
D r. A . D a m o d a ra m
D r. M. S re e ni v a s a R a o

CONCEPTS PROBLEMS INTERVIEW QUESTIONS


Copyright © by

All rights reserved.


Designed by

Copyright ©2014 CareerMonk Publications. All rights reserved.

All rights reserved. No part of this book may be reproduced in any form or by any
electronic or mechanical means, including information storage and retrieval systems,
without written permission from the publisher or author.
Acknowledgements
and , it is impossible to thank you adequately for everything you have
done, from loving me unconditionally to raising me in a stable household, where you
persistent efforts traditional values and taught your children to celebrate and embrace
life. I could not have asked for better parents or role-models. You showed me that
anything is possible with faith, hard work and determination.
This book would not have been possible without the help of many people. I would like
to thank them for their efforts in improving the end result. Before we do so, however, I
should mention that I have done my best to correct the mistakes that the reviewers
have pointed out and to accurately describe the protocols and mechanisms. I alone am
responsible for any remaining errors.
First and foremost, I would like to express my gratitude to many people who saw me
through this book, to all those who provided support, talked things over, read, wrote,
offered comments, allowed me to quote their remarks and assisted in the editing,
proofreading and design. In particular, I would like to thank the following individuals.
 , Senior Consultant, Juniper Networks Pvt. Ltd.
 , IIT Kanpur, Mentor Graphics Pvt. Ltd.
 , IISc, Bangalore
 , Head Master, Obulasuni Palle, Z. P. H. School
 , Teacher, Kambhampadu, Z. P. H. School
 , Teacher, Durgi
 , Founder, StockMonks Pvt. Ltd.
 , Co-Founder, NotionPress Pvt. Ltd.
 , Lecturer, Nagarjuna Institute of Technology and Sciences, MLG
 , Yahoo Pvt. Ltd.
 , Development Manager, IBM Software Labs
 , Development Manager, IBM Software Labs
 , - ., , Subjects.
 B-Tech., Technical Lead, HCL

-
M. Tech,
Founder,
Other Titles by Narasimha Karumanchi
Data Structures and Algorithms Made Easy
Data Structures and Algorithms for GATE
Data Structures and Algorithms Made Easy in Java
Coding Interview Questions
Peeling Design Patterns
IT Interview Questions
Preface
Dear Reader,
Please Hold on! We know many people do not read the preface. But we would strongly
recommend that you go through the preface of this book at least.
There are hundreds of books on computer networking already flooding the market.
The reader may naturally wonder what the need of writing another book on computer
networking is!
This book assumes you have basic knowledge about computer science. Main objective
of the book is to provide you the of and
questions. Before writing the book, we set ourselves the following :

 The book be written in that readers without any background in


computer networking should be able to understand it and .
 The book should present the concepts of in
and straightforward manner with a explanation.
 The book should provide enough examples so that readers get better
understanding of the and also useful for the interviews.
We mean, the book should cover interview questions.
Please remember, the books which are available in the market are lacking one or many
of these goals. Based on my teaching and industrial experience, we thought of writing
this book aiming at achieving these goals in a simple way. A 3-stage formula is used in
writing this book, i.e.
+ +
We used very simple language such that a school going student can also understand
the concepts easily. Once the concept is discussed, it is then interlaced into problems.
The solutions of each and every problem are well explained.
Finally, interview questions with answers on every concept are covered. All the
interview questions in this book are collected from various interviews conducted by
top software development companies.
This book talks about networks in everyday terms. The language is friendly; you don‘t
need a graduate education to go through it.
As a job seeker if you read complete book with good understanding, we are sure you
will challenge the interviewers and that is the objective of this book.
This book is very much useful for the students of engineering degree and masters
during their academic course. All the chapters of this book contain theory and their
related problems. If you read as a student preparing for competition exams (e.g.
GATE), content of this book covers all the required topics in full details.
It is that, at least reading of this book is required to get full
understanding of all the topics. In the readings, you can directly go to any
chapter and refer. Even though, enough readings were given for correcting the errors,
due to human tendency there could be some minor typos in the book.
If any such typos found, they will be updated at . . We request you to
constantly monitor this site for any corrections, new problems and solutions. Also,
please provide your valuable suggestions at: .
Wish you all the best. We are sure that you will find this book useful.

Dr. A. Dr. M.
M. Tech, M.Tech. (C.S.E.), Ph.D. (C.S.E) Dean MSIT Programme,
Founder, Director, School of IT M.Tech. (C.S.E.), Ph.D. (C.S.E)
Director, School of IT
Table of Contents

1. Organization of Chapters ----------------------------------------------------------- 13


1.1 Why Computer Networks are needed? -------------------------------------------------- 13
1.2 What Is this Book About? ----------------------------------------------------------------- 13
1.3 Should I Take this Book? ----------------------------------------------------------------- 14
1.4 How to Use this book? --------------------------------------------------------------------- 14
1.6 Organization of Chapters ----------------------------------------------------------------- 14

2. Introduction -------------------------------------------------------------------------- 19
2.1 What is a Computer Network? ----------------------------------------------------------- 19
2.2 Basic Elements of Computer Networks ------------------------------------------------- 19
2.3 What is an Internet? ----------------------------------------------------------------------- 20
2.4 Fundamentals of Data and Signals------------------------------------------------------ 20
2.5 Network Topologies ------------------------------------------------------------------------ 24
2.6 Network Operating Systems -------------------------------------------------------------- 28
2.7 Transmission Medium --------------------------------------------------------------------- 29
2.8 Types of Networks -------------------------------------------------------------------------- 31
2.9 Connection-oriented and Connectionless services ------------------------------------ 34
2.10 Segmentation and Multiplexing -------------------------------------------------------- 35
2.11 Network Performance -------------------------------------------------------------------- 36
2.12 Network Switching ------------------------------------------------------------------------ 43
Problems and Questions with Answers ------------------------------------------------------ 49

3. OSI and TCP/IP Models ------------------------------------------------------------ 59


3.1 Why OSI Model? ---------------------------------------------------------------------------- 59
3.2 What is a Protocol-Stack?----------------------------------------------------------------- 59
3.3 OSI Model ----------------------------------------------------------------------------------- 60
3.4 TCP/IP Model ------------------------------------------------------------------------------- 65
3.5 Difference between OSI and TCP/IP models ------------------------------------------- 67
3.6 How does TCP/IP Model (Internet) work? ---------------------------------------------- 68
3.7 Understanding Ports ----------------------------------------------------------------------- 71
Problems and Questions with Answers ------------------------------------------------------ 72

4. Networking Devices ------------------------------------------------------------------ 77


4.1 Glossary ------------------------------------------------------------------------------------- 77
4.2 End Devices --------------------------------------------------------------------------------- 78
4.3 Intermediary Devices ---------------------------------------------------------------------- 78
4.4 Internetworking Devices ------------------------------------------------------------------ 84
Problems and Questions with Answers ----------------------------------------------------- 101

5. LAN Technologies ------------------------------------------------------------------ 105


5.1 Introduction -------------------------------------------------------------------------------- 105
5.2 Types of Network Links------------------------------------------------------------------- 106
5.3 Medium Access Control Techniques --------------------------------------------------- 107
5.4 Random Access Techniques ------------------------------------------------------------- 109
5.5 Static Channelization Techniques ------------------------------------------------------ 120
5.6 LocalTalk ----------------------------------------------------------------------------------- 134
5.7 Ethernet ------------------------------------------------------------------------------------ 134
5.8 Token Ring --------------------------------------------------------------------------------- 141
5.9 Error Detection Techniques ------------------------------------------------------------- 150
Problems and Questions with Answers ----------------------------------------------------- 159

6. ARP and RARP ---------------------------------------------------------------------- 169


6.1 Address Resolution Protocol [ARP] ----------------------------------------------------- 169
6.2 Reverse Address Resolution Protocol [RARP] ----------------------------------------- 174
Problems and Questions with Answers ----------------------------------------------------- 177

7. IP Addressing ----------------------------------------------------------------------- 179


7.1 Introduction -------------------------------------------------------------------------------- 179
7.2 What is an IP Address? ------------------------------------------------------------------- 180
7.3 Understanding IP Address --------------------------------------------------------------- 180
7.4 Why do we need IP addresses? ---------------------------------------------------------- 181
7.5 IPv4 and IPv6 ------------------------------------------------------------------------------ 182
7.6 Classful Addressing: IPv4 Address Classes ------------------------------------------- 183
7.7 IPv4 Addressing Types-------------------------------------------------------------------- 185
7.8 IPv4 Reserved Addresses ----------------------------------------------------------------- 186
7.9 Packet Flow in an IPv4 Network -------------------------------------------------------- 187
7.10 IPv4 Datagram Header Format -------------------------------------------------------- 189
7.11 IPv4 Fragmentation --------------------------------------------------------------------- 191
7.12 Limitations to IPv4 Classful Addressing --------------------------------------------- 193
7.13 Subnet Masks and Subnetting -------------------------------------------------------- 193
7.14 Supernetting and Classless Inter-Domain Routing [CIDR] ------------------------ 205
7.15 Variable Length Subnet Mask [VLSM] ------------------------------------------------ 210
7.16 IPv6 [Internet Protocol Version 6] ----------------------------------------------------- 212
7.16.1 What is IPv6? -------------------------------------------------------------------------- 212
7.16.2 Why new IP Version? ----------------------------------------------------------------- 212
7.17 IPv6 Features ----------------------------------------------------------------------------- 212
7.18 Hexadecimal Number System---------------------------------------------------------- 214
7.19 IPv6 Addressing Notation [IPv6 Address Structure] -------------------------------- 214
7.20 IPv6 Prefixes ------------------------------------------------------------------------------ 216
7.21 IPv6 Subnets ----------------------------------------------------------------------------- 217
7.22 IPv6 Addressing Types ------------------------------------------------------------------ 218
7.23 Unicast IPv6 addresses ----------------------------------------------------------------- 219
7.24 Multicast IPv6 addresses --------------------------------------------------------------- 220
7.25 Anycast IPv6 addresses ----------------------------------------------------------------- 220
7.26 IPv6 Datagram Header Format -------------------------------------------------------- 220
Problems and Questions with Answers ----------------------------------------------------- 222

8. IP Routing --------------------------------------------------------------------------- 236


8.1 Introduction -------------------------------------------------------------------------------- 236
8.2 What are Routing Algorithms? ---------------------------------------------------------- 241
8.3 Classification of Routing Algorithms --------------------------------------------------- 241
8.4 Routing Algorithm Metrics --------------------------------------------------------------- 244
8.5 Flooding Routing Algorithm ------------------------------------------------------------- 245
8.6 Internet architecture ---------------------------------------------------------------------- 246
8.7 Routing protocols ------------------------------------------------------------------------- 247
8.8 Routing Information Protocol [RIP] ----------------------------------------------------- 248
8.9 Open Shortest Path First [OSPF] ------------------------------------------------------- 257
8.10 Border Gateway Protocol [BGP] -------------------------------------------------------- 273
Problems and Question with Answers ------------------------------------------------------ 284

9. TCP and UDP ----------------------------------------------------------------------- 290


9.1 Introduction -------------------------------------------------------------------------------- 290
9.2 TCP and UDP ------------------------------------------------------------------------------ 292
9.3 TCP/IP Terminology ---------------------------------------------------------------------- 292
9.4 Ports and Sockets ------------------------------------------------------------------------- 293
9.5 User Datagram Protocol [UDP] ---------------------------------------------------------- 296
9.6 Transmission Control Protocol [TCP] --------------------------------------------------- 302
9.7 Comparison of TCP and UDP ------------------------------------------------------------ 318
9.8 Why Some TCP/IP Applications Use UDP? -------------------------------------------- 319
Problems and Question with Answers ------------------------------------------------------ 320

10. TCP Error Control ----------------------------------------------------------------- 329


10.1 Introduction ------------------------------------------------------------------------------ 329
10.2 TCP Reliability and Acknowledgement ----------------------------------------------- 329
10.3 Round Trip Time and Timeout --------------------------------------------------------- 330
10.4 Duplicate Segments --------------------------------------------------------------------- 333
10.5 Out-of-Order Segments ----------------------------------------------------------------- 334
10.6 Lost or Missing Segments -------------------------------------------------------------- 334
10.7 Corrupted Segments -------------------------------------------------------------------- 335
10.8 ARQ Retransmission Techniques ----------------------------------------------------- 336
10.9 Selective Acknowledgments (SACK) --------------------------------------------------- 338
10.10 TCP Checksum Calculation ---------------------------------------------------------- 340
Problems and Question with Answers ------------------------------------------------------ 345

11. TCP Flow Control ------------------------------------------------------------------ 349


11.1 Introduction ------------------------------------------------------------------------------ 349
11.2 What is Flow Control? ------------------------------------------------------------------ 349
11.3 Flow Control and Error Control ------------------------------------------------------- 349
11.4 TCP and Flow Control ------------------------------------------------------------------- 350
11.5 Stop and Wait Flow Control ------------------------------------------------------------ 350
11.6 Positive Acknowledgment and Retransmission (PAR) ------------------------------ 352
11.7 Sliding Window Mechanism in Data Transmission -------------------------------- 352
11.8 Flow Control with Advertised Window ------------------------------------------------ 355
11.9 Segmentation and Nagling ------------------------------------------------------------- 358
Problems and Questions with Answers ----------------------------------------------------- 361

12. TCP Congestion Control----------------------------------------------------------- 364


12.1 Introduction ------------------------------------------------------------------------------ 364
12.2 What is Network Congestion? ---------------------------------------------------------- 364
12.3 Types of Congestion --------------------------------------------------------------------- 365
12.4 An Overview of TCP Flow Control ----------------------------------------------------- 365
12.5 Flow Control versus Congestion Control --------------------------------------------- 368
12.6 TCP Self-Clocking ------------------------------------------------------------------------ 369
12.7 Congestion Collapse Problem ---------------------------------------------------------- 369
12.8 Life of a TCP Connection Flow --------------------------------------------------------- 371
12.9 Congestion Avoidance versus Congestion Control ---------------------------------- 372
12.10 TCP Congestion Control Techniques ------------------------------------------------ 372
12.11 TCP Congestion Avoidance Techniques --------------------------------------------- 376
12.12 Packet Discard Techniques ----------------------------------------------------------- 379
12.13 Traffic Shaping Algorithms ----------------------------------------------------------- 380
Problems and Questions with Answers ----------------------------------------------------- 383

13. Session Layer ----------------------------------------------------------------------- 391


13.1 Introduction ------------------------------------------------------------------------------ 391
13.2 What does Session Layer mean? ------------------------------------------------------ 392
13.3 Session Layer Tasks --------------------------------------------------------------------- 392
13.4 Session Layer Services ------------------------------------------------------------------ 392
13.5 Remote Procedure Call (RPC) Protocol ------------------------------------------------ 394
13.6 Major Session Layer Protocols --------------------------------------------------------- 398

14. Presentation Layer Protocols ----------------------------------------------------- 401


14.1 Introduction ------------------------------------------------------------------------------ 401
14.2 What does Presentation Layer mean? ------------------------------------------------ 402
14.3 Presentation Layer Tasks --------------------------------------------------------------- 402
14.4 Data Conversion ------------------------------------------------------------------------- 402
14.5 Data Representation -------------------------------------------------------------------- 403
14.6 Data Compression ----------------------------------------------------------------------- 404
14.7 Data Encryption ------------------------------------------------------------------------- 407
Problems and Questions with Answers ----------------------------------------------------- 409

15. Network Security ------------------------------------------------------------------- 411


15.1 What is Network Security? ------------------------------------------------------------- 411
15.2 Relevant History of Instances ---------------------------------------------------------- 411
15.3 Why Do We Need Security? ------------------------------------------------------------ 412
15.4 What network security reports say? -------------------------------------------------- 412
15.5 History of Network Security ------------------------------------------------------------ 413
15.6 Four Pillars of Network Security ------------------------------------------------------ 414
15.5 Glossary of Network Security Terms -------------------------------------------------- 414
15.6 Network Security Components -------------------------------------------------------- 419
15.7 Types of Attacks ------------------------------------------------------------------------- 421
15.8 Discussion of known Security Attacks ----------------------------------------------- 423
15.9 Cryptography ----------------------------------------------------------------------------- 430
15.10 Types of Ciphers------------------------------------------------------------------------ 433
15.11 Encryption and Decryption ----------------------------------------------------------- 434
15.12 Hashing: Message Integrity ----------------------------------------------------------- 440
15.13 Digital Signatures ---------------------------------------------------------------------- 444
15.14 Kerberos Authentication System ---------------------------------------------------- 451
15.15 Firewalls --------------------------------------------------------------------------------- 462
Problems and Questions with Answers ----------------------------------------------------- 474

16. Application Layer Protocols ------------------------------------------------------ 479


16.1 Introduction ------------------------------------------------------------------------------ 479
16.2 Hypertext Transfer Protocol [HTTP] --------------------------------------------------- 481
16.3 Simple Mail Transfer Protocol [SNMP] ------------------------------------------------ 483
16.4 File Transfer Protocol [FTP] ------------------------------------------------------------ 485
16.5 Domain Name Server [DNS] ------------------------------------------------------------ 488
16.6 Trivial File Transfer Protocol [TFTP] -------------------------------------------------- 493
16.7 Dynamic Host Configuration Protocol [DHCP] -------------------------------------- 494
Problems and Questions with Answers ----------------------------------------------------- 500

17. Miscellaneous Concepts ---------------------------------------------------------- 506


17.1 How traceroute (or tracert) works? ---------------------------------------------------- 506
17.2 How ping works?------------------------------------------------------------------------- 507
17.3 What is QoS? ----------------------------------------------------------------------------- 507
17.4 Wireless Networking --------------------------------------------------------------------- 508
Problems and Questions with Answers ----------------------------------------------------- 509
References ------------------------------------------------------------------------------- 510
Elements of Computer Networking Organization of Chapters

Chapter

Organization of
Chapters 1
1.1 Why Computer Networks are needed?
Computer networking is one of the most exciting and important technical fields of our
time. Information and communication are two of the most important strategic issues
for the success of every enterprise.
is the mother of invention, and whenever we really need something, humans
will find a way to get it. Let us imagine we do not have computer networking in our
lives now. People can communicate only with each other through phone (or fax). For
example, sharing a printer between many computers will be difficult as printer cable
must be attached to the computer which requires printing. Removable media such as
diskettes or thumb drives must be used in order to share files or to transfer files from
one machine to another machine.
Just imagine you need to transfer a file to one thousand computers. To
these problems, computer networks are . Computer networks allow the user
to access and either of the same organization or
from other enterprises or public sources. Computer networks provide faster
communication than other facilities. Many applications or software‘s are also
developed for enhancing communication. Some examples are Email, Instance
Messages, and internet phone.

1.2 What Is this Book About?


A unique feature of this book that is missing in most of the available books on
computer networking is to offer a balance between theoretical, practical concepts,
problems and interview questions.
+ +
This text provides academic researchers, graduate students in computer science,
computer engineering, and electrical engineering, as well as practitioners in industry
and research engineers with an understanding of the specific design challenges and
solutions for computer networks.
 Covers architecture and communications protocols in detail with practical
implementation examples and case studies.
1.1 Why Computer Networks are needed? 13
Elements of Computer Networking Organization of Chapters

 Provides an understanding of mutual relationships and dependencies between


different protocols and architectural decisions.
 Offers an in-depth investigation of relevant protocol mechanisms.
The book offers a large number of questions to practice each exam objective and will
help you assess your knowledge before you write the real exam. The detailed answers
to every question will help reinforce your knowledge about different issues involving
the design and configuration of networks.

1.3 Should I Take this Book?


This book is for a first course on computer networking. Although this book is more
precise and analytical than many other introductory computer networking text books,
it rarely uses any mathematical concepts that are not taught in high school.
I have made an effort to avoid using any advanced calculus, probability, or stochastic
process concepts. The book is therefore appropriate for undergraduate courses,
preparation and for first-year graduate courses.
This book is for students who to learn networking concepts and also for those
who are preparing for competitive exams like GATE.

1.4 How to Use this book?


I would like to recommend at least two readings of this book. Upon first reading, you
will start to being used in different networking enviroments.
In the second reading, you'll begin to see how these protocols can help you in your
own network designs, and may also start to see new protocols not listed in the book.
One of the most valuable contributions of this book is that it is designed not merely to
help you identify protocols, but to give you a sense of which protocols are appropriate
in which contexts.
In the subsequent readings, you can directly go to any chapter and refer.

1.6 Organization of Chapters


The chapter of this text book presents an overview of computer networking.
This chapter introduces many key concepts and terminology and sets the stage for the
rest of the book.
After completion of chapter, I recommend reading remaining chapters in
sequence. Each of these chapters leverages material from the preceding chapters.
There are no major inter-dependencies among the chapters, so they can be read in any
order.
The chapters are arranged in the following way:
3. : This chapter gives an introduction and necessary
concepts of Open Systems Interconnection (OSI) and Transmission Control
Protocol/Internet Protocol (TCP/IP) models which are used in all the remaining
chapters. There are seven layers in the OSI Model, and four in the TCP/IP
model. This is because TCP/IP assumes that applications will take care of
everything beyond the Transport layer. It also compares both these models.
4. : This chapter provides detailed overview of networking
devices such as hubs, bridges, switches, routers, gateways, firewalls etc...

1.3 Should I Take this Book? 14


Elements of Computer Networking Organization of Chapters

Hubs, switches, routers, and access points are to connect computers


together on a network, but each of them has different capabilities. Each of
these devices operates at different layers in OSI and TCP/IP models.
5. : Local Area Network (LAN) in a data communications network
is a technology used for connecting terminals, computers and printers within a
building or other geographically limited areas. This chapter discusses medium
access control techniques, random access techniques, static channelization
techniques, LocalTalk, Ethernet, Token Ring and ends with error detection
techniques at data link layer.
6. : This chapter focuses on protocols which does the translation of
IP addresses to MAC addresses and vice versa. ARP translates IP addresses
into hardware addresses (MAC) and RARP translates machines addresses
(MAC) into IP addresses.
7. : This chapter discusses about basics of IPv4 and IPv6 addressing.
It provides - analysis of classes of IP addressing, subnet masks,
subnetting, supernetting, Classless Inter-Domain Routing [CIDR], Variable
Length Subnet Mask [VLSM], and message formats of both IPv4 and IPv6.
8. This chapter presents different network routing protocols. It starts
with overview of network routing and their classification. The protocols which
were discussed in this chapter includes Flooding Routing Algorithm, Routing
Information Protocol, Open Shortest Path First [OSPF], and Border Gateway
Protocol.
9. : In the earlier chapters, we discuss about the delivery of data in
the following two ways:
1. - - : At the - level, delivery of frames take
place between two nodes connected by a point-to-point link or a LAN,
by using the data-link layers address, say MAC address.
2. - - : At the level, delivery of datagrams can
take place between two hosts by using IP address.
From user‘s point of view, the TCP/IP-based Internet can be considered as a
set of application programs that use the Internet to carry out useful
communication tasks. Most popular internet applications include Electronic
mail (E-mail), File transfer, and Remote login. IP routing allows transfer of IP
datagrams among a number of stations or hosts, where the datagram is
routed through the Internet based on the IP address of the destination. But, in
this case, several ( ) running simultaneously on a
source host has to communicate with the corresponding processes running on
a remote destination host through the Internet. This requires an additional
mechanism called - - delivery, which is implemented with the
help of a - protocol.
The transport level protocol will require an additional address, called
number, to select a particular process among multiple processes running on
the destination host. So, there is a requirement of the following third type of
delivery system.
3. Process-to-process delivery: At the transport level, communication can
take place between processes or application programs by using port
addresses
The additional mechanism needed to facilitate multiple application programs
in different stations to communicate with each other simultaneously can be
provided by a transport level protocol such as UDP or TCP, which is the topic
of this chapter.

1.6 Organization of Chapters 15


Elements of Computer Networking Organization of Chapters

10. TCP is a reliable transport layer protocol. It allows the


processes to deliver a stream of data (bytes) in order, without error, and
without any part lost or duplicated. It provides mechanisms for detecting errors
in:
 Duplicate segments
 Out-of-Order segments
 Lost or Missing segments
 Corrupted segments
Also, TCP provides a mechanism for error correction. In TCP, error detection and
correction in TCP is achieved by:
1. Checksum
2. Acknowledgement
3. Timeout and retransmission
In this chapter, we discuss several error control algorithms such as Stop and
Wait ARQ, Go Back N ARQ, Selective Reject ARQ etc...
11. : TCP provides a way for the receiver to control the amount of
data sent by the sender. Nodes that send and receive TCP data segments can
operate at different data rates because of differences in CPU and network
bandwidth. As a result, it is possible for sender to send data at a faster rate
than the receiver can handle.
If the receiver is slower than the sender, bytes will have to be dropped from the
receiver‘s sliding window buffer. TCP deals with this issue using what is known
as .
As an example, consider a conversation with your friend. One of you listens
while the other speaks. You might nod your head as you listen or you might
interrupting the flow with a "Whoa, slow down, you are talking too fast!" This is
actually flow control. Some of us are better at it than others, but we all do it to
some degree. You nod to indicate you understood and are ready for the next
statement of information or you tell your friend when they are going too fast.
That's control.
This chapter focuses on such controlling algorithms for computer networks
( mechanism, and ).
12. : In today‘s world, the
(TCP) carries huge Internet traffic, so performance of the Internet depends to a
great extent on how well TCP works. TCP provides a reliable transport service
between two processes running on source and destination nodes.
In this chapter, we discuss another important component of TCP;
mechanism. The important strategy of TCP is to send packets into the
network and then to react to that occur. TCP congestion
control was introduced into the Internet in the late 1980s by ;
roughly eight years after the TCP/IP protocol stack had become operational.
To address these issues, multiple mechanisms were implemented in TCP to
govern the rate with which the data can be sent in both directions (
and ): , , and
. These are the subject of this chapter.
13. : The session layer resides above the transport layer, and provides
value added services to the underlying transport layer services. The session
layer (along with the presentation layer) adds services to the transport layer
that are likely to be of use to applications, so that each application doesn't
have to provide its own implementation. Layer 5 of the OSI reference model is

1.6 Organization of Chapters 16


Elements of Computer Networking Organization of Chapters

session layer. It does not add many communications features/functionality,


and is thus termed a very thin layer. On many systems, the Layer 5 features
are disabled, but you should nonetheless know what failures can be prevented
by a session layer.
The session layer provides the following services:
I. Dialog management
II. Synchronization
III. Activity management
IV. Exception handling
This chapter ends with discussion on major session layer protocols such as
AppleTalk Data Stream Protocol (ADSP), AppleTalk Session Protocol (ASP),
Network Basic Input Output (NetBIOS), Password Authentication Protocol
(PAP), Remote Procedure Call Protocol (RPC), and Secure Shell (SSH) Protocol
14. : The presentation layer is the sixth layer of the OSI
model. It responds to service requests from the application layer and issues
service request to the session layer. The presentation layer performs certain
functions that are requested sufficiently often to finding a general solution for
users, rather than letting each user solve the problems. In particular, unlike all
the lower layers, which are just interested in moving bits reliably from here to
there, the presentation layer is concerned with the syntax and semantics of the
information transmitted.
In this chapter we discuss about encryption and decryption concepts. Also, we
look at an example encryption algorithm: coding algorithm.
15. : Network security refers to a set of activities and policies used
by a network administrator to prevent and monitor unauthorized access of a
computer network. These activities include protecting the usability, reliability,
integrity, and safety of computer network and data.
This chapter starts with a history of network security instances followed by
glossary of security terms. Then, we discuss about network security
components such as:
 Authentication
 Authorization
 Data Integrity
 Confidentiality
 Availability
 Non-Repudiation
It also focuses on different types of network security attacks. This followed with
discussion on cipher algorithms, in detailed analysis of encryption and
decryption algorithms, message integrity, digital signatures, and Kerberos
authentication system.
16. : The application layer of the OSI model provides the
first step of getting data onto the network. Application software is the software
programs used by people to communicate over the network. Examples of
application software are HTTP, FTP, email, and others. Although the TCP/IP
protocol suite was developed prior to the definition of the OSI model, the
functionality of the TCP/IP application layer protocols fits into the framework
of the top three layers of the OSI model: application, presentation, and session.
In the OSI and TCP/IP models, information is passed from one layer to the
next, starting at the application layer on the transmitting host and proceeding
down the hierarchy to the physical layer, then passing over the

1.6 Organization of Chapters 17


Elements of Computer Networking Organization of Chapters

communications channel (physical link) to the destination host, where the


information proceeds back up the hierarchy, ending at the application layer.
The application layer is built on the transport layer and provides network
services to user applications. It provides the interface between the applications
we use to communicate and the underlying network over which our messages
are transmitted. Application layer protocols are used to exchange data between
programs running on the source and destination hosts.
Application Layer Underlying
Application
protocol Transport protocol
E-Mail SMTP TCP
Remote terminal access Telnet TCP
Web HTTP TCP
File transfer FTP TCP
HTTP (example:
Streaming multimedia TCP or UDP
YouTube)
Internet telephony RTP (example: Skype) Typically UDP
Internet chat IRC (Internet Relay Chat) TCP
DHCP (Dynamic Host
Host Configurations UDP
Configuration Protocol)

The application layer is built on the transport layer and provides network
services to user applications. It provides the interface between the applications
we use to communicate and the underlying network over which our messages
are transmitted. Application layer protocols are used to exchange data between
programs running on the source and destination hosts. In this chapter, we
discuss all the fore mentioned protocols in detail.
17. : This chapter covers other important topics of computer
networking (such as [QoS], operation,
basics etc.) even though they are out of scope of this book.
At the end of each chapter, a set of problems/questions are provided for you to
improve/check your understanding of the concepts. Wherever applicable, protocols
are compared with other similar protocols.
The examples in this book are kept simple for easy understanding. The objective is to
enhance the explanation of each concept with examples for a better understanding.

1.6 Organization of Chapters 18


Elements of Computer Networking Introduction

Chapter

Introduction 2
2.1 What is a Computer Network?
A computer network is a group of computers that are connected together and
communicate with one another. These computers can be connected by the telephone
lines, co-axial cable, satellite links or some other communication techniques.

2.2 Basic Elements of Computer Networks


More and more, it is networks that connect us. People communicate online from
everywhere. We focus on these aspects of the information network:
 Devices that make up the network (work stations, laptops, file servers, web
servers, network printers, VoIP phones, security cameras, PDAs, etc..)
 Media that connect the devices
 Messages that are carried over the network
 Rules (protocols) and processes that control network communications
 Tools and commands for constructing and maintaining networks

Medium Network
Devices Message

Communication begins with a message that must be sent from one device to another.
People exchange ideas using many different communication methods. All of these
methods have elements in common.
 The first of these elements is the . Message sources are
people, or electronic devices, that need to send a message to other
individuals/devices.

2.1 What is a Computer Network? 19


Elements of Computer Networking Introduction

 The second element of communication is the , of the


message. The destination receives the message and interprets it.
 A third element, called a , consists of the media that provides the
pathway over which the message can travel from source to destination.

Important Question
From the choices below, select the best definition of a network.
A. A collection of printers with no media.
B. Devices interconnected by some common communication channel.
C. A device that sends communication to the Internet.
D. A shared folder stored on a server.

Answer: B.

2.3 What is an Internet?


Connecting two or more networks together is called an . In other words, an
Internet is a network of networks.

2.4 Fundamentals of Data and Signals


and are two of the basic elements of any computer network. A signal is
the transmission of data. Both data and signals can be in either analog or digital form,
which gives us possible combinations:
1. Transmitting digital data using digital signals
2. Transmitting digital data using analog signals
3. Transmitting analog data using digital signals
4. Transmitting analog data using analog signals

2.4.1 Analog and Digital Data


Information that is stored within computer systems and transferred over a computer
network can be divided into two categories: data and signals. Data are entities that
convey meaning within a computer or computer system.
Data refers to information that conveys some meaning based on some mutually agreed
up rules or conventions between a sender and a receiver and today it comes in a
variety of forms such as text, graphics, audio, video and animation.

2.3 What is an Internet? 20


Elements of Computer Networking Introduction

Data can be of two types:


 data
 data
Analog data take values on some interval. Examples of analog data are
voice and video. The data that are collected from the real world with the help of
transducers are continuous-valued or analog in nature.
On the contrary, digital data take values. Text or character strings can be
considered as examples of digital data. Characters are represented by suitable codes,
e.g. ASCII code, where each character is represented by a 7-bit code.

2.4.2 Analog and Digital Signals


If we want to transfer this data from one point to another, either by using a physical
wire or by using radio waves, the data has to be converted into a signal. Signals are
the electric or electromagnetic encoding of data and are used to transmit data.
Signals (electric signals) which run through conducting wires are divided into the
following two categories. Also, a system used when transmitting signals is called a
.

2.4.3 Analog Signals


Analog refers to physical quantities that vary continuously instead of discretely.
Physical phenomena typically involve analog signals. Examples include temperature,
speed, position, pressure, voltage, altitude, etc.
To say a signal is analog simply means that the signal is continuous in time and
amplitude. Take, for example, your standard mercury glass thermometer. This device
is analog because the temperature reading is updated constantly and changes at any
time interval.
A new value of temperature can be obtained whether you look at the thermometer one
second later, half a second later, or a millionth of a second later, assuming
temperature can change that fast.
Wave Length

Amplitude

Time
The readings from the thermometer are also continuous in amplitude. This means that
assuming your eyes are sensitive enough to read the mercury level, readings of 37,
37.4, or 37.440183432°C are possible. In actuality, most cardiac signals of interest
are analog by nature. For example, voltages recorded on the body surface and cardiac
motion is continuous functions in time and amplitude.
In this, signals 0 and 1 are transmitted as electric waves. A system of transmitting
analog signals is called system.

2.4 Fundamentals of Data and Signals 21


Elements of Computer Networking Introduction

2.4.4 Digital Signals


Digital signals consist of patterns of bits of information. These patterns can be
generated in many ways, each producing a specific code. Modern digital computers
store and process all kinds of information as binary patterns. All the pictures, text,
sound and video stored in this computer are held and manipulated as patterns of
binary values.

Time 
Basically, code 1 is transmitted when applying a specific voltage and code 0 is
transmitted in the case of 0 V. A system of transmitting digital signals is called
system.

2.4.5 Converting Data into Signals


Like data, signals can be analog or digital. Typically, digital signals convey digital data,
and analog signals convey analog data. However, we can use analog signals to convey
digital data and digital signals to convey analog data. The choice of using either analog
or digital signals often depends on the transmission equipment that is used and the
environment in which the signals must travel.

2.4.6 Data Codes


One of the most common forms of data transmitted between a sender and a receiver is
textual data. This textual information is transmitted as a sequence of characters. To
distinguish one character from another, each character is represented by a unique
binary pattern of 1s and 0s.
The set of all textual characters or symbols and their corresponding binary patterns is
called a . Three important data codes are EBCDIC, ASCII, and Unicode.

2.4.7 Frequency
Frequency describes the number of waves that pass a fixed place in a given amount of
time. So if the time it takes for a wave to pass is 1/2 second, the frequency is 2 per
second. If it takes 1/100 of an hour, the frequency is 100 per hour.
High frequency waves Low frequency waves

Usually frequency is measured in the unit, named in honor of the -century


German physicist Heinrich Rudolf Hertz. The hertz measurement, abbreviated Hz, is
the number of waves that pass by per second.

2.4 Fundamentals of Data and Signals 22


Elements of Computer Networking Introduction

2.4.8 Bit Rate


Two new terms, bit interval (instead of period) and bit rate (instead of frequency) are
used to describe digital signals. The bit interval is the time required to send one single
bit. The bit rate is the number of bit interval per second. This mean that the bit rate is
the number of bits send in one second, usually expressed in bits per second ( ) as
shown in figure.
10 bits per second= 10 bps

1 0 1 1 1 0 0 0 1 0

Time 
The speed of the data is expressed in bits per second (bits/s, bits per second or bps).
The data rate is a function of the duration of the bit or bit time:

Rate is also called C. If the bit time is 10 , the data rate equals:
R= = bps or 100 million bits/sec

This is usually expressed as 100 Mbits/s.

2.4.9 Baud Rate


The baud rate of a data communications system is the of per
transferred. A symbol may have more than two states, so it may represent more than
one binary bit (a binary bit always represents exactly two states). Therefore the baud
rate may not equal the bit rate, especially in the case of recent modems, which can
have (for example) up to nine bits per symbol.
Baud rate is a technical term associated with modems, digital televisions, and other
technical devices. It is also called as and . The term
roughly means the speed that data is transmitted, and it is a derived value based on
the number of symbols transmitted per second.
The units for this rate are either or . Baud can be
determined by using the following formula:

This can be used to translate baud into a bit rate using the following formula:

Baud can be abbreviated using the shortened form when being used for technical
purposes.
The significance of these formulas is that higher baud rates equate to greater amounts
of data transmission, as long as the bits per symbol are the same. A system using
4800 baud modems that has 4 bits per symbol will send less data than a system using

2.4 Fundamentals of Data and Signals 23


Elements of Computer Networking Introduction

9600 baud modems that also has 4 bits per symbol. So, all other things being equal, a
higher rate is generally preferred.

2.4.10 Attenuation
(also called ) is a general term that refers to any reduction in the
strength of a signal. Attenuation occurs with any type of signal, whether digital or
analog. It usually occurs while transmitting analog or digital signals over long
distances.

2.4.11 Signal to Noise Ratio


measures the level of the audio signal compared to the level of
noise present in the signal. Signal to noise ratio specifications are common in many
components, including amplifiers, phonograph players, CD/DVD players, tape decks
and others. Noise is described as hiss, as in tape deck, or simply general electronic
background noise found in all components.

How is it expressed?
As the name suggests, signal to noise ratio is a comparison or ratio of the amount of
signal to the amount of noise and is expressed in decibels. Signal to noise ratio is
abbreviated and higher numbers mean a better specification. A component
with a signal to noise ratio of 100 dB means that the level of the audio signal is 100
dB higher than the level of the noise and is a better specification than a component
with a S/N ratio of 90 dB.
Signal-to-noise ratio is defined as the power ratio between a signal and noise. It can be
derived from the formula

where is the signal mean or expected value


the standard deviation of the noise

2.5 Network Topologies


In a computer network, the way in which the devices are linked is called .
Topology is the physical layout of computers, cables, and other components on a
network. Following are few types of topologies which we will look at:
• Bus topology
• Star topology
• Mesh topology
• Ring topology

2.5.1 Bus Topology


A bus topology uses one cable (also called a , a , and a ) to
connect multiple systems. Most of the time, T-connectors (because they are shaped
like the letter T) are used to connect to the cabled segment. Generally, coaxial cable is
used in bus topologies.
Another key component of a bus topology is the need for . To prevent
packets from bouncing up and down the cable, devices called must be
attached to both ends of the cable. A terminator absorbs an electronic signal and

2.5 Network Topologies 24


Elements of Computer Networking Introduction

clears the cable so that other computers can send packets on the network. If there is
no termination, the entire network fails.

Node

Link

Only one computer at a time can transmit a packet on a bus topology. Systems in a
bus topology listen to all traffic on the network but accept only the packets that are
addressed to them. Broadcast packets are an exception because all computers on the
network accept them. When a computer sends out a packet, it travels in both
directions from the computer. This means that the network is occupied until the
destination computer accepts the packet.
The number of computers on a bus topology network has a major influence on the
performance of the network. A bus is a passive topology. The computers on a bus
topology only listen or send data. They do not take data and send it on or regenerate
it. So if one computer on the network fails, the network is still up.

Advantages
One advantage of a bus topology is . The bus topology uses less cable than other
topologies. Another advantage is the ease of . With the bus topology, we
simply connect the system to the cable segment. We need only the amount of cable to
connect the workstations we have. The ease of working with a bus topology and the
minimum amount of cable make this the most economical choice for a network
topology. If a computer fails, the network stays up.

Disadvantages
The main disadvantage of the bus topology is the difficulty of . When
the network goes down, usually it is from a break in the cable segment. With a large
network this can be tough to isolate. A cable break between computers on a bus
topology would take the entire network down. Another disadvantage of a bus topology
is that the the traffic, the the network.
Scalability is an important consideration with the dynamic world of networking. Being
able to make changes easily within the size and layout of your network can be
important in future productivity or downtime. The bus topology is not very scalable.

2.5.2 Star Topology


In star topology, all systems are connected through one central hub or switch, as
shown in figure. This is a very common network scenario.

Link

Hub
Node

2.5 Network Topologies 25


Elements of Computer Networking Introduction

Advantages
One advantage of a start topology is the centralization of cabling. With a hub, if one
link fails, the remaining systems are not affected like they are with other topologies,
which we will look at in this chapter.
Centralizing network components can make an administrator‘s life much easier in the
long run. Centralized management and monitoring of network traffic can be vital to
network success. With this type of configuration, it is also easy to add or change
configurations with all the connections coming to a central point.

Disadvantages
On the flip side to this is the fact that if the hub fails, the entire network, or a good
portion of the network, comes down. This is, of course, an easier fix than trying to find
a break in a cable in a bus topology.
Another disadvantage of a star topology is cost: to connect each system to a
centralized hub, we have to use much more cable than we do in a bus topology.

2.5.3 Ring Topology


In ring topology each system is attached nearby systems on a point to point basis so
that the entire system is in the form of a ring. Signals travel in one direction on a ring
topology.

Link

Node

As shown in figure, the ring topology is a circle that has no start and no end.
Terminators are not necessary in a ring topology. Signals travel in one direction on a
ring while they are passed from one system to the next. Each system checks the
packet for its destination and passes it on as a repeater would. If one of the systems
fails, the entire ring network goes down.

Advantages
The nice thing about a ring topology is that each computer has equal access to
communicate on the network. (With bus and star topologies, only one workstation can
communicate on the network at a time.) The ring topology provides good performance
for each system. This means that busier systems that send out a lot of information do
not inhibit other systems from communicating. Another advantage of the ring topology
is that signal degeneration is low.

Disadvantages
The biggest problem with a ring topology is that if one system fails or the cable link is
broken the entire network could go down. With newer technology this isn‘t always the
case. The concept of a ring topology is that the ring isn‘t broken and the signal hops
from system to system, connection to connection.

2.5 Network Topologies 26


Elements of Computer Networking Introduction

Another disadvantage is that if we make a cabling change to the network or a system


change, such as a move, the brief disconnection can interrupt or bring down the entire
network.

2.5.4 Mesh Topology

Link

Node

A mesh topology is not very common in computer networking. The mesh topology is
more commonly seen with something like the national phone network. With the mesh
topology, every system has a connection to every other component of the network.
Systems in a mesh topology are all connected to every other component of the
network. If we have 4 systems, we must have six cables— three coming from each
system to the other systems.
Two nodes are connected by dedicated point-point links between them. So the total
number of links to connect nodes would be

[Proportional to ]

Advantages
The biggest advantage of a mesh topology is fault tolerance. If there is a break in a
cable segment, traffic can be rerouted. This fault tolerance means that the network
going down due to a cable fault is almost impossible.

Disadvantages
A mesh topology is very hard to administer and manage because of the numerous
connections. Another disadvantage is cost. With a large network, the amount of cable
needed to connect and the interfaces on the workstations would be very expensive.

2.5.5 Tree Topology

Repeater-1

Repeater-2 Repeater-3

This topology can be considered as an extension to bus topology. It is commonly used


in cascading equipment‘s. For example, we have a repeater box with 8-port, as far as

2.5 Network Topologies 27


Elements of Computer Networking Introduction

we have eight stations, this can be used in a normal fashion. But if we need to add
more stations then we can connect two or more repeaters in a hierarchical format (tree
format) and can add more stations.
In the figure Repeater-1 refers to repeater one and so on and each repeater is
considered to have 8-ports.

2.5.6 Unconstrained Topology

All the topologies discussed so far are symmetric and constrained by well-defined
interconnection pattern. However, sometimes no definite pattern is followed and nodes
are interconnected in an arbitrary manner using point-to-point links.
Unconstrained topology allows a lot of configuration flexibility but suffers from the
complex routing problem. Complex routing involves unwanted overhead and delay.

2.6 Network Operating Systems


Network operating system NOS is an operating system that includes special functions
for connecting computers and devices into a local area network (LAN).
Few standalone operating systems, such as Microsoft Windows NT, can also act as
network operating systems. Some of the most well-known network operating systems
include Microsoft Windows Server 2003, Microsoft Windows Server 2008, Linux and
Mac OS X.

2.6.1 Peer-to-peer

Peer to Peer
Network

are more commonly implemented where less than ten


computers are involved and where strict security is not necessary. All computers have
the same status, hence the term , and they communicate with each other on an
equal footing. Files, such as word processing or spreadsheet documents, can be
shared across the network and all the computers on the network can share devices,
such as printers or scanners, which are connected to any one computer.

2.6 Network Operating Systems 28


Elements of Computer Networking Introduction

2.6.2 Client/server networks

File Server

Other
equipment

are more suitable for larger networks. A central computer, or


, acts as the storage location for files and applications shared on the network.
Usually the server is a higher than average performance computer.
The server also controls the network access of the other computers which are referred
to as the 'client' computers. Typically, teachers and students in a school will use the
client computers for their work and only the network administrator (usually a
designated staff member) will have access rights to the server [figure on right side].

2.7 Transmission Medium


Communication across a network is carried on a . The medium provides the
channel through which the data travels from source to destination. There are several
types of media, and the selection of the right media depends on many factors such as
cost of transmission media, efficiency of data transmission and the transfer rate.
Different types of network media have different features and benefits.

2.7.1 Two wire open line


This is the simplest of all the transmission media. It consists of a simple pair of
metallic wires made of copper or sometimes aluminums of between 0.4 and 1mm
diameter, and each wire is insulated from the other. There are variations to this
simplest form with several pairs of wire covered in a single protected cable called a
or molded in the form of a .

Example: Electric power transmission


This line consists of two wires that are generally spaced from 2 to 6 inches apart by
insulating spacers. This type of line is most often used for power lines.
This type of media is used for communication within a short distance, up to about 50
Meters, and can achieve a transfer rate of up to 19200 bits per second.

2.7 Transmission Medium 29


Elements of Computer Networking Introduction

2.7.2 Twisted Pair cable


As the name implies, the line consists of two insulated wires twisted together to form a
flexible line without the use of spacers. It is not used for transmitting high frequency
because of the high dielectric losses that occur in the rubber insulation. When the line
is wet, the losses are high.
Twisted Pair cable is used for communication up a distance of 1 kilometer and can
achieve a transfer rate of up to 1-2 Mbps. But as the speed increased the maximum
transmission distances reduced, and may require repeaters.

Twisted pair cables are widely used in telephone network and are increasingly being
used for data transmission.

2.7.3 Co-axial Cable


Coaxial cable is the kind of copper cable used by cable TV operators between the
antenna and user homes. It is called because it includes one physical channel
that carries the signal surrounded (after a layer of insulation) by another concentric
physical channel, and both running along the same axis. The outer channel serves as
a ground.

Larger the cable diameter, lower is the transmission loss, and higher transfer speeds
can be achieved. A co-axial cable can be used over a distance of about 1 KM and can
achieve a transfer rate of up to 100 Mbps.

2.7.4 Fiber Optic Cables


Fiber-based media use light transmissions instead of electronic pulses. Fiber is well
suited for the transfer of data, video, and voice transmissions. Also, fiber-optic is the
most secure of all cable media. Anyone trying to access data signals on a fiber-optic
cable must physically tap into the media and this is a difficult task.

On the flip side, difficult installation and maintenance procedures of fiber require
skilled technicians. Also, the cost of a fiber-based solution is more. Another drawback
of implementing a fiber solution involves cost for fitting to existing network

2.7 Transmission Medium 30


Elements of Computer Networking Introduction

equipment/hardware. Fiber is incompatible with most electronic network equipment.


That means, we have to purchase fiber-compatible network hardware.
Fiber-optic cable is made-up of a core glass fiber surrounded by cladding. An
insulated covering then surrounds both of these within an outer protective sheath.
Since light waves give a much high bandwidth than electrical signals, this leads to
high data transfer rate of about 1000 Mbps. This can be used for long and medium
distance transmission links.

2.7.5 Radio, Microwaves and Satellite Channels


Radio, Microwaves and Satellite Channels use electromagnetic propagation in open
space. The advantage of these channels depends on their capability to cove large
geographical areas and being inexpensive than the wired installation.
The demarcation between radio, Microwave and satellite channels depends on the
frequencies in which they operate. Frequencies below 1000 MHZ are radio frequencies
and higher are the Microwave frequencies.
The radio frequency transmission may be below 30 MHZ or above 30 MHZ and thus
the techniques of transmission are different. Above 30MHz propagation is on
paths. Antennas are placed in between the line-of- sight paths to increase
the distance.
Radio frequencies are prone to attenuation and, thus, they require repeaters along the
path to enhance the signal. Radio frequencies can achieve data transfer rate of 100
Kbps to 400 Kbps.
Microwave links use transmission with repeaters placed every 100-
200 KM. Microwave links can achieve data transfer rates of about 1000 Mbps.
Satellite links use microwave frequencies in the order of 4-12 GHz with the satellite as
a repeater. They can achieve data transfer rates of about 1000 Mbps.

2.8 Types of Networks


2.8.1 Local Area Network [LAN]
A local area network (LAN) is a network confined to one location, one building or a
group of buildings. LAN's are composed of various components like desktops, printers,
servers and other storage devices. All hosts on a LAN have addresses that fall in a
single continuous and contiguous range.
LANs usually do not contain routers. LANs have higher communication and data
transfer rates. A LAN is usually administered by a single organization.

2.8.2 Metropolitan Area Network (MAN)


A metropolitan area network (MAN) is a large computer network that usually spans a
city or a large campus. Usually a MAN interconnects a number of local area networks
(LANs) using a high-capacity backbone technology (fibre-optical links). It is designed to
extend over an entire city. That means it can be a single network (for example, cable
television network) or connecting a number of LANs into a larger network.
A MAN may be fully owned and operated by a private company or be a service provided
by a public company.

2.8 Types of Networks 31


Elements of Computer Networking Introduction

Public City Network

2.8.3 Wide Area Network [WAN]


A wide area network (WAN) provides long-distance transmission of data, voice, image
and video information over large geographical areas that may comprise a country, or
even the whole world. WANs may utilize public, leased, or private communication
devices, usually in combinations, therefore span an unlimited number of miles.
A WAN that is wholly owned and used by a single company is often referred to as an
enterprise network. Maintaining WAN is difficult because of its wider geographical
coverage and higher maintenance costs. Internet is the best example of a WAN. WANs
have a lower data transfer rate as compared to LANs.

2.8 Types of Networks 32


Elements of Computer Networking Introduction

2.8.4 Personal Area Network


A personal area network (PAN) is a computer network organized around an individual
person. PANs usually involve a computer, a cell phone and/or a handheld computing
device such as a PDA.
We can use these networks to transfer files including email and calendar
appointments, digital photos and music. Personal area networks can be constructed
with cables [for example, USB] or be wireless [for example, Bluetooth].
Personal area networks generally cover a range of less than 10. PANs can be viewed as
a special type LAN that supports one person instead of a group.

Projector

File and Print Server


Mobile

Camera
Scanner
Printer

2.8.5 LAN vs. WAN


LAN WAN
WAN (Wide Area Network) is a
LAN (Local Area Network) is a computer network that covers a
computer network covering a broad area (e.g., any network
Definition small geographic area, like a whose communications links
home, office, schools, or group cross metropolitan, regional, or
of buildings. national boundaries over a long
distance
Because it covers a relatively Maintaining WAN is difficult
Maintenance small geographical area, LAN is because of its wider geographical
costs easier to maintain at relatively coverage and higher maintenance
low costs. costs.
LANs tend to have fewer
WANs tend to be fewer faults
problems associated with
Fault tolerant as it consists of a large
them, as there are a smaller
Tolerance: number of systems there is a
number of systems to deal
lower amount of fault tolerance.
with.
Network in an organization can Internet is the best example of a
Example
be a LAN WAN
LANs will have a small
WANs generally spread across
Geographical geographical range and do not
boundaries and need leased
spread need any leased
telecommunication lines
telecommunication lines
If there is a need to set-up a In this case since networks in
Set-up costs
couple of extra devices on the remote areas have to be

2.8 Types of Networks 33


Elements of Computer Networking Introduction

network, it is not very connected hence the set-up costs


expensive to do that are higher. However WANs using
public networks can be setup
very cheaply, just software (VPN
etc.)
WANs (like the Internet) are not
Typically owned, controlled, owned by any one organization
Ownership and managed by a single but rather exist under collective
person or organization or distributed ownership and
management over long +distances
Layers 3 devices Routers, Multi-
Layer 2 devices like switches,
layer Switches and Technology
Components bridges. layer1 devices like
specific devices like ATM or
hubs , repeaters
Frame-relay Switches etc.
Data transfer LANs have a high data transfer WANs have a lower data transfer
rates rate rate as compared to LANs
Tend to use certain WANs tend to use technology like
connectivity technologies, MPLS, ATM, Frame Relay and
Technology
primarily Ethernet and Token X.25 for connectivity over the
Ring longer distances
Computers connected to a WAN
One LAN can be connected to are often connected through
other LANs over any distance public networks, such as the
Connection
via telephone lines and radio telephone system. They can also
waves be connected through leased
lines or satellites
Speed High speed(1000mbps) Less speed(150mbps)

2.8.6 Wireless Networks


A wireless network is a computer network that uses a wireless network connection
such as Wi-Fi. In wireless networks, can have the following types:
 Wireless PAN (WPAN): interconnect devices within a relatively small area that
is generally within a person's reach.
 Wireless LAN (WLAN): interconnects two or more devices over a short distance
using a wireless distribution method. IEEE 802.11 standard describes about
WLAN.
 Wireless MAN (WMAN): connects multiple wireless LANs. IEEE 802.16
standard describes about WMAN.
 Wireless WAN (WWAN): covers large areas, such as between neighboring towns
and cities, or city and suburb. The wireless connections between access points
are usually point to point microwave links using parabolic dishes, instead of
omnidirectional antennas used with smaller networks.

2.9 Connection-oriented and Connectionless services


There are two different techniques for transferring data in computer networks. Both
have advantages and disadvantages. They are the connection-oriented method and the
connectionless method:
2.9 Connection-oriented and Connectionless services 34
Elements of Computer Networking Introduction

2.9.1 Connection-oriented service


This requires a session connection be established before any data can be sent. This
method is often called a reliable network service. It guarantees that data will arrive in
the same order. Connection-oriented services set up virtual links between sender and
receiver systems through a network. Transmission Control Protocol (TCP) is a
connection-oriented protocol.
The most common example for the connection oriented service is the telephone system
that we use every day. In connection oriented system such as the telephone system, a
direct connection is established between you and the person at the other end.
Therefore, if you called from India to United States of America (USA) for 5 minutes,
you are in reality actually the owner of that copper wire for the whole 5 minutes. This
inefficiency however overcame by the multiple access techniques invented (refer
chapter).
Connection-oriented services set up path between source and destination
systems through a network. Connection-oriented service provides its services with the
following three steps:
1. : This is the process of establishing a connection to the desired
destination prior to the transfer of data. During this hand-shaking process,
the two end nodes decide the parameters for transferring data.
2. : During this step, the actual data is being sent in order.
Connection oriented protocol is also known as network service as it
provides the service of delivering the stream of data in order. It ensures this as
most of the connection oriented service tries to resend the lost data packets.
3. : This step is taken to release the end nodes and
resources after the completion of data transfer.

2.9.2 Connectionless Service


Connectionless service does not require a session connection between sender and
receiver. The sender simply starts sending packets (called ) to the
destination. This service does not have the reliability of the connection-oriented
method, but it is useful for periodic burst transfers.
Neither system must maintain state information for the systems that they send
transmission to or receive transmission from. A connectionless network provides
minimal services. User Datagram Protocol (UDP) is a connectionless protocol.
Common features of a connectionless service are:
 Data (packets) do not need to arrive in a specific order
 Reassembly of any packet broken into fragments during transmission must be
in proper order
 No time is used in creating a session
 No acknowledgement is required.

2.10 Segmentation and Multiplexing


In theory, a single communication, such as a music video or an e-mail message, could
be sent across a network from a source to a destination as one massive continuous
stream of bits. If messages were actually transmitted in this manner, it would mean
that no other device would be able to send or receive messages on the same network
while this data transfer was in progress.

2.10 Segmentation and Multiplexing 35


Elements of Computer Networking Introduction

These large streams of data would result in significant delays. Further, if a link in the
interconnected network infrastructure failed during the transmission, the complete
message would be lost and have to be retransmitted in full.
A better approach is to divide the data into smaller, more manageable pieces to send
over the network. This division of the data stream into smaller pieces is called
. Segmenting messages has two primary benefits.
, by sending smaller individual pieces from source to destination, many different
conversations can be interleaved on the network. The process used to interleave the
pieces of separate conversations together on the network is called .
, segmentation can increase the reliability of network communications. The
separate pieces of each message need not travel the same pathway across the network
from source to destination. If a particular path becomes congested with data traffic or
fails, individual pieces of the message can still be directed to the destination using
alternate pathways. If part of the message fails to make it to the destination, only the
missing parts need to be retransmitted.

2.11 Network Performance


Network performance has been the subject of much research over the past decades.
One important issue in networking is the performance of the network—how good is it?
Internet data is packaged and transported in pieces of data.
The flow of these small pieces of data directly affects a user‘s internet experience.
When data packets arrive in a timely manner the user sees a continuous flow of data;
if data packets arrive with between packets the user‘s experience is
.

2.11.1 Round Trip Time


In TCP, when a host sends a segment (also called packet) into a TCP connection, it
starts a timer. If the timer expires before the host receives an acknowledgment for the
data in the segment, the host retransmits the segment. The time from when the timer
is started until when it expires is called the of the timer.
What should be the ideal be? Clearly, the timeout should be larger than the
connection's round-trip time, i.e., the time from when a segment is sent until it is
acknowledged.
Otherwise, unnecessary retransmissions would be sent. But the timeout should not be
much larger than the - ; otherwise, when a segment is lost, TCP would
not quickly retransmit the segment, thereby introducing significant data transfer
delays into the application. Before discussing the timeout interval in more detail, let
us take a closer look at the round-trip time ( ).
The round trip time calculation algorithm is used to calculate the average time for
data to be acknowledged. When a data packet is sent, the elapsed time for the
acknowledgment to arrive is measured and the mean deviation algorithm
is applied. This time is used to determine the interval to retransmit data.

2.11.1.1 Estimating the Average Round Trip Time


The sample RTT, denoted with , for a segment is the time from when the
segment is sent (i.e., passed to IP) until an acknowledgment for the segment is
received. Each segment sent will have its own associated .

2.11 Network Performance 36


Elements of Computer Networking Introduction

Obviously, the values will change from segment to segment due to


congestion in the routers and to the varying load on the end systems. Because of this
fluctuation, any given value may be atypical. In order to estimate a typical
, it is therefore natural to take some sort of average of the values.
TCP maintains an average of values, denoted with called .
Upon receiving an acknowledgment and obtaining a new , TCP updates
according to the following formula:
= (1- ) * + *
The above formula is written in the form of a programming language statement - the
new value of is a weighted combination of the previous value of
and the new value for . A typical value of is = .1, in which
case the above formula becomes:
= .9 + .1
Note that is a weighted average of the values. This weighted
average puts more weight on recent samples than on old samples. This is natural, as
the more recent samples better reflect the current congestion in the network. In
statistics, such an average is called an ( ).
The word appears in EWMA because the weight of a given
decays exponentially fast as the updates proceed.

2.11.2 Causes for Latency?


Regardless of the speed of the processor or the efficiency of the software, it takes a
finite amount of time to manipulate and present data. Whether the application is a
web page showing the latest news or a live camera shot showing a traffic jam, there
are many ways in which an application can be affected by latency. Four key causes of
latency are: , , and , and
and .

Packet Queuing delay Transmission delay

Next Router/Switch
or
Processing delay Destination
Processing delay

Router or Switch

2.11.2.1 Propagation Delay


Propagation delay is the primary source of latency. It is a function of how long it
information to at the speed of light in the communications media from source to
destination. In free space, the speed of light is approximately 3 km/sec. The
speed of light is lower in other media such as copper wire or fiber optic cable. The
amount of slowing caused by this type of transmission is called the
(VF).
Fiber optic cables typically measure around 70% of the speed of light whereas copper
cable varies from 40% to 80% depending on the construct. Coaxial cable is commonly
used and many types have a VF of 66%.

2.11 Network Performance 37


Elements of Computer Networking Introduction

Satellite communication links use electromagnetic waves to propagate information


through the atmosphere and space. The information is converted from electrical
signals to radio signals by the transmitter and the antenna. Once these radio signals
leave the antenna, they travel approximately at the speed of light for free space.
Let‘s calculate how long it will take an email to travel from Hyderabad to New York
assuming that we are the only user on a private communications channel.
Ignoring the actual routes taken by undersea cables due to the ocean‘s floor, let‘s
assume the path from Hyderabad to New York is the great circle distance of 5458 km.

The email sent using a copper link: = ms

The email sent using a fiber-optic link: = ms

The email sent using a radio link: = ms

These are the latencies caused only by propagation delays in the transmission
medium. If you were the only one sending one single data bit and you had unlimited
bandwidth available, the speed of the packet would still be delayed by the propagation
delay.
This delay happens without regard for the amount of data being transmitted, the
transmission rate, the protocol being used or any link impairment.

2.11.2.2 Serialization Delay [Transmission Delay]


Serialization is the conversion of bytes (8 bits) of data stored in a computer‘s memory
into a serial bit stream to be transmitted over the communications media. Serialization
delay is also called or . Serialization takes a finite amount of
time and is calculated as follows:

For example:
 Serialization of a 1500 byte packet used on a 56K modem link will take 214
milliseconds
 Serialization of the same 1500 byte packet on a 100 Mbps LAN will take 120
microseconds
Serialization can represent a significant delay on links that operate a lower
transmission rates, but for most links this delay is a tiny fraction of the overall latency
when compared to the other contributors.
Voice and video data streams generally use small packet sizes (~20 ms of data) to
minimize the impact of serialization delay.

2.11.2.3 Processing Delay


In IP networks such as the Internet, IP packets are forwarded from source to
destination through a series of IP routers or switches that continuously update their
decision about which next router is the best one to get the packet to its destination. A
router or circuit outage or congestion on a link along the path can change the routing
path which in turn can affect the latency.
2.11 Network Performance 38
Elements of Computer Networking Introduction

High performance IP routers and switches add approximately 200 microseconds of


latency to the link due to . If we assume that the average IP backbone
router spacing is 800 km, the 200 microseconds of routing/switching delay is
equivalent to the amount of latency induced by 40km of fiber; routing/switching
latency contributes to only 5% of the end to end delay for the average internet link.

2.11.2.4 Queuing and Buffer Management


Another issue which occurs within the transport layers is called . This
refers to the amount of time an IP packet spends sitting in a queue awaiting
transmission due to over-utilization of the outgoing link after the routing/switching
delay has been accounted for. This can add up to an additional 20 ms of latency.

2.11.3 Transmission Rate and Bandwidth


is a term used to describe the number of bits which can be extracted
from the medium. Transmission rate is commonly measured as the number of bits
measured over a period of one second.
The describes the fundamental limitation of a network
medium:
If the medium is a copper Local Area Network, maximum transmission rates are
commonly 10, 100, or 1000 Megabits per second. These rates are primarily limited by
the properties of the copper wires and the capabilities of the network interface card
are also a factor.
Fiber-optic the transmission rates range from around 50 Mbps up to 100 Gbps. Unlike
copper networks, the primary factor limiting fiber-optic transmission rates is the
electronics which operates at each end of the fiber. Wireless local area networks
(LANs) and satellite links use modems (modulator/demodulator) to convert digital bits
into an analog modulated waveform at the transmitter end of a link, and then at the
receive end a demodulator will then convert the analog signal back into digital bits.
The limiting factor in transmitting information over radio-based channels is the
bandwidth of the channel that is available to a particular signal and the noise that is
present that will corrupt the signal waveform.

2.11.3.1 Radio Channel Bandwidth and Noise


Signals transmitted using radio waves occupy radio spectrum. Radio spectrum is not
an unlimited resource and must be shared. To prevent radio interference between
users the use of radio spectrum is controlled by nearly every government on the
planet. The amount of radio spectrum occupied by any given radio signal is called its
bandwidth.
The nature of radio spectrum use is beyond this paper but it‘s important to
understand that generally the occupied radio spectrum of a modem signal will
increase with the data rate:
 Higher modem data rates cause the modem to occupy more radio bandwidth
 Lower modem data rates will let the modem occupy less radio bandwidth
Since radio spectrum is a limited resource, the occupied radio bandwidth is an
important limiting factor in wireless and satellite links.
Noise in the radio channel will perturb the analog signal waveform and can cause the
demodulator at the receiver to change a digital one into a zero or vice versus. The
2.11 Network Performance 39
Elements of Computer Networking Introduction

effect of noise can be overcome by increasing the power level of the transmitted signal,
or by adding a few extra error correcting bits to the data that is being transmitted.
These error correcting bits help the receiver correct bit errors. However, the error
correction bits increase the bandwidth that is required.

2.11.3.2 Data Bandwidth


In data transmission, the is synonymous to the transmission rate
being used. Bandwidth is important because it defines the maximum capacity of a
data link.
 A 10 Mbps copper LAN cannot sustain traffic flowing at a higher rate than 10
megabits every second.
 A satellite link using modems operating at a 600 Mbps rate cannot flow any
more than 600 megabits every second.
It‘s very important to understand that data bandwidth is a maximum data flow
obtainable over a given transportation segment over a given period of time.

2.11.4 Bandwidth Delay Product


In data communications, bandwidth-delay product refers to the product of a data
link's capacity (in bits per second) and its end-to-end delay (in seconds). The result, an
amount of data measured in bits (or bytes), is equivalent to the maximum amount of
data on the network circuit at any given time, i.e., data that has been transmitted but
not yet acknowledged.
Delay or Latency

Bandwidth

The Bandwidth Delay Product, or BDP for short determines the amount of data that
can be in transit in the network. It is the product of the availalbe bandwidth and the
latency. Sometimes it is calculated as the data link's capacity multiplied by its round
trip time (RTT). BDP is a very important concept in a Window based protocol such as
TCP.
It plays an especially important role in high-speed / high-latency networks, such as
most broadband internet connections. It is one of the most important factors of
tweaking TCP in order to tune systems to the type of network used.
The BDP simply states that:

2.11.5 Revisiting Queuing Delay


Queuing delay depends on the number and size of the other packets in the queue
before it as well as the transmission rate of the interface. With queuing delays, below
is the common question which arises frequently.
When is the queuing delay large and when is it insignificant?
The answer to this question depends on the rate at which traffic arrives at the queue,
the transmission rate of the link, and the nature of the arriving traffic, that is, whether

2.11 Network Performance 40


Elements of Computer Networking Introduction

the traffic arrives occasionally or arrives in bursts. To get some insight here, let ― ‖
denote the average rate at which packets arrive at the queue ( is in units of
packets/sec). Also, assume that is the transmission rate; that is, it is the rate (in
bits/sec) at which bits are pushed out of the queue.
For simplicity, that all packets consist of bits. Then the average rate at which bits
arrive at the queue is bits/sec. Finally, suppose that the queue is very big, so that
it can hold basically an infinite number of bits. The ratio , called the
, often plays an important role in estimating the extent of the queuing delay.

Where, is the average arrival rate of packets (e.g. packets/sec)


is the average packet length (e.g. in bits), and
is the transmission rate (e.g. bits/sec)
If , then the average rate at which bits arrive at the queue exceeds the rate
at which the bits can be transmitted from the queue. In this unfortunate situation, the
queue will tend to increase without bound and the queuing delay will approach
infinity. Therefore, one of the golden rules in traffic engineering is: Design your system
so that the traffic intensity is no greater than 1.
Now think about the case . Here, the nature of the arriving traffic impacts
the queuing delay. For instance, if packets arrive periodically -that is, one packet
arrives every seconds - then every packet will arrive at an empty queue and there
will be no queuing delay. On the other hand, if packets arrive in bursts but
occasionally, there can be a considerable average queuing delay.
For instance, suppose packets arrive simultaneously every seconds. Then
the first packet transmitted has no queuing delay; the second packet transmitted has
a queuing delay of seconds; and more commonly, the packet transmitted has a
queuing delay of seconds.

2.11.6 Throughput versus Bandwidth


Even though widely used in the field of networking, bandwidth and throughput are
two commonly misunderstood concepts. When planning and building new networks,
network administrators widely use these two concepts. Bandwidth is the maximum
amount of data that can be transferred through a network for a specified period of
time while throughput is the actual amount of data that can be transferred through a
network during a specified time period.
Bandwidth can be defined as the amount of information that can flow through a
network at a given period of time. Bandwidth actually gives the maximum amount of
data that can be transmitted through a channel in theory. When you say that you
have a 100 Mbps broadband line you are actually referring to the maximum amount of
data that can travel through your line per second, which is the bandwidth.
Even though the basic measurement for bandwidth is bits per second (bps), since it is
a relatively small measurement, we widely use kilobits per second (kbps), megabits
bits per second (Mbps), and gigabits per second (Gbps).
Most of us know from experience that the actual network speed is much slower than
what is specified. Throughput is the actual amount of data that could be transferred
through the network. That is the actual amount of data that gets transmitted back
and forth from your computer, through the Internet to the web server in a single unit
of time.

2.11 Network Performance 41


Elements of Computer Networking Introduction

When downloading a file you will see a window with a progress bar and a number.
This number is actually the throughput and you must have noticed that it is not
constant and almost always has a value lower than specified bandwidth for your
connection.
Several factors like the number of users accessing the network, network topology,
physical media and hardware capabilities can effect this reduction in the bandwidth.
As you can imagine, throughput is also measured using the same units used to
measure the bandwidth.
As you have seen, bandwidth and throughput seems to give a similar measurement
about a network, at the first glance. They are also measured using the same units of
measurement. Despite all these similarities they are actually different. We can simply
say that the bandwidth is the maximum throughput you can ever achieve while the
actual speed that we experience while surfing is the throughput.
To simplify further, you can think of the bandwidth as the width of a highway. As we
increase the width of the highway more vehicles can move through a specified period
of time. But when we consider the road conditions (craters or construction work in the
highway) the number of vehicles that can actually pass through the specified period of
time could be less than the above. This is actually analogous to the throughput. So it
is clear that bandwidth and throughput gives two different measurements about a
network.

2.11.7 Important Notes


Consider the following definitions:
R Transmission rate (bits/second)
S Signal speed (meters/second)
D Distance between the sender and receiver (meters)
T Time to create (build) one frame (microseconds)
F Number of bits in a frame/packet
N Number of data bits in a frame/packet
A Number of bits in an acknowledgement
P Percentage of time that bit are in the channel
1. Since R is the transmission rate, the amount of time required to transmit one
bit is .
2. Since there are F bits in a frame, time required to transmit the whole frame is
.
3. The bits must then travel the channel. Since D is the length of the channel
and S is the speed of the signal, the time required to travel the channel is .
So, after the last bit is transmitted it requires time to get to the receiver.
4. Time required for a frame to be sent is: Time to create a frame + Time to
transmit a whole frame + Time required by the last bit to travel = .
5. Similarly the time required for an acknowledgement is .
6. In the unrestricted protocol a new frame is built as soon as the last one is
sent. So the time required to build a new frame is .
7. For stop-and-wait, time required to build a new frame is + .
8. The time required to transmit a frame is .

2.11 Network Performance 42


Elements of Computer Networking Introduction

9. Let P be the percentage of time that bits are in the channel. With the
unrestricted protocol we have: P = ( )
( )

With the stop and wait protocol we have: P = ( )


( )
10. : It is defined as the number of data bits sent per unit time.
It is found by dividing the number of data bits by the elapsed time between
sending two frames. For the unrestricted protocols the effective data rate is
. For the stop and wait protocol, it is .
( ) ( )

2.12 Network Switching


The purpose of a communication system is to exchange information between two or
more devices. Such system can be optimized for voice, data, or both.
Node Communication Link Node
or or
Station Station
Point-to-Point Network
In its simplest form, a communication system can be established between two nodes
(or stations ) that are directly connected by some form of - - transmission
medium. A station may be a PC, telephone, fax machine, mainframe, or any other
communicating device.
This may, however, be impractical, if there are many geographically dispersed nodes
or the communication requires dynamic connection between different nodes at various
times.

Link

Node

It is not efficient to build a physically separate path for each pair of communicating
end systems. An alternative method to a - - connection is a
network. In a communication network, each communicating (or
or or ) is connected to a network node.
The interconnected nodes are capable of transferring data between stations.

Shared Medium

Communication Network

Depending on the architecture and techniques used to transfer data, two basic
categories of communication networks are broadcast networks and switched networks.
 Broadcast Networks
 Switched Networks

2.12 Network Switching 43


Elements of Computer Networking Introduction

Communication Networks

Broadcast Networks Switched Networks

2.12.1 Broadcast Networks


In networks, a single node transmits the information to all other nodes and
hence, all stations will receive the data. A simple example of such network is a simple
radio system, in which all users tuned to the same channel can communicate with
each other. Other examples of broadcast networks are satellite networks and
Ethernet-based local area networks, where transmission by any station will
propagates through the network and all other stations will receive the information.

Node

Link
Broadcast is a method of sending a signal where multiple nodes may hear a single
sender node. As an example, consider a conference room with full of people. In this
conference room, a single person starts saying some information loudly.
During that time, some people may be sleeping, and may not hear what person is
saying. Some people may not be sleeping, but not paying attention (they are able to
hear the person, but choose to ignore). Another group of people may not only be
awake, but be interested in what is being said. This last group is not only able to hear
the person speaking, but is also listening to what is being said.
In this example, we can see that a single person is broadcasting a message to all
others that may or may not be able to hear it, and if they are able to hear it, may
choose to listen or not.

2.12.2 Switched Networks


A network is a series of connected devices. Whenever we have many devices, the
interconnection between them becomes more difficult as the number of devices
increases. Some of the conventional ways of interconnecting devices are
a. Point to point connection between devices as in topology.
b. Connection between a central device and every other device as in
topology.
c. Bus topology is not practical if the devices are at greater distances.
The solution to this interconnectivity problem is . A switched network
consists of a series of interlinked nodes called . A switch is a device that
creates temporary connections between two or more systems. Some of the switches are
connected to end systems (computers and telephones) and others are used only for
routing.
In a switched network, the transmitted data is not passed on to the entire medium.
Instead, data are transferred from source to destination through a series of
nodes, called . Such nodes are only concerned about how
to move the data from one node to another until the data reaches its destination node.

2.12 Network Switching 44


Elements of Computer Networking Introduction

Switched communication networks can be categorized into different types such as the
following.
Communication Networks

Broadcast Networks Switched Networks

Circuit Switched Packet Switched Message Switched

Datagram Switched Virtual Circuit Switched


Switched

2.12.2.1 Circuit Switched Networks


The term circuit switching refers to a communication mechanism that establishes a
path between a sender and receiver with guaranteed isolation from paths used by
other pairs of senders and receivers. Circuit switching is usually associated with
telephone technology because a telephone system provides a dedicated connection
between two telephones. In fact, the term originated with early dialup telephone
networks that used electromechanical switching devices to form a physical circuit.
In a circuit-switched network, also called - network, a dedicated physical
communication path is established between two stations through the switching nodes
in the network. Hence, the end-to-end path from source to destination is a connected
sequence of physical links between nodes and at each switching node the incoming
data is switched to the appropriate outgoing link.

Circuit Establishment

Data Transfer

Circuit Disconnect

A circuit-switched communication system involves phases: circuit establishment


(setting up dedicated links between the source and destination);
(transmitting the data between the source and destination); and
(removing the dedicated links). In circuit switching the connection path is established
before data transmission begins ( - ).

2.12 Network Switching 45


Elements of Computer Networking Introduction

Therefore, the channel capacity must be reserved between the source and destination
throughout the network and each node must have available internal switching
capacity to handle the requested connection. Clearly, the switching nodes must have
the intelligence to make proper allocations and to establish a route through the
network.
The most common example of a circuit-switched network can be found in public
telephone network supporting services such as POTS (plain old telephone systems)
and long-distance calls.

2.12.2.2 Packet Switched Networks


The main alternative to circuit switching is packet switching which forms the basis for
the Internet. A packet switching system uses statistical multiplexing in which
communication from multiple sources competes for the use of shared media.
The main difference between packet switching and other forms of statistical
multiplexing arises because a packet switching system requires a sender to divide
each message into blocks of data that are known as packets. The size of a packet
varies; each packet switching technology defines a maximum packet size.

Three general properties define a packet switched paradigm:


1. Arbitrary, asynchronous communication
2. No set-up required before communication begins
3. Performance varies due to statistical multiplexing among packets
The first property means that packet switching can allow a sender to communicate
with one recipient or multiple recipients, and a given recipient can receive messages
from one sender or multiple senders. Furthermore, communication can occur at any
time, and a sender can delay arbitrarily long between successive communications.
The second property means that, unlike a circuit switched system, a packet switched
system remains ready to deliver a packet to any destination at any time. Thus, a
sender does not need to perform initialization before communicating, and does not
need to notify the underlying system when communication terminates.
The third property means that multiplexing occurs among packets rather than among
bits or bytes. That is, once a sender gains access to the underlying channel, the
sender transmits an entire packet, and then allows other senders to transmit a
packet. When no other senders are ready to transmit a packet, a single sender can
transmit repeatedly.

2.12 Network Switching 46


Elements of Computer Networking Introduction

However, if senders each have a packet to send, a given sender will transmit
approximately of all packets.

In packet switching, packets can be handled in two ways:


1. Datagram
2. Virtual Circuit

2.12.2.2.1 Datagram Packet Switching


Datagram packet-switching is a switching technology. Each packet is routed
independently through the network. Each packet can take any practical route to the
desired destination. Therefore packets contain a header with the full information
about the destination. The intermediate nodes examine the header of a packet and
select an appropriate link to another node which is nearer to the destination. In this
system, the packets do not follow a pre-established route, and the intermediate nodes
do not require prior knowledge of the routes that will be used.
The packets may arrive out of order and they may go missing. The receiver will take
care of re-ordering the packets and recover from missing packets.
In this technique, there is no need for setting up a connection. We just need to make
sure each packet contains enough information to get it to destination. To give
importance to critical packets, priorities can be attached to each packet.
The individual packets which form a data stream may follow different paths between
the source and the destination. As a result, the packets may arrive at the destination
out of order. When this occurs, the packets will have to be reassembled to form the
original message. Because each packet is switched independently, there is no need for
connection setup and no need to dedicate bandwidth in the form of a circuit.
Datagram packet switches use a variety of techniques to forward traffic; they are
differentiated by how long it takes the packet to pass through the switch and their
ability to filter out corrupted packets.
The most common datagram network is the Internet, which uses the IP network
protocol. Applications which do not require more than a best effort service can be
supported by direct use of packets in a datagram network, using the User Datagram
Protocol (UDP) transport protocol. Applications like voice and video communications
and notifying messages to alert a user that she/he has received new email are using
UDP. Applications like e-mail, web browsing and file upload and download need
reliable communications, such as guaranteed delivery, error control and sequence
control. This reliability ensures that all the data is received in the correct order
without errors. It is provided by a protocol such as the Transmission Control Protocol
(TCP) or the File Transfer Protocol (FTP).
To forward the packets, each switch creates a table (maps destinations to output port).
When a packet with a destination address in the table arrives, it pushes it out on the
appropriate output port. When a packet with a destination address not in the table
arrives, it will find the optimal route based on routing algorithms.

2.12.2.2.2 Virtual Circuit Packet Switching


Virtual circuit switching is a packet switching methodology whereby a path is
established between the source and the final destination through which all the
packets will be routed during a call. This path is called a virtual circuit because to the

2.12 Network Switching 47


Elements of Computer Networking Introduction

user, the connection appears to be a dedicated physical circuit. However, other


communications may also be sharing the parts of the same path.
The idea of virtual circuit switching is to combine the advantages of circuit switching
with the advantages of datagram switching. In virtual circuit packet switching, after a
small connection setup phase only short (compared to full addresses) connection
identifier are used per packet; this reduces the addressing overhead per packet.
Before the data transfer begins, the source and destination identify a suitable path for
the virtual circuit. All intermediate nodes between the two points put an entry of the
routing in their routing table for the call. Additional parameters, such as the
maximum packet size, are also exchanged between the source and the destination
during call setup. The virtual circuit is cleared after the data transfer is completed.
Virtual circuit packet switching is connection orientated. This is in contrast to
datagram switching, which is a connection less packet switching methodology.

2.12.2.2.2.1 Advantages of Virtual Circuit Switching


Advantages of virtual circuit switching are:
 Packets are delivered in order, since they all take the same route;
 The overhead in the packets is smaller, since there is no need for each packet
to contain the full address;
 The connection is more reliable, network resources are allocated at call setup
so that even during times of congestion, provided that a call has been setup,
the subsequent packets should get through;
 Billing is easier, since billing records need only be generated per call and not
per packet.

2.12.2.2.2.2 Disadvantages of Virtual Circuit Switching


Disadvantages of a virtual circuit switched network are:
 The switching equipment needs to be more powerful, since each switch needs
to store details of all the calls that are passing through it and to allocate
capacity for any traffic that each call could generate;
 Resilience to the loss of a trunk is more difficult, since if there is a failure all
the calls must be dynamically re-established over a different route.

2.12.2.3 Message Switched Networks


Prior to advances in packet switching, message switching was introduced as an
effective alternative to circuit switching. In message switching, end-users
communicate by sending each other a message, which contains the entire data being
delivered from the source to destination node.
As a message is routed from its source to its destination, each intermediate switch
within the network stores the entire message, providing a very reliable service. In fact,
when congestion occurs or all network resources are occupied, rather than discarding
the traffic, the message-switched network will store and delay the traffic until
sufficient resources are available for successful delivery of the message.
The message storing capability can also lead to reducing the cost of transmission; for
example, messages can be delivered at night when transmission costs are typically
lower.

2.12 Network Switching 48


Elements of Computer Networking Introduction

Message switching techniques were originally used in data communications. Early


examples of message switching applications are Electronic mail (E-mail) and voice
mail. Today, message switching is used in many networks, including adhoc sensor
networks, satellite communications networks, and military networks.
Message-switched data networks are hop-by-hop systems that support two distinct
characteristics: - - and .
In a message-switched network, there is no direct connection between the source and
destination nodes. In such networks, the intermediary nodes (switches) have the
responsibility of conveying the received message from one node to another in the
network. Therefore, each intermediary node within the network must store all
messages before retransmitting them one at a time as proper resources become
available. This characteristic is called - - . In message switching
systems (also called - - systems), the responsibility of the message
delivery is on the next hop, as the message travels through the path toward its
destination. Hence, to ensure proper delivery, each intermediate switch may maintain
a copy of the message until its delivery to the next hop is guaranteed.
In case of message broadcasting, multiple copies may be stored for each individual
destination node. The store-and-forward property of message-switched networks is
different from queuing , in which messages are simply stored until their preceding
messages are processed. With store-and-forward capability, a message will only be
delivered if the next hop and the link connecting to it are both available. Otherwise,
the message is stored indefinitely. For example, consider a mail server that is
disconnected from the network and cannot receive the messages directed to it. In this
case, the intermediary server must store all messages until the mail server is
connected and receives the e-mails.
The store-and-forward technology is also different from admission control techniques
implemented in packet-switched or circuit switched networks. Using admission
control, the data transmission can temporarily be delayed to avoid overprovisioning
the resources. Hence, a message-switched network can also implement an admission
control mechanism to reduce network‘s peak load.
The message delivery in message-switched networks includes wrapping the entire
information in a single message and transferring it from the source to the destination
node. The message size has no upper bound; although some messages can be as small
as a simple database query, others can be very large. For example, messages obtained
from a meteorological database center can contain several million bytes of binary data.
Practical limitations in storage devices and switches, however, can enforce limits on
message length.
Each message must be delivered with a header. The header often contains the
message routing information, including the source and destination, priority level,
expiration time. It is worth mentioning that while a message is being stored at the
source or any other intermediary node in the network, it can be bundled or aggregated
with other messages going to the next node. This is called . One
important advantage of message interleaving is that it can reduce the amount of
overhead generated in the network, resulting in higher link utilization.

Problems and Questions with Answers


Question 1: Suppose that a computer that is used as a switch can process 30,000
packets/second. Give a range of possible bit rates that traverse the I/O bus and
main memory.

2.12 Network Switching 49


Elements of Computer Networking Introduction

: The 30,000 packets/second processing speed means 30,000 packets are going
in and 30,000 packets are coming out of the switch every second. Therefore the I/O
bus speed is 60,000 packets/second.
Minimum IP packet size 64 bytes Bit rate = 60,000 64 8 = 30.78 Mbps
Average IP packet size 500 bytes Bit rate = 60,000 500 8 = 240 Mbps
Maximum Ethernet frame size 1500 bytes Bit rate = 60,000 1500 8 = 720 Mbps

Question 2: Imagine the length of a cable is 2500 metres. If the speed of propagation
in a thick co-axial cable is 60% of the speed of light, how long does it take for a bit
to travel from the beginning to the end of the cable? Ignore any propagation delay
in the equipment. (Speed of light = 3 x metres / sec)
: Speed of propagation = 60% = 60 3 / 100 = 18 metres / sec.
So it would take a bit 2500 / 18 = 13.9 secs.
Question 3: Suppose that data are stored on 2.44 Mbyte floppy diskettes that weight
20 gm each. Suppose that an airliner carries kg of these floppies at a speed of
2000 km/h over a distance of 8000 km. What is the data transmission rate in bits
per second of this system?
: Let us first calculate the time for which data was carried.
=
So, Time = = = 4 hrs.

Now 2.44 Mbytes = 2.44 8 bits = 19.52 bits.


Each floppy weighs 20 gm, and total load (of floppies) carried is kg = gms.
Hence, number of floppies carried = gms / 20 gms = 500000.
Now each floppy contains 19.52 bits and so 500000 floppies will contain
19.52 500000 bits = 9760000 bits.
Now calculate data transmission speed:
Transmission speed = =
= 542.2 bits/sec= 542.2 Mbps.
Question 4: A simple telephone system consists of two end offices and a single toll
office to which each end office is connected by a 1-MHz full-duplex trunk. The
average telephone is used to make four calls per 8-hour workday. The mean call
duration is 6 min. Ten percent of the calls are long-distance (i.e., pass through the
toll office). What is the maximum number of telephones an end office can support?
Assume 4 kHz per circuit.
: Each telephone makes 0.5 calls/hour at 6 minutes each. Thus, a telephone
occupies a circuit for 3 min/hour. Twenty telephones can share a circuit. Since 10% of
the calls are long distance, it takes 200 telephones to occupy a long-distance circuit
full time. The interoffice trunk has =250 circuits multiplexed onto it. With 200
telephones per circuit, an end-office can support 200 250 = 50,000 telephones.
Question 5: A channel has a bit rate of 4 kbps and a propagation delay of 20 msec.
For what range of frame sizes does stop-and-wait give an efficiency of at least
50%?
: Efficiency will be 50% when the time to transmit the frame equals the round
trip propagation delay. At a transmission rate of 4 bits/ms, 160 bits takes 40 ms. For
frame sizes above 160 bits, stop-and-wait is reasonably efficient.
2.12 Network Switching 50
Elements of Computer Networking Introduction

Question 6: Suppose a 128 kbps peer-to-peer link is set up between earth and a rover
on mars. The distance from the earth to mars (when they are the closest together)
is approximately 55 Gm (Gigameter), and data travels over the link at the speed of
light meters/sec. Calculate the minimum RTT for the link.

: Propagation delay of the link is = 184 secs. Thus, RTT = 368 secs.
Question 7: For the Question 6, calculate the product of the link.
Answer: The delay bandwidth product for the link is the RTT bandwidth = 23.5
Mb.
Question 8: For the Question 6, a camera on the rover takes pictures of its
surroundings and sends these to the earth. How quickly can it reach Mission
Control on Earth? Assume that each image is 5 Mb in size.
: After a picture is taken, it must be transmitted on the link and completely
propagated, before Mission Control can interpret it. Transmit delay for 5 Mb of data is
29 secs. Hence, total time = Transmit delay + Propagation delay = 223 secs.
Question 9: Calculate the latency (from first bit sent to the last bit received) for the
following: 1 Gbps Ethernet with a single store and forward switch in the path, and
a packet size of 5000 bits. Assume that each link introduces a propagation delay
of 10 (micro second) and that the switch begins retransmitting immediately
after it has finished receiving the packet.
:
A) For each link it takes 5 to transmit the packet on the link, after which it
takes an additional 10 µs for the last bit to propagate across the link. Thus for a LAN
with only with only one switch that starts forwarding only after receiving the whole
packet, the total transfer delay is the transmit delays + two propagation delays 30
.
B) For 3 switched and thus 4 links, the total delay is 4 transmission delays + 4
propagation delays = 60 .
Question 10: Determine the maximum length of the cable (in km) for transmitting data
at a rate of 500 Mbps in an Ethernet LAN with frames of size 10,000 bits. Assume
the signal speed in the cable to be 2,00,000 km/s.
A) 1 B) 2 C) 2.5 D) 5
:B
= +

= +

Length = 2 km
Question 11: A packet switch receives a packet and determines the outbound link to
which the packet should be forwarded. When the packet arrives, one other packet
is halfway done being transmitted on this outbound link and four other packets
are waiting to be transmitted. Packets are transmitted in order of arrival. Suppose
all packets are 1,200 bytes and the link rate is 3 Mbps. What is the queuing delay

2.12 Network Switching 51


Elements of Computer Networking Introduction

for the packet? More generally, what is the queuing delay when all packets have
length S, the transmission rate is T, X bits of the currently being transmitted
packet have been transmitted, and packets are already in the queue?
: The arriving packet must first wait for the link to transmit 5,400 bytes or
43,200 bits. Since these bits are transmitted at 3 Mbps, the queuing delay is 14.3
msec. Generally, the queuing delay is .

Question 12: Suppose we would like to urgently deliver 60 Terabytes of data from
to . We have a 1000 Mbps dedicated link for data transfer
available. Would you prefer to transmit the data via this link or instead use
AirMail overnight delivery? Explain.
Answer: 60 Terabytes = 60 8 bits. So, if using the dedicated link, it will take
60 8 / (1000 ) = 480000 seconds = 5.6 days. But with AirMail overnight
delivery, we can guarantee the data arrives in one day, and it only costs us no more
than USD 100.
Question 13: Two nodes, A and B, communicate through a store & forward network.
Node A is connected to the network by a 10 Mbps link, while node B is connected
by a 5 Mbps link. Node A sends two back-to-back packets of 1000 bits each. The
difference between the arrival times of the two packets at B is 1 ms. What is the
smallest capacity of a link along the path between A and B?
Note: Assume that there are no other packets in the network except the ones sent
by A, and ignore the packet processing time. Assume both packets follow the same
path, and they are not reordered. The arrival time of a packet at a node is defined
as the time when the last bit of the packet has arrived at that node.
: Since packets are sent back-to-back, the difference between the arrival times
of the packets at B represents the transmission time of the second packet on the
slowest link in the path. Thus, the capacity of the slowest link is 1000 bits/1 ms = 1
Mbps.
Question 14: Consider an infinite queue that can send data at 10 Kbps. Assume the
following arrival traffic:
• During every odd second the queue receives an 1000 bit packet every 50 ms
• During every even second the queue receives no data.
Assume an interval I of 10 sec starting with an odd second (i.e., a second in which
the queue receives data). At the beginning of interval I the queue is empty. What is
the maximum queue size during interval I?
: 10 packets. There are 20 packets arriving during the second and 10
packets sent at the end of that second. Thus at the end of second there are 10
packets in the queue. All the 10 packets will be sent at the end of second (since no
new packets are received). Thus, at the end of second the queue size is 0. After that
the process repeats.
(Note: The following alternate answers: 11 packets, 10 Kb, and 11 Kb all received
maximum points. The 11 packets and 11 Kbps assume that at a time when a packet is
received and another one is sent out, the received packet is already in the queue as
the other packet is sent out.)
Question 15: For the Question 14, what is the average time (delay) a packet spends in
the queue during interval I?
:

2.12 Network Switching 52


Elements of Computer Networking Introduction

• packet arrives at time 0 and starts being transmitted immediately, at time 0.


delay 0
• packet arrives at 0.05 s and starts being transmitted at 0.1 s (after the first
packet) delay 0.05 s
• packet arrives at 0.1 s and starts being transmitted at 0.2 s (after first two
packets) delay 0.1 s
• packet arrives at 0.15 s and starts being transmitted at 0.3 s (after first three
packets) delay 0.15 s

• packet arrives at ( ) 0.05 s and starts being transmitted at (k-1)*0.1 s
delay ( ) 0.05 s
This process continues every 2 seconds.
Thus, the average delay of the first 20 packets is

= = 0.475 s

Alternate solution that approximates the average delay: We use Little‘s theorem:
= . During an odd second the number of packets in the
queue increases linearly from 0 to 10 and during the next second it decreases from 10
to 0. This means that the average number of packets in the queue is 5. Over an odd
and an even second the average arrival rate is = 10.

Then, = = = 0.5sec.

(Note: The following answers also received maximum points: 0.575s and 0.5s.)
Question 16: Similar to Question 14 and Question 15, now assume that during odd
seconds the queue receives 1000 bit packets every 25 ms (instead of every 50 ms),
and during even seconds it still receives no data. For this traffic patterns answer
the same questions. What is the maximum queue size during interval I?
: 110 packets. In this case the queue is never empty. During the first 9 seconds
of interval I there are 5 s (1 s/25 ms) = 200 packets received and 90 packets sent out.
Thus, at the end of the second there are 110 packets in the queue.
(Note: The following answers also received the maximum number of points: 111
packets, 110 Kb, and 111 Kb.)
Question 17: For the Question 16, what is the average time (delay) a packet spends in
the queue during interval I?
: Packets received during first second
• packet arrives at time 0 and starts being transmitted immediately, at time 0.
delay 0
• packet arrives at 0.025 s and starts being transmitted at 0.1 s (after the first
packet) delay 0.075 s
• packet arrives at 0.05s and starts being transmitted at 0.2 s (after first two
packets) delay 0.15 s
• packet arrives at 0.075 s and starts being transmitted at 0.3 s (after first three
packets) delay 0.225 s

• packet arrives at ( ) 0.025 s and starts being transmitted at ( ) 0.1 s
delay ( ) 0.075s

2.12 Network Switching 53


Elements of Computer Networking Introduction

The average delay of the packets in the first two seconds is

= = 1.4625 s

Packets received during second: note that at the beginning of the second there
are still 20 packets in the queue
• packet arrives at time 0 and starts being transmitted immediately, at time 2s
delay 2
• packet arrives at 0.025s and starts being transmitted at 2+0.1 s delay
2+0.075 s
• packet arrives at 0.05s and starts being transmitted at 2+0.2 s delay 2+0.15
s
• packet arrives at 0.075s and starts being transmitted at 2+0.3 s delay
2+0.225 s

• packet arrives at (k-1)*0.025s and starts being transmitted at 2+( ) 0.1 s
delay 2+( ) 0.075 s
The average delay of the packets in the first two seconds is

= = 3.4625 s

Packets received during second: note that at the beginning of the second there
are still 80 packets in the queue
• packet arrives at time 0 and starts being transmitted immediately, at time
8s delay 2
• packet arrives at 0.025s and starts being transmitted at 8+0.1s delay
8+0.075s
• packet arrives at 0.05s and starts being transmitted at 8+0.2s delay
8+0.15s
• packet arrives at 0.075s and starts being transmitted at 8+0.3s delay
8+0.225s

• packet arrives at (k-1) 0.025s and starts being transmitted at 8+(k-1)
0.1s delay 8+(k-1) 0.075s
The average delay of the packets in the first two seconds is

= = 9.4625 s

Thus, the average delay over 10 seconds is: = 5.4625

Alternate solution that approximates the average delay: The average arrival rate is 40
packets/2 sec = 20 packets/sec.
During the 1st sec the number of packets in the queue increases linearly from 0 to 30,
thus the average number of packets in the queue in the sec is 15. During
second the queue decreases linearly from 30 to 20, thus the average number of
packets in the queue is 25, and the average number of packets in the queue over the
first two seconds is 20.
During and seconds the process repeats with the difference that there are 20
packets in the queue at the beginning of the second. Thus, the average number of
packets in the queue during the and seconds is 20 20 = 40.
2.12 Network Switching 54
Elements of Computer Networking Introduction

Similarly, the average number of packets during the and seconds is 40+20 =
60, during the and seconds 60+20=80, and during the and seconds is
80+20=100.

Thus the average number of packets over the entire interval I is = 60.
According to the Little‘s theorem = = = 6sec.
(Note: In general the average number of packets over the interval defined by the
2 and 2 seconds is 20, where .)
Question 18: Suppose a CSMA/CD network is operating at 1 Gbps, and suppose there
are no repeaters and the length of the cable is 1 km. Determine the minimum
frame size if the signal propagation speed is 200 km/ms.
: Since the length of the cable is 1 km, we have a one-way propagation time of
= = 0.005 ms = 5 µs. So, 2 = 10 µs.

If we have 1 Gbps, we can calculate the amount of bits transmitted in 10 µs.

Let L be the minimum frame size, then 10 µs = = .


This gives the value of L. L = 10,000 bits.
So the minimum frame size should be 10,000 bits.
Question 19: A signal has a fundamental frequency of 1000 Hz. What is its period?

: Period = = 1 ms.

Question 20: A digital signaling system is required to operate at 9600 bps. If a symbol
encodes a 4-bit word, what is the minimum required channel bandwidth?
: The formula to use is
Maximum number of bits/sec 2 Channel bandwidth Number of bits per sample
If number of different possible values of a sample is given, use the formula
Maximum number of bits/sec 2 Channel bandwidth

Note that gives us the number of bits needed to represent


them or the number of bits/sample.
Based on above formula, 9600 2 h 4 or h 1200 Hz.
Question 21: For the Question 20, what is the minimum bandwidth for 8-bit words?
: 9600 2 h 8 or h 600 Hz.
Question 22: A channel, whose bandwidth is 3 MHz, has an intended capacity of 20
Mbps, Assuming white thermal noise, what signal to noise ratio is required to
achieve this capacity?
: Use the formula:

Maximum number of bits/sec = H

Substitute H = 3 and maximum no of bits/sec to 20 to get a of 100.6.

Question 23: Suppose that data is stored on 1.4 Mbyte floppy diskettes that weight 30
grams each. Suppose that an airliner carries Kg of these floppies at a speed of

2.12 Network Switching 55


Elements of Computer Networking Introduction

1000 Km/h over a distance of 5000 Km. What is the data transmission rate in bps
of this system?
: Each floppy measures 30 grams. We have the following
Number of floppies = /30 = 333333.33
Total number of bits transported = Number of floppies 1.4 1024 (not 1000!)
1024 8
i.e., Number of bits/sec = Total number of bits transported/5*3600.
The answer is 217.4 Mbps.
: When we talk of computer momory, it is typically measured in powers of 2,
thefore 1 Kb bytes. When it comes to networks, we use clocks to send data, if a
clock is 1 Khz, we transmit at the rate of 1 kilobits per sec, where the kilo is 1000, we
are transmitting at the clock rate.
Question 24: Consider a 150 Mb/s link that is 800 km long, with a queue large enough
to hold 5,000 packets. Assume that packets arrive at the queue with an average
rate of 40,000 packets per second and that the average packet length is 3,000
bits. Approximately, what is the propagation delay for the link?
: 800 km times 5 microseconds per km is 4,000 microseconds or 4 ms.
Question 25: For the Question 24:, what is the transmission time for an average length
packet?
: Link speed is 150 bits per microsecond, so a 3,000 bit packet can be sent in
20 microseconds.
Question 26: For the Question 24:, what is the traffic intensity?
: Bit arrival rate is 40,000 times 3,000 or 120 Mb/s. Since the link rate is 150
Mb/s, I=0.8
Question 27: For the Question 24:, what is the average number of packets in the
queue?

: =4.

Question 28: What is the average number in the queue, if the average arrival rate is
80,000 packets per second?
: In this case, the traffic intensity is 1.6, so the queue will be nearly full all the
time. So, the average number is just under 5,000 packets.
Question 29: A user in Hyderabad, connected to the Internet via a 5 Mb/s connection
retrieves a 50 KB (B=bytes) web page from a web server in New York, where the
page references 4 images of 300 KB each. Assume that the one way propagation
delay is 20 ms. Approximately how long does it take for the page (including
images) to appear on the user‘s screen, assuming persistent HTTP?
: Total time is 3RTT + Transmission time.
3RTT = 120 ms and Transmission time = = = 2 seconds
Total time = 2.12 seconds.
Question 30: For the Question 29, how long would it take using non-persistent HTTP
(assume a single connection)?
2(1 + number of objects in page)RTT + Transmission time
400 ms + 2 seconds = 2.4 seconds
2.12 Network Switching 56
Elements of Computer Networking Introduction

Question 31: Suppose a movie studio wants to distribute a new movie as a digital file to
1,000 movie theaters across country using peer-to-peer file distribution. Assume
that the studio and all the theaters have DSL connections with an 8 Mb/s
downstream rate and a 4 Mb/s upstream rate and that the file is 10 GB long.
Approximately, how much time is needed to distribute the file to all the theaters
under ideal conditions?
: The total upstream bandwidth is about 4 Gb/s. Since the file must be
delivered to 1,000 studios, we have 10 TB of data to be delivered. At 4 Gb/s, this takes
20,000 seconds, or roughly 6 hours.
Question 32: For the Question 24:, suppose the studio wanted to use the client-server
method instead. What is the smallest link rate that is required at the studio that
will allow the file to be distributed in under 40,000 seconds?
: This time period is twice the time used for the first part, so the server‘s
upstream bandwidth must be half as large as the upstream bandwidth of the peers in
the first part. So, 2 Gb/s is enough.
Question 33: Suppose a file of 5,000 bytes is to be sent over a line at 2400 bps.
Calculate the overhead in bits and time in using asynchronous communication.
Assume one start bit and a stop element of length one bit, and 8 bits to send the
byte itself for each character. The 8-bit character consists of all data bits, with no
parity bit.
: Each character has 25% overhead. For 10,000 characters, there are 20,000
extra bits. This would take an extra = 2.0833 seconds.

Question 34: Calculate the overhead in bits and time using synchronous
communication. Assume that the data are sent in frames. Each frame consists of
1000 characters - 8000 bits and an overhead of 48 control bits per frame.
: The file takes 10 frames or 480 additional bits. The transmission time for the
additional bits is = 0.2 seconds.

Question 35: What would the answers to Question 28 and Question 29 be for a file of
100,000 characters?
: Ten times as many extra bits and ten times as long for both.
Question 36: What would the answers to Question 28 and Question 29 be for the
original file of 10,000 characters except at a data rate of 9600 bps?
: The number of overhead bits would be the same, and the time would be
decreased by a factor of 4 = .

Question 37: The loss of signal strength is called:


A) Attenuation B) Amplitude C) Noise D) Crosstalk
: Attenuation
Question 38: Large networks that encompass parts of states, multiple states, countries
and the world are called:
A) MANs B) LANs C) PANs D) WANs
:D
Question 39: The __of a signal is the number of times a signal makes a complete cycle
within a given time frame.

2.12 Network Switching 57


Elements of Computer Networking Introduction

A) Bandwidth C) Frequency D) Amplitude D) Spectrum


:C
Question 40: In a ___ subnet, no unique dedicated physical path is established to
transmit the data packets across the subnet?
A) Circuit-switched B) Packet-switched C) Large D) Heavily loaded
:B
Question 41: A dial-up telephone system uses which type of subnet?
A) Circuit-switched B) Packet-switched C) Broadcast D) Logically switched
:A
Question 42: A 2 km long broadcast LAN has bps bandwidth and uses CSMA/CD.
The signal travels along the wire at m/s. What is the minimum packet size
that can be used on this network?
A) 50 bytes B) 100 bytes C) 200 bytes D) None of the above
: C.
Total distance for RTT = 4 Km
Transfer rate = m/s
Time to transfer = s
Data rate = bps
Packet size = s bps=200 bytes

Question 43: Station A uses 32 byte packets to transmit messages to Station B using a
sliding window protocol. The round trip delay between A and B is 80 milliseconds
and the bottleneck bandwidth on the path between A and B is 128 kbps. What is
the optimal window size that A should use ?
A) 20 B) 40 C) 160 D) 320
: B.
Path bandwidth = 128 kbps
Time delay = 80 ms
Total data = bits = bytes
1 packet size = byte
Number of packets =

2.12 Network Switching 58

You might also like