Wireshark工作笔记-对TCP连接与断开以及数据传输的实战分析
首先要使用一个TCP/UDP Socket调试工具。
本次使用虚拟机NAT模式,主机IP地址为192.168.164.1,此时主机的/UDP Socket调试工具配置如下:
虚拟机采用Win7 IP地址为192.168.164.101,其TCP/UDP Soceked调试工具配置如下:
在Wireshark过滤器里面输入过滤命令,就能对获取的数据包进行过滤命令如下:
ip.addr==192.168.164.101&ip.addr==192.168.164.1
最终Wireshark获取的数据包如下:
更具上一篇,也就是这篇的笔记https://blog.csdn.net/qq78442761/article/details/80345948
知道TCP连接时有3次握手。
客户机(192.168.164.101)请求连接将发送SYN标志,此时要求建立连接,并产生一个随机的Seq,这里为0
第二次握手,服务器(192.168.164.1)得知客户机(192.168.164.101)要建立连接后,回包给客户机(192.168.164.101)其封包中多了一个ACK的标志,这个ACK的值是客户机(192.168.164.101)发来的Seq的值加1(也就是0+1=1)。并且产生一个随机的Seq发给客户机(192.168.164.101)本次Seq=0。
1
第三次握手,客户机(192.168.164.101)检测服务器(192.168.164.1)发来的数据包是否正确,(第一次握手的,也就是Seq=0的时候)如果是Seq了,也就是0,ack也是1了,就对了,客户机再发送一条数据包,此时Seq+1,为1,Ack为1,此时连接建立。
关于数据传输,带PSH的就为数据传输:如下图
下面来分析,断开连接的四次握手:
首先客户机(192.168.164.101)发送FIN和ACK标志给服务器,其中FIN代表客户机与服务器要分手了。此时的Seq=101,ACK=1。随后服务器(192.168.164.1)两次发送数据包,一个是把Seq置为1,一个是客户机(192.168.164.101)的ACK,
,第二个包是FIN标志的,最后一次是客户机(192.168.164.101)把以前的seq与ACK置换,并ACK+1。
就完成了。
这里可以这么形象的理解:
客户机:我们分手把!
服务器:啥?
服务器:分手就分手,再来找我你就是猪!
客户机:回来找你我就不是人!
Wireshark工作笔记-对TCP连接与断开以及数据传输的实战分析相关推荐
- Linux工作笔记-查看tcp与udp端口并对比Windows简单分析
Linux查看端口: -t : 指明显示TCP端口 -u : 指明显示UDP端口 -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序) -p : ...
- wireshark抓包分析tcp连接与断开
其实对于网络通信的学习,最好还是能够自己抓到包详细地看一下,不然只单单通过文字和图的描述印象不够深刻.本文通过实际的抓包操作来看一下tcp的连接与断开是怎样的. 首先需要去https://www.wi ...
- 4个实验,彻底搞懂TCP连接的断开
前言 看到这个标题你可能会说,TCP 连接的建立与断开,这个我熟,不就是三次握手与四次挥手吗?且慢,脑海中可以先尝试回答这几个问题: 四次挥手是谁发起的? 如果断电/断网了连接会断开吗? 什么情况下没 ...
- java如何处理tcp异常断开_(转)TCP连接异常断开检测
TCP是一种面向连接的协议,连接的建立和断开需要通过收发相应的分节来实现.某些时候,由于网络的故障或是一方主机的突然崩溃而另一方无法检测到,以致始终保持着不存在的连接.下面介绍一种方法来检测这种异常断 ...
- Wireshark工作笔记-TCP的状态解析,以及建立连接与关闭连接
在TCP层,有个FLAGS字段,这个字段有以下几个标识:SYN, FIN, ACK, PSH, RST, URG. 其中,对于我们日常的分析有用的就是前面的五个字段. 它们的含义是: SYN表示建立连 ...
- TCP连接与断开详解(socket通信)
http://blog.csdn.net/Ctrl_qun/article/details/52518479 一.TCP数据报结构以及三次握手 TCP(Transmission Control Pro ...
- java如何处理tcp异常断开_针对TCP连接异常断开的分析
我们知道,一个基于TCP/IP的客户端-服务器的程序中,正常情况下,我会是启动服务器使其在一个端口上监听请求,等待客户端的连接:通过TCP的三次握手,客户端能够通过socket建立一个到服务器的连接: ...
- TCP/IP详解--学习笔记(10)-TCP连接的建立与中止
TCP是一个面向连接的协议,所以在连接双方发送数据之前,都需要首先建立一条连接.这和前面讲到的协议完全不同.前面讲的所有协议都只是发送数据而已,大多数都不关心发送的数据是不是送到,UDP尤其明显,从编 ...
- Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 因为做语音通信要用到,长连接,这里对各个协议的长短连接做个总结 刚接触HTTP请求就听说过HTTP ...
最新文章
- python个人博客网站的搭建说明书_个人博客搭建线上实施方案
- Windows Mobile 获取基站信息(LAC,CellID)
- python预测随机数据_随机森林预测
- linux luks源码,下载源代码编译安装
- Android获取本机号码及运营商
- 深入理解Oracle的并行操作【好文认真读】
- 头部新造车扎推IPO:理想距离特斯拉还差18个蔚来
- 将字符串使用md5加密
- Spark推荐系列之Word2vec算法介绍、实现和应用说明(附代码)
- 适合python组态软件_组态软件心得体会
- excel公式和函数
- python零基础怎么学英语最快_零基础如何快速成为Python高手
- 计算机表格斜杠怎么打,excel斜杠_excel表格打斜杠的方法步骤详解
- 手把手教你做短视频去水印微信小程序(5-服务端代码)
- python_d05
- 经过卖房创业与“云吞面”群聊,老季带着优刻得迎来了“开市大吉”……
- 从零开始写一个RTSP服务器(一)RTSP协议讲解
- python plc fx5u_三菱FX5U可编程控制器硬件及指令篇
- 被遗忘的数学家!曾提出最接地气的数学定理,可以计算男朋友真不真心的那种......
- 计算机视觉入门CV之街道字符识别—01赛题理解