合集-《网络是怎样连接的》
摘要:学计算机网络听得最多的就是TCP/IP协议族,那什么是协议? 协议就是规则,共事的几方为达成统一的目标而制定的行动规则,大家都遵守规则目标才能达成。 就像插头和插座有国家标准一样,生产电器的厂家按标准制造出插头,生产插座的厂家按标准制作出插座,这样才能正常使用。 也可以把协议理解为日常的语言,两个人
阅读全文
摘要:本章把第一章里委托协议栈发送消息的内容展开来讲。 ### 一、协议栈的内部 先看下“委托协议栈”这件事的整体结构:  大
阅读全文
摘要:### 一、连接是什么意思 话说网线一直插着,网络一直连着,网线中随时都有信号流过,那这个“连接”是连接什么呢? 可以类比人与人之间的联系,满大街都是人,身边随时有人走过,我们算是跟任何人有联系吗?当然没有! 怎么才算有联系?先要双方有交往意愿,然后互换个名片,这才算联系上了。 哪天一方找到另一方说
阅读全文
摘要:当控制流程从connect回到应用程序之后,就进入到数据收发阶段。 ##一、把数据交给协议栈之后 数据收发操作是从应用程序调用write将要发送的数据交给协议栈开始的。 协议栈执行发送操作有两个要点: **1、协议栈并不关心应用程序传来的内容。** 应用程序调用write时会指定发送数据的长度,在协
阅读全文
摘要:上一节讲了数据收发的大概过程,实际上网络的错误检测和补偿机制非常复杂,这一节讲三个关键点。 ###一、返回ACK号的等待时间 返回ACK号的等待时间叫超时时间。 当网络传输繁忙时ACK号的返回会变慢,这时就要将等待时间设置得长一点,不然可能已经重传了,ACK号才到达。这样的重传是多余的,虽然有序号在
阅读全文
摘要:按照通信的过程,或者《网络是怎样连接的》这本书的探索思路,浏览器接收响应消息应该放在最后。 作者为避免读者学到最后忘记前面的部分导致无法将这两部分联系起来,所以放到这里讲解。 在发送完HTTP请求消息之后,浏览器还要等待服务器返回响应的消息。 过程大概如下。 1、浏览器在委托协议栈发送请求消息之后,
阅读全文
摘要:一、断开连接 收发数据结束的时间点应该是应用程序判断所有数据都已经发送完毕的时候,这时,数据发送完毕的一方会发起断开过程,但不同的应用程序会选择不同的断开时机。 *在HTTP1.1中,浏览器向服务器发送请求消息,Web服务器返回响应消息之后,浏览器还可以继续发起下一个请求消息,如果接下来没有请求要发
阅读全文