请求使用网络分析软件学习http协议(精)

http://www.taobao.com/  时间:2021-03-06  阅读:()

精选文档

使用网络分析软件学习HT TP协议

一、 目的

学习网络分析也有段时间了,到现在也算是逐渐入门了吧,想想自己以前刚接触时,不知道从何入手。学习网络分析,肯定要从协议入手,如果只看相关资料,这样印象不深刻,而且也没什么实战的经验,速度和效率都慢了很多。 后来有高人指点了我,用网络分析软件来学习协议比较好,从此我开始了另外一种方法的学习。 呵呵,自己作为一个初学者,想把自己学习的方法写出来,和大家交流交流,个人认为方法是最重要的。

TCP/IP协议族里的协议太多了,这个还的靠时间的积累:说了这么多废话,嘿嘿!

其实应用层协议是我们经常用到的协议,比如H TT P,FT P等等,下面我们就来谈谈H TT P协议(不看网页不可能吧-.-#,学习其他协议时可以用类似的方法,灵活变通^

二、 试验环境

我们这里试验的网络环境很简单,简单描述一下:

1.网络环境:本人电脑通过代理服务器ADSL拨号上网,本机

IP=192.168.0.92;

2.操作系统:本人电脑使用Windows XP+SP2;

3.工具(关键哟:我接触过S n iff er,O mn i P eek, eth er eal ,科来网络分析系统,个人相对这几种软件用的稍微熟悉的还是OmniPeek,这里我就以OmniPeek为学习工具。

三、 具体操作

精选文档

我试验过程也很简单,访问网页大家都很清楚吧?我这里只是用更加深入的方式来了解访问网页的种种过程及原理,具体操作如下:

1.打开OminPeek的设置,在Filers里面设置Addressfiler:192.168.0.92和protocl filter选择HTTP协议,如图1,

(图1过滤器设置

说明:通过设置图1的过滤器,我们就可以只捕获192.168.0.92使用H TT P协议的通讯了:2.开始捕获,使用主机192.168.0.92访问网页,抓取数据包,如图2,

(图2抓取的数据包

说明:呵呵,准备就绪,开始捕获,我们访问http:\\www.csna.cn论坛,捕获到的数据包。 四、 原理知识

精选文档

使用网络分析软件进行对协议学习,并不是叫我们都抛开那些资料,那些理论原理,我这里所说的就是“结合” ,了解协议的结构,工作原理,相关特征是很重要的,这时我们在通过网络分析软件来操作,就会更加明确。 我们还是先介绍一下H TT P协议的工作原理吧(不要怪我罗嗦哟。

1.TCP/IP分层结构

TCP/IP的层次结构和工作原理,我们就不详细介绍了,这里就针对HTTP进行一下说明:简单的说HTTP协议是应用层协议,通过下层传输层的TCP进行可靠连接,网络层IP选路,链路层Ethernet II,最后在物理上以位(Bit进行传输。

应用层-------------H TT P

传输层-------------TCP

网络层-------------IP

精选文档

链路层-------------Ethernet II

2.H TT P协议工作方式

由于H TT P协议是基于请求/响应模式的(相当于客户机/服务器。一个客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL、 协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、 一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

这个过程就好像我们打电话订货一样,我们可以打电话给商家,告诉他我们需要什么规格的商品,然后商家再告诉我们什么商品有货,什么商品缺货。 这些,我们是通过电话线用电话联系(HTTP是通过TCP/IP。

H TT P协议的内部操作过程:基于H TT P协议的客户/服务器模式的信息交换过程,它分四个过程:建立连接、发送请求信息、发送响应信息、关闭连接。这就好像上面的例子,我们电话订货的全过程。

其实简单说就是任何服务器除了包括HTML文件以外,还有一个HTTP驻留程序,用于响应用户请求。你的浏览器是H TT P客户,向服务器发送请求,当浏览器中输入了一个开始文件或点击了一个超级链接时,浏览器就向服务器发送了H TT P请求,此请求被送往由IP地址指定的URL。驻留程序接收到请求,在进行必要的操作后回送所要求的文件。在这一过程中,在网络上发送和接收的数据已经被分成一个或多个数据包(packet,每个数据包包括:要传送的数据;控制信息,即告诉网络怎样处理数据包。 TCP/IP决定了每个数据包的格式。

五、 数据包分析

我们现在来分析刚刚抓取的数据包,看看H TT P协议怎样进行建立连接,发送请求信息,发送响应信息,关闭连接的过程。

精选文档

1.建立连接

第1.2.3个数据包是HTTP协议使用下层TCP协议通过三次握手原则建立连接的过程,如图2所示,

(图3建立连接

说明:图3中选中三个数据包描述的是TCP三次握手的过程。这样我们可以知道,HTTP通讯是发生在TCP协议之上,缺省端口是TCP的80端口,所以H TT P是一个可靠的协议。

至于三次握手原理,看解码:

精选文档

上面三个图分别为前三个数据包中的TCP标记信息,反映了TCP的三次握手过程:客户端向W eb服务器发送一个S YN同步连接请求,W eb服务器收到请求后向客户端发送一个

SYN/ACK数据包 同意客户端的连接请并向客端发起同步客户端收到该数据包后再次确认从而成功建立TCP连接。 2.发送请求信息接下来我们再来观察第四个数据包 这个是主机192.168.0.92发起的H TT P请求包 如图

4 图4发送请求信息 图4中我们从数据包解码中看到H TT P协议发送请求信息的一些特征。打开一个连接后 客户机把请求消息送到服务器的停留端口上完成提出请求动作。 图中的请求报文 l l l l l l l l l HTTPCommand: //方法字段说明其使用的是GET方法URI: / //URL字段发送请求至保存该网站的服务器。 HTTP Version: //http协议版本字段用是的http/1.1版本Accept: //指示可被接受的请求回应的介质类型范围列表。Accept-Language: //限制了请求回应中首选的语言为简体中文否则使用默认值。 Accept-Encoding: //限制了回应中可接受的内容编码值,指示附加内容解码方式为gzip,deflate.Us er-Agent: //定义用户代理即发送请求的浏览器类型为Mozilla/4.0 Host:www.csna.cn\r\n Connection:Keep-Alive\r\n//定义了目标所在的主机//告诉服务器使用持久连接3.发送响应信息第6个数据包是服务器的响应包信息从图4可以看出

精选文档

(图5分析解码我们可以知道这些内容 响应报文服务器在处理完客户的请求之后要向客户机发送响应消息。 图中的回应报文 l l ll l l l l l l l HTTP Version:HTTP/1.1 //服务器用的是HTTP/1.1版本HTTPStatus :200//请求成功信息可以读取包含在响应的报文中Date: //指服务器从文件系统中检索到该对象插入到响应报文并发送该响应报文的时间S erver: //表明刻报文是由一个Apach e/2.0.52的服务器产生的X-Powered-By: //表明是使用PHP 版本的动态网页S et-cookie: //Vary: //

Content-Length://表明实体的长度Conn ection: //告诉客户机在报文发送完毕后仍然保持连接Content-Typ e: //表明实体中的对象是html文档BinaryData: //二进制数据说明在服务器给的回应请求中我们可以从状态码中看到访问的相关信息。 状态码表示响应类型常用的有 l l l l l ×× 保留×× 表示请求成功地接收 ×× 为完成请求客户需进一步细化请求×× 客户错误 ×× 服务器错误

在我们抓到的数据包中状态码是  表明请求是成功接受请求。  关闭连接 最后个数据包          就是通讯的关闭过程建立一个连接需要进行三次握手 而终止一个连接则需要经过次握手。这是由于连接是全双工的 每个方向上都必须单独地进行关闭。 次握手实际上就是两个方向上单独关闭的过程。这里就不详细说明了 六、 小结从上面的讲解 我想咱们对H TT P协议也了解了很多了吧 对照分析软件来学习是不是觉得有点不一样哇我们在数据包解码中看到只是资料所说的有点出入。呵呵资料上说的是不是要复杂的多 这也说明 在具体实际情况下是不同的。在这里 我们只是说说学习的思路 TCP/IP协议是非常复杂的一个好的学习方法使的咱们在学习其他协议的时候就能举一反三 希望大家能谈谈自己的学习方法。大家互相交流撒。 菜青虫2006年6月

香港云服务器 1核 256M 19.9元/月 Mineserver Ltd

Mineserver(ASN142586|UK CompanyNumber 1351696),已经成立一年半。主营香港日本机房的VPS、物理服务器业务。Telegram群组: @mineserver1 | Discord群组: https://discord.gg/MTB8ww9GEA7折循环优惠:JP30(JPCN2宣布产品可以使用)8折循环优惠:CMI20(仅1024M以上套餐可以使用)9折循...

Ceraus24元/月,国庆促销 香港云上新首月五折

Ceraus数据成立于2020年底,基于KVM虚拟架构技术;主营提供香港CN2、美国洛杉矶CN2、日本CN2的相关VPS云主机业务。喜迎国庆香港上新首月五折不限新老用户,cera机房,线路好,机器稳,适合做站五折优惠码:gqceraus 续费七五折官方网站:https://www.ceraus.com香港云内存​CPU硬盘流量宽带优惠价格购买地址香港云2G2核40G不限5Mbps24元/月点击购买...

Linode十八周年及未来展望

这两天Linode发布了十八周年的博文和邮件,回顾了过去取得的成绩和对未来的展望。作为一家运营18年的VPS主机商,Linode无疑是有一些可取之处的,商家提供基于KVM架构的VPS主机,支持随时删除(按小时计费),可选包括美国、英国、新加坡、日本、印度、加拿大、德国等全球十多个数据中心,所有机器提供高出入网带宽,最低仅$5/月($0.0075/小时)。This month marks Linod...

http://www.taobao.com/为你推荐
美国互联网瘫痪美国是否有能力关闭全球互联网以及中国互联网,还有美国有没能力关闭某个网站,比如淘宝,天涯,网易等月神谭求古典武侠类的变身小说~!月神谭给点人妖。变身类得小说。同ip域名两个网站同一个IP怎么绑定两个域名www.kk4kk.com猪猪影院www.mlzz.com 最新电影收费吗?ip在线查询通过对方的IP地址怎么样找到他的详细地址?103838.com39052.com这电影网支持网页观看吗?ww.66bobo.com谁知道11qqq com被换成哪个网站sodu.tw台湾的可以看小说的网站sodu.tw台湾人看小说的网站是
域名系统 域名解析文件 vps.net hawkhost mediafire godaddy优惠码 vmsnap3 双11抢红包攻略 主机合租 韩国网名大全 ca4249 699美元 vip购优惠 中国电信测速网 河南移动m值兑换 鲁诺 服务器监测 海外空间 英国伦敦 英雄联盟台服官网 更多