Author: Professor Yechiam Yemini (YY)

Copyright Y. Yemini 1995, 1996, 1997

Distributed Computing & Communications(DCC) Laboratory
Computer Science Department
Columbia University
New York, NY 10027


The Network Book aims to provide a comprehensive introduction to networking and distributed computing technologies. Unlike traditional textbooks, it pursues a top-down approach to the topic, starting with the application layer and then describing the transport and network layers, finally covering the physical layer. The Network Book also emphasizes hands-on approach to learning. Assignments focus on design and implementation projects oriented towards small teams.

Among others, the Network Book describes in details the network applications such as Web and Email and network services such as file service provided by Network File Server(NFS) and directory service provided by Domain Name Server(DNS); the design and implementation of client-server computing using Sockets and remote procedure call(RPC) mechanisms; the architecture and design of communication protocols; the operations of the transport layer provided by TCP and UDP; the packet routing layer as provided by IP and routing mechanisms and protocols (RIP, BGP); the physical layer of LANs and media technologies (Ethernet, Token Ring, FDDI, bridging); the physical layer of WANs (modulation, multiplexing, T1) and emerging switched networks (switched Ethernets, ATM).

Notice! The Network Book contents will be updated as new material is presented in the Spring 1998 Computer Networks course.

Table of Contents


  1. Introduction
  2. A Driver's-Ed Introduction to Networks
  3. Anatomy of the Internet

I. The Application Layer Environment

  1. The Application Layer Architecture
  2. Building Applications With Sockets
  3. Naming, Addressing & DNS
  4. Electronic Mail
  5. Overview of WWW Technologies
  6. Client-Server Computing Using Remote Procedure Calls (RPC)
    1. Project Example : BDS, A Basic Directory Server Architecture (Spring 1997, Project 2)
    2. Fun and Games with Sun RPC (Programming Tutorial) (Spring 1997)
    3. Java RMI : Remote Method Invocation
  7. The ISO/OSI Applications Model
  8. Application Layer Concluding Notes

II. The Transport Layer: UDP, TCP

  1. The Transport Layer
  2. Data Transfer Protocols
  3. TCP Flow & Congestion Control

III. The network Layer: IP, Addressing, Routing

  1. The Network Layer
  2. Routing Algorithms
  3. Routing Information Protocols
  4. Network Layer Scalability and IPv6
  5. Introduction to Active Networks
  6. An Overview of Netscript

IV. The Physical Layer: LANs, WANs, Switching

V. Advanced Topics

Copyrights & Terms of Use Notice:

The Network Book is offered freely subject to the following terms:

Your comments, corrections and suggestions for improvements will be greatly appreciated. Additionally, if you have relevant material that should be included/referred to in the Network Book we will be happy to consider it.

Please direct all communications to