过程: 1、url通过dns服务器找到指定ip 2、解析出IP之后,根据IP地址和默认端口:80,与服务器建立TCP连接 3、浏览器发出读取文件(URL 中域名后面部分对应的文件)的HTTP 请求,该请求报文作为TCP三次握手的第三个报文的数据发给服务器 4、服务器做出响应,并把对应的HTML文件发 ...
分类:
Web程序 时间:
2016-08-18 12:49:02
阅读次数:
147
TCP建立连接是要进行三次握手,但是否完成三次握手后,服务器就处理(accept)呢? backlog其实是一个连接队列,在Linux内核2.2之前,backlog大小包括半连接状态和全连接状态两种队列大小。 半连接状态为:服务器处于Listen状态时收到客户端SYN报文时放入半连接队列中,即SYN ...
分类:
其他好文 时间:
2016-08-17 21:13:18
阅读次数:
205
说明: 1).本文以TCP的发展历程解析容易引起混淆,误会的方方面面2).本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的3).针对对象:对TCP已经有了全面了解的人。因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动和快速重传的定义4).除 ...
分类:
其他好文 时间:
2016-08-15 01:31:42
阅读次数:
228
说明: 1).本文以TCP的发展历程解析容易引起混淆,误会的方方面面 2).本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的 3).针对对象:对TCP已经有了全面了解的人。因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动和快速重传的定义 4 ...
分类:
其他好文 时间:
2016-08-14 23:47:30
阅读次数:
212
一开始个人对于三次握手和四次挥手这个东西还是有时候会忘记,可能理解的不是非常深刻,所以今天就自己动手来记录一下这个知识点,方便以后查看。总结完之后发现总结的还是可以的哈哈。 三次握手建立连接 第一次:客户端和服务器端一开始都是关闭的。①:当想建立连接的时候,客户端首先主动打开,然后服务器端被动打开。 ...
分类:
其他好文 时间:
2016-08-14 19:11:11
阅读次数:
229
常见问题 Q1. TCP报文头结构多大? Q2. TCP为何采用三次握手来建立连接,若采用二次握手可以吗,请说明原因? Q3. TCP为何采用四次挥手来释放连接? TCP协议 首先,我们需要知道TCP在网络OSI的七层模型中的第四层——传输层(Transport),IP在第三层——网络层(Netwo ...
分类:
其他好文 时间:
2016-08-14 17:36:35
阅读次数:
278
TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号 并交换 TCP窗口大小信息。 1.第一次握手:建立连接。客户端发送连接请求报文段,将 ...
分类:
其他好文 时间:
2016-08-14 16:10:18
阅读次数:
108
1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。 1 2 3 4 5 6 7 8 9 10 11 12 13 #三次握手 客户端向服务器端发送SYN包,客户端进入SYN_SEND状态 服务器端收到客户端发送的包返回ACK+SYN包,服务器端进入SYN_RECV状态 客户端收到服务 ...
分类:
系统相关 时间:
2016-08-14 11:44:11
阅读次数:
481
1.WebSocket和HTTP的关系WebSocket只有在建立握手连接的时候借用了HTTP协议的头,连接成功后的通信部分都是基于TCP的连接。总体来说,WebSocket协议是HTTP协议的升级版。2.研究WebSocket的思路服务器端自己实现WebSocket非常复杂。我们虽然不求能够完全自己实现,但是还是应该了解一下后端实现WebSocket的整体思路。WebSocket的实现主要分为两...
分类:
Web程序 时间:
2016-08-11 21:04:03
阅读次数:
218
TCP报文格式一、6个控制位中URG和PSH的区别:(1)紧急URG(URGent),当URG=1时,表明紧急指针字段有效。它告诉操作系统此报文中有紧急数据,应尽快传输(相当于高优先级数据),而不要按照原来的排队顺序来传送。例如,已经发送了很长的一个程序要在远地的主机上运行,但后来发..
分类:
其他好文 时间:
2016-08-10 01:07:08
阅读次数:
161