Click here for slides from Lectures
Click here for information related to Labs
Course Newsgroup purdue.class.ece463
Instructor:
Sanjay
Rao
Assistant Professor, ECE
Room 246 EE Building
sanjay AT ecn DOT purdue
DOT edu
Instructor Office Hours: Tue 1:30pm-2:30pm [246, EE Building], or by
appointment.
Please see instructor for questions relating to lecture or homework.
Please see TA for questions relating to
projects.
Teaching Fellow:
There is no official Teaching Assistant. However, the following student will help the class:
Mohammad Hajjat
hajjat AT purdue DOT edu
TA Office Hours:
Mon 12pm-1pm (MSEE 190)
Wed 3pm-4pm (MSEE 190)
Lecture Location and Time
Tuesday and Thursday :
12:00-1:15pm, EE 226
Course Description:
This is an introductory class in Computer Networking. We will
study the architecture, principles and design of
the Internet, truly one of the most amazing inventions of recent times. Topics covered will include MAC layer
design (Ethernet/802.11), the IP protocol, routing algorithms, TCP, congestion control and reliability, applications
such as HTTP and peer-to-peer networks. We will also discuss newer trends in networking such as multicasting,
quality of service, and security.
Required Prerequisite:
ECE 264 (Advanced C Programming). This prerequisite will not be waived.
The class will involve significant programming components.
CoRequisite (Recommended, but not required):
ECE 302: While the class is not heavy on math/probability, a knowledge of basic probability is assumed. ECE 302 will be waived with the provision that the student is responsible for refreshing any basic probability material on her/his own.
Course Materials:
Required books:
1. Computer Networks - A Systems Approach, 4th Edition by Larry L. Peterson and Bruce S. Davie, Morgan Kaufmann, 2007.
Recommended books:
1. UNIX Network Programming, Volume 1: Networking APIs: Sockets and XTI, 2nd ed by W. Richard Stevens
2. Computer Networking: A Top Down Approach Featuring the Internet, Third Edition, J. Kurose and Keith Ross, Addison-Wesley, 2004, ISBN No. 0-321-22735-2.
Syllabus:
1. Introduction and Overview
2. Data Link Layer
1. Ethernet/Token Ring/802.11
2. Bridging
3. IP Protocol
1. Intra-Domain Routing
2. Inter-Domain Routing
4. TCP Protocols
1. Reliable data delivery
2. Congestion Control
5. DNS
6. Quality of Service
7. Multicast
8. Peer-to-Peer Networks
1. Gnutella, BitTorrent
9. IPv6 and NATs
10. Internet Security
Course Outcomes and Assessment:
To pass the course, the student must demonstrate proficiency in each of the four course outcomes listed.
i. an understanding of the fundamental principles underlying packet switching networks, and different Local Area Network technologies.
Criteria: Satisfactory Performance in Exam 1
ii. an ability to implement network protocols using network socket programming.
Critieria: Satisfactory Performance in Project I
iii. an understanding of the basic concepts of routing.
Criteria: Satisfactory Performance in Project II.
iv. an understanding of the key principles behind retransmission protocols, congestion control algorithms, and TCP
Criteria: Satisfactory Performance in TCP-related homework.
Grading: [Tentative]
Exams: 55%
Mid Term 25%
Final 30%
Programming Projects: 30%
Homeworks 15%
IMPORTANT: To pass the class, irrespective of your performance in other areas, programming projects must be turned in and
must demonstrate satisfactory effort levels to meet outcomes (ii) and (iii).
.
Class Policies
Programming Projects:
We will provide necessary background information for programming projects in class. Questions of a generic and conceptual nature will be answered. However, we will be unable to debug your code, or provide detailed feedback on why your code does not work.
Homeworks:
·
Homeworks must be submitted at start of lecture on the day it is
due.
·
Late submissions will incur a penalty. Entering class late
will be treated as a late submission.
· Homework must be submitted in hard copy – email submissions are unacceptable.
· Homeworks must be neatly typed. Handwritten solutions are not acceptable.
l
Examinations: Any conflict with the
exam schedule need to be brought to the instructor’s attention in the
first lecture. For emergencies that prevent attendance of a scheduled exam, you
must present documentation confirming exceptional reasons beyond your control.
You must also contact the instructor as soon as you become aware of the cause. The
following are examples of insufficient reasons: non-emergency doctor visits,
emergencies of persons other than immediate family members, job interviews
scheduled after the first lecture.
Campus Emergencies: In the event of a major campus emergency,
course requirements, deadlines and grading percentages are subject to changes
that may be necessitated by a revised semester calendar or other circumstances.
In such an event, information will be provided through the class web-page
and/or the class newsgroup.