0% found this document useful (0 votes)
77 views

An Introduction To Computer Networks - An Introduction To Computer Networks, Desktop Edition 2.0.10

This document is an introduction to computer networks textbook that covers topics such as Ethernet, wireless networks, IP, routing protocols, and TCP/IP. It is divided into 17 chapters that cover topics like Ethernet basics, advanced Ethernet, wireless LANs, IP version 4, IPv6, routing algorithms, border gateway protocol, UDP transport, and TCP transport basics. The textbook contains examples and exercises for each chapter. It is intended to teach students the fundamental concepts and protocols used in computer networks.

Uploaded by

Mike Mikkelsen
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views

An Introduction To Computer Networks - An Introduction To Computer Networks, Desktop Edition 2.0.10

This document is an introduction to computer networks textbook that covers topics such as Ethernet, wireless networks, IP, routing protocols, and TCP/IP. It is divided into 17 chapters that cover topics like Ethernet basics, advanced Ethernet, wireless LANs, IP version 4, IPv6, routing algorithms, border gateway protocol, UDP transport, and TCP transport basics. The textbook contains examples and exercises for each chapter. It is intended to teach students the fundamental concepts and protocols used in computer networks.

Uploaded by

Mike Mikkelsen
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.

10

An Introduction to Computer Networks


Peter L Dordal
Department of Computer Science
Loyola University Chicago

Contents:

0   Preface
0.1   Second Edition
0.2   Licensing
0.3   German Edition
0.4   Classroom Use
0.5   Acknowledgments
0.6   Progress Notes
0.7   Technical considerations
0.8   A Note On the Cover
0.9   Recent Changes
1   An Overview of Networks
1.1   Layers
1.2   Data Rate, Throughput and Bandwidth
1.3   Packets
1.4   Datagram Forwarding
1.5   Topology
1.6   Routing Loops
1.7   Congestion
1.8   Packets Again
1.9   LANs and Ethernet
1.10   IP - Internet Protocol
1.11   DNS
1.12   Transport
1.13   Firewalls
1.14   Some Useful Utilities
1.15   IETF and OSI
1.16   Berkeley Unix
1.17   Epilog
1.18   Exercises
2   Ethernet Basics
2.1   10-Mbps Classic Ethernet
2.2   100 Mbps (Fast) Ethernet
2.3   Gigabit Ethernet
2.4   Ethernet Switches
2.5   Epilog
2.6   Exercises
3   Advanced Ethernet
3.1   Spanning Tree Algorithm and Redundancy
3.2   Virtual LAN (VLAN)
3.3   TRILL and SPB
3.4   Software-Defined Networking
3.5   Epilog
3.6   Exercises
4   Wireless LANs
4.1   Adventures in Radioland
4.2   Wi-Fi
4.3   WiMAX and LTE
4.4   Fixed Wireless

https://intronetworks.cs.luc.edu/current/html/ 1/7
2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.10

4.5   Epilog
4.6   Exercises
5   Other LANs
5.1   Virtual Private Networks
5.2   Carrier Ethernet
5.3   Token Ring
5.4   Virtual Circuits
5.5   Asynchronous Transfer Mode: ATM
5.6   Epilog
5.7   Exercises
6   Links
6.1   Encoding and Framing
6.2   Time-Division Multiplexing
6.3   Epilog
6.4   Exercises
7   Packets
7.1   Packet Delay
7.2   Packet Delay Variability
7.3   Packet Size
7.4   Error Detection
7.5   Epilog
7.6   Exercises
8   Abstract Sliding Windows
8.1   Building Reliable Transport: Stop-and-Wait
8.2   Sliding Windows
8.3   Linear Bottlenecks
8.4   Epilog
8.5   Exercises
9   IP version 4
9.1   The IPv4 Header
9.2   Interfaces
9.3   Special Addresses
9.4   Fragmentation
9.5   The Classless IP Delivery Algorithm
9.6   IPv4 Subnets
9.7   Network Address Translation
9.8   Unnumbered Interfaces
9.9   Mobile IP
9.10   Epilog
9.11   Exercises
10   IPv4 Companion Protocols
10.1   DNS
10.2   Address Resolution Protocol: ARP
10.3   Dynamic Host Configuration Protocol (DHCP)
10.4   Internet Control Message Protocol
10.5   Epilog
10.6   Exercises
11   IPv6
11.1   The IPv6 Header
11.2   IPv6 Addresses
11.3   Network Prefixes
11.4   IPv6 Multicast
11.5   IPv6 Extension Headers
11.6   Neighbor Discovery
11.7   IPv6 Host Address Assignment
11.8   Epilog
11.9   Exercises
https://intronetworks.cs.luc.edu/current/html/ 2/7
2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.10

12   IPv6 Additional Features


12.1   Globally Exposed Addresses
12.2   ICMPv6
12.3   IPv6 Subnets
12.4   Using IPv6 and IPv4 Together
12.5   IPv6 Examples Without a Router
12.6   IPv6 Connectivity via Tunneling
12.7   IPv6-to-IPv4 Connectivity
12.8   Epilog
12.9   Exercises
13   Routing-Update Algorithms
13.1   Distance-Vector Routing-Update Algorithm
13.2   Distance-Vector Slow-Convergence Problem
13.3   Observations on Minimizing Route Cost
13.4   Loop-Free Distance Vector Algorithms
13.5   Link-State Routing-Update Algorithm
13.6   Routing on Other Attributes
13.7   ECMP
13.8   Epilog
13.9   Exercises
14   Large-Scale IP Routing
14.1   Classless Internet Domain Routing: CIDR
14.2   Hierarchical Routing
14.3   Legacy Routing
14.4   Provider-Based Routing
14.5   Geographical Routing
14.6   Epilog
14.7   Exercises
15   Border Gateway Protocol (BGP)
15.1   AS-paths
15.2   AS-Paths and Route Aggregation
15.3   Transit Traffic
15.4   BGP Filtering and Routing Policies
15.5   BGP Table Size
15.6   BGP Path attributes
15.7   BGP and Traffic Engineering
15.8   BGP and Anycast
15.9   BGP for Interior Routing
15.10   BGP Relationships
15.11   Examples of BGP Instability
15.12   BGP Security and Route Registries
15.13   Epilog
15.14   Exercises
16   UDP Transport
16.1   User Datagram Protocol – UDP
16.2   Trivial File Transport Protocol, TFTP
16.3   Fundamental Transport Issues
16.4   Other TFTP notes
16.5   Remote Procedure Call (RPC)
16.6   Epilog
16.7   Exercises
17   TCP Transport Basics
17.1   The End-to-End Principle
17.2   TCP Header
17.3   TCP Connection Establishment
17.4   TCP and WireShark
17.5   TCP Offloading
https://intronetworks.cs.luc.edu/current/html/ 3/7
2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.10

17.6   TCP simplex-talk
17.7   TCP and bind()
17.8   TCP state diagram
17.9   Epilog
17.10   Exercises
18   TCP Issues and Alternatives
18.1   TCP Old Duplicates
18.2   TIMEWAIT
18.3   The Three-Way Handshake Revisited
18.4   Anomalous TCP scenarios
18.5   TCP Faster Opening
18.6   Path MTU Discovery
18.7   TCP Sliding Windows
18.8   TCP Delayed ACKs
18.9   Nagle Algorithm
18.10   TCP Flow Control
18.11   Silly Window Syndrome
18.12   TCP Timeout and Retransmission
18.13   KeepAlive
18.14   TCP timers
18.15   Variants and Alternatives
18.16   Epilog
18.17   Exercises
19   TCP Reno and Congestion Management
19.1   Basics of TCP Congestion Management
19.2   Slow Start
19.3   TCP Tahoe and Fast Retransmit
19.4   TCP Reno and Fast Recovery
19.5   TCP NewReno
19.6   Selective Acknowledgments (SACK)
19.7   TCP and Bottleneck Link Utilization
19.8   Single Packet Losses
19.9   TCP Assumptions and Scalability
19.10   TCP Parameters
19.11   Epilog
19.12   Exercises
20   Dynamics of TCP
20.1   A First Look At Queuing
20.2   Bottleneck Links with Competition
20.3   TCP Reno Fairness with Synchronized Losses
20.4   Epilog
20.5   Exercises
21   Further Dynamics of TCP
21.1   Notions of Fairness
21.2   TCP Reno loss rate versus cwnd
21.3   TCP Friendliness
21.4   AIMD Revisited
21.5   Active Queue Management
21.6   The High-Bandwidth TCP Problem
21.7   The Lossy-Link TCP Problem
21.8   The Satellite-Link TCP Problem
21.9   Epilog
21.10   Exercises
22   Newer TCP Implementations
22.1   Choosing a TCP on Linux
22.2   High-Bandwidth Desiderata
22.3   RTTs
https://intronetworks.cs.luc.edu/current/html/ 4/7
2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.10

22.4   A Roadmap
22.5   Highspeed TCP
22.6   TCP Vegas
22.7   FAST TCP
22.8   TCP Westwood
22.9   TCP Illinois
22.10   Compound TCP
22.11   TCP Veno
22.12   TCP Hybla
22.13   DCTCP
22.14   H-TCP
22.15   TCP CUBIC
22.16   TCP BBR
22.17   Epilog
22.18   Exercises
23   Queuing and Scheduling
23.1   Queuing and Real-Time Traffic
23.2   Traffic Management
23.3   Priority Queuing
23.4   Queuing Disciplines
23.5   Fair Queuing
23.6   Applications of Fair Queuing
23.7   Hierarchical Queuing
23.8   Hierarchical Weighted Fair Queuing
23.9   Epilog
23.10   Exercises
24   Token Bucket Rate Limiting
24.1   Token Bucket Definition
24.2   Token-Bucket Examples
24.3   Multiple Token Buckets
24.4   GCRA
24.5   Guaranteeing VoIP Bandwidth
24.6   Limiting Delay
24.7   Token Bucket Through One Router
24.8   Token Bucket Through Multiple Routers
24.9   Delay Constraints
24.10   CBQ
24.11   Linux HTB
24.12   Parekh-Gallager Theorem
25   Quality of Service
25.1   Net Neutrality
25.2   Where the Wild Queues Are
25.3   Real-time Traffic
25.4   Integrated Services / RSVP
25.5   Global IP Multicast
25.6   RSVP
25.7   Differentiated Services
25.8   RED with In and Out
25.9   NSIS
25.10   Comcast Congestion-Management System
25.11   Real-time Transport Protocol (RTP)
25.12   Multi-Protocol Label Switching (MPLS)
25.13   Epilog
25.14   Exercises
26   Network Management and SNMP
26.1   Network Architecture
26.2   SNMP Basics
https://intronetworks.cs.luc.edu/current/html/ 5/7
2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.10

26.3   SNMP Naming and OIDs


26.4   MIBs
26.5   SNMPv1 Data Types
26.6   ASN.1 Syntax and SNMP
26.7   SNMP Tables
26.8   SNMP Operations
26.9   MIB Browsing
26.10   MIB-2
26.11   SNMPv1 communities and security
26.12   SNMP and ASN.1 Encoding
26.13   Network Management Systems
26.14   SNMP Alternatives
26.15   Exercises
27   SNMP versions 2 and 3
27.1   SNMPv2
27.2   Table Row Creation
27.3   SNMPv3
27.4   Exercises
28   Security
28.1   Code-Execution Intrusion
28.2   Stack Buffer Overflow
28.3   Heap Buffer Overflow
28.4   Network Intrusion Detection
28.5   Cryptographic Goals
28.6   Secure Hashes
28.7   Shared-Key Encryption
28.8   Diffie-Hellman-Merkle Exchange
28.9   Exercises
29   Public-Key Encryption
29.1   RSA
29.2   Forward Secrecy
29.3   Trust and the Man in the Middle
29.4   End-to-End Encryption
29.5   SSH and TLS
29.6   IPsec
29.7   DNSSEC
29.8   RSA Key Examples
29.9   Exercises
30   Mininet
30.1   Installing Mininet
30.2   A Simple Mininet Example
30.3   Multiple Switches in a Line
30.4   IP Routers in a Line
30.5   IP Routers With Simple Distance-Vector Implementation
30.6   Quagga Routing and BGP
30.7   TCP Competition
30.8   Linux Traffic Control (tc)
30.9   OpenFlow and the POX Controller
30.10   Exercises
31   Network Simulations: ns-2
31.1   The ns-2 simulator
31.2   A Single TCP Sender
31.3   Two TCP Senders Competing
31.4   TCP Loss Events and Synchronized Losses
31.5   TCP Reno versus TCP Vegas
31.6   Wireless Simulation
31.7   Epilog
https://intronetworks.cs.luc.edu/current/html/ 6/7
2/21/23, 11:48 AM An Introduction to Computer Networks — An Introduction to Computer Networks, desktop edition 2.0.10

31.8   Exercises
32   The ns-3 Network Simulator
32.1   Installing and Running ns-3
32.2   A Single TCP Sender
32.3   Wireless
32.4   Exercises
33   Bibliography
Exercise-Numbering Conversion Tables
34   Selected Solutions
34.1   Solutions for An Overview of Networks
34.2   Solutions for Ethernet
34.3   Solutions for Advanced Ethernet
34.4   Solutions for Wireless LANs
34.5   Solutions for Other LANs
34.6   Solutions for Links
34.7   Solutions for Packets
34.8   Solutions for Sliding Windows
34.9   Solutions for IPv4
34.10   Solutions for Routing-Update Algorithms
34.11   Solutions for Large-Scale IP Routing
34.12   Solutions for Border Gateway Protocol
34.13   Solutions for UDP
34.14   Solutions for TCP Reno and Congestion Management
34.15   Solutions for Dynamics of TCP
34.16   Solutions for Dynamics of TCP
34.17   Solutions for Queuing and Scheduling
34.18   Solutions for Mininet

Indices and tables


Index
Search Page

https://intronetworks.cs.luc.edu/current/html/ 7/7

You might also like