Syllabus
Description: 
    Computer and communications networks provide a wide array of
    services in a variety of different ways.  This course considers
    packet-switched networks that provide services using the
    transmission control protocol (TCP) and the user datagram protocol
    (UDP).  It includes an overview of hardware, topology and design,
    and protocols.  It consider both theoretical and applied topics.
    
Textbook: 
    The primary textbook for this course is:
      
Kurose,
        J.F.
        and
        K.W. Ross
    (2012)
  Computer Networking, Addison Wesley.
         
    (Order from 
    
      amazon
    
    , order from
    
      Barnes and Noble
    
    , compare at
    
      bigwords
    
    , compare at
    
      CampusBooks4Less
    
    , order from
    
      Chegg
    
    , or search
    
      eFollett
    
    )
    
    Additional readings will be available (to members of the JMU community)
    on-line.
    
    You are expected to complete all reading assignments before the
    first day they are discussed in class.
    
 
Outline: This course is organized as follows, though specific topics and dates may change. (Readings are listed in the right-most column.)
| 
Part I: Introduction
 | 
| 8/27 | 
	    Communication
	  
      and 
      
	    A Layered View of Networks
	  
 | 
 | 
| 8/29 | 
	    Communication Protocols
	  
 | 
	    K&R 1
	   | 
| 9/3-9/5 | 
	    Probability
	  
      and 
      
            Queueing Theory
	  
 | 
B (1998) ch. 6,8
 | 
| 
Part II: The Application Layer
 | 
| 9/10-9/12 | 
	    File Transfer Protocol (FTP)
	   
      , 
      
	    Hypertext Transfer Protocol (HTTP)
	   
      , 
      
	    WebDAV
	  
      and 
      
	    Electronic Mail and Instant Messaging
	  
 | 
	    K&R 2.1-2.4
	   | 
| 9/17-9/19 | 
	  Names and Addresses:
  	  
	    The Domain Name System (DNS)
	   
      , 
      
	    DNS Poisoning
	   
      , 
      
            Directory Services 
      and 
      
	    Dynamic Host Configuration Protocol (DHCP)
	  
 | 
	    K&R 2.5
	  
      and 
      
	   S (2009) ch. 21
	  
 | 
| 9/24 | 
	    Caching
	  
      and 
      
	    Peer to Peer Networking
	  
 | 
	    K&R 2.6
	   | 
| 9/26 | 
            The X Protocol and XWindows
	  
      and 
      
	    Network File Services
	  
 | 
 | 
| 10/1 | 
	    Examination 1
	   | 
 | 
| 
Part III: The Transport Layer
 | 
| 10/3-10/8 | 
	    Overview
	   
      , 
      
	    Multiplexing
	   
      , 
      
	    User Datagram Protocol (UDP)
	   
      , 
      
	    Transmission Control Protocol (TCP)
	   
      , 
      
	    Stream Control Transmission Protocol (SCTP)
	  
      and 
      
	    Multipath TCP (MPTCP)
	  
 | 
	    K&R 1.3.2, 3.1-3.3, 3.5
	   | 
| 10/10-10/15 | 
	    Flow Control
	   
      , 
      
	    Automatic Repeat Request (ARQ)
	   
      , 
      
	    TCP Congestion Control
	  
      and 
      
	    Persistent HTTP Revisited
	  
 | 
	    K&R 3.4,3.6-3.7
	   | 
| 
Part IV: The Network/Internetwork Layer
 | 
| 10/17 | 
            An Introduction to Graphs
	  
      and 
      
            Telecommunications Networks
	  
 | 
	    K&R 4.1
	   | 
| 10/22 | 
	    Routers
	   
      , 
      
	    The Internet Protocol (IP)
	  
      and 
      
	    The Internet Control Message Protocol (ICMP)
	  
 | 
   	    K&R 4.2-4.4
	   | 
| 10/24 | 
	    Routing on Graphs
	  
 | 
	  K&R 4.5
	   | 
| 10/29 | 
	    Classless Interdomain Routing (CIDR)
	  
      and 
      
	    Private Networking
	  
 | 
 | 
| 10/31 | 
	    Routing Protocols
	   
      , 
      
	    Broadcast
	  
      and 
      
	    Multicast
	  
 | 
   	    K&R 4.6-4.7
	   | 
| 11/5 | 
	    Examination 2
	   | 
 | 
| 
Part V: The Physical and Link Layers
 | 
| 11/7 | 
          Telecommunications Basics:
            Waves 
      , 
      EM Waves
      and 
      Data/Signals
 | 
            B (2011) ap.D
	  
      and 
      
   	    K&R 1.4-1.5,6.4
	   | 
| 11/12 | 
            Media
           
      , 
      
            Ethernet and IEEE 802.3
	  
      and 
      
	    The Address Resolution Protocol (ARP)
	  
 | 
   	    K&R 5.1-5.4
	   | 
| 11/14 | 
	    IEEE 802.11 Wireless Networking
	  
      and 
      
	    Bluetooth Wireless Networking
	  
 | 
	    K&R 6.1-6.3
	   | 
| 
Part VI: Putting It All Together
 | 
| 11/19 | 
            The Protocol Stack Revisited
	   | 
   	    K&R 5.4,5.7
	   | 
| 11/21 | 
	    IP Tunneling 
           
      , 
      
	    Mobile IP
	  
      and 
      
	    Network Reliability 
          
 | 
   	    K&R 6.5-6.8
	   | 
| 
Part VII: Network Security Basics
 | 
| 12/3 | 
	    Introduction
	   
      , 
      
	    Encryption
	   
      , 
      
	    Integrity and Authentication
	  
      and 
      
	    An Aside (for the HW): GPS
	  
 | 
	    K&R 8.1-8.5
	   | 
| 12/5 | 
            Transport Layer Security
	   
      , 
      
            Network Layer Security
	   
      , 
      
	    Kerberos
	   
      , 
      
	    Filtering
	  
      and 
      
	    Application Gateways
	  
 | 
	    K&R 8.6-8.9
	  
      and 
      
	    T sec. 8.7
	  
 | 
 
        Attendance at lectures is not mandatory but is strongly encouraged.
        You are expected to come to class prepared to ask and
        answer questions. Hence,
        you should complete the readings on a topic before it
        is discussed in lecture.
        
Grading: 
      Final grades will be based on your performance on: 
      2
in-class exams (25% each) 
      , 
      1
final exam [during the 
exam period] (35% total)
      and 
      several
homework assignments (15% total).
      
 
Homework Assignments: 10
      homework assignments will be
      assigned during the semester. Note that their due dates are subject
      to change. Note also that the links to asssignments on Canvas will 
      only work if you first login to Canvas.
      
      
      Make sure you read and understand all of the
      policies
      related to homework assignments.
      
 
Office Hours: 
      You may meet with Prof. Bernstein during his 
      
        scheduled office hours
       
      or you may schedule an appointment with him.