Http协议详解之实战使用WiresharkHttpAnalyzer分析EKPERP.docxVIP

Http协议详解之实战使用WiresharkHttpAnalyzer分析EKPERP.docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Http协议详解之实战使用Wireshark

Http课程实战刘豹目录1.使用WireShark分析访问EKP首页通信过程11.1关于WireShark11.2配置WireShark捕获到EKP站点通信11.3分析TCP三次握手连接建立过程31.4分析连接建立过程后http通信过程51.5连接关闭61.6WireShark使用总结62.使用HttpAnalyzer分析访问EKP首页通信过程62.1 实验目的62.2分析典型通信过程62.3冗余的响应头8使用WireShark分析访问EKP首页通信过程1.1关于WireSharkWireShark:是一款开源的数据流层(传输层、网络层、数据链路层)通信分析工具。下载地址:/download.html配置WireShark捕获到EKP站点通信第一步:启动WireShark,选择捕获配置。第二步:设置捕获配置。要点:选择正确的网卡,且设置正确的捕获过滤配置。捕获过滤设置: tcp dst port 80。解释:捕获使用tcp协议、目的端口为80的通信。做好以上配置后,就可以抓本机的所有使用tcp协议到目的端口为80的通信了。为了减少干扰,可以在本机只保持一个浏览器窗口。捕获结果:分析TCP三次握手连接建立过程在TCP的前三次通信,就完成了连接建立过程,我们详细看看这个过程。No.TimeSourceDestinationProtocolInfo10.0000007TCP4623 http [SYN] Seq=0 Win=65535 Len=0 MSS=146020.020617TCPhttp 4623 [SYN, ACK] Seq=0 Ack=1 Win=16384 Len=0 MSS=138030.0206577TCP4623 http [ACK] Seq=1 Ack=1 Win=65535 Len=0第一步:客户端(IP:7,port:4623)向服务器发(IP:,port:80)发起连接建立请求,并发送了一个数据包,问服务器收到没有。4623 http [SYN] Seq=0 Win=65535 Len=0 MSS=1460Seq=0:消息顺序号。(为0一般是建立连接时用的,即是第一个请求)Win=65535,接收窗口大小为65535。(这是我的机器tcp的接收数据的窗口大小,可以看到与服务器端的大小是不一样的,服务器端的大小是Win=16384)豹:窗口作用:严格限制已经发出去而未被确认收到的数据帧的个数。只有在接受窗口向前移动时,发送窗口才能向前移动。豹:当发送方的数据大于接收方窗口的数据时,接收方需要告诉发送方自己的窗口大小。第二步:服务器接收到这个请求后,告诉客户端我收到你的消息了,我给你发一个消息,看看你能收到不。http 4623 [SYN, ACK] Seq=0 Ack=1 Win=16384 Len=0 MSS=1380Ack=1,这是一个向前确认的机制,表示请发送序号1的消息过来吧,意思是序号为1之前的消息已经收到了。第三步:客户端告诉服务器,你的消息我收到了,我们之前的通信是畅通的。因为这是发送的第二个消息了所以seq=1。4623 http [ACK] Seq=1 Ack=1 Win=65535 Len=0经过这些步骤,我的IE与EKP所在服务器的连接就建立了。豹:具体点说就是7:4623与:80的tcp连接已经建立了。豹:仔细分析所有数据包后,你会发现IE在只打开EKP主页的情况下,同时与EKP服务器建立了9个连接。这个连接数是惊人了。因为http协议本身对客户端到同一个网站(其实是完全域名)的连接数是有限制要求的,即不要超过2个。我的客户端环境是Win2003+IE8,是遵守了这个要求的。那也就是说,获取我们EKP首页资源,至少涉及到了5个域名。豹:从对后续具体http通信的过程分析,你会发现,不同连接之间的数据发送是完全独立的,即IE不会协调不同连接之前请求的依赖性。所以,如果我们系统存在依赖于不同域名的页面资源下载时,必须通过代码来保证这种依赖的可靠。分析连接建立过程后http通信过程1.4.1 正常通信 第一个红框内容:请求GET /ekp/portal.aspx HTTP/1.1,因为有缓存,服务器直接就返回了302, HTTP HTTP/1.1 302 Found (text/html)第二个红框内容:请求了一个/checkkey.aspx?xxx,这个页面,因为返回内容比较大,进行了tcp segment的一些拆分和封装。可以看到,在一个tcp连接上的请求之间,http请求的顺序就是接收的顺序。1.4.2 丢包重传当服务器发送了数据包,但没有在指定时间内收到客户端确认信息时,会要求客户端再次确认。 豹:丢包重传现象比较正常,只要在一个比较小的比例内都是没有问题的。

文档评论(0)

ipad0d + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档