CS 422 

SYLLABUS

Instructor

Gustavo Rodriguez-Rivera, LWSN1169. Available any time for short questions, or make an appointment.

Teaching Assistants

    ffice hours will be announced in the web page.

Class Homepage

An updated syllabus, class handouts, lecture notes, and other information can be found at:

http://www.cs.purdue.edu/homes/cs422

Purpose

This is an extensive and thorough senior-level course in computer networking and internetworking; it covers all aspects of data networking. The course material has been divided into four main parts:
  1. Low-level details of media, signals, and bits: time division and frequency division multiplexing; encoding; modulation; bandwidth, throughput, and noise.
  2. Packet transmission: Local Area Network and Wide Area Network technologies; wireless networks; network interconnection with repeaters, bridges, and switches; DSU/CSU; xDSL and cable modems.
  3. Internetworking: router-based architecture; IP addressing; address binding with ARP; datagram encapsulation and fragmentation; UDP and TCP; retransmission; protocol ports; ICMP and error handling.
  4. Network applications: client/server concept; port demultiplexing; socket API; server concurrency; DNS; TELNET; Web technologies including HTTP, CGI, Java; RCP and middleware; network management.

Required Text

Comer, Computer Networks And Internets, fifth edition, Prentice-Hall, 2001.

Grading Policy

Students will solve homework problems, and take in-class exams and quizzes. In addition,
each student will participate in a laboratory once per week. Lab exercises will provide hands-on
experience with networking equipment described in class. In lab, students will measure and
compare the performance of data network hardware as well as write computer programs (i.e.,
clients and servers) that use the facilities. A grade will be assigned as follows:

Switching Lab Sections

Because enrollment is high, you may not switch lab sections unless you find someone in the
other section who is willing to swap with you. (You can use e-mail to ask.)

Computer Labs

You will be using the Networking and Security Lab (REC108). Your login and password for these machines will be the same used for other CS machines.

Lists and Announcements:

All announcements will be sent via email. It is important that you add yourself to the cs422 mailing list. From your CS computer account type:
"mailer add me to cs422-pso1" or
"mailer add me to cs422-pso2" or
"mailer add me to cs422-pso3" or depending on your lab section.

To verify that you are on the list you may type "mailer list cs422-pso<x>", Where <x> is your corresponding lab section. To get help with the mailer program type "mailer help" or "man mailer".

Tentative schedule for 15 weeks

  1. Introduction; motivation; signals and media; bits over signals; asynchronous communication; modulation and modems
  2. Bandwidth, throughput, and noise; time division and frequency division multiplexing; standards
  3. Packet transmission; multiplexing; frames; error correction techniques; LAN/WAN topologies; shared media and media access; bus topology; CSMA/CD; wireless and CSMA/CA; Ethernet addressing and wiring; hubs
  4. Other LAN technologies; ring topology; token passing rings; FDDI, dual-attached, and counter-rotating rings; access and failure modes; star topologies; Asynchronous Transfer Mode
  5. Network interconnection; fiber optic extensions; repeaters; bridges; switches; leased digital circuits; DSU/CSU; ADSL; cable modems; WAN addressing; store-and-forward; next-hop forwarding
  6. Routing algorithms; distance-vector; link-state; shortest path computation; Dijkstra's algorithm; WAN technologies including Frame Relay, X.25, SMDS, and ATM
  7. Network properties; ownership; service paradigm; measures of delay and throughput; protocols; layering
  8. Internetworking; motivation; concept; goals; IP addressing; address binding with ARP; IP datagram; encapsulation
  9. IP fragmentation and reassembly; ICMP echo, redirect, and unreachable messages; UDP concept and datagrams
  10. Protocol ports: purpose, numbering, and use; transport protocols; reliability; TCP full-duplex reliable stream service
  11. TCP segment format; adaptive retransmission; client/server concept; use of protocol ports for demultiplexing
  12. Socket API; example client and server; client and server concurrency; server types
  13. Network applications; Domain Name System; email; TELNET; FTP; Web technologies including  HTML, HTTP, CGI, Java.
  14. RPC and middleware; network management; SNMP; security; IPv6
  15. Miscellaneous topics