Data Communications and Networks

 Fall 2006  
 
 

Syllabus and Reading Assignments

 

Revision Date:  September 19, 2006

 

 

In the sections that follow, the topics for the lecture on the given date are provided under the heading Description.

The material listed for Reading is to be read PRIOR to the date of the lecture (except for the first lecture).

 


September 7 

Description

I will go over administrative details for the course and try to give you some idea of what you should expect, and what I expect from you.  I will introduce you to some of the key elements of communications and networking, and provide an overview of Internet from a structural and service perspective.  Some of the key concepts we'll cover are:

·       Network delay and loss

·       Layered protocol model

·       Packet switched and circuit switched networks

·       Multiplexing

This overview is very broad and will span both the first and second lectures.


September 14

Description

·       Completion of overview.

·       Data encoding and transmission concepts.

 

Reading          Chapter 1

[1.1]

[1.2]

[1.3]

[1.6]

[1.7]

 

 

 

           


September 21

Description

·       Data Link Control

Reading          Chapter 5

[5.1]

[5.2]

[5.3]

[5.4]

[5.5]

 


September 28

Description

·       Data Link Control

·       Ethereal (network packet sniffer)

 

Reading          Chapter 5 (any reading from last week that you did not complete)

 


October 5

Description

·       Wireless communications

o      CDMA

o      802.11

o      Cellular Architecture

 

Reading          Chapter 6

[6.1]

[6.2]

[6.3]

[6.4]

 


October 12

Description

·       Reliable Data Transfer (RDT) between communicating entities is one of the most important topics in communications.  Once we define what RDT is, we will examine three fundamental protocols: Stop and Wait, Go Back n, and Selective Repeat.  During the discussion of this topic we will use FSMs to represent our protocols.

 

Reading          Chapter 3

[3.1]

[3.2]

[3.3]

[3.4]

 


October 19

Description

·       Networks, Part 1

o      Packet switch and VC Networks

o      The Internet

o      The Internet Protocol (IP)

 

Reading          Chapter 4

[4.1]

[4.2]

[4.4]


October 26

Description

·       Networks, Part 2

o      Routing Algorithms

o      Routing Protocols

 

Reading          Chapter 4

[4.5]

[4.6]

[4.7]


November 2

Description

·       Completion of routing algorithms and protocols

·       Fundamental data structures used in communications protocols: Finite State Machines, Queues, Ring Buffers

 


 

November 9

 

·       TCP in detail:  We make a thorough examination of the TCP connection management, flow control, and error detection/correction protocols, and in particular, use TCP as a practical implementation of a sliding window protocol.  When we are finished with this topic, you should be able to examine a TCP session trace and understand exactly what is happening.

Reading          Chapter 3, section 3.5 ; RFC 793 (intro, sections 1 and 2)

 


November 16

Description

·       Completion of TCP

·       UDP

·       Congestion Control:  Congestion control is a top issue in network design.  We examine the causes, effects, and approaches to congestion control.  We will discuss TCP congestion control presently in use (AIMD) and try to determine if this "self-policing" approach leads to fair use of the Internet.

Reading          Chapter 3, section 3.6 ; 3.7; RFC 2581

 


November 23

 

Thanksgiving - no class

                       


November 30

Description

·      

Java Socket programming

·       synchronous model

·       asynchronous model


December 7

 

Description

·       IP multicast

IP multicast allows a sender to broadcast a message to a group of interested parties anywhere on the Internet, but like IP unicast, it is unreliable.  The problems one faces when designing a reliable multicast protocol are very different than for a point-to-point protocol.  We look at IP Multicast, including a Java example, then we look at two approaches to reliable IP multicast: PGM (Pragmatic General Multicast,) and if time permits, a very neat approach based on token passing.

Reading          IP Multicast Backgrounder (PDF File)

Chapter 4, section 4.7 - multicast routing

RFC 1022 (IP Multicast Extensions) (optional)

RFC 3208 (PGM) (optional)


December 12 (TUESDAY!)

Description

·       A Little Queuing Theory, Final Project Q&A

Performance of client server systems is typically a function of load (frequency of requests). Tonight, we will take a look at how queuing theory can help us to understand client - server behavior under load.

I will also provide time for questions about the final project.

Reading          None