webservice-TCP三次握手四次挥手

TCP简单模拟webservices 通过完成端口简单模拟webservice的收发原理 立即下载

 

此图是wireshark抓包获取的数据,现在分析一下三次握手四次挥手。

1.字符(SYN,ACK,FIN,seq,ack)各代表什么意思

  • SYN:代表请求创建连接,所以在三次握手中前两次要SYN=1,表示这两次用于建立连接,至于第三次什么用,在疑问三里解答。
  • FIN:表示请求关闭连接,在四次分手时,我们发现FIN发了两遍。这是因为TCP的连接是双向的,所以一次FIN只能关闭一个方向。
  • ACK:代表确认接受(确认接收到的数据),从上面可以发现,不管是三次握手还是四次分手,在回应的时候都会加上ACK=1,表示消息接收到了,并且在建立连接以后的发送数据时,都需加上ACK=1,来表示数据接收成功。
  • seq:序列号,什么意思呢?当发送一个数据时,数据是被拆成多个数据包来发送,序列号就是对每个数据包进行编号,这样接受方才能对数据包进行再次拼接。初始序列号是随机生成的,这样不一样的数据拆包解包就不会连接错了。(例如:两个数据都被拆成1,2,3和一个数据是1,2,3一个是101,102,103,很明显后者不会连接错误)
  • ack:这个代表下一个数据包的编号,这也就是为什么第二请求时,ack是seq+1

补充:URG表示紧急指针标志,为1时表示紧急指针有效,为0则忽略紧急指针;PSH表示有 DATA数据传输;RST表示连接重置。

第一次握手的数据包:客户端发送一个TCP,标志位SYN,seq(序列号)为0,代表客户端请求建立连接。如下图:

第二次握手的数据包:服务端发回确认包,标志位为SYN,ACK。Ack(确认号)设置为客户端的seq+1。

第三次握手的数据包:客户端在此发送确认包(ACK),seq(序列号)=seq(服务器的)+1,ack(确认号)=seq(服务器的)+1

数据传输

PSH表示有 DATA数据传输,客户端向服务端传递参数,服务端接收参数返回数据。

连接断开(四次挥手)

第一次TCP挥手的数据包:服务端向客户端发送FIN,ACK标志位用来关闭客户端到服务端的传输。

第二次TCP挥手的数据包:客户端接收到FIN,ACK,向服务器发送ACK。

第三次TCP挥手的数据包:客户端向服务端发送FIN,ACK标志位用来关闭服务端到客户端的传输。

第四次TCP挥手的数据包:服务端接收到FIN,ACK,向客户端发送ACK。

TCP是双向的,通过四次挥手之后才能完全断开连接。

低功耗模式下的看门狗使用 最近用国产芯片AT32在做一个低功耗的项目,为了实现低功耗模式下的定时唤醒,我选择的是使用相对比较简单的看门狗来做,下面就分享一下使用过程~ 为了最大限度的降低功耗,我用的是待机模式,先看看几种低功耗模式以及唤醒的区别: 而看门狗AT32提供了两种,分别是独立看门狗(IWDG)和窗口看门狗(WWDG),其区别大概有以下几点: 1、独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效;窗口看门狗由从 APB1 时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常 阅读详情

相关推荐

WSL2双显卡配置实战:避开Tesla与TCC模式的那些坑

本文针对WSL2环境下无法识别Tesla计算卡的问题进行深度解析。核心原因在于WSL2目前仅支持WDDM模式的显卡,而Tesla系列及运行在TCC模式下的显卡因采用纯计算架构而无法兼容。文章提供了详细的排查步骤,并给出了包括调整显卡用途、使用虚拟机或物理机在内的多种实用解决方案,帮助开发者避开配置陷阱。

weixin_29289821的博客 538

Linux系统编程_TCP

TCP三次握手建立连接 MTU、mss、半关闭 错误处理 readn readline 错误处理一般思想

LXiangRegisterd的博客 541

深度学习 tesorflow2.0版本 入门第一章

为什么要学tensflow 深度学习发展迅猛 框架灵活 google开发 公司应用广泛 2.0更加灵活 后面会学习的项目 图像分类 房价预测 泰坦尼克号生存预测 文本分类 文本生成 机器翻译 核心部分 模型训练 tesorboard----> 查看模型训练进度 模型保存和部署 分布式训练-----> 加速训练速度,提升训练效率 TensorFlow常用库:Tfds, tfhub,tensor2tensor 多平台云端环境GPU:Goolgle cloud环境配置,AWS环境配置 kaggle平

weixin_46969441的博客 1236

webservice、socket、http 、json傻傻分不清楚

WebService的几种概念:以HTTP协议为基础,通过XML进行客户端和服务器端通信的框架/组件两个关键点:1. 服务端提供的功能, 通过xml描述2. 第一步中的描述的功能, 嵌入到HTTP协议中, 使得能通过HTTP协议进行通信【所谓的SOAP】.用图可以如下表示:图一: WebService的简要表示采用这两个技术的目的主要是:1. 跨平台, 支持HTTP协议的主机和服务器, 都能够建立通信联系, 并且大部分的主机和服务器(99.999%以上)将支持HTTP协议

一个老鸟的学习之路 5899

Ferromagnetic soft continuum robots

本文来自机器人领域顶刊,Science Robotics。介绍了一种铁磁软连续体机器人,主要贡献为1)介绍了一个基于磁性微粒和聚合物的软连续体机器人的制造方法,在机器人外表面涂了一层水凝胶,极大地降低了摩擦阻力;2)并研究了在磁场下,不同粒子体积分数下,此机器人的驱动性能;利用手动操控的磁铁,进行了许多实验证明该机器人性能的优异性。 铁磁软连续体机器人 Ferromagnetic soft continuum robots [1] Paper Link Authors: Kim, Yoonho, et al

XU Yangxin的博客 1372

C# Socket网络通信UDP(关键字:Socket)

简单Socket-Udp通信 在本文中涉及到通信,仅做简单的通信(服务端接受消息,由客户端发出消息) 如有需要,根据需求可直接copy使用 关键字Socket 需要引用命名空间: using System.Net; using System.Net.Sockets; 服务端: using System; using System.Net; using System.Net.Sockets; u...

MelanceXin的博客 3886

TCP三次握手和四次挥手(了解)

TCP三次握手和四次挥手(了解) TCP有6种标示:SYN(建立联机) ACK(确认) PSH(传送) FIN(结束) RST(重置) URG(紧急) 一、TCP三次握手(建立连接) 简单通俗版本的 A: 你瞅啥?? B:瞅你咋地?? A:干一架!(连接建立成功) 第一次握手 客户端向服务器发出连接请求报文,这时报文首部中的同部位SYN=1,同时随机生成初始序列号 seq=x,此时,TCP客户端进程进入了 SYN-SENT(同步已发送状态)状态。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据

冷雨清的博客 392

银河麒麟桌面系统批量交付:封装自动化ISO镜像,百台装机效率提升10倍

麒麟桌面系统自动化ISO镜像定制摘要 本文详细介绍麒麟桌面版ISO安装镜像的定制方法,通过修改系统文件实现自动化安装部署。主要内容包括:1) 挂载原版ISO并提取文件;2) 使用unsquashfs解压系统文件进行定制化修改,包括添加系统标记配置;3) 配置ky-installer.cfg自动应答文件,设置安装参数如用户名、密码、分区方案等;4) 修改grub引导配置启用自动安装模式。该流程支持磁盘加密、自定义分区、自动登录等功能,生成的定制镜像可满足批量部署需求,显著提升系统安装效率。

信创运维工程师 · 银河麒麟 & 容器实战 | 金融生产环境迁移·等保加固 | 142篇原创·17万+阅读 1504

一个开源的Vue大屏数据展示组件库(1)

数据尚未加载完成时,可以显示Loading效果,增强用户体验。Loading…边框均由SVG元素绘制,体积轻量不失真,使用极为方便。你可以使用装饰去点缀你的页面,以增强视觉效果,与边框组件相同,他们也是用SVG元素绘制的。66%基本示例设置一个中心点,若干飞线点,即可得到动态飞线图,组件提供的dev模式可以帮你快速配置飞线点位置。增强版飞线图。

2401_84447233的博客 962

华为MetaERP月结加速方案:并行关账技术深度解析

【摘要】华为MetaERP并行关账技术通过创新架构设计,将传统串行月结流程(8-12小时)优化为并行执行(2-4小时)。关键技术包括:1)基于DAG引擎的任务依赖分析,实现模块/子任务三级并行;2)Saga模式分布式事务保障数据一致性;3)动态资源分配算法提升CPU利用率至60-80%。实施效果显示月结时间缩短70%,成功率提升至99.8%,错误恢复时间减少75%。该方案为大型企业ERP系统提供了高效的月结加速方案,未来还将结合AI调度与混合云扩展持续优化。

金牌架构师 1441

C++笔记之emplace_back(),push_back()性能比较i++ 、 ++i

操作是否需要临时对象/拷贝性能需要(构造临时对象)较慢不需要(直接构造)较快i++需要(保存旧值)对于内置类型无影响,但对于自定义类型(如迭代器、大对象)会有拷贝开销++i不需要相对更快(尤其是自定义类型)都存在"是否需要额外的临时对象/拷贝"这一性能差异点和++i都是更高效的版本(避免临时对象/拷贝)和i++都可能产生额外的临时对象(前者构造临时对象,后者保存旧值)对于内置类型(如int),i++和++i性能几乎没有差异(编译器会优化);但对于自定义类型(尤其是迭代器等重量级对象),

小勇博客 95

WebService安全解决方案—简单握手协议

  WebService安全解决方案—简单握手协议1、具体方案如下图: 2、解决方案分析       A、SiteA每次向SiteB发送的请求参数都不一样,造成伪造者难以模仿和推敲里面的算法过程。B、伪造者获得了SayHelloRequest的数据,它向SiteB发送请求,但是里面加密的IP与伪造者IP不符合的情况下,系统会否定;即使伪造者伪造了IP,获得了Site

Ancky的专栏 2553

Vue3 - 详细实现虚拟列表前端虚拟滚动列表解决方案,vue3长列表优化之虚拟列表,解决列表动态高度不固定高度及图片视频图文异步请求加载问题,虚拟列表DOM大量数据同时加载渲染卡顿太慢及下滑列表闪烁

vue3,vue3虚拟列表,用vue3实现一个虚拟列表,长列表高度不一致如何实现虚拟滚动加载列表,虚拟列表有图片视频,图文列表,上万条数据同时渲染解决,长列表dom渲染太卡,列表滚动条加载超多数据,瀑布流,在Vue3中如何实现列表的虚拟滚动,虚拟列表滑动白屏闪烁闪一下,虚拟列表每个项的高度不确定,可动态改变高度,vue3虚拟滚动列表,页面数据太多加载很慢怎么办,vue3实现不定高的虚拟列表,定高和不定高,虚拟列表非固定高度,vue3长列表优化之虚拟列表实现,vue3虚拟列表高度不固定,用vue3实现一个虚拟

🏆 前端领域优质创作者 1万+

webservice用完关闭连接_TCP的三次握手(建立连接)和四次挥手关闭连接)

建立连接:理解:窗口和滑动窗口TCP的流量控制TCP使用窗口机制进行流量控制什么是窗口?连接建立时,各端分配一块缓冲区用来存储接收的数据,并将缓冲区的尺寸发送给另一端接收方发送的确认信息中包含了自己剩余的缓冲区尺寸剩余缓冲区空间的数量叫做窗口2. TCP的流控过程(滑动窗口)TCP(Transmission Control Protocol) 传输控制协议三次握手TCP是主机对主机层的传输控制协议...

weixin_30980893的博客 778

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

webservice、socket、http

Webservice和Http的关系 Webservice与Socket

weixin_45673108的博客 1360

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

吊打面试官----精华汇总之网络编程

1. TCP建立连接和断开连接的过程? 2. HTTP协议的交互流程? HTTP和HTTPS的差异,SSL的交互流程? 3. TCP的滑动窗口协议有什么用? 4. HTTP协议都有哪些方法? 5. Socket交互的基本流程? 6. 讲讲tcp协议(建连过程,慢启动,滑动窗口,七层模型)? 7. webservice协议(wsdl/soap格式,与restt办议的区别)...

aiklmj的专栏 1088

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Web Service进阶(二)如何用Apache TCPMon来截获SOAP消息_前端 webservice 如何抓取消息(1)

接下来就可以启动客户端程序,客户端会向原来一样,向127.0.0.1所在的8080端口送出SOAP消息,而这个消息会被TCPMon截获,然后转送到127.0.0.1所在的8088端口去,然后Tomcat会收到这个SOAP消息交给负责处理的XFire Servlet,处理完的结果会通过TCPMon送回到客户端。还有很多的同学在学习的过程中一味的追求学的速度,很快速的刷视频,写了后面忘了前面,最后什么都没有学到,什么都知道,但是什么都不懂,要具体说,也说不出个所以然。非也,因为很多人找的资料就是很基础的。

2401_84418948的博客 1035

分布式学习系列2.1-分布式基础

分布式架构的定义以及分布式架构的演进。 分布式架构和集群的区别 TCP/UDP、全双工、半双工、3次握手协议、4次挥手协议 FIN标识的报文给到server端 server端接收到FIN报文以后,表示Client端没有数据要发给Server端了 server端发送ACK给到Client端,表示Server端的数据已经发完了。准备关闭链接 client端收到ACK报文以后,知道可以关...

java技术专家全栈成长之路 481

一篇比较全的HTTP协议详解(1)

HTTP协议,很重要的东西。不管你是前端、后端、爬虫等等,HTTP协议很重要!!!弄懂他,对你以后的帮助很大

日常学习记录 781

为什么service层要打成war包而不打成jar包?

在企业我们通常采用单点登录,所谓单点登录也就是企业中不同的系统,公用一套登录系统。 假如公司内部有30套系统,那么就会有30个controller层,每个controller层都会引用对应service的jar包坐标,当controller层一加载,每个controller都会将用到的service的jar加载一遍,这样是极其浪费资源的,而且影响到了效率。所以我们就将serv

没有伞的孩子必须努力奔跑!—小林 4725

知识点复习41 计算机网络

TCP建立连接的过程 rest 风格 是用来描述什么的? 描述接口(api) ,各种接口. http 接口 按照rest 风格设计 就是 restfull http webservice 接口 按照rest 风格设计 就是 restfull webserivce. 这和rest 风格的http 接口 比较来说 ,只能算是实现了 一个接口 ,但是 没有 更加规范的定义 h...

郭传志的博客 176

Web知识点

1、Get和Post方法的区别 Get方法主要用于获取服务器资源,而Post方法除了能获取资源外,还可以向服务器上传数据。 Get方法会把请求的数据附在URL后面,而Post不会 Get方法传输小数据,而Post方法主要用来传递大数据或比较隐私的数据,因此Post方法的安全性高一点 2、Servlet处理访问请求的流程 Servlet是一种实现了javax.servlet.Servlet接...

zcb1592781470的博客 481

接口测试面试题整理

什么是DNS HTTP协议

kk_lzvvkpj的博客 946

面试准备——(二)专业知识(3)网络

面试遇到的问题: 美团: 1. 网络七层体系结构 滴滴: 1.网络体系结构(七层、五层、TCP/Ip),各层的作用和协议。 2.TCP/IP在哪一层 3. TCP/UDP区别和应用场景 4. TCP如何保证它的可靠性 5. TCP如何面向连接?三次握手、四次释放过程?为什么是三次握手不是两次或者四次? 6. HTTP是哪一层?有哪几种操作? 7. GET和POST区别,其中,G...

weixin_30649641的博客 1241

Java题目随笔

1. 这几种引用级别由高到低分别为:强引用、软引用、弱引用和虚引用。 强引用: 平时我们编程的时候例如:Object object=new Object();那object就是一个强引用了。如果一个对象具有强引用,那就类似于必不可少的生活用品,垃圾回收器绝不会回收它。当内存空 间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来...

aa905867914的博客 360

100道接口测试面试题值得收藏!

设计接口测试用例时,涉及的是电商系统,其中包括很多修改,如商品.商家、店铺等等,针对这些数据的修改,会涉及到很多参数。如商品的名称,商品的尺码,商品的顔色等等。那在设计实现"修改"接口时,如何确定要传什么参数?是只需要传我要修改的参数,还是全部参数都要传?

m0_70669463的博客 1085
上一篇: 微信支付曝出的漏洞
下一篇: 死锁-CAS下ABA问题及优化方案
满地节操1
博客等级 码龄10年 12粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值