关键词:
TCP 三次握手 示意图
Wireshark 抓包注意事项
为了演示一个TCP三次握手建立连接的过程,我们通过 Chrome 访问一个网页。
已知 HTTP 协议就是建立在TCP链接上的
比如访问以下的网址:
http://toutiao.newmedia139.net/
通过 Cmd 的 ping 命令获取 这个网站对应的 IP地址 183.136.236.13
确定 这个IP 有一个非常重要的好处,就是我们只需要
电脑 -> 网站 的数据包
网站->电脑 的数据包
所以,可以使用Wireshark的显示过滤规则,只显示我们需要的数据,不然你一定看着满屏幕的数据抓狂的。
过滤规则如下:
ip.src==183.136.236.13 or ip.dst==183.136.236.13
截图:
分析TCP握手包
概览
通过图片,可以看到 先 进行了 TCP 三次传输 然后才 开始 HTTP 传输
第一次 客户端发送 SYN 报文 到服务器
第二次 ,服务器接收到 客户端的SYN 报文,回复 SYN + ACK 报文
第三次 ,客户端接收到服务端的 SYN+ACK 报文后,回复 ACK报文
注意:
这里有个坑:Wireshark 显示的 Syn Ack的数目是不准确的
理论上,Syn 应该初始值是个随机数的,后面的要根据初始值增加
TCP 三次握手总结
建立一个稳定的 双向 连接,最少需要 几次 通信呢?
以打电话为例
小明 给小红 打电话
小明 : 喂,小红 听得到么?
小红: 嗯,我听到你说话了,你能听到我么?
小明:我能听到你。
只有这三个传输都正确了,才能保障双方是 连通的
TCP 四次挥手
由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这个原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个 FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
CP的连接的拆除需要发送四个包,因此称为四次挥手(four-way handshake)。客户端或服务器均可主动发起挥手动作,在socket编程中,任何一方执行close()操作即可产生挥手操作。
(1)客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送。
(2)服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
(3)服务器B关闭与客户端A的连接,发送一个FIN给客户端A。
(4)客户端A发回ACK报文确认,并将确认序号设置为收到序号加1。
TCP采用四次挥手关闭连接如图2所示。
抓包截图
其中 183.136.236.13 是服务器的ip
可以看到 这一次挥手是由 服务器 发起的
第一次挥手 FIN +ACK
第二次挥手 ACK
第三次挥手 FIN +ACK
第四次挥手 ACK
总结
TCP 由于是全双工的,断开链接需要四次挥手
wireshark抓包分析tcp协议:三次握手和四次挥手
前言面试中我们经常会被问到TCP协议的三次握手和四次挥手的过程,为什么总喜欢问这个问题呢?其实我们平时使用的很多协议都是应用层协议,比如HTTP协议,https协议,DNS协议,FTP协议等;而应用层... 查看详情
tcp/ip三次握手和四次挥手
(一)TCP三次握手TCP(TransmissionControlProtocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示: SYN(synchronous建立联机)发起一个新连接。 AC... 查看详情
tcp协议的三次握手和四次挥手机制
...个协议是Internet国际互联网络的基础,TCP/IP协议是网络中使用的基本的通行协议。虽然从名字上看TCP/IP协议(传输控制协议/网 查看详情
三次握手和四次握手
...接: 理解:窗口和滑动窗口 TCP的流量控制 TCP使用窗口机制进行流量控制 什么是窗口? 连接建立时,各端分配一块缓冲区用来存储接收的数据,并将缓冲区的尺寸发送给另一端 接收方发送的确认信息中包... 查看详情
tcp/ip协议三次握手和四次挥手大白话解说
TCP/IP协议三次握手和四次挥手大白话解说前言昨天晚上被一位师傅问到了TCP/IP的工作机制,心里很清楚三次握手,然而对于四次挥手却忘了,这是大学习里学过的,奋而翻阅书籍和网络对之前所学的做一个温顾,算是夯实自我吧... 查看详情
wireshark抓包分析tcp协议:三次握手和四次挥手
...对比较简单!所以我们就重点来大家讲一下TCP协议。Wireshark抓包分析TCP协议为了更好的学习和理解TCP协议的连接和断开连接的过程,我们来引入一个非常适合用来学习网络协议的抓包工具Wireshark。这个抓包工具可以详细... 查看详情
wireshark如何抓包,各种协议(httparpicmp)的过滤或分析,用wireshark实现tcp三次握手和四次挥手(代码片段)
WireShark一、开启WireShark的大门二、如何抓包搜索关键字2.1协议过滤2.2IP过滤2.3过滤端口2.4过滤MAC地址2.5过滤包长度2.6HTTP模式过滤三、ARP协议分析四、WireShark之ICMP协议五、TCP三次握手与四次挥手5.1TCP三次握手实验5.2可视化看TCP三... 查看详情
基于wireshark抓包分析tcp的三次握手
在TCP/IP协议通讯过程中,采用三次握手建立连接,从而保证连接的安全可靠。通常三次握手步骤如下:1.第1次握手:建立连接时,客户端发送SYN包到服务器端,携带一个序列码给服务器端用于确认,并进入SYN_SEND状态,等待服务... 查看详情
007_wireshark分析tcp的三次握手和四次断开
要想进行抓包分析,必须先了解TCP的原理。这里介绍了TCP的建立连接的三次握手和断开连接的四次握手。一、前言:介绍三次握手之前,先介绍TCP层的几个FLAGS字段,这个字段有如下的几种标示SYN表示建立连接,FIN表示关闭连接... 查看详情
tcp三次握手和四次挥手
一. TCP/IP协议族 TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负责不同的通信功能。包含以下四个层次: 1.链路层,也称作数据链路层或者网络接口层,通常包括操作系统中的设备驱动程序和... 查看详情
tcp三次握手和四次挥手原理多测师(代码片段)
...bsp; 2.TCP/IP体系结构 二、TCP三次握手TCP(TransmissionControlProtocol): 传输控制协议。TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手来建立一个连接。TCP有 查看详情
从wireshake分析http和https的通信过程(代码片段)
参考文章:Wireshark基本介绍和学习TCP三次握手【技术流】Wireshark对HTTPS数据的解密Wireshark/HTTPSJourneytoHTTP/2以TCP/IP协议为例,如何通过wireshark抓包分析?TCP三次握手和四次挥手Https详解+wireshark抓包演示前言面试被问到有没有用过抓包... 查看详情
一文搞懂tcp/ip三次握手四次挥手(用wireshark软件对通信过程进行抓包)让连接过程变得具象化
一文搞懂TCP/IP三次握手四次挥手Wireshark安装基本使用三次握手查看本机IP(客户端IP地址)查看服务器IP地址建立连接查看三次握手过程四次挥手四次挥手基础打开抓包过程查看四次挥手过程对于学习互联网的人,三次握手四次... 查看详情
一文搞懂tcp/ip三次握手四次挥手(用wireshark软件对通信过程进行抓包)让连接过程变得具象化
一文搞懂TCP/IP三次握手四次挥手Wireshark安装基本使用三次握手查看本机IP(客户端IP地址)查看服务器IP地址建立连接查看三次握手过程四次挥手四次挥手基础打开抓包过程查看四次挥手过程对于学习互联网的人,三次握手四次... 查看详情
学习tcp/ip-tcp三次握手连接和四次握手断开连接
...连接的可靠传输协议, 二、TCP如何建立连接 2.1)TCP三次握手建立连接 TCP三次握手创建连接 a.由于TCP是面向连接的,所以有服务端和客户端之分。服务端先在对应的端口监听(LISTENING),等待客户端发送的tcp... 查看详情
三次握手和四次挥手
...议TCP/IP中传输层里TCP协议中,主机与服务器建立连接时的三次握手,和断开连接时的四次挥手。本博文分两部分介绍, 一:状态详解 二:三次握手和四次挥手状态介绍这里总共涉及到十种状态,其实总共有十一... 查看详情
动画详解tcp三次握手和四次挥手图文详解
“ TCP/IP协议可以说是整个互联网的基石。” 01— TCP是什么? 为了直接认识TCP是什么,直接在命令行执行: tcpdump是在linux下的一款很好用的抓包工具,(运行此命令... 查看详情
tcp的三次握手和四次挥手
待更!! 参考:TCP协议的三次握手和四次挥手 TCP三次握手和四次挥手状态变迁解析 wireshark抓包图解TCP三次握手/四次挥手详解 查看详情