在TCP/IP协议中,TCP协议通过三次握手建立一个可靠的连接,示意图如下:

   下面通过一个小故事简单理解一下这三次握手的具体含义:

   一天,快递员小客(客户端)准备去小服(服务器)家去送快递(准备与服务器进行连接),当走到小服家门口发现,小服家大门紧锁,

然后便高喊,"您好,你把门打开,由您的快递(尝试与服务器建立连接),我是快递员小客(发送同步序列编号Synchronize Sequence Numbers

,确认身份信息)",此时,小客进入等待小服回应的状态(客户端进入SYN_SEND),(由此实现双方第一次握手)。

   小服收到小客的请求消息后回应,"来了,并打开门(服务器响应客户端请求,建立连接)",此时小服已经确认小客的到来(服

务器进入SYN_RECV状态),(由此实现双方第二次握手)。

   当小客收到了小服的回应信息,并且发现门已经成功打开(建立连接成功),遂把快递送给了小服(向服务器发送确认包),之

后,小服签收快递。(客户端和服务端同时进入ESTABLISHED状态),(由此实现双方第三次握手)。

     若要断开连接,还需要进行第四次握手。  小服关闭房门(发送关闭请求),小客离开。

   资历尚浅,理解不周到之处,请之处并谅解。

    

小故事理解TCP/IP连接时的三次握手的更多相关文章

  1. 从收发消息能力来理解TCP建立连接时的三次握手

    TCP是一个全双工协议,意味着在Client和Server都可以接收和发送数据. 所以,从另一个角度理解建立连接的目的就是要确保双方都要知道对端的收发消息的能力是正常的

  2. 为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?

    看到了一道面试题:"为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?",想想最近也到金三银四了,所以就查阅了相关资料,整理出来了这篇文章 ...

  3. tcp建立连接为什么需要三次握手和四次挥手

    前言 众所周知tcp传输层协议在建立连接的时候需要三次才能建立起一个真正的可靠连接,可是为什么是三次呢,不可以是两次,四次等等呢,可以自己思考一番,带着疑问可以看下文. 三次握手 在<计算机网络 ...

  4. 网络基础二 tcp/ip协议簇 端口 三次握手 四次挥手 11种状态集

    第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...

  5. TCP/IP协议全解析 三次握手与四次挥手[转]

    所谓三次握手(Three-Way Handshake)即建立TCP连接,就是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立.所谓四次挥手(Four-Way Wavehand) ...

  6. TCP/IP 协议簇 端口 三次握手 四次挥手 11种状态集

    第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...

  7. TCP/IP协议簇 端口 三次握手 四次挥手 11种状态集

    第一章:概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN (Virturl LAN) ,翻译成中文是:“虚拟局域网”.VLAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计 ...

  8. TCP建立连接为什么是三次握手,为什么不是两次或四次?

    什么是三次握手 学过网络编程的人,应该都知道TCP建立连接的三次握手,下面简单描述一下这个过程. 如图所示 第一次握手:客户端发送TCP包,置SYN标志位为1,将初始序号X,保存在包头的序列号(Seq ...

  9. 网络TCP建立连接为什么需要三次握手而结束要四次

    忽然顿悟了,不管三次握手,还是四次握手,这是保证信息来回两个链路可达(也就是信息能从A到B,也能从B到A)的最低要求.-2018-9-17-晚上九点 举个打电话的例子: A : 你好我是A,你听得到我 ...

随机推荐

  1. HTML5本地存储 localStorage 和 sessionStorage 的基本用法及属性

    localStorage 和 sessionStorage 的用法都是本地的存储和获取 但他们又有所区别, 1, sessionStorage 是一个短暂的本地存数,它会随着浏览器的刷新和关闭而消失, ...

  2. oracle_用户与概要文件

    Oracle 用户与概要文件 2012-09-01 15:05:47| 分类: Oracle | 标签:用户与概要文件 |举报 |字号大中小 订阅     用户管理看上去简单其实也是最常出现问题的一个 ...

  3. 763A - Timofey and a tree

    A. Timofey and a tree time limit per test 2 seconds memory limit per test 256 megabytes input standa ...

  4. 应用 EditPlus 配置 Java 编译环境

    此文全文摘抄自: http://jingyan.baidu.com/album/37bce2be3ceef61002f3a208.html?picindex=7,谢啦 应用成功: EditPlus(文 ...

  5. [Flume] - flume安装

    Apache Flume是一个分布式的.可靠的.高效的系统,可以将不同来源的数据收集.聚合并移动到集中的数据存储中心上.Apache Flume不仅仅只是用到日志收集中.由于数据来源是可以定制的,fl ...

  6. 【图像浏览】FastStone Image Viewer——快速、小巧、功能强大

    FastStone Image Viewer 是一款免费(非商业用途)且小巧的看图软件. 其在在appinn.com的我最喜爱的<图片/照片浏览查看工具>调查结果中排第6名(总提名 140 ...

  7. 《C++ Primer》读书笔记—第一章 开始

    声明: 文中内容收集整理自<C++ Primer 中文版 (第5版)>,版权归原书所有. 学习一门程序设计语言最好的方法就是练习编程. 1.一个函数的定义包含四个部分:返回类型(retur ...

  8. 5_jQuery选择器

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/stric ...

  9. KMP算法的正确性证明及一个小优化

    直接把作业帖上来是不是有点不太公道呀... 无所谓啦反正各位看着开心就行 KMP算法 对于模式串$P$,建立其前缀函数$ N$ ,其中$N [q] $ 表示在$P$中,以$q$位置为结束的可以匹配到前 ...

  10. BZOJ 1875: [SDOI2009]HH去散步(矩阵乘法)

    首先,题意就把我们引向了矩阵乘法,注意边长m<=60,那么就按边建图,变成一个120个点的图,然后乱搞就行了。 PS:WA了N久改了3次终于A了QAQ CODE: #include<cst ...