连接的三次握手:

1握、client向server发送连接请求,发送的报文是:syn=1,seq number=生成的随机数x 。  这时client的状态是SYN_SEND
2握、server从syn=1知道client要进行连接。 然后向客户端回复信息,即ack number=x+1(x是client向server发送的seq number),syn=1,ack=1,seq=随机数y ,同时在server中为client分配系统资源。  这时server的状态是SYN_RECV
3握、client收到请求后检查ack number是否正常。(即是不是等于seq number+),同时检查ack是否为1.  如果都正确 ,client会再向server 发送ack number=y+1,ack=1。 server收到后确认seq与ack ,正确则连接建立成功。   并分配client资源。  最后client与server的状态皆是ESTABLISHED

 
中断的四次挥手:
中断的发起端可以是client,也可以是server
假设是client发起中断请求
1、client向server发送FIN报文, 告知server我要中断连接。 这时client的状态是FIN_WART_1
2、server收到FIN后,如果没有数据发送完毕,那么向client发送ACK。  代表我收到你的中断申请,但是我还有数据发送给你。  这时client状态为FIN_WAIT_2。  server的状态为CLOSE_WAIT
3、当server已经没有数据往client发送时,这时代表可以中断连接了,那么向client发送FIN,意思是说,OK啦,我这边数据已经给你都发送完毕了,已经准备好中断边接了。  这时server的状态是LAST_ACK
4、client接收到server的FIN后,向server回复ack,这时状态变为TIME_WAIT。 并不会马上关闭连接。 而是在30秒(这个是可配置的)后关闭连接(原因是server是收到ack后才会关闭连接,但是可能因为网络的原因server收到ack出现了延迟,所以就等30秒后再关闭client的连接)
5、server收到ack后,关闭连接。状态变为CLOSED。
6、过30秒(可配置)后,client关闭连接。 状态变为CLOSED。
 
 
有时间时,应该自己再补一张流程。 这样记忆起来就更加清晰了。
 
参考:

tcp的三次握手及四次挥手(连接与中断流程)的更多相关文章

  1. TCP的三次握手与四次挥手

    TCP的三次握手与四次挥手 一.TCP(Transmission Control Protocol 传输控制协议) TCP是面向对连接,可靠的进程到进程通信的协议 TCP是提供全双工服务,即数据可在同 ...

  2. 你应该这么理解TCP的三次握手和四次挥手

    前言: TCP协议是计算机的基础,他本身是一个非常非常复杂的协议. 本文只是蜻蜓点水,将从网络基础以及TCP的相关概念介绍开始,之后再将三次握手,四次挥手这些内容来阐述. 最后介绍一些常见问题,并给出 ...

  3. TCP/IP三次握手与四次挥手的正确姿势

    0.史上最容易理解的:TCP三次握手,四次挥手 https://cloud.tencent.com/developer/news/257281 A 理解TCP/IP三次握手与四次挥手的正确姿势http ...

  4. TCP的三次握手与四次挥手详解

    TCP的三次握手与四次挥手是TCP创建连接和关闭连接的核心流程,我们就从一个TCP结构图开始探究中的奥秘  序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序 ...

  5. 【图解】给面试官解释TCP的三次握手与四次挥手-Web运用原理及网络基础

    作者 | Jeskson 来源 | 达达前端小酒馆 轻松了解HTTP协议 为什么要学习网络协议呢?为什么要学习计算机完了呢?显然这很重要,至少能够帮助你找到工作的原因之一,学习网络知识点太多太多,没有 ...

  6. TCP的三次握手与四次挥手笔记

    TCP的三次握手与四次挥手笔记 TCP Flags URG: 紧急指针标志 ACK:确认序号标志 PSH:push标志 RST:重置连接标志 SYN:同步序号,用于建立连接过程 FIN: finish ...

  7. TCP的三次握手与四次挥手理解及面试题

    TCP的三次握手与四次挥手理解及面试题(很全面) 转载自:https://blog.csdn.net/qq_38950316/article/details/81087809 本文经过借鉴书籍资料.他 ...

  8. TCP 的三次握手和四次挥手

    参考资料: 1.TCP的三次握手与四次挥手理解及面试题: 2.Http协议三次握手和四次挥手: 3.TCP通信的三次握手和四次撒手的详细流程(顿悟) 前置: 序号(也称序列号) - Sequence ...

  9. WireShark抓包分析以及对TCP/IP三次握手与四次挥手的分析

    WireShark抓包分析TCP/IP三次握手与四次挥手 Wireshark介绍: Wireshark(前称Ethereal)是一个网络封包分析软件.功能十分强大,是一个可以在多个操作系统平台上的开源 ...

  10. 【计算机网络】TCP的三次握手与四次挥手

    今天讲一下TCP的三次握手与四次挥手 1.首先说TCP 协议的特点:TCP是在不可靠的IP层之上实现的可靠的数据传输协议,它主要解决传输的可靠.有序.无丢失和不重复问题.TCP 是TCP/IP 体系中 ...

随机推荐

  1. RHEL6.4记录一次添加一块新分区的操作

    首先看了下挂载点及目录 fdisk /dev/sda [root@box ~]# fdisk /dev/sda WARNING: DOS-compatible mode is deprecated. ...

  2. CSS2-3常见的demo列子总结

    CSS2-3常见的demo列子总结 阅读目录 1. css超过一行或者多行后显示省略号. 2. css图片未知高度垂直居中完美解决方案. 3. 学习使用 :before和 :after伪元素 回到顶部 ...

  3. 将mysql的查询结果导出为csv

    要将mysql的查询结果导出为csv,一般会使用php连接mysql执行查询,将返回的查询结果使用php生成csv格式再导出. 但这样比较麻烦,需要服务器安装php才可以实现. 直接使用mysql导出 ...

  4. C++代码重用——包含

    #ifndef PAIRS_H #define PAIRS_H #include <iostream> #include <valarray> template <cla ...

  5. 【leetcode】Combination Sum

    Combination Sum Given a set of candidate numbers (C) and a target number (T), find all unique combin ...

  6. OAuth

    http://oauth.net http://oauth.net/2/ http://tools.ietf.org/html/rfc6749 人人网:http://wiki.dev.renren.c ...

  7. PHP 转换接口编码

    2014年10月20日 10:45:19 有些时候调用接口的时候返回数据的编码不是utf-8的,需要转码 foreach ($arrInfo as $k => $v) { $encodeing ...

  8. Sass 中的 @ 规则

    一. @import Sass 扩展了 CSS 的 @import 规则,让它能够引入 SCSS 和 Sass 文件. 所有引入的 SCSS 和 Sass 文件都会被合并并输出一个单一的 CSS 文件 ...

  9. OpenGL在 win8 64bits系统下的配置

    1 program files(x86)与program files 在64位系统下,为了更好的兼容32位程序,在安装一些32位程序(注意某些程序他就是32位的),会默认扔到program files ...

  10. LINUX下安装TeamViewer

    https://www.teamviewer.com/zhcn/download/linux/ [root@ok teamviewer]# yum install -y teamviewer_11.0 ...