对TCP说三道四(三次握手)
夜朦胧,人方静,无聊的人打开了无聊的电脑看到了一张无聊的图,想着想着就睡着了,梦到了人a和人b的一次聊天。

有一天,a有事情想跟b商量就问b“有时间么,想和你聊一下天”,b想了一会发现自己能抽出时间就回复a说“可以啊,并把具体时间告诉了a”,a收到消息后就高高兴兴的去安排自己的时间,并告知b“我的时间也安排好了,可以说话了”,然后a和b噼里啪啦的说了好长时间,最后a的话终于说完了,想要结束聊天了。于是
a说“我的话说完了”,b这个时候就有两种可能性了:b的话没说完和b的话说完了。
1.如果b的话没说完,b就要跟a说“我的话还没说完了,你还得多听一会,等我说完了着”,然后b就噼里啪啦的又跟a说了一堆事情,a就在那里安静的听着,终于b说完了,这个时候b就跟a回了句“好了,我的事情终于说完了,你可以去忙其他的事了”,然后a就准备去忙其他的事情,但是他不知道b是不是还在想着这次谈话,出于礼貌和不放心,a还是决定再回一句让b也去忙其他的,于是a就给b回了一句“我要去忙其他的了,你也去忙你的其他的事吧”。于是这次谈话就愉快的结束了。
2.如果b的话说完了,b就说“好,我的话也说完了,你去忙其他的事吧”,a收到了b的回话,a就准备去忙其他的事情,但是他不知道b是不是还在关注着这次谈话,出于礼貌和不放心,a还是决定再回一句让b去忙其他的,于是a就给b回了一句“我要去忙其他的了,你也去忙你的其他的事吧”。
有这次谈话,他想到了计算机的世界,计算机a要和计算机b建立链接,如果b刚好有资源就可以分配一段资源(建立进程,分配端口号等)去处理a的请求,他们之间通过三次TCP链接后就正式传输数据,处理数据。断开连接则有可能是b请求断开链接也有可能是a,但是过程是类似的,假设是a的数据传完了,就请求断开链接,b要给a的答复就有两种可能了,如果b还有数据没传完要断开链接总共就得四次TCP链接了,如果b的数据传完了要断开链接其实三次TCP链接就可以完事了。
由于考虑到网络的不稳定性、TCP的不可靠性以及充分利用计算机资源等原因,人们就给计算机设定了一个合理的最高等待时间限度,如果网络断了,过了这个时间限度还没收到彼此回复,双方计算机就主动结束这次通信,终止这次通信所带来的资源开销。上例中a最后一次发消息给b也是由于b在这个时间限度内不会主动让出这次通信所占用的资源,为了让b更早的让出这些资源,a就及时发一个消息主动告诉b,让b腾出这段资源去忙其他的。a发送完最后一条消息后等到时间到了这个时间段就也让出因这次通信所占用的资源。
计算机本来是笨的,然而人类很聪明,就让计算机变得很聪明;也让计算机变得很懂礼貌,然而计算机却让人类变得越来越不懂礼貌,越来越虚假。晨曦初露,人渐醒,原来只是整个世界打了个盹,做了个不近人情的交易!”醒来的那个人,揉了揉眼,不小心碰到了键盘,借着微光,无力地瞅了一眼横在面前的那副图,心想:“Y的,这世界和这图与我有关么,还害得我一宿没睡好?”于是就又无精打采地趴着睡了。

对TCP说三道四(三次握手)的更多相关文章
- 简析TCP的三次握手与四次分手
TCP是什么? 具体的关于TCP是什么,我不打算详细的说了:当你看到这篇文章时,我想你也知道TCP的概念了,想要更深入的了解TCP的工作,我们就继续.它只是一个超级麻烦的协议,而它又是互联网的基础,也 ...
- TCP的三次握手(建立连接)和四次挥手(关闭连接)
参照: http://course.ccniit.com/CSTD/Linux/reference/files/018.PDF http://hi.baidu.com/raycomer/item/94 ...
- TCP协议三次握手和四次挥手
http://www.cnblogs.com/rootq/articles/1377355.html TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对 ...
- HTTP协议中TCP的三次握手,四次挥手总结
建立TCP需要三次握手才能建立,而断开连接则需要四次挥手.整个过程如下图所示: 先来看看如何建立连接的. 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资 ...
- TCP协议三次握手
TCP协议三次握手过程分析 TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: ...
- 简析TCP的三次握手与四次挥手
TCP是什么? 具体的关于TCP是什么,我不打算详细的说了:当你看到这篇文章时,我想你也知道TCP的概念了,想要更深入的了解TCP的工作,我们就继续.它只是一个超级麻烦的协议,而它又是互联网的基础,也 ...
- 简析TCP的三次握手与四次分手【转】
转自 简析TCP的三次握手与四次分手 | 果冻想http://www.jellythink.com/archives/705 TCP是什么? 具体的关于TCP是什么,我不打算详细的说了:当你看到这篇文 ...
- 【转载】简析TCP的三次握手与四次分手
最近在补习HTTP协议相关知识点,看到这篇讲得不错,所以转载收藏一下,同时也分享给大家.原文地址:http://www.jellythink.com/archives/705,版权归原作者所有. TC ...
- TCP协议—三次握手四次挥手的原理<转>
三次握手四次挥手的原理 TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接.在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的.三 ...
- TCP的三次握手与四次挥手
TCP的三次握手与四次挥手 一.TCP(Transmission Control Protocol 传输控制协议) TCP是面向对连接,可靠的进程到进程通信的协议 TCP是提供全双工服务,即数据可在同 ...
随机推荐
- 简单的JQuery top返回顶部
一个最简单的JQuery Top返回的代码,Mark一下: HTML如下: <div id="backtop"> <a href="javascript ...
- JSON.parse()和JSON.stringify()的用法
JSON.parse()是用于从一个字符串中解析出json对象,如下所示 var str = '{"name":"flsummer","age&quo ...
- HeadFirst设计模式读书笔记(4)-工厂模式
工厂方法模式:定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个.工厂方法让类把实例化推迟到子类. 所有工厂模式都用来封装对象的创建.工厂方法模式通过让子类决定该创建的对象是什么,来达到将对象 ...
- 【LeetCode练习题】Permutations
全排列 Given a collection of numbers, return all possible permutations. For example,[1,2,3] have the fo ...
- C指针
1,每行最大长度,处理的最大列号; preprocessor directives,preprocessor,预处理器读入源代码,根据预处理指令对其进行修改,把修改后 的源代码递交给编译器; 预处理器 ...
- ACM学习-POJ-1003-Hangover
菜鸟学习ACM,纪录自己成长过程中的点滴. 学习的路上,与君共勉. ACM学习-POJ-1003-Hangover Hangover Time Limit: 1000MS Memory Limit ...
- IOS5开发-http get/post调用mvc4 webapi互操作(图片上传)[转]
IOS5开发-http get/post调用mvc4 webapi互操作(图片上传) 目前最流行的跨平台交互是采用http协议通过JSON对象进行互操作.这种方式最简单,也很高效.webservi ...
- .net控件dropdownlist动态绑定数据 ----转
DropDownList控件的使用(数据绑定)(.net学习笔记二) 一.在页面初始化时候将集合绑定到DropDownListpublic void Page_Load(Object src.Even ...
- CSS3 布局
1.1 列布局 CSS3中新出现的多列布局(multi-column)是传统HTML网页中块状布局模式的有力扩充.这种新语法能够让WEB开发人员轻松的让文本呈现多列显示.我们知道,当一行文字太长时 ...
- "margin塌陷现象"div盒子嵌套盒子外边距合并现象
问题描述:原型大概是“一个div嵌套了两个 div,给main设定了background="pink" ,header1设定background=“red” .header2 设定 ...