快充报文解析

快充报文解析
快充报文解析

非车载充电机与BMS通讯协议解析1、充电握手阶段

BRM:详见数据包传输格式。

2、参数配置阶段

BCP:详见数据包传输格式。

3、充电阶段

BCS:详见数据包传输格式。

4、充电结束阶段

5、数据包传输格式

整个快充报文交互过程中,以下地址以数据包的格式发送信息:BRM(BMS和车辆辨识报文)、BCP(动力蓄电池充电参数)、BCS(电池充电总状态)。

整个充电过程中,数据包均以以下格式进行传输:

帧ID 数据长度数据备注

1CECxxxx 0x08 10 xx xx xx xx ?? ?? ?? 通知发送数据包1CECxxxx 0x08 11 xx xx xx xx ?? ?? ?? 应答接收数据包1CEBxxxx 0x08 01 xx xx xx xx xx xx xx 数据

1CEBxxxx 0x08 02 xx xx xx xx xx xx xx 传输

1CEBxxxx 0x08 03 xx xx xx xx xx xx xx 内容

·

·

·

1CECxxxx 0x08 13 xx xx xx xx ?? ?? ?? 结束应答

注释:xx为数据包个数,??为参数组编号(PGN)。

BRM的PGN:000200H;

BCM的PGN:000600H;

BCS的PGN:001100H。

http协议请求响应报文格式及状态码详解

HTTP协议报文格式 HTTP协议(Hypertext Transfer Protocol――超文本传输协议)浏览器端(客户端)向WEB 服务器端访问页面的过程和HTTP协议报文的格式。 基于HTTP协议的客户机访问包括4个过程,分别是建立TCP套接字连接、发送HTTP请求报文、接收HTTP应答报文和关闭TCP套接字连接: 1. 创建TCP套接字连接 客户端与WEB服务器创建TCP套接字连接,其中WEB端服务器的地址可以通过域名解析确定,WEB端的套接字侦听端口一般是80。 2. 发送HTTP请求报文 客户端向WEB服务端发送请求报文,HTTP协议的请求报文格式为: 请求消息= 请求行(实体头信息)CRLF[实体内容] 请求行= 方法URL HTTP版本号CRLF 方法= GET|HEAD|POST|扩展方法 URL = 协议名称+宿主名+目录与文件名 其中"CRLF"表示回车换行。 "请求行"中的"方法"描述了对指定资源执行的动作,常用的方法"GET"、"HEAD"和"POST"等3种,它们的含义如表15-8所示: 请求报文 一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。 (1)请求行 请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。例如,GET /index.html HTTP/1.1。 HTTP协议的请求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。这里介绍最常用的GET方法和POST方法。 GET:当客户端要从服务器中读取文档时,使用GET方法。GET方法要求服务器将URL定位的资源放在响应报文的数据部分,回送给客户端。使用GET方法时,请求参数和对应的值附加在URL后面,利用一个问号(“?”)代表URL的结尾 与请求参数的开始,传递参数长度受限制。例如,/index.jsp?id=100&op=bind。POST:当客户端给服务器提供信息较多时可以使用POST方法。POST方法将请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据。 表15-8 HTTP请求方法

常用http响应报文分析

一、HTTP响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行。 响应码分五种类型,由它们的第一位数字表示: 1xx: 信息,请求收到,继续处理 2xx: 成功,行为被成功地接受、理解和采纳 3xx: 重定向,为了完成请求,必须进一步执行的动作 4xx: 客户端错误,请求包含语法错误或者请求无法实现 5xx: 服务器错误,服务器不能实现一种明显无效的请求 下表显示每个响应码及其含义: 100继续 101分组交换协 200 OK 201被创建 202被采纳 203非授权信息 204无内容

205重置内容206部分内容300多选项 301永久地传送302找到 303参见其他304未改动 305使用代理307暂时重定向400错误请求401未授权 402要求付费403禁止 404未找到 405不允许的方法406不被采纳407要求代理授权408请求超时409冲突 410过期的 411要求的xx

412前提不成立 413请求实例太大 414请求URIxx 415不支持的媒体类型 416无法满足的请求范围 417失败的预期 500内部服务器错误 501未被使用 502网关错误 503不可用的服务 504网关超时 505 HTTP版本未被支持 二、HTTP头标由主键/值对组成。它们描述客户端或者服务器的属性、被传输的资源以及应该实现连接。 四种不同类型的头标: 1.通用头标: 即可用于请求,也可用于响应,是作为一个整体而不是特定资源与事务相关联。 2.请求头标: 允许客户端传递关于自身的信息和希望的响应形式。 3.响应头标:

服务器和于传递自身信息的响应。 4.实体头标: 定义被传送资源的信息。即可用于请求,也可用于响应。 头标格式: : 下表描述在HTTP/ 1."1xx用到的头标 Accept定义客户端可以处理的媒体类型,按优先级排序;在一个以逗号为分隔的列表中,可以定义多种类型和使用通配符。例如: Accept: image/jpeg,image/png,*/*Accept-Charset定义客户端可以处理的字符集,按优先级排序;在一个以逗号为分隔的列表中,可以定义多种类型和使用通配符。例如: Accept-Charset: iso-8859-1,*,utf-8 Accept-Encoding定义客户端可以理解的编码机制。例如: Accept-Encoding: Accept-Language定义客户端乐于接受的自然语言列表。例如: Accept-Language: en,de Accept-Ranges一个响应头标,它允许服务器指明:

实验12 HTTP报文分析

实验12 HTTP 协议分析实验 一、实验目的 在PC 机上登录Web 页面,截获报文,分析HTTP 协议的报文格式和HTTP协议的工作过程。 二、实验说明 独立完成各自实验 三、实验内容 在一台计算机上截获不同类型HTTP报文进行分析。 四、实验步骤 1.在PC 机上运行Sniffer,设置过滤器,开始截获报文; 2.从浏览器上访问Web 界面,如http://202.202.4 3.125。打开网页,待浏览器的状 态栏出现“完毕”信息后关闭网页。 3.停止截获报文,将截获的报文命名为http1-座号-姓名保存。 4.分析截获的报文,回答以下几个问题: ?在截获的HTTP 报文中,任选一个HTTP 请求报文和对应的 HTTP 应答报文, 仔细分析它们的格式,填写下面两个表格。 ? ?

表2 HTTP 应答报文格式 分析在截获的报文中,客户机与服务器建立了几个连接?服务器和客户机分别使用了哪几个端口号? 建立了10个连接,服务器使用率1281,1282,1283,1284,1285,1286,1287,1288,1289端口,客户端使用80端口 1.获取长文件 (1)启动浏览器,将浏览器的缓存清空。

(2)启动Sniffer,设定过滤器HTTP,在浏览器地址栏中输入以下网址:https://www.360docs.net/doc/3615835232.html,/wireshark-labs/HTTP-wireshark-file3.html 浏览器将显示一个相当大的美国权利法案。

(3)停止Sniffer,保存为:http2-座号-姓名,回答以下问题。 ?一共发出了多少个HTTP GET请求? 4个GET请求 ?承载这个HTTTP响应报文需要多少个data-containing TCP报文段? 一共需要4个TCP报文段 ?与GET请求相对应的响应报文状态码和状态短语是什么?。 状态码:302 状态短语:Found ?在被传送的数据中共有多少个HTTP状态行与TCP-induced continuation有 关? 有,对于一个大的HTML文件会被TCP分为若干个独立的小包传输,他们是连 续的,如下图 2.嵌有对象的HTML文档 (1)启动浏览器,将浏览器的缓存清空。 (2)启动Sniffer,设定过滤器HTTP,在浏览器地址栏中输入以下网址: https://www.360docs.net/doc/3615835232.html,/wireshark-labs/HTTP-wireshark-file5.html 浏览器将显示一个具有两个图片的短HTTP文件。

HTTP请求报文格式

HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的。HTTP有两类报文:请求报文和响应报文。 请求报文 一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。 (1)请求行 请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。例如,GET /index.html HTTP/1.1。 HTTP协议的请求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。这里介绍最常用的GET方法和POST方法。 GET:当客户端要从服务器中读取文档时,使用GET方法。GET方法要求服务器将URL定位的资源放在响应报文的数据部分,回送给客户端。使用GET方法时,请求参数和对应的值附加在URL后面,利用一个问号(“?”)代表URL 的结尾与请求参数的开始,传递参数长度受限制。例如, /index.jsp?id=100&op=bind。 POST:当客户端给服务器提供信息较多时可以使用POST方法。POST方法将请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据。 (2)请求头部 请求头部由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。请求头部通知服务器有关于客户端请求的信息,典型的请求头有:User-Agent:产生请求的浏览器类型。 Accept:客户端可识别的内容类型列表。 Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机。 (3)空行 最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头。 (4)请求数据

网络协议实验三wireshark分析http

1.你的浏览器运行的是,还是?你所访问的服务器所运行的HTTP版本号是多少? 答:HTTP version 4 2. 你的浏览器向服务器指出它能接收何种语言版本的对象? 答:Accept language: zh-CN\r\n 3. 你的计算机的IP地址是多少?服务器的IP地址是多少? 答:我的IP是:服务器: 从服务器向你的浏览器返回的状态代码是多少? 答:200 OK 5. 你从服务器上所获取的HTML文件的最后修改时间是多少?

答:如图 6.返回到你的浏览器的内容以供多少字节? 答:24370 在浏览器地址栏中如下网址: 分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE? 答:没有 9.分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知? 答:有 HTTP/ 200 OK(text/html)

10.分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么? 答:仍然没有。如图。 11.服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。 答:状态码和相应状态信息的值为304 NOT Modified,他表示缓存器可以使用该对象。第二次没有返回文件的内容,因为他只是作为对该条件GET的响应,WEB服务器只发送一个响应报文,不包含请求的对象。 12. 你的浏览器一共发出了多少个HTTP GET请求? 答:1个 13. 传输这一个HTTP响应需要多少个TCP报文段? 答:4个。

HTTP响应报文与工作原理详解

超文本传输协议(Hypertext Transfer Protocol,简称HTTP)是应用层协议。HTTP 是一种请求/响应式的协议,即一个客户端与服务器建立连接后,向服务器发送一个请求;服务器接到请求后,给予相应的响应信息。 HTTP 请求报文 HTTP 请求报文由请求行、请求头部、空行和请求包体 4 个部分组成,如下图所示: 下面对请求报文格式进行简单的分析: 请求行:请求行由方法字段、URL 字段和HTTP 协议版本字段 3 个部分组 成,他们之间使用空格隔开。常用的 HTTP 请求方法有 GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT; ● GET:当客户端要从服务器中读取某个资源时,使用GET 方法。GET 方法要求服务器将URL 定位的资源放在响应报文的数据部分,回送给客户端,即向服务器请求某个资源。使用GET 方法时,请求参数和对应的值附加在 URL 后 面,利用一个问号(“?”)代表URL 的结尾与请求参数的开始,传递参数长度 受限制。例如,/index.jsp?id=100&op=bind。 ● POST:当客户端给服务器提供信息较多时可以使用POST 方法,POST 方法 向服务器提交数据,比如完成表单数据的提交,将数据提交给服务器处理。GET 一般用于获取/查询资源信息,POST 会附带用户数据,一般用于更新资源信息。POST 方法将请求参数封装在HTTP 请求数据中,以名称/值的形式出现, 可以传输大量数据; 请求头部:请求头部由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。请求头部通知服务器有关于客户端请求的信息,典型的请求头有: ● User-Agent:产生请求的浏览器类型;

HTTP请求报文格式

HTTP请求报文格式 HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的。HTTP有两类报文:请求报文和响应报文。 请求报文 一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。 (1)请求行 请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。例如,GET /index.html HTTP/1.1。 HTTP协议的请求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。这里介绍最常用的GET方法和POST方法。 GET:当客户端要从服务器中读取文档时,使用GET方法。GET方法要求服务器将URL 定位的资源放在响应报文的数据部分,回送给客户端。使用GET方法时,请求参数和对应的值附加在URL后面,利用一个问号(“?”)代表URL的结尾与请求参数的开始,传递参数长度受限制。例如,/index.jsp?id=100&op=bind。 POST:当客户端给服务器提供信息较多时可以使用POST方法。POST方法将请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据。 (2)请求头部 请求头部由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。请求头部通知服务器有关于客户端请求的信息,典型的请求头有:

User-Agent:产生请求的浏览器类型。 Accept:客户端可识别的内容类型列表。 Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机。 (3)空行 最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头。 (4)请求数据 请求数据不在GET方法中使用,而是在POST方法中使用。POST方法适用于需要客户填写表单的场合。与请求数据相关的最常使用的请求头是Content-Type和Content-Length。

(完整)利用wireshark分析HTTP协议

计算机网络实验报告 年级:通信姓名:学号: 实验日期:2014年4月30日星期三 实验名称:利用wireshark分析HTTP协议 一、实验目的 分析HTTP协议 二、实验环境 与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。 三、实验步骤 1、利用Wireshark俘获HTTP分组 (1)在进行跟踪之前,我们首先清空Web 浏览器的高速缓存来确保Web网页是从网络中获取的,而不是从高速缓冲中取得的。之后,还要在客户端清空DNS高速缓存,来确保Web服务器域名到IP地址的映射是从网络中请求。在WindowsXP机器上,可在命令提示行输入ipconfig/flushdns完成操作。 (2)启动Wireshrk 分组俘获器。 (3)在Web 浏览器中输入:https://www.360docs.net/doc/3615835232.html,/wireshark-labs/HTTP-wireshark-file1.html (4)停止分组捕获。

图1:利用Wireshark俘获的HTTP分组 浏览Web页面经过如下三个过程: (一)DNS解析 在URL https://www.360docs.net/doc/3615835232.html,中,https://www.360docs.net/doc/3615835232.html, 是一个具体的web 服务器的域名。最前面有两个DNS分组。第一个分组是将域名https://www.360docs.net/doc/3615835232.html,转换成为对应的IP 地址的请求,第二个分组包含了转换的结果。这个转换是必要的,因为网络层协议——IP协议,是通过点分十进制来表示因特网主机的,而不是通过https://www.360docs.net/doc/3615835232.html,这样的域名。当输入URL https://www.360docs.net/doc/3615835232.html,时,将要求Web服务器从主机https://www.360docs.net/doc/3615835232.html,上请求数据,但首先Web浏览器必须确定这个主机的IP地址。 (二)TCP连接建立 随着转换的完成,Web浏览器与Web服务器建立一个TCP连接。 (三)HTTP交互

HTTP 协议分析实验

实验六HTTP 协议分析实验 一、实验目的 在PC 机上访问RCMS 的Web 页面,截获报文,分析HTTP 协议的报文格式和HTTP 协议的工作过程。 二、实验设备和连接 本地实验室环境,无须设备连接; 注意:请通过访问可以连接的WWW 站点或使用IIS 建立本地WWW 服务器来进行实验。 三、实验步骤 步骤1:在PC 机上运行Ethereal,开始截获报文,为了只截获和我们要访问的网站相关的数据报,将截获条件设置为“not broadcast and not multicast”; 步骤2:从浏览器上访问Web 界面,如http://202.202.43.125。打开网页,待浏览器的状态栏出现“完毕”信息后关闭网页。 步骤3:停止截获报文,将截获的报文命名为http-学号保存。 分析截获的报文,回答以下几个问题: 1)综合分析截获的报文,查看有几种HTTP 报文? 有两种报文

一种是从客户到服务器的请求报文 另一种是从服务器到客户的响应报文 2)在截获的HTTP 报文中,任选一个HTTP 请求报文和对应的HTTP 应答报文,仔细 分析它们的格式,填写表20 和表 5.21。

表20 HTTP 请求报文格式

表21 HTTP 应答报文格式 3)分析在截获的报文中,客户机与服务器建立了几个连接?服

务器和客户机分别使用 了哪几个端口号? __________________________________________________________ _________________ __________________________________________________________ _____________________ __________________________________________________________ _____________________ 4 )综合分析截获的报文,理解HTTP 协议的工作过程,将结果填入表22 中。 表22 HTTP 协议工作过程

http请求的详细过程

http请求的详细过程 一个http请求的详细过程 我们来看当我们在浏览器输入https://www.360docs.net/doc/3615835232.html,:8080/mydir/index.html,幕后所发生的一切。 首先http是一个应用层的协议,在这个层的协议,只是一种通讯规范,也就是因为双方要进行通讯,大家要事先约定一个规范。 1.连接 当我们输入这样一个请求时,首先要建立一个socket连接,因为socket是通过ip和端口建立的,所以之前还有一个DNS解析过程,把https://www.360docs.net/doc/3615835232.html,变成ip,如果url 里不包含端口号,则会使用该协议的默认端口号。 DNS的过程是这样的:首先我们知道我们本地的机器上在配置网络时都会填写DNS,这样本机就会把这个url发给这个配置的DNS服务器,如果能够找到相应的url则返回其ip,否则该DNS将继续将该解析请求发送给上级DNS,整个DNS可以看做是一个树状结构,该请求将一直发送到根直到得到结果。现在已经拥有了目标ip和端口号,这样我们就可以打开socket连接了。 2.请求 连接成功建立后,开始向web服务器发送请求,这个请求一般是GET或POST命令(POST用于FORM参数的传递)。GET命令的格式为: GET 路径/文件名 HTTP/1.0 文件名指出所访问的文件,HTTP/1.0指出Web浏览器使用的HTTP版本。现在可以发送GET 命令: GET /mydir/index.html HTTP/1.0, 3.应答 web服务器收到这个请求,进行处理。从它的文档空间中搜索子目录mydir的文件index.html。如果找到该文件,Web服务器把该文件内容传送给相应的Web浏览器。 为了告知浏览器,,Web服务器首先传送一些HTTP头信息,然后传送具体内容(即HTTP体信息),HTTP头信息和HTTP体信息之间用一个空行分开。 常用的HTTP头信息有: ① HTTP 1.0 200 OK 这是Web服务器应答的第一行,列出服务器正在运行的HTTP版本号和应答代码。代码"200 OK"表示请求完成。 ② MIME_Version:1.0它指示MIME类型的版本。 ③ content_type:类型 这个头信息非常重要,它指示HTTP体信息的MIME类型。如:content_type:text/html指示传送的数据是HTML文档。 ④ content_length:长度值 它指示HTTP体信息的长度(字节)。 4.关闭连接:当应答结束后,Web浏览器与Web服务器必须断开,以保证其它Web浏览器

http协议(二)请求和响应报文的构成

http协议(二)请求和响应报文的构成 http协议用于客户端和服务器之间的通信,请求访问资源的一方称为客户端,而提供资源响应的一方称为服务器端。 下面就是客户端和服务端之间简单的通信过程 PS:请求必须从客户端建立通信,服务端没收到请求之前不会发送响应 下面先来说说请求的构成: 1)请求方法URI协议/版本 2)请求头(Request Header) 3)请求正文 下面是一个请求的例子: GET/sample.jspHTTP/1.1 Accept:image/gif.image/jpeg,*/* Accept-Language:zh-cn Connection:Keep-Alive Host:localhost User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0) Accept-Encoding:gzip,deflate username=jinqiao&password=1234 1)请求方法URI协议/版本 以上请求中“GET”代表请求方法,“/sample.jsp”表示URI,“HTTP/1.1代表协议和协议的版本。 根据HTTP标准,HTTP请求可以使用多种请求方法。具体的方法以及区别后面我们介绍。 2)请求头 Accept 可接受的内容类型 Accept-Language 语言 Connection连接状态 Host 请求的域名(这里我设置的是请求本地,当然,关于域名,就是所谓的URL) User-Agent 浏览器端浏览器型号和版本 Accept-Encoding 可接受的压缩类型 gzip,deflate 3)请求正文 请求头和请求正文之间是一个空行,它表示请求头已经结束,接下来的是请求正文。请求正文中可以包含客户提交的查询字符串信息: username=jinqiao&password=1234 在以上的例子中,请求的正文只有一行内容。当然,在实际应用中,HTTP请求正文可以包含更多的内容。

HTTP协议分析实验

HTTP协议分析实验报告 专业:计算机信息工程学院12级网络工程2班 学号:1208066057 学生姓名:汪国庆 一、实验目的: 1.分析http请求报文的含义和响应报文的含义。 2.知道http1.1和http1.0的异同。 3.通过http协议获取网页流程。 二、实验原理:(参考自互联网) RFC 1945定义了HTTP/1.0版本。RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1。 HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。 HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议。 HTTP协议永远都是客户端发起请求,服务器回送响应。见下图: 这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端。 HTTP协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。 一次HTTP操作称为一个事务,其工作过程可分为四步: 1)首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作开始。

2)建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。 3)服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。 4)客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客户机与服务器断开连接。 如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,有显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。 三、实验步骤 1、打开Wireshark,选择工具栏上的“Capture”->“interfaces选择网关”,如图: 2、然后在Wireshark,选择工具栏上的“Capture”->“optoins”选择过滤器,并在capture filter 中输入tcp port 80(表示要抓http的包),如图

抓包分析HTTP

计算机网络实践报告 一、 实践名称: 网络抓包分析HTTP 协议请求、响应过程。 二、 实践内容和目的: 内容:网络抓包分析HTTP 协议请求、响应过程以及请求、响应的报文 格式。 目的:了解、熟悉网络抓包软件,掌握HTTP 请求、响应的报文格式,分析、掌握HTTP 请求、响应的过程。 三、 实践器材(设备、元件): PC 机一台、网络抓包软件Wireshark 。 四、 实践数据及分析结果: 1、HTTP 的请求报文格式和响应报文格式: HTTP 请求报文: 通用格式 URI 版本sp cr lf sp 方法值 sp cr lf 首部字段名:值sp cr lf 首部字段名:cr lf 请求行 首部行 空行实体主体 注:URI=Uniform Resource Identifiers Entity Body

HTTP 响应报文: 通用格式 状态码 短语sp cr lf sp 版本值 sp cr lf 首部字段名:值sp cr lf 首部字段名:cr lf 状态行 首部行 空行实体主体 Entity Body 2、网络抓包截获的数据: HTTP 的请求报文数据: 所截获的HTTP 的请求报文如下图所示:(编号22134) 主要的报文段为: Internet Protocol, Src: 10.20.60.49 (10.20.60.49), Dst: 220.168.129.75

(220.168.129.75) Transmission Control Protocol, Src Port: 27935 (27935), Dst Port: http (80), Seq: 1, Ack: 1, Len: 594 GET /Files/download/icon3/2380.rar HTTP/1.1\r\n Accept: */*\r\n Cache-Control: no-cache\r\n Connection: Keep-Alive\r\n Cookie:rtime=1;ltime=1334408026756;cnzz_eid=8195232-1334323245-http%3 A//https://www.360docs.net/doc/3615835232.html,/s%3Fwd%3D%25E6%2596%2587%25E4%25BB%25B6%2 5E5%25A4%25B9%25E5%259B%25BE%25E\r\n Host: https://www.360docs.net/doc/3615835232.html,\r\n Pragma: no-cache\r\n Range: bytes=203903-293887\r\n Referer: https://www.360docs.net/doc/3615835232.html,/Files/download/icon3\r\n User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; Media Center PC 6.0; .NET4.0E)\r\n \r\n 分析:用GET方法向主机Host: https://www.360docs.net/doc/3615835232.html,请求对象/Files/download/icon3/2380.rar ,浏览器实现的是版本HTTP/1.1 (可打开数据包1查看更多报文)。 HTTP的响应报文数据: 所截获的百度的HTTP响应报文如下图所示(编号为:7594)

网络协议 实验三wireshark_分析http

1.你的浏览器运行的是,还是你所访问的服务器所运行的HTTP版本号是多少 答:HTTP version 4 2. 你的浏览器向服务器指出它能接收何种语言版本的对象 答:Accept language: zh-CN\r\n 3. 你的计算机的IP地址是多少服务器的IP地址是多少 答:我的IP是:服务器: 从服务器向你的浏览器返回的状态代码是多少 答:200 OK 5. 你从服务器上所获取的HTML文件的最后修改时间是多少

答:如图 6.返回到你的浏览器的内容以供多少字节 答:24370 在浏览器地址栏中如下网址: 分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE 答:没有 9.分析服务器响应报文的内容,服务器是否明确返回了文件的内容如何获知 答:有HTTP/ 200 OK(text/html)

10.分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE如果有,在该首部行后面跟着的信息是什么 答:仍然没有。如图。 11.服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少服务器是否明确返回了文件的内容请解释。 答:状态码和相应状态信息的值为304 NOT Modified,他表示缓存器可以使用该对象。第二次没有返回文件的内容,因为他只是作为对该条件GET的响应,WEB服务器只发送一个响应报文,不包含请求的对象。 12. 你的浏览器一共发出了多少个HTTP GET请求 答:1个 13. 传输这一个HTTP响应需要多少个TCP报文段 答:4个。

HTTP协议解析-协议结构和HTTP头

Web之http协议(三) 一、http报文首部 http协议中请求报文和响应报文都包括了http首部,这个首部是服务器和客户端处理请求和响应提供所需的信息,是客户端与服务器交互的基础。 http的请求报文由方法、URI、HTTP 版本、HTTP 首部字段等部分构成。 http的响应报文由HTTP 版本、状态码(数字和原因短语)、HTTP 首部字段3 部分构成。 在报文众多的字段当中,HTTP 首部字段包含的信息最为丰富。首部字段同时存在于请求和响应报文内,并涵盖HTTP 报文相关的内容信息。 二、HTTP 首部字段 http首部字段是http报文的构成因素之一,它是客户端与服务器端进行通信的标准。客户端使用http首部说明需要的报文主体大小,所使用的语言,认证信息等。服务器端则使用首部告诉客户端,返回的报文主体是什么东西,报文主体的大小等信息。可以说首部字段是十分重要。 1.首部字段的结构 首部字段的结构,通常的情况是由首部字段跟首部字段的值组成。例如:

Content-Type:text\html,也就是首部字段:首部字段值这样子的结构。 另外如果首部字段有多个值是则用都好隔开。例如:Keep-Alive:timeout=15,max=100 2.首部字段的类型 HTTP 首部字段根据实际用途被分为以下4 种类型。 通用首部字段(General Header Fields) 请求报文和响应报文两方都会使用的首部。 请求首部字段(Request Header Fields) 从客户端向服务器端发送请求报文时使用的首部。补充了请求的附加内容、客户端信息、响应内容相关优先级等信息。 响应首部字段(Response Header Fields) 从服务器端向客户端返回响应报文时使用的首部。补充了响应的附加内容,也会要求客户端附加额外的内容信息。 实体首部字段(Entity Header Fields) 针对请求报文和响应报文的实体部分使用的首部。补充了资源内容更新时间等与实体有关的信息。 通用首部字段 首部字段名称说明 Cache-Control 控制缓存的行为 Connection 逐跳首部、链接的管理 Date 报文的创建日期时间 Pragma 报文指令 Trailer 报文末端的首部一览 Transfer-Encoding 指定报文主体的传输编码方式 Upgrade 升级为其他协议 Via 代理服务器的相关信息 Warning 错误通知 请求首部字段 首部字段名说明 Accept 用户代理可处理的媒体类型 Accept-Charset 优先的字符集 Accept-Encoding 优先的内容编码 Accept-Language 优先的语言(自然语言) Authorization Web认证信息 Expect 期待服务器的特定行为 From 用户的电子邮箱地址 Host 请求资源所在服务器 If-Match 比较实体标记(ETag) If-Modified-Since 比较资源的更新时间 If-None-Match 比较实体标记(与If-Match 相反) If-Range 资源未更新时发送实体Byte 的范围请求 If-Unmodified-Since 比较资源的更新时间(与If-Modified-Since相反)

网络协议 实验三wireshark_分析httpWord

1.你的浏览器运行的是HTTP1.0,还是HTTP1.1?你所访问的服务器所运行的HTTP版本号是多少? 答:HTTP 1.1 version 4 2. 你的浏览器向服务器指出它能接收何种语言版本的对象? 答:Accept language: zh-CN\r\n 3. 你的计算机的IP地址是多少?服务器https://www.360docs.net/doc/3615835232.html,/DatumDownload.aspx 的IP地址是多少? 答:我的IP是:10.127.117.2 服务器:222.197.183.99 4. 从服务器向你的浏览器返回的状态代码是多少? 答:200 OK

5. 你从服务器上所获取的HTML文件的最后修改时间是多少? 答:如图 6.返回到你的浏览器的内容以供多少字节? 答:24370 在浏览器地址栏中如下网址: https://www.360docs.net/doc/3615835232.html,/wireshark-labs/HTTP-wireshark-file2.html 8.分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE? 答:没有

9.分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知? 答:有 HTTP/1.1 200 OK(text/html) 10.分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么? 答:仍然没有。如图。 11.服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。 答:状态码和相应状态信息的值为304 NOT Modified,他表示缓存器可以使用该对象。第二次没有返回文件的内容,因为他只是作为对该条件GET的响应,WEB服务器只发送一个响应报文,不包含请求的对象。 12. 你的浏览器一共发出了多少个HTTP GET请求? 答:1个 13. 传输这一个HTTP响应需要多少个TCP报文段? 答:4个。

实验12-利用wireshark分析协议HTTP

实验十二利用Wireshark分析协议HTTP 一、实验目的 分析HTTP协议 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为windows;使用Wireshark、IE等软件。 三、实验步骤 1、利用Wireshark俘获HTTP分组 (1)在进行跟踪之前,我们首先清空Web 浏览器的高速缓存来确保Web网页是从网络中获取的,而不是从高速缓冲中取得的。之后,还要在客户端清空DNS高速缓存,来确保Web服务器域名到IP地址的映射是从网络中请求。在WindowsXP机器上,可在命令提示行输入ipconfig/flushdns完成操作。 (2)启动Wireshrk 分组俘获器。 (3)在Web 浏览器中输入:n (4)停止分组俘获。 图1:利用Wireshark俘获的HTTP分组

在URL 中,是一个具体的web 服务器的域名。最前面有两个DNS分组。第一个分组是将域名转换成为对应的IP 地址的请求,第二个分组包含了转换的结果。这个转换是必要的,因为网络层协议——IP协议,是通过点分十进制来表示因特网主机的,而不是通过这样的域名。当输入URL http://时,将要求Web 服务器从主机上请求数据,但首先Web浏览器必须确定这个主机的IP地址。 随着转换的完成,Web浏览器与Web服务器建立一个TCP连接。最后,Web 浏览器使用已建立好的TCP连接来发送请求“GET/HTTP/1.1”。这个分组描述了要求的行为(“GET”)及文件(只写“/”是因为我们没有指定额外的文件名),还有所用到的协议的版本(“HTTP/1.1”)。 2、HTTP GET/response交互 (1)在协议框中,选择“GET/HTTP/1.1”所在的分组会看到这个基本请求行后跟随着一系列额外的请求首部。在首部后的“\r\n”表示一个回车和换行,以此将该首部与下一个首部隔开。 “Host”首部在HTTP1.1版本中是必须的,它描述了URL中机器的域名,本例中是。这就允许了一个Web服务器在同一时间支持许多不同的域名。有了这个数不,Web服务器就可以区别客户试图连接哪一个Web服务器,并对每个客户响应不同的内容,这就是HTTP1.0到1.1版本的主要变化。 User-Agent首部描述了提出请求的Web浏览器及客户机器。 接下来是一系列的Accpet首部,包括Accept(接受)、Accept-Language (接受语言)、Accept-Encoding(接受编码)、Accept-Charset(接受字符集)。它们告诉Web服务器客户Web浏览器准备处理的数据类型。Web服务器可以将数据转变为不同的语言和格式。这些首部表明了客户的能力和偏好。 Keep-Alive及Connection首部描述了有关TCP连接的信息,通过此连接发送HTTP请求和响应。它表明在发送请求之后连接是否保持活动状态及保持多久。大多数HTTP1.1连接是持久的(persistent),意思是在每次请求后不关闭TCP 连接,而是保持该连接以接受从同一台服务器发来的多个请求。 (2)我们已经察看了由Web浏览器发送的请求,现在我们来观察Web服务器的回答。响应首先发送“HTTP/1.1 200 ok”,指明它开始使用HTTP1.1版本来发送网页。同样,在响应分组中,它后面也跟随着一些首部。最后,被请求的实际数据被发送。

实验一利用WireShark分析HTTP和DNS汇编

山东建筑大学计算机学院实验报告 班级:______ 姓名:______ 学号:实验成绩:__________ 课程:______________________________ 同组者:__________ 实验日期:__________ 实验一利用WireShark分析HTTP和DNS 一、实验目的及任务 1、熟悉并掌握Wireshark的基本操作,了解网络协议实体间的交互以及报文交 换。 2、分析HTTP协议 3、分析DNS协议 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为Windows2000或Windows XP;Wireshark等软件。 三、实验预习 1、Internet协议栈分为哪几层?每一层的功能、典型协议各是什么?并给出典型 协议的英文全称。 应用层运输层网络层链路层物理层 应用层:网络应用程序及他们的应用层协议保存的地方HTTP SMTP FTP 运输层:在应用程序端点之间传送应用层报文TCP UDP 网络层:负责将数据包的网络层分组从一台主机移动到另一台主机IP协议链路层:主要为网络层提供传输服务 物理层:将帧中的一个一个比特从一个节点移动到下一个节点 2、HTTP请求报文的基本格式是什么?列举四种常见的首部字段名,并解释其后“值” 字段的含义。 Accept:用于高速服务器,客户机支持的数据类型 Accept-Charset:用于告诉服务器,客户机采用的编码格式 Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式 Accept-Language:客户机的语言环境

3、HTTP响应报文的基本格式是什么?列举五种常见的首部字段名,并解释其后“值” 字段的含义。 4、应用“条件Get”方法的基本目的是什么?该方法所用到的典型的首部字段名是什么? 当客户端要从服务器中读取文档时,使用GET方法。GET方法要求服务器将URL定位的资源放在响应报文的数据部分,回送给客户端。 5、DNS有哪两层基本含义?DNS层次结构中包含哪三类DNS服务器? 分布式数据库层次数据库 根DNS服务器 顶级域名服务器 权威DNS服务器 6、DNS报文的基本格式是什么?

相关主题
相关文档
最新文档