网络编程实验课教学大纲

发稿时间:2009-10-19浏览次数:3581

网络编程实验课教学大纲

 

课程名称:网络编程

英文名:Network Programming

课程编号:

课程总学时:

实验总学时: 32

实验周学时: 2

开设实验项目数: 7

课程总学分:

实验课学分: 2

面向其他院系:

本大纲主撰人: 陈贵海

 

一、         实验教学目标与基本要求(简明扼要叙述):

 

目的:

1.         巩固Unix知识。学生应该已有一些Unix知识,但我们还有独立的一章给你带来非同寻常的Unix知识,你不仅在命令操作层也在系统调用层将成为Unix真正的高手

2.         理论与实践相结合。以往课程或者理论性强或者偏向于实际应用,我们同时强调两个方面。你既要亲手编写TCP/IP程序,有需要深入了解ICP/IP协议。这些可为你今后的研究工作夯实基础

3.         TCP/IP的解剖。我们将逐步深入解剖TCP/IP的每一个部分。你再也不会为Internet的工作原理感到迷惑

4.         其它,还由更多需要你自己去发现

要求:

1.        背景知识:要学过CUnix,操作系统,计算机体系结构,计算机网络等课程。

2.        本实验课以编程序为主要内容,共有8次实验项目,最后得分计算方法如下:

·                     平时出勤率:5% 

·                     测试与考试:15%

·                     8实验项目:80%  

 

二、实验课程内容与学时分配(请不要随意变动此表的格式)

序号

实验项目名称

(每行不超过8字)

           

(简明扼要叙述80字以内)

(每行不超过18字)

   

本专业

非本

专业

必修实验:

 

 

 

1

Unix单机环境下的C/S模式编程

写出两个程序实现C/S模式,Client读取Unix命令,通过IPC传给Server去执行,并读回Server的执行结果。两个程序应该在一台Unix机器上执行。

4

 

2

远程终端Telnet的实现

写出两个程序实现Telnet服务,Server用面向连接和并发服务器方式工作,并发布一个公开的端口号。然后Client在另外任何一台机器上便可打入Telent命令行。

5

 

3

异构平台的互通

对上一个是实验做适当的修改,使程序能同时运行在不同的平台上。例如,client运行在Windows机器上,server运行在Unix机器上。

3

 

4

文件传输协议FTP的实现

写出两个程序实现Ftp服务,Server用面向连接和并发服务器方式工作,并发布一个公开的端口号。然后Client在另外任何一台机器上便可打入Ftp命令行。

4

 

5

超级服务器superserver的实现

编写一个超级服务器程序。使之能同时提供多种服务,例如利用select机制将上面的Telnet服务和Ftp服务写到一个服务器程序中。