辽宁科技大学课程教学大纲

  • 格式:docx
  • 大小:13.35 KB
  • 文档页数:3

辽宁科技大学课程教学大纲

课程名称:Linux网络编程

英文名称:Linux Network programming

课程编号:x

学 时 数:64

其中实验学时数:20 课外学时数:

学 分 数:4.0

适用专业:网络工程

一、课程的性质和任务

《Linux网络编程》是网络工程专业开设的一门专业必修课。本课程主要讲授Linux系统下基于TCP/IP网络套接口的基本变成方法,包括迭代服务器与并发服务器编写方法、进程与线程编程技术、名字与地址解析编程、广播与组播编程及原始套接口编程等。目的在于通过这门课的学习,使学生进一步深化进程与线程的理解,并在此基础上实现并发服务器,掌握通信双方协议制定与实现。

二、课程教学内容的基本要求、重点和难点

(一)网络编程入门

要求熟悉TCP/IP协议、TCP/IP通信特点,掌握Linux环境下C编程的基本过程;掌握套接字类型、套接字地址类型、套接字基本函数。

重点:套接字类型、套接字地址类型、套接字基本函数。

(二)基于TCP套接字编程

要求熟悉TCP通信特点,掌握TCP通信网络编程的基本流程、TCP套接字编程函数,应用TCP协议编写基本TCP套接字编程实例。

重点:TCP服务器与客户端连接。

难点:TCP服务器与客户端连接。

(三)基于UDP套接字编程

要求熟悉UDP通信特点,掌握UDP通信网络编程的基本流程、UDP套接字编程函数,应用UDP协议编写基本UDP套接字编程实例。

重点:数据收发。

(四)并发服务器

要求了解并发服务器常见类型,熟练掌握多进程并发服务器、多线程并发服务器设计方法,编写简单的TCP多进程、多线程并发服务器。

重点:多进程并发服务器、多线程并发服务器设计方法

难点:多进程、多线程编程

(五)名字与地址转换编程

要求掌握名字解析与地址解析常见函数。

(六)广播与多播

要求掌握广播与多播编程。

重点:多播编程。 难点:多播编程。

(七)原始套接字编程与数据链路层编程

应用原始套接字处理ICMP报文,了解Libpcap函数库使用基本方法。

三、教学方式及学时分配

序号 主要内容 主要教学方式 学时分配 辅导答疑比例

1 网络编程入门 讲授+实验 8 2:1

2 基本TCP套接字编程 讲授+实验 6+4 2:1

3 基本UDP套接字编程 讲授+实验 6+4 2:1

4 并发服务器 讲授+实验 8+8 2:1

5 名字与地址解析 讲授+实验 4+2 2:1

6 广播与多播 讲授+实验 6+2 2:1

7 原始套接字编程与数据链路层编程 讲授+实验 6 2:1

四、课程其他教学环节要求

(一)实验环节

实验题目 实验内容 实验类别 学时

TCP数据发送与接收 基本TCP套接字编程 验证性 4

UDP数据发送与接收 基本UDP套接字编程 设计性 4

多进程服务器 基于TCP多进程并发服务器 综合性 4

多线程服务器 基于TCP多线程并发服务器 设计性 4

名字与地址解析 名字与地址解析 验证性 2

多播通信 应用多播实现多人聊天 设计性 2

(二)作业

根据授课进度,布置作业,每章讲授结束后,收一次作业,批改后做集体答疑,讲解作业中出现的问题。作业的题型以编写程序为主。

(三)课外

首先完成教师布置的作业,然后利用实验室开放进行自主学习,练习编写程序。

五、本课程与其他课程的联系

1、先修课程:C++程序设计、算法与数据结构、操作系统、数据库原理及应用、Linux服务器管理与应用、Linux数据库编程

2、后续课程:毕业设计

六、教学参考书目

1.《Linux/UNIX 网络编程》 水利水电出版社 甘刚主编 2008年

2.《网络编程与分层协议设计》,机械工业出版社,刘飚主编 2011年

3.《Linux网络编程(第二版)》 ,宋敬彬编著,清华大学出版社,2010年

大纲撰写人:吴建胜

大纲审阅人:张玉军 负 责 人:吴建胜