CSCI 4345
Computer Networks
Spring 2007
Professor: Dr. John P. Abraham
Office: ENGR 3.276
E-mail: jabraham@panam.edu
Email is the
best way to contact me.
Email: jabraham@panam.edu. Tele: 381-3550
|
RequiredText book: Comer, Douglas E., Internetworking with TCP/IP,
Principles and Protocols, 5th Edition, Prentice Hall, 2006. ISBN 0-13-187671-6
Reference:
·
Behrouz A. Forouzan, TCP/IP
Protocol Suite, 34d Ed., McGraw Hill, 2006. ISBN 0-07—296772-2
·
Tanenbaum, A. S., 2002, Computer Networks, 4th
Ed., Prentice Hall,
·
Data and Computer
Communications 7th edition, by William Stallings, Prentice
Hall, 12004
·
UNIX Network Programming by W. Richard Stevens, Prentice Hall, 1990
Expected
Background:
Students are expected to be able to program in C or
++, VB or Java. Students who are not fluent in these topics should make up the
deficiencies by home works and programming exercises.
Catalog description:
An introduction to data communication
topics, including data transmission, encoding data link control, switching, network
topologies, protocols, internetworking and data security. Examples of existing
networks and network architectures are studied.
Prerequisites: Operating systems or Computer Architecture.
Course Topics:
Fundamentals of computer
networks; theory, design, implementation and performance analysis of computer
networks; network protocols; examples of computer network applications.
Grading:
Midterm and final exams 40%
Group project 20%
(5% for presentation, 5% written report, 10% for quality of project)
Independent project 10%
Programming assignments (3) 15%
Group Assignments (3) 15%
COURSE OBJECTIVES: Upon conclusion of this course a student will
be able to plan and install a TCP/IP protocol stack based local area network,
set up switches and routers, and write socket programs for communication.
Learning
outcomes:
1.
Compare and
contrast the OSI and TCP/IP models, discuss standardization and history.
2.
Become familiar
with all the layers of the TCP/IP model.
3.
Given a
network problem, create appropriate topology and draw wiring diagrams.
4.
Make cat 5
cables and connect them with switches and make crossover cables where
appropriate.
5.
Configure
servers, switches and routers. Discuss frames
and MTUs. Do
calculations on fragments. Discuss Physical vs. IP addresses. Discuss ARP.
6.
Compare and
contrast circuit switching and packet switching.
7.
Create
subnets and supernets.
8.
Create
routing tables.
9.
Setup static
IP address as well as DHCP based addresses.
10.
Setup a DNS.
11.
Setup a mail
server
12.
Setup a
wireless network
13.
Install
appropriate network security
14.
Write socket
programs in C or Java.
Assignments:
General instructions about programming: You may choose any of the following
languages: C, C++, Java, Visual Basic. If
you would like to use another language please talk with me first. I will not give you any assistance with the
programming assignments. You are welcome
to talk with others in the class to get general ideas and algorithms, but may
not view their source codes. Assignments
are due at the beginning of the class.
Late penalties: 1 day=10%, 2 days=20%, 1 week=30%, 2 weeks=50%, after
two weeks I do not accept assignments.
General
instructions about the group project: Start working on the research right away. Submit a topic for approval by the 2nd
week. All research should be completed
by the middle of February. Examples of
group projects done in the past will be discussed in class.
General
instructions about the individual project: Choose something you want to
do. Example of such projects may be
setting up a VPN, wireless network security, Windows SharePoint, Calendar
sharing, contact sharing, media center, etc.
General
instructions about the group assignments: Group assignments are given to
encourage cooperation among students.
Consider yourself as a team leader in a computer network
department. Suppose you are asked to
prepare specifications and budgets for new implementations. Your first group assignment is this: Suppose
your company is planning to install a LAN.
You are asked to prepare specifications and prepare a budget to connect
two servers, 100 workstations, and 10 printers.
Assume that you already have the computers, printers, servers and
existing cat 5 wiring. Provide
alternative specifications, and different budgets based on the alternatives to
present to a board meeting. You will
need to research what is required to do the network, how to set up access to
the web, etc. You may want to visit
Dell, HP, IBM, etc. to find out what is available. Additional assignments will be given every 3
or 4 weeks.
All
students in this class should have sufficient working knowledge installing and
removing interface cards, installing appropriate driver software, assigning
IRQ, base address, etc. If you do not
have enough experience in these matters, you need to build a computer with
parts provided. All students need to
write one page summarizing steps in building a computer or your practical
experiences working with hardware.
Programming
assignments:
1.
Write a Java program to discover the IP address of your machine.
2.
Write a program to send a file across Transport Service Access Points (TSAPs) also known as TCP ports or Sockets. Your program can select any
non-privileged port (that is, the port number should be greater than
1024).
3. You have a choice for this assignment: Write a
server program to make use of threads.
Write appropriate client program to test it. OR Write a Java program to open a file on a
remote computer and look up records.
Drop
Policy: A student who requests a
drop on or before THE OFFICIAL
DAY TO DROP will receive a DR. After
that DP or DF will be given based on the academic standing at the time. It is the responsibility of the student to
take care of necessary paper work to receive DP, D, or W. All DP/DFs should
be handled prior to the official cut off date for dropping.
Attendance is required. A student with
three or more unexcused absences (10% of the classes) will be given a DF.
Classroom Conduct: All students are expected
to demonstrate professional behavior and use language appropriate for the
classroom learning experience. All
cell phones must be turned off during class. Cell phones must be entirely out of sight
(inside a closed backpack or purse, for example) during exams and other
in-class assignments.
Documented Disability: If you have a documented disability which
will make it difficult for you to carry out the work as I have outlined and/or
if you need special accommodations/ assistance due to the disability, please
contact the Office of Services for Persons with Disabilities (OSPD), Emilia Schunior-Ramirez Hall, Rm. 1.101, 316-7005
immediately. Appropriate arrangements/
accommodations can be made.
WEEK |
TOPIC |
CHAPTERS |
Assignments due |
1 |
Introduction & Underlying Technologies |
1 |
|
2 |
Internetworking concept & classful addressing |
2,3 Lecture notes |
|
3 |
Classful addressing |
3,4 Lecture notes |
Feb1 Group Ass 1 |
4 |
Internet Protocol |
4,5 |
Feb 8 Program Ass1 |
5 |
Datagram forwarding |
6,7 |
Feb 15 Group ass2 |
6 |
ICMP & classless addressing |
8,9 Lecture notes |
March 6 Prog Ass2
Group Ass 3 |
7 |
Protocol layering and UDP |
10, 11 |
|
8 |
EXAM I |
|
|
9 |
TCP & Routing |
12,13 |
Mar 22 |
10 |
Routing and BGP |
13, 14 Lecture notes |
Mar 27 Mar 29 Group Pro1 |
11 |
RIP, OSPF and Multicasting |
15,16 |
Apr 3 Apr 5 Group Proj2 |
12 |
Mobile IP, NAT, VPN |
18,19 |
Apr 10 Apr 12 Group proj3 |
13 |
Client Server Model, Sockets |
20,21 |
Apr 17 Apr 19 Prog Ass 3 |
14 |
DHCP, DNS |
22,23 |
Apr 24 Group Proj4 Apr 26 Group Proj5 |
|
Final Exam: Thurs, May
10 12:45 p.m.-2:30 p.m. |
|
|