武汉理工大学TCPIP及网络编程复习重点

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

复习重点:

TCP/IP基础:分层模型、IP地址特点、应用层主要协议;

网络编程基础:预留常用端口号、TCP与UDP的主要特点及各自编程主要步骤、应用层的唯一标识、IO模型、MFC对Windows Sockets封装类、WinInet API的封装类功能;ARP:主要步骤、主要概念、主要函数及功能

客户机/服务器模式编程:客户端/服务器端编程主要步骤、主要概念

FTP:主要交互命令、请求流程

HTTP:客户端请求主要命令、http请求流程

电子邮件:客户端主要命令、标准信头、发生接收主要步骤

编程分析:tcp编程客户机/服务器基本编程、udp基本编程。

TCP和UDP特点及各自编程步骤

TCP特点:

(1)TCP 是面向连接的运输层协议。

(2)每一条TCP 连接只能有两个端点(endpoint),每一条TCP 连接只能是点对点的(一对

一)。

(3)TCP 提供可靠交付的服务。

(4)TCP 提供全双工通信。

(5)面向字节流。

(6)TCP不保证最小传输速率,TCP不允许发送进程以设想的速率发送数据

(7)TCP不提供任何延时保障

UDP 特点:

(1)UDP 是无连接的,即发送数据之前不需要建立连接。

(2)UDP 使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。

(3)UDP 是面向报文的。UDP 没有拥塞控制,很适合多媒体通信的要求。

(4)UDP 支持一对一、一对多、多对一和多对多的交互通信。

(5)UDP 的首部开销小,只有8 个字节。

(6)UDP也不提供延时保障

编程步骤:

TCP编程

UDP编程

2.客户/服务器端编程主要步骤:

3.电子邮件

STMP指令

QUIT:终止会话

HELP:请求SMTP命令的帮助

NOOP:空操作

VRFY:验证地址(不要求一定启用)

EXPN:扩展一个别名

HELO:客户机问候服务器

MAIL:指定邮件的发送者

RCPT:指定邮件的接收者

DA TA:发送邮件的数据状态

REST:复位会话状态

SEND:指定要发送到用户终端的邮件的发送者SOML:Send或Mail

SAML:Send和Mail

TURN:交换客户机/服务器角色

标准信头:

信头的一般格式

信头由若干信头字段(header field)组成。

所有的信头字段包括:字段名,可选的空格,冒号“:”,可选的注解空格和可选的字段体,最后以回车换行符(CRLF)终止。即

信头字段= 字段名:字段体

结构化字段和非结构化字段

信头字段大体可以分为结构化字段和非结构化字段两种。

结构化字段有特定的格式,由语法分析程序检测。

非结构化的字段含有任意的数据,没有固定格式。

信头字段的元素

尽管Email信件的总体结构非常简单,但一些信头字段的结构是很复杂的。下面介绍一些大多数字段共有的元素。

(1)空白符

(2)注解

(3)字段折叠

(4)字段大小写

信头中必须要有的字段

在创建信件时,必须使用Date或Resent-Date字段指定创建信件的日期,必须使用From字段指定创建该信件的人或程序的信箱,必须至少使用TO、CC或Bcc中的一个,或者与它们等效的Resent-TO,Resent-CC,Resent-Bcc中的一个,来指定接收信件的人。

除了这些创建信件时要求的信头以外,每个处理信件的邮件传输代理(MTA)必须在它处理的信件头部开始处加一个Received字段,就好像打了一个中转邮戳,这就是我们通常在许多信件的开始看到许多个Received字段的原因。

发送电子邮件的一般步骤

1.打开邮件发送的对话;

2.指定发送者的邮箱;

3.指定接收者的邮箱;

4.发送邮件的内容;

5.结束邮件发送对话。

接收电子邮件的一般步骤

首先利用Winsock连接上POP3服务器,然后:

1.使用USER命令发送用户信箱名。

2.使用PASS命令发送信箱密码。如果密码和信箱不匹配,必须从上一步骤重新开始。3.对信箱邮件进行操作。

此阶段称为事务状态,在这一个阶段,有许多POP3命令可以使用,大体分为下面几类:(1)取得信箱及邮件状态的命令

Stat:取得信箱大小信息

List:取得邮件大小信息

Uidl:取得邮件的唯一标识符。

(2)取得邮件内容的命令

Retr:从服务器取回邮件

TOP:取邮件信头和信体的前N行。

(3)对邮件进行操作的命令

Dele:为邮件做删除标记。

Rset:复位POP会话。

4.接收邮件完毕,发送QUIT命令,结束POP3对话。

4.预留的常用端口号。

TCP UDP FTP SMTP TFTP HTTP

6 1

7 21 25 69 80

POP3 ONS SNMP RPC

110 58 161 135

5.应用层的唯一标识?

套接字(IP地址+端口号)

6.IO模型

①Select(选择)

②WSAAsyncSelect(异步选择)

③WSAEventSelect(事件选择)

④Overlapped(重叠)

⑤Completion port(完成端口)

注:Windows套接字在两种模式下执行I/O操作,及阻塞模式和非阻塞模式。

7.MFC对Windows Socket封装的类有哪些?

CAsyncSocket类和CSocket类

8.WinInet API的封装类功能。

①使用HTTP协议将HTML页面从服务器下载到浏览器中。

②发送FTP请求进行上传或下载文件,或获取目录列表。

③使用Gopher菜单系统获取网络资源。

④ 使用Gopher、FTP、HTTP协议建立于服务器的连接,向服务器发送请求以及断开与服务

器之间的连接。

9.HTTP:客户端请求的主要命令和HTTP的请求流程

9.1客户端请求的主要命令

①GET:请求获取Request-URI所标识的资源。

②POST:在Request-URI所标识的资源后附加新的数据。

③HEAD:请求获取由Request-URI所标识的资源的响应消息报头。

④PUT:请求服务器存储一个资源,并用Request-URI作为其标识。

⑤Delete:请求服务器删除Request-URI所标识的资源。

⑥TRACE:请求服务器回送收到的请求信息,主要用于测试或诊断。

⑦CONNECT:保留将来使用。

⑧OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求。

9.2HTTP的请求流程

HTTP协议属于TCP/IP网络模型中的应用层的协议,两个应用程序(这里指浏览器和服务器)

相关文档
最新文档