Http协议三次握手过程

2013-05-23 17:00:28|  分类: http头|字号 订阅

TCP(Transmission Control Protocol) 传输控制协议

TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:

位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)

Sequence number(顺序号码) Acknowledge number(确认号码)

第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;

第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包

第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。

完成三次握手,主机A与主机B开始传送数据。

在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 完成三次握手,客户端与服务器开始传送数据.

实例:

IP 192.168.1.116.3337 > 192.168.1.123.7788: S 3626544836:3626544836
IP 192.168.1.123.7788 > 192.168.1.116.3337: S 1739326486:1739326486 ack 3626544837
IP 192.168.1.116.3337 > 192.168.1.123.7788: ack 1739326487,ack 1

第一次握手:192.168.1.116发送位码syn=1,随机产生seq number=3626544836的数据包到192.168.1.123,192.168.1.123由SYN=1知道192.168.1.116要求建立联机;

第二次握手:192.168.1.123收到请求后要确认联机信息,向192.168.1.116发送ack number=3626544837,syn=1,ack=1,随机产生seq=1739326486的包;

第三次握手:192.168.1.116收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,192.168.1.116会再发送ack number=1739326487,ack=1,192.168.1.123收到后确认seq=seq+1,ack=1则连接建立成功。

转载:http://blog.163.com/wangzhenbo85@126/blog/static/1013632822013423502833/?suggestedreading&wumii

HTTP协议三次握手过程相关推荐

  1. TCP协议三次握手过程

    常见前端面试题 TCP协议三次握手过程 1.第1次握手 建立连接 客户端向服务器发送的报文SYN包信息中SYN码为1 2.第2次握手 服务器回应客户端,用于接受并连接请求 服务器返给客户端的的报文SY ...

  2. Linux 系统应用编程——网络编程(TCP 协议三次握手过程)

    TCP(Transmission Control Protocol) 传输控制协议  TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种 ...

  3. 简述tcp协议三报文握手过程_TCP协议的3次握手与4次挥手过程详解

    前言 尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务.TCP提供一种面向连接的.可靠的字节流服务. 面向连接意味着两个使用TCP的应用(通常是一个客户和一个服 ...

  4. 简述tcp协议三报文握手过程_简述TCP的三次握手过程

    TCP握手协议 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接. 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器 ...

  5. 简述tcp协议三报文握手过程_华为原理 | 传输层协议amp;交换转发原理

    Interface GigabitEthernet0/0/0 ip address 12.1.1.2 255.255.255.0 arp-proxy enable \\华为接口下默认没有开启代理ARP ...

  6. 简述tcp协议三报文握手过程_TCP协议中的三次握手和四次挥手(图解)

    建立TCP需要三次握手才能建立,而断开连接则需要四次握手.整个过程如下图所示: 先来看看如何建立连接的. 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资 ...

  7. TCP协议:三次握手过程

    三次握手是为了建立连接,Tcp三次握手的流程图如下: 第一次握手:建立连接时,客户端发送SYN包(SYN=1,seq=x)到服务器,并进入SYN_SEND状态,等待服务器确认: 第二次握手:服务器收到 ...

  8. TCP协议的三次握手过程

    TCP作为一种可靠传输控制协议 核心思想:保证数据可靠传输,提高传输效率 三次握手建立连接 TCP三次握手过程  每一次握手:全双工的方式 第一次握手,客户端发送数据包给服务端:证明了客户端有发送的能 ...

  9. TCP/IP协议三次握手与四次握手流程解析

    原文链接地址:http://www.2cto.com/net/201310/251896.html TCP/IP协议三次握手与四次握手流程解析 TCP/IP协议的详细信息参看<TCP/IP协议详 ...

最新文章

  1. facebook新无监督论文-Unsupervised Learning of Visual Features by Contrasting Cluster Assignments
  2. SAP PI - 同步 vs. 异步
  3. pe卸载win10更新补丁_Win10更新翻车!CPU使用率飙升,直接损坏SSD,勿升级
  4. 2021年 第12届 蓝桥杯【备赛直播公开课 —— 软件类(本科组、高职高专组)】
  5. php html asp .net iis tomcat,iis+apache+tomcat 整合共享80口 支持ASP .NET JSP PHP全能WEB服务...
  6. 非华为手机可以用鸿蒙吗,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可 !【手机吧】_百度贴吧...
  7. Spring 框架 IOC 与 DI 的总结
  8. 面向对象——意图与逻辑(五)
  9. 可视化理解卷积神经网络 - 反卷积网络 - 没看懂
  10. linux-32bit-内存管理
  11. 暑假集训单切赛第一场 CF 191A Dynasty Puzzles
  12. cant find python executable_gyp ERR! stack Error: Can't find Python executable 'python'
  13. MixGo V1.0 发布,混合型高性能 Go 框架
  14. 写高性能 Web 应用程序的 10 个技巧 转自微软资料 .
  15. Mybatis事务提交问题
  16. word硕士毕业论文不同章节设置不同页眉
  17. 「网络安全」安全设备篇(8)——流量监控
  18. html导航栏前面有图片,CSS带图片的漂亮导航菜单
  19. iOS 面向切面编程与typhoon框架
  20. 小米系统shell_分享自用小米手机ADB命令删除系统内置应用

热门文章

  1. 医美企业如何玩转私域流量?
  2. C# MessageBox.Show 用法
  3. TCP/UDP端口大全
  4. 什么是JDK、JRE
  5. 【k8s源码篇】k8s类型定义1之yaml与单体、list对象转换
  6. arange和range
  7. MYSQL5.7下载安装详细教程
  8. linux 读取命令行输入参数,shell脚本读取文件+读取命令行参数+读取标准输入+变量赋值+输出到文件...
  9. 如何解决 使用matplotlib.finance获取雅虎财经网站股票数据 报错?
  10. python用户输入错误重新输入_Python输错4次用户名密码需要输入验证码