For further information see Student Handbook.

advertisement
New York City College of Technology
Computer Systems Technology Department
Course Description
CS703 - Network programming with C and UNIX
(4 Hours, 3 Credits)
Instructor: Dr. Hong Li
Office: N1000
Email: hli@citytech.cuny.edu
Telephone: 718-260-5546
Office Hours: Tues. 12 – 1pm Wed. 3 – 4pm
Course Aims/Description:
This course presents a thorough treatment of Network programming with UNIX/LINUX in C.
Topics cover networking basics as applies to the UNIX operating systems and network file systems.
It will teach students the fundamentals of UNIX/LINUX operating system and fundamental of
Socket programming using C language. A hands-on programming experience using compilers that
run on UNIX based operating systems. Students will be taught the skills to write programs using a
UNIX-based C programming environment. In addition, students will be introduced to the
fundamentals of network programming. All concepts will be demonstrated through laboratory
assignments.
Course Objectives:







Introduce students the Unix/Linux operating system
Teach students the file system of Unix and basic system commands
Introduce fundamental of TCP/IP Protocol
Teach students model of client and server programming
Teach students to build the connection-oriented client/server applications
Teach students to build the connectionless client/server applications
Introduce the concept of Network Security Programming
Prerequisites:
CS603 Object-Oriented Programming with grade C or better
Required Materials:
Text: Bruce Molay, Understanding Unix/Linux Programming – A Guide to Theory and Practice,
Prentice Hall
1
Academic Integrity Policy - The instructor of the course has the authority to give a grade of F if the
student submits the work of another person in a manner that represents his/her work, or knowingly permits
one’s work to be submitted by another person without the instructor’s permission. All class projects must
be on your own floppy disk.
For further information see Student Handbook.
Attendance Policy:
You are permitted to be absent from class a maximum of three class sessions. This is in
accordance with college policy that sets the maximum number of permissible absences at 10% of
the number of class meetings scheduled for the semester.
Grading Policy (Subject to change):
Assignment:
Midterm Exam:
Quizes:
Final Exam:
30%
25%
15%
30%
Course Outline:
Topic
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Introduction to Linux operating system
Linux commands and editor
Linux File system
Introduction to Network communications
TCP/IP protocol stack and IP addressing
Basic Socket Concepts
Socket type and protocol
Connectionless Protocol
Exam and Connection-oriented Protocol for client
Connection-Oriented Protocol for server
Using standard I/O on socket
Concurrent Client Server
Broadcasting with UDP
Network Security Programming
Review and Final
2
ASSESSMENT CRITERIA
For the successful completion of this course a Evaluation methods and criteria
student should be able to:
1. work with the Unix/Linux operating
1. Students will demonstrate comprehension of
system
Unix/Linux operating system throughout the
course in class and in laboratory assignments
2. Understand the file system of Unix and
2. Students will demonstrate comprehension of
master the basic system commands
Unix/Linux file system and basic commands
throughout the course in class and in laboratory
assignments
3. Understand the fundamental of TCP/IP
3. Students will demonstrate comprehension of
Protocol
TCP/IP protocol on examinations
4. Understand the model of Client/Server
programming
5. To develop the connection-oriented
client/server applications
6. To develop the connectionless
client/server applications
7. Understand the concept of Network
Security Programming
4. Students will demonstrate comprehension of
Client/Server model on examinations
5. Students will demonstrate comprehension of
TCP/IP protocol on examinations and
individual or team project assignments
6. Students will demonstrate comprehension of
TCP/IP protocol on examinations and
individual or team project assignments
7. Students will demonstrate comprehension of
TCP/IP protocol on examinations and project
assignments
3
Download