当前位置:文档之家› 实验五 应用层协议分析一

实验五 应用层协议分析一

实验五应用层协议分析1

实验目的:

掌握http协议过程;了解FTP协议过程;了解SMTP协议过程;了解POP3协议过程;

实验类型:验证

实验学时:3学时

实验内容及方法:

观察http协议过程;观察一个FTP协议过程;观察SMTP协议过程;观察POP3协议过程

实验仪器设备:计算机、Ethereal软件。

实验步骤:

1.观察http协议过程。

(1)在计算机上打开Ethereal软件,进行报文截获。

(2)从浏览器上访问页面,具体操作为打开网页,浏览网页,关掉网页。

(3)停止Ethereal的报文截获。

捕获的数据包如下

(4)通过在上网过程中截获报文,分析HTTP协议的报文格式和工作过程。

1、分析HTTP协议报文:从众多HTTP报文中选择两条报文,一条是HTTP 请求报文(即get 报文),另一条是HTTP应答报文,将报文信息填入

表5-1.

表5-1HTTP报文

No. Source Destination Info.

457 192.168.231.55 202.193.160.38 GET /HTTP/1.1

479 202.193.160.38 192.168.231.55 HTTP/1.1 200 OK(text/html)

2、分析HTTP协议请求报文格式:分析1、中选择的HTTP请求报文(即 get 报文)中各字段的实际值并填写表5­2。

表5-2 HTTP 请求报文格式

字段名字段取值字段表达信息

方法字段GET 获取包含在请求中的

URI所标识的信息

URI /

版本字段HTTP/1.1 支持的http版本

首部字段Accept:*/*\r\n 客户端可识别的内容

Accept-Language:zh-cn\r\n 客户端能解释的语言—

简体中文

Accept-Encoding:gzip,deflate\r\n 解码gzip压缩部分数据

User-Agent:Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.1;SV1;.net CLR 2.0.50727...........)\r\n 定义用于产生请求的软件类型

Host:\r\n 提交请求页面

Connection:keep-alive\r\n 表明连接状态为保持开

3、分析HTTP协议应答报文格式:分析1中选择的HTTP 应答报文中各字段的实际值并填写表5-3。

表5-3 HTTP 应答报文格式

字段名字段取值字段表达信

版本字段HTTP/1.1 支持的http

版本

状态码200 OK

首部字段Server:nginx/1.0.8\r\n 服务器属性Date:SAT,28 apr 2012 10:19:42 GMT\r\n 回应的日期

Content-Type:text\html\r\n 内容类型

Connection:keep-alive\r\n 连接状态

X-powered-By:PHP/5.3.9\r\n

Cache-control:max-age=0\r\n 缓存控制间

Expires:Sat,28 Apr 2012 10:19:42 有效期

Vary:accept-Encoding:gzip\r\n 解码gzip压

缩部分数据Content-Encoding,User-Agent\r\n 内容解码

Content-Length:8124\r\n 内容长度

Content-encoded entity body(gzip):8124

bytes->35097bytes Line-based text

data:text/html

4、 HTTP 协议的工作过程

(1)客户端连接到Web服务器

一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。

(2)发送HTTP请求

通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。

(3)服务器接受请求并返回HTTP响应

Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。(4)释放连接TCP连接

Web服务器主动关闭TCP套接字,释放TCP连接;客户端被动关闭TCP套接字,释放TCP连接。

(5)客户端浏览器解析HTML内容

客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTML的语法对其进行格式化,并在浏览器窗口中显示。

2.观察一个FTP协议过程

(1)在计算机上打开Ethereal软件,进行报文截获。

(2)单击“开始/运行”,在运行框中输入命令,打开命令行窗口。

(3)在命令行窗口中,登陆FTP服务器,并下载文件。

(4)停止Ethereal的报文截获。

(5)通过在上网过程中截获报文,分析FTP报文格式和FTP协议的工作过程。

FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。 • FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。

主进程的工作步骤:

(1)打开熟知端口(端口号为21),使客户进程能够连接上。

(2)等待客户进程发出连接请求。

(3)启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处

相关主题