课程名称:TCP/IP协议与网络编程 课程编号: H18519
英文名称:TCP/IP & Programming 课程属性: 必修
学 时:40 学 分: 2.5
先修课程:C程序设计、网络原理 后续课程:
适用专业:网络工程
一、课程简介
1、知识掌握
TCP/IP协议与网络编程是网络工程专业本科生必修的一门专业课程。本课程主要介绍目前Internet/Intranet上使用的各个流行的通信协议的具体细节及编程开发的相关知识,主要包括网络层、传输层、应用层的一些重要协议。
2、能力培养
完成本门课程的学习后,学生一方面对流行的各层通信协议细节有基本的了解,为以后的学习工作打下良好的基础;另一方面可以掌握网络通信协议的基本设计思想、方法,以便服务于后继网络软件的开发。
3、教学方法
为了顺利达到本门课程的教学目的,在教学中要采用知识讲授与实际案例分析相结合、知识吸纳与实际动手操作相结合的教学手段,使学生不仅学到了知识,还基本具备了将知识与实际相结合的能力。
二、课程内容及学时分配
| 教 学 环 节 课 时 安 | ||||||
| 讲课 | 习题课 | 讨论课 | 实验课 | 上机 | 其它 | 合计 |
| 32 | 8 | 40 | ||||
第一单元:概述(建议学时数:2 学时)
【学习目的和要求】
1.知识掌握
了解计算机网络的体系结构,掌握OSI参考模型以及TCP/IP协议模型的工作过程及结构组成;掌握网络协议的基本知识。
2.教学方法
讲授知识与案例分析相结合。
【重点】
计算机网络的体系结构
OSI参考模型以及TCP/IP协议模型
网络协议的基本知识
【难点】
OSI参考模型以及TCP/IP协议模型的工作原理
第二单元:网络层协议及相关知识(建议学时数:10 学时)
【学习目的和要求】
1.知识掌握
了解IP包首部的详细组成,及不同类型的网络应用程序需要选用的首部参数。了解IP的路由选择;了解IP的子网划分;了解特殊情况的IP地址在网络软件开发中的作用。掌握ifconfig与netstat命令的使用。掌握ARP及RARP的工作原理及在应用程序开发中的使用。掌握ICMP协议的工作原理及在应用程序开发中的使用。
2.能力培养
具有根据应用程序的需要选择适当类型IP数据包进行开发的能力。
3.教学方法
讲授知识与案例分析相结合。
【重点】
IP包首部的详细组成,及不同类型的网络应用程序需要选用的首部参数
IP的路由选择与子网划分
特殊情况的IP地址在网络软件开发中的作用
ARP及RARP的工作原理及在应用程序开发中的使用
ICMP协议的工作原理及在应用程序开发中的使用
【难点】
IP包首部的详细组成,及不同类型的网络应用程序需要选用的首部参数
特殊情况的IP地址在网络软件开发中的作用
ARP及RARP的工作原理及在应用程序开发中的使用
ICMP协议的工作原理及在应用程序开发中的使用
第三单元:套接字编程(建议学时数:6 学时)
1. 知识掌握
了解客户机/服务器模型的工作机理,掌握套接字的概念与基础,了解套接字的函数模型,熟悉基于TCP网络层协议的应用编程;掌握基于MFC的套接字编程。
2. 能力培养
能够实现基于MFC的套接字简单的程序实例
3. 教学方法
讲授知识与案例分析相结合。
【重点】
套接字的编程的基础;
套接字的函数模型的使用;
熟悉MFC套接字编程中常用函数及常用类的用法
【难点】
套接字编程;套接字的函数的理解和使用;MFC套接字编程中常用类在实际编程中的用法。
第四单元:UDP及其在开发中的应用(建议学时数:6 学时)
【学习目的和要求】
1.知识掌握
了解UDP协议的特点和适合的工作场合;掌握UDP首部的细节及在应用程序开发中的设置;了解UDP和ARP之间的交互作用;了解UDP在应用开发中的限制;掌握UDP服务器的设计;掌握如何用UDP开发轻量级的局域网应用。
2.能力培养
具有采用UDP开发局域网应用的能力。
3.教学方法
讲授知识与案例分析相结合。
【重点】
UDP协议的特点和适合的工作场合
UDP首部的细节及在应用程序开发中的设置
UDP和ARP之间的交互作用
UDP在应用开发中的限制
UDP服务器的设计
一个采用UDP技术的局域网聊天室案例
【难点】
UDP首部的细节及在应用程序开发中的设置
UDP服务器的设计
一个采用UDP技术的局域网聊天室案例
第四单元:TCP及其在开发中的应用(建议学时数:6 学时)
【学习目的和要求】
1.知识掌握
了解TCP协议的特点和适合的工作场合;掌握TCP首部的细节及在应用程序开发中的设置;了解TCP连接的建立与终止;了解TCP的交互数据流以及成块数据流;了解TCP的超时与重传;了解TCP的坚持定时器及保活定时器;掌握如何用Socket开发广域网的文件传输程序。
2.能力培养
具有采用Socket开发广域网应用的能力。
3.教学方法
讲授知识与案例分析相结合。
【重点】
TCP协议的特点和适合的工作场合
TCP首部的细节及在应用程序开发中的设置
TCP连接的建立与终止
TCP的交互数据流以及成块数据流
TCP的超时与重传
TCP的坚持定时器及保活定时器
如何用Socket开发广域网的文件传输程序
【难点】
TCP首部的细节及在应用程序开发中的设置
TCP的交互数据流以及成块数据流
TCP的坚持定时器及保活定时器
如何用Socket开发广域网的文件传输程序
第五单元:常用的应用层协议的标准及实现(建议学时数:10 学时)
【学习目的和要求】
1.知识掌握
了解TFTP协议的标准及如何开发实现客户端;了解Telnet协议的标准及如何开发实现客户端;了解FTP协议的标准及如何开发实现客户端;了解POP3及SMTP协议的细节及相关邮件应用程序的开发。
2.能力培养
具有查看RFC根据标准开发特定协议客户端的能力。
3.教学方法
讲授知识与案例分析相结合。
【重点】
TFTP协议的标准及如何开发实现客户端
Telnet协议的标准及如何开发实现客户端
FTP协议的标准及如何开发实现客户端
POP3及SMTP协议的细节及相关邮件应用程序的开发
【难点】
Telnet协议的标准及如何开发实现客户端
FTP协议的标准及如何开发实现客户端
POP3及SMTP协议的细节及相关邮件应用程序的开发
三、考核方式及要求
平时成绩(出勤、作业、上机成绩各10%);
按照教学进度布置4次作业;
第5周开始每周在A5北513上机一次,共4次;
期末成绩(70%,闭卷考试);
课程设计出勤、报告;
四、教材及参考书
1.《TCP/IP协议分析与应用》,杨延双 张建标编著,机械工业出版社;
2.《TCP/IP网络编程》,仁泰明编著,人民邮电出版社;
3.《TCP/IP——协议分析与应用编程》,李峰、陈向益编著,人民邮电出版社;
4.《Visual C++ 网络编程教程(visual studio 2010平台)》,郑阿奇 主编,电子工业出版社;
5.《TCP/IP详解(卷1:协议)》,W. Richard Stevens 著,范建华,胥光辉,张涛等译,机械工业出版社;
6.《TCP/IP详解(卷2:实现)》,W. Richard Stevens 著,卢雪莹、蒋慧 等译,机械工业出版社;
五、责任认定
1.大纲执笔人:吴明飞
2.大纲审定人:刘亚志
3.制定时间:2019年9月

