|  
      |  | 
		  Students will learn 
	how to put "principles into practice" in the 
	Computer Networks Lab. 
			The lab is a miniature version of the 
			Internet. The available equipment is sufficient to emulate many 
			traffic scenarios found on the real Internet and to teach TCP/IP 
			protocols and data communication to students, and to give them 
			hands-on experience on networking.
 The lab experiments cover some 
	of the important Internet protocols, including IP, ARP, ICMP, UDP, TCP, routing protocols (RIP, OSPF, BGP), and 
	application-level protocols (DNS, HTTP, FTP, SMTP, POP3). In addition to an 
	in-depth study of the Internet protocols in real network settings, you will 
	gain hands-on experience working on networking equipment and acquire useful 
	networking skills. By putting computer networking into practice, this lab 
	aims to teach how network protocols work and how networked systems interact.
		
 There are 12 lab experiments. Each lab consists of a
		prelab, lab session, and a postlab report. Prelab will 
	be individual work. The lab exercises and postlab reports will be completed 
	in groups of 2. The lab exercises are completed without supervision and 
	require on the average 2 hours of work.
 
		Tentative Lab Schedule
 
			
				
					| W | Dt | Lectures | LABs |  
					| 1 | 19/02 | Intro | Lab 0: Introduction to the 
					Lab, Networking Tools and Linux: Objectives of the 
					Lab Experiments, Experiments, Lab Activities, Procedures and 
					Grading, Lab Hardware and Software, Linux 
 Wireshark Lab: Getting Started
 
 CISCO 
		Packet Tracer: Simulation and visualization program 
		designed for networking novices.
 Start to go over networking tutorials of this simulation 
					program as you learn new topics in class and also study in 
					advance during the semester. It is an exiting and very 
					useful tool to learn networking concepts, network devices 
					and their configurations at home without going to a real lab 
					environment.
 |  
					| 2 | 26/02 | App.   | This is the 
					tentative lab schedule and some possible experiments, the 
					students should follow the Lab TA's web page weekly for the 
					final lab program. 
					Lab 1:TCP/UDP 
					Socket ProgrammingExample 
					Programs Introduction to TCP/UDP socket programming and 
					understanding reliable connection-oriented and unreliable 
					connectionless services provided by the transport layer 
					protocols, TCP and UDP respectively. Compiling, running, and 
					modifying simple TCP/UDP Java client/server applications on 
					a computer and then porting the same client/server 
					applications to 2 (one server/one client) and 3 (one server, 
					2 clients) computers.
 
 Lab Assignment 
					1: 
					
					Getting 
					Started to Network Programming using Java TCP/UDP Sockets
 |  
					| 3 | 05/03 |  | Lab 2: 
					
					
					DNS and
					HTTP Wireshark 
					Labs from the main text book |  
					| 4 | 12/03 |  | Lab 3: E-Mail Protocols: 
					Analysis of SMTP and POP3 Protocols using Wireshark 
 Some Possible Socket Programming Labs:
 - Web Server
 - Mail Client
 |  
					| 5 | 19/03 | Transport | Lab 4: 
					UDP 
					
					
					Wireshark Lab |  
					| 6 | 26/03 |  | Lab 5: 
					TCP 
					
					
					Wireshark Lab |  
					| 7 | 02/04 | Midterm | Problem 
					Solving for Midterm Exam |  
					| 8 | 09/04 | Network | Lab 6: 
					IP Wireshark Lab  
					and ICMP Wireshark 
					Lab |  
					| 9 | 16/04 |  | Lab 7: 
					NAT Wireshark Lab |  
					| 10 | 22/04 |  | Lab 8: Routing Protocols |  
					| 11 | 30/04 | Data Link LANs
 | Lab 9: 
					Ethernet-ARP 
					Wireshark Lab |  
					| 12 | 07/05 |  | Lab 10: 
					802.11 Wireshark 
					Lab |  
					| 13 | 14/05 |  | Lab 11: |  
					| 14 | 21/05 |  | Lab Final |  
    	Lab Materials and 
	References     |