转自:http://supben.iteye.com/blog/2329780

先看一段代码  程序片段是一个RPC调用 ,根据简历id获取简历实体。
本地IP 10.252.156.132, 远程ip 10.126.83.105

  1. public static void main(String[] args) {
  2. long id = 94105403661579l;
  3. try {
  4. Resume r = resumeService.loadByID(id);
  5. PrintUtil.printObject(r);
  6. } catch (Exception e) {
  7. e.printStackTrace();
  8. }
  9. }

通过wireshark 抓包,得到下边的结果

直接上结论

1).Source 发送方IP ,Destination 接收方IP,Protocol 协议类型 Length 包长度 Info 包内容

2). 前三帧是三次握手,

第四帧客户端把方法调用(包括参数)发送到服务端。包长139,

第五帧,服务端应答。

第六帧,服务端传输结果给客户端。长度952,

第七帧,客户端应答,

第八帧:服务端重传,

第九帧:客户端重答。

第十帧:客户端强行关闭,客户端通知服务端RST。

3).Info栏 49999 → 17019 表示了 发送者和接受者的端口

4). FLAGS 常见的有5种类型,分别是

SYN 表示建立连接,

FIN 表示关闭连接,

ACK 表示响应,

PSH 表示有 DATA数据传输,

RST 表示连接重置

5)Seq= 上一次的Ack,  Ack = 上一次的Seq+ Len,如 4 5两帧,6 7两帧

6)第六帧,服务端发送的时间点 17:25:16.790782,而客户端相应ACK的发送时间为17:25:16.991076,

超过了200ms,大于RTO的时间,触发了TCP Retransmission (TCP重传),即第8帧

7)服务端收到客户端的调用,是先回了一个ACK包,然后再在新的一帧传输返回数据。而不是理解的直接回复返回值。

8)  注意看 4,5,6 三帧  客户端发起调用,服务端回ACK,服务端返回查询结果。  三次请求Seq的值是一样的,可见Seq并不是调用一次升级一次。而是有点类似于回合的概念。一个回合升级一次

9 ) 笔者第10帧的时候是ctrl+c直接关闭的客户端。 如果友好断开的话,会经过TCP 4次挥手关闭。最后Info体里应该会有FIN标识。 有兴趣的同学可以自测下。

10) INFO包体里的 WIN, MSS,WS,SACK_PERM 等都是优化网络性能很重要的参数。此处不表。

wireshark 分析 TCP 请求(转)的更多相关文章

  1. [转]使用wireshark分析TCP/IP协议中TCP包头的格式

    本文简单介绍了TCP面向连接理论知识,详细讲述了TCP报文各个字段含义,并从Wireshark俘获分组中选取TCP连接建立相关报文段进行分析. 一.概述 TCP是面向连接的可靠传输协议,两个进程互发数 ...

  2. Linux网络编程--wireshark分析TCP包头的格式

    摘要:     本文简介了TCP面向连接理论知识,具体讲述了TCP报文各个字段含义.并从Wireshark俘获分组中选取TCP连接建立相关报文段进行分析. 一.概述     TCP是面向连接的可靠传输 ...

  3. 使用 WireShark 分析 TCP/IP 三次握手 和 四次挥手

    TCP 三次握手 示意图 Wireshark 抓包注意事项 为了演示一个TCP三次握手建立连接的过程,我们通过 Chrome 访问一个网页. 已知 HTTP 协议就是建立在TCP链接上的 比如访问以下 ...

  4. 使用wireshark分析tcp/ip报文之报文头

    以太网报文的结构如下: 其中,以太网的帧头: 14 Bytes:MAC目的地址48bit(6B),MAC源地址48bit(6B),Type域2B,一共14B. IP头部: TCP头部: http:// ...

  5. wireshark抓包分析——TCP/IP协议

    本文来自网易云社区 当我们需要跟踪网络有关的信息时,经常会说"抓包".这里抓包究竟是什么?抓到的包又能分析出什么?在本文中以TCP/IP协议为例,简单介绍TCP/IP协议以及如何通 ...

  6. Wireshark抓包分析TCP协议

      版权声明:本文为作者原创文章,可以随意转载,但必须在明确位置表明出处!!! 之前有一篇文章介绍了http协议「初识http协议」, http协议协议是基于tcp协议的,所以作者觉得有必要针对tcp ...

  7. 【极客思考】计算机网络:Wireshark抓包分析TCP中的三次握手与四次挥手

    [摘要]本文重点分析计算机网络中TCP协议中的握手和挥手的过程. [前提说明] 前段时间突然看到了一篇关于TCP/IP模型的文章,心想这段时间在家里也用wireshark抓了点包,那么想着想着就觉得需 ...

  8. Wireshark抓包分析TCP“三次握手,四次挥手”

    1.目的 客户端与服务器之间建立TCP/IP连接,我们知道是通过三次握手,四次挥手实现的,但是很多地方对这个知识的描述仅限于理论层面,这次我们通过网络抓包的方式来看一下实际的TCP/IP传输过程. 2 ...

  9. Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析

    Wireshark抓包分析TCP建立/释放链接的过程以及状态变迁分析 一.介绍计算机网络体系结构 1.计算机的网络体系结构 在抓包分析TCP建立链接之前首先了解下计算机的网络通信的模型,我相信学习过计 ...

随机推荐

  1. CSS3 动画Animation的8大属性

    animation复合属性.检索或设置对象所应用的动画特效. 如果有多个属性值时以","隔开,适用于所有元素,包含伪对象:after和:before 1.animation-nam ...

  2. 在MVC4.5.1中使用Ninject

    看完Pro ASP.NET MVC5的前14章之后,终于开始了自己的项目搭建. 打算在实际项目中使用Ninject 但是总是出现各种问题.这里记录一下 在书中使用的Ninject的版本是: Insta ...

  3. Mysql中(@i:=@i+1)的作用

    Oracle中有一个伪列rownum,可以在生成查询结果表的时候生成一组递增的序列号.MySQL中没有这个伪列,但是有时候要用,可以用如下方法模拟生成一列自增序号. (1)sql示例:select ( ...

  4. Delphi CoCreateGuid()函数 获取GUID

    Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) GUID/UUID是通过特定算法产生的一个二进制 ...

  5. 【基础】Pipeline

    1. 参考的优秀文章 Request/Response protocols and RTT 2. 来源 原来,系统中一个树结构的数据来源是Redis,由于数据增多.业务复杂,查询速度并不快.究其原因, ...

  6. 【Dart学习】-- Dart之异常处理

    概述: Dart2的异常与Java是非常类似的.Dart2的异常是Exception或者Error(包括它们的子类)的类型,甚至可以是非Exception或者Error类,也可以抛出,但是不建议这么使 ...

  7. Shell5

    sed文本编辑器(vim,notepad)非交互式的文本编辑器sed是逐行处理编辑器    sed [选项] ‘条件指令'  文件   #没有条件指令时,默认对全文所有进行修改sed的所有操作默认时在 ...

  8. 微信小程序学习笔记(一)--创建微信小程序

    一.创建小程序 1.申请帐号.安装及创建小程序,请参照官方文档里面的操作 https://developers.weixin.qq.com/miniprogram/dev/. 小程序在创建的时候会要求 ...

  9. Windows驱动_WFP之一WFP是什么

    现在的网络安全问题,越来越受到重视,微软在VISTA以后,使用了WFP平台来代替之前XP和03中的基于包过滤的技术,比如Transport Driver Interface(TDI)过滤,Networ ...

  10. 1251 client does not support

    1.mysql -uroot -p 123456        (用户root,密码123465) 2.use mysql: 3.ALTER USER 'root'@'localhost' IDENT ...