Computer Networks

CSC 249, Spring 2008

Professor: Judith Cardell, jcardell@smith.edu
Office: EGR 105b
Office hours: Monday 1:30 - 2:30; Wednesday 10:30 - 11:30

Class Time: TR 3:00-4:50, EGR 102
Prerequisites: CSC 111
Text: Computer Networking: A top-down Approach, by James Kurose and Keith Ross, Addison Wesley, 2005.

 


 

Course Overview and Objectives
The course introduces students to the fundamental concepts in the design and implementation of computer networks, their protocols and applications. Topics to be covered include the layered network architecture model, focusing on the application, transport, network and link layers. There will also be discussions on wireless networking and internet security issues. Individual and team projects will give students the opportunity to investigate additional topics of interest. The objective of this course is to introduce students to computer networks. Through the material presented in this course, students will learn:

  1. Fundamental networking principles, and the current implementation (i.e., the Internet)
  2. The historical layered network architecture model, along with how the model is evolving,
  3. To analyze the strengths and benefits of the Internet architecture, including security and privacy issues,
  4. The far reaching effects of computer networks on human society,
  5. To improve oral and written communication skills

Assignments
The schedule below lists the reading for each class period. Students are expected to do the reading before coming to class, in order to be fully prepared to solidify the material in the class period. There will be almost-weekly homework assignments, that will include questions from the text, one programming assignment and a number of labs with Wireshark, a network analyzer. There will also be one midterm exam and a final exam. There may be short, 10-minute quizzes on the readings at the beginning of class periods.

Wireshark Labs
The wireshark network sniffer, packet analyzer can be downloaded from Wireshark. An html version of the user's guide can be found at user's guide.html, and a pdf version of the user's guide can be downloaded from user's guide.pdf. The wireshark user's guide states the following: "This guide is not intended to explain network sniffing in general and it will not provide details about specific network protocols. A lot of useful information regarding these topics can be found at the Wireshark Wiki"

Homework format
Students are encouraged to work together to understand the concepts, but each student must hand in her own solutions. All assignments are to be neatly written or typed, and stapled, with your name and date. Note that students are expected to follow the Honor Code for all work in this course. Copying on homework or quizzes/exams, and other violations will be brought to the honor board.

The purpose of the homework is for you to have the opportunity to practice the skills and concepts from class. Since homework is the time to practice, you are not expected to have perfects solutions at all times. You are expected to do your best work for each problem however. A complete attempt includes identifying what is known, articulating what you are solving, stating any assumptions, properly labeling figures, and clearly and neatly documenting your progression towards a final result. Homework solutions may be compiled from the solutions submitted by the class, so it is very important that your solutions can be clearly understood by all!

Project
There will be a solo or small-group project in which students will be able to select an application not otherwise included in the course schedule to research in more depth. The objective of the project is to learn and then teach the class about the selected topic, in terms of the network layer model, including issues of security, privacy and future developments. Projects could focus on a specific peer-to-peer application, an emerging instant messaging application, chats, an advance in voice over IP, Ambient Devices "orb" that glows for stock prices, IP-addressable home appliances, sensor networks for public spaces or for endangered habitats, video streaming... Intermediate stages of the project (topic selection, bibliography...) will be handed in as homework assignments during the semester.

References should following the formatting guidelines in Reference Formatting Guidelines.

Quizzes and Exams
There may be weekly - quizzes that are used to assess progress and ensure students do not fall behind. The questions on these quizzes will either be related to the homework due the previous week or focused on the current reading assignment. In addition to providing the instructor with feedback on the class progress, these tools are also a great opportunity for student self-assessment on learning course material. Average quiz grades of 9 or 10 may be used to raise a student's final grade at the end of the semester.

Exams
There will be one midterm exam in-class and a final, self-scheduled exam, used to solidify concepts and learning assess progress.

Class attendance
Students are required to attend class and participate in class discussions and problem solving exercises. The course grade is 20% participation - as important as homework and the project! This means that you must be in class and participate in the discussions to receive full credit for this portion of the course.

Grading
Grades in this course are designed to represent your achievement of the objectives listed above. The course components that will make up your grade are listed below.

ASSIGNMENT
GRADE CONTRIBUTION
Homework sets & labs
30%
Class particpation
15%
Project
10%
Midterm exam
20%
Final exam
25%

Late Policy
All homework assignments are to be submitted at the time specified; late assignments will be penalized at the rate of one point per minute unless you have requested and received and extension at least 24 hours before the deadline. However, each student will have a total of 1 hour (60 minutes) grace time to be used as desired by that student over the course of the semester, such that you can have a semester total of 60 tardy minutes for homework and labs without penalty (note that these minutes cannot be used for in-class reading questions, quizzes or exams).

Honor Code
The homework assignments that you submit must be your own work. You are encouraged to discuss the problems and essay questions with your classmates and work on them together, but each student must work out her own answers. It is not okay to copy answers from another student's homework - doing so is a violation of the Honor Code. Note that it is a violation of the honor code to 1) use or copy another student's work, and 2) provide another student with your work. Projects will be done in small groups. Exams must be exclusively each student's own work, following the instructions provided with each exam. Do not hesitate to ask any questions that you may have concerning the honor code!

 


 

CSC 249 Class and Assignment Schedule, Spring 2008

Date Topic Reading HW due FRIDAY
(by 4pm to EGR 105B)
Jan 29 Introduction to the course and to computer networking
Intro Slides
Chapter 1, §1.1 - §1.5;  
Jan 31 Packet loss & delay; The network layering model
Ch 1 pt2 slides
§1.5 - §1.9 HW 1: Chapter 1 problems P4, P9, P16, P18
Homework Guidelines
Feb 5 Application layer: Client-server model, HTTP;
Packet Analyzing: Wireshark Lab 1
HTTP slides
Chapter 2, §2.1 - §2.2;
Lab 1 handout + Lab Write-up Guidelines
 
Feb 7 Application layer: FTP & email
FTP & SMTP
§2.3 - §2.4 HW 2: Wireshark Lab 1, (and start HTTP lab);
Lab Write-up Guidelines;
Chapter 2 problems
Feb 12 class cancelled §2.5 - §2.6  
Feb 14 Application layer: DNS & peer-to-peer
DNS & P2P
§2.7 - §2.9 HW 3: Ch 2 pt 2 problems
HTTP lab and DNS lab
Feb 19 Application layer: Socket programming
Sockets
§2.7 - §2.9  
Feb 21 Finishing up sockets;
Introduction to the transport layer: Multiplexing
Sockets II & Transport I
Java Web Server
Python Sockets
Chapter 3, §3.1 - §3.2 HW 4: Project Topic and
Ch 2 pt 3 problems
HW4 solution
Feb 26 Transport layer: UDP & a first look at TCP
Reliable Transport
§3.3 - §3.5  
Feb 28 Transport layer: TCP, Congestion & flow control
TCP & Congestion
§3.5 - §3.8 HW 5: Chapter 3 problems, and Socket Programming
HW 5 Solution
Mar 4 Network layer: Service model, Routers
Routers
Chapter 4, §4.1 - §4.3  
Mar 6 Network layer: The internet protocol, addressing examples
IP Addressing
§4.4 HW 6: Chapter 3 problems;
HW 6 Solution
TCP Wireshark lab
TCP Lab selected solutions
UDP Wireshark lab - not to hand in
Mar 11
Midterm Exam
Midterm Exam
 
Mar 13 Guest speaker: Frank Roach on the Smith network    
Mar 18
Spring
Break
Yeah!
Mar 25 Network Layer: Routing Algorithms
Routing Algorithms 1
§4.5  
Mar 27 Network layer: Routing algorithms
Routing Algorithms 2
§4.6 - §4.8 HW 7: Chapter 4 problems
HW 7 Solution; and IP lab;
for reference only: ICMP lab
Apr 1 Link layer: Error detection, Multiple access protocols, Link-layer addressing
Link Layer 1
Chapter 5, §5.1 - §5.3  
Apr 3 Link layer: LANs: Ethernet, hubs, switches
Link Layer 2
§5.4 - §5.6 HW 8: Chapter 4 problems
HW 8 Solution;
Project
Apr 8 Wireless networks
Wireless
Chapter 6, §6.1 - §6.4  
Apr 10 Wireless mobile networks
Mobility
§6.5 - §6.9 HW 9: Chapter 5 problems and Ethernet lab
HW 9 Solution
Apr 15 Network security: Cryptography, integrity and CAs
Security 1
Chapter 8, §8.1 - §8.3  
Apr 17 Guest speaker: Eric Jensen on Firewalls, Intrusion detection;    
Apr 22 Network security: authentication & layered security
Security 2
§8.4 - §8.6  
Apr 24 Creating a wireless sensor network in class   HW 10: Chapter 6 & 8 problems
HW 10 Solution
SSL lab for reference only
Apr 29 Student project presentations (final paper due May 9)   In class presentations - 5 to 10 minutes
May 1 The future of the Internet;
Course Review
º The Internet is Broken
link to Technology Review
º The Internet Reborn, Technology Review
OR use the Word document link below:
The Internet is Broken, Technology Review, Jan 2006
º A Tangle of Wires, Technology Review
Project Reports Due Friday, May 9
 
Self-scheduled
FINAL EXAM