本次内容:首先要了解什么是三次握手四次挥手,以及为什么是三次握手和四次挥手,并且观察TCP协议中各标志,并说明。

构建合适的拓扑结构:搭建出客户端(client)—服务器(server)

配置好基本的信息,将模拟器切换到 Simulation 模式,打开客户端 Web Browser ,输入 192.168.1.254 观察报文发送过程。


此时的seq = 0
客户端向服务器发送了一个 SYN 请求建立连接,同时建立起序列号的同步 ------第一次握手


此时,服务器显示已经接收到了客户端的请求并答应建立连接,服务器就会向客户端回复 ACK确认字段(只有ACK确认字段为1时,确认字段才有效), 确认已经收到并答应建立,因为当客户端请求访问服务器时(通信是双向的),服务器当然也会向客户端发送请求访问,所以客户端也要向服务器发送一个确认的包(否则就会进入半开状态)同时回复 SYN同步标志 ---- 第二次挥手


客户端接收到了服务器的回应,知道了自己发的信息服务器可以接收到,并且自己还可以接收到服务器的信息,但是此时服务器并不知道客户端是否能够接收到自己的信息,所以此时还需要客户端发送一个确认字段,如上图所示:客户端向服务器发送了一个ACK确认标志,并且ACK为1表示可以接收到信息。-----第三次握手

在发送完信息后,需要断开连接,断开连接的过程可以称做“四次挥手”

客户端表示想要断开连接,向服务器发送了 FIN 表示断开连接的终止标志。----- 第一次挥手


服务器表示已经收到,并且表示可以断开连接。-----第二次挥手

因为在第二次握手时,服务器也访问过客户端,所以服务器在接收完客户端的FIN后,也会向客户端发送 FIN ,断开与客户端的连接,所以客户端会收到FIN的终止信息-----第三次挥手

接收到信息后,客户端也会回复服务器 ACK,告诉服务器我已接收到。-----第四次挥手

结束

清楚了解TCP三次握手和四次挥手的过程中各标志的含义相关推荐

  1. 简述TCP三次握手和四次挥手的过程和理解

      简述TCP三次握手和四次挥手的过程和理解   在讲解之前先来熟悉一下TCP报文头部   源端口.目标端口:计算机上的进程要和其他进程通信是要通过计算机端口的, 而一个计算机端口某个时刻只能被一个进 ...

  2. TCP三次握手与四次挥手的过程及原因

    一.TCP的连接建立--三次握手 1.最初两端的TCP进程都处于CLOSED(关闭)状态.A主动打开连接,B被动打开连接 2.B的TCP**服务器进程创建传输控制块TCB(Transmission C ...

  3. TCP三次握手和四次挥手详解(面试常见问题)

    大概两个月前,一位朋友在面试360集团时,在面试过程中被问及TCP三次握手和四次挥手的相关知识,他当时只知道大概,但当时面试官问他TCP三次握手过程中发送的数字是多少,他一下子就懵住了,因为这也是他第 ...

  4. 硬不硬你说了算!近 40 张图解被问千百遍的 TCP 三次握手和四次挥手面试题

    来自:小林coding 每日一句英语学习,每天进步一点点: 前言 不管面试 Java .C/C++.Python 等开发岗位, TCP 的知识点可以说是的必问的了. 任 TCP 虐我千百遍,我仍待 T ...

  5. 握手失败_拜托了,看完这篇别再问我什么是TCP三次握手和四次挥手

    TCP三次握手和四次挥手的问题在面试中是最为常见的考点之一.很多读者都知道三次和四次,但是如果问深入一点,他们往往都无法作出准确回答. 三次握手如何建立连接? 三次握手建立链接 从图中可以清楚的看到, ...

  6. TCP 三次握手 和 四次挥手

    概述 我们都知道 TCP 是 可靠的数据传输协议,UDP是不可靠传输,那么TCP它是怎么保证可靠传输的呢?那我们就不得不提 TCP 的三次握手和四次挥手. 三次握手 下图为三次握手的流程图 下面通过我 ...

  7. TCP的三次握手和四次挥手的过程?

    TCP的三次握手和四次挥手的过程? 如下2幅图 如下2幅图

  8. 网络协议-网络分层、TCP/UDP、TCP三次握手和四次挥手

    网络的五层划分是什么? 应用层,常见协议:HTTP.FTP 传输层,常见协议:TCP.UDP 网络层,常见协议:IP 链路层 物理层 TCP 和 UDP 的区别是什么 TCP/UDP 都属于传输层的协 ...

  9. TCP三次握手、四次挥手、socket,tcp,http三者之间的区别和原理

    接着上一篇文章叙述: TCP/IP连接(在互联网的通信中,永远是客户端主动连接到服务端): 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接.TCP协 ...

最新文章

  1. OpenTsdb官方文档-----理解指标和时间序列
  2. Cs Tip13: 删除安装文件
  3. Spring错误小结
  4. C语言试题四十八之该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数。
  5. Redis学习之Docker环境搭建
  6. 【CodeForces - 705C】Thor(模拟,STLset优化链表)
  7. docker搭建gitlab服务器(Centos7)
  8. 信息学奥赛一本通(1196:踩方格)
  9. 【转】【Asp.Net MVC】asp.net mvc Model验证总结及常用正则表达式
  10. MySQL引擎详解(三)——InnoDB引擎特性
  11. inline-block和float
  12. 终极算法:机器学习和人工智能如何重塑世界笔记(转)
  13. java编写九宫格拼图游戏_jquery 九宫格拼图游戏源码
  14. 如何打造高质量的NLP数据集
  15. python基础刻意练习--Task 6 字典与集合
  16. 高性价比的“小985”院校推荐!认可度超高
  17. v2ray各种版本+一键搭建+bbr提速脚本
  18. python二级题库 第四套 附刷题软件
  19. MFC CToolBar使用总结
  20. 计算机协会见面会游戏,计算机协会新会员见面大会会长演讲稿

热门文章

  1. Git Merge代码失败 解决
  2. django.db.utils.OperationalError: (1050, “Table ‘表名‘ already exists)解决方法
  3. 关于我在安装2.6.9版本bochs虚拟机时遇到的问题以及解决过程
  4. python-django-redis拒绝连接问题解决_20191121
  5. 移动端和PC端弹出遮罩层后,页面禁止滚动的解决方法及探究
  6. “C# 未在本地计算机上注册microsoft.Jet.OLEDB.12.0”的解决方案
  7. 微信分享网页链接缩略图不显示解决方法
  8. java.lang.NoSuchMethodException: java.util.List.<init>() 问题解决
  9. 如果不需要CSS隐藏滚动条
  10. 设计网页字体css,CSS教程 :网页字体及字体大小的设计