建立socket连接的过程 1:client发syn请求给server 2:server收到后把请求放在syn queue中,这个半连接队列的最大值是系统参数tcp_max_syn_backlog定义的 3:存放在半连接队列后发送syn+ack给client 4:client收到后再发送syn+ac ...
分类:
系统相关 时间:
2018-05-15 21:11:30
阅读次数:
312
为什么要3次握手?假设存在以下过程: 其实呢,最开始两步,是因为通信的双方要互相通知对方自己的初始化的Sequence Number(缩写为ISN:Inital Sequence Number)——所以叫SYN。 引申的问题有以下三个: https://blog.csdn.net/cws1214/a ...
分类:
其他好文 时间:
2018-05-13 17:18:38
阅读次数:
154
如果有一天我当了面试官,我会问这些问题 1. HTTP的 GET 和 POST 有什么区别? 2. 为什么TCP握手需要三次,挥手需要四次? 3. 类的普通成员函数和虚函数哪一个比较快? 4. 为什么仿函数比函数指针更快 6. HTTPS和HTTP的区别 7. 说一说迪杰斯特拉算法 ...
分类:
其他好文 时间:
2018-05-13 16:08:06
阅读次数:
155
一、openssl简介SSL(securesocketlawyer)安全套接字协议是web浏览器与web服务器之间进行安全交换信息的协议,提供两个基本的服务:保密和鉴别。SSL在3.1版本之后改名为TLS;ssl协议位于应用层协议和TCP/IP协议之间。ssl的特性:保密性:在握手协议中定义了会话密钥后,所有的消息都被加密。鉴别性:可选的客户端认证和强制的服务器端认证。完整性:传递的消息包括信息完
分类:
其他好文 时间:
2018-05-13 15:37:23
阅读次数:
207
前三步是建立TCP连接(三次握手) 1. 建立连接后客户端向服务器发起数字证书请求,而后服务器下发数字证书,并确认使用非对称加密算法种类 2. 得到服务器下发的数字证书后,客户端会向第三方认证机构认证此证书是否有效 3. 客户端本地随机生成一组非对称加密密钥,同时将密钥本身通过公钥(数字证书中包含) ...
分类:
Web程序 时间:
2018-05-13 12:07:11
阅读次数:
237
1)TCP三次握手 第一次握手:客户端A将标志位SYN置为1,随机产生一个值为seq=J(J的取值范围为=1234567)的数据包到服务器,客户端A进入SYN_SENT状态,等待服务端B确认; 第二次握手:服务端B收到数据包后由标志位SYN=1知道客户端A请求建立连接,服务端B将标志位SYN和ACK ...
分类:
编程语言 时间:
2018-05-13 10:37:47
阅读次数:
173
TCP三次握手详解及释放连接过程 TCP在传输之前会进行三次沟通,一般称为“三次握手”,传完数据断开的时候要进行四次沟通,一般称为“四次挥手”。 两个序号和三个标志位: (1)序号:seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。 (2)确认序号:ack ...
分类:
其他好文 时间:
2018-05-13 00:38:22
阅读次数:
140
一、 SSL 1. SSL简介 SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议( ...
分类:
编程语言 时间:
2018-05-11 23:55:16
阅读次数:
344
所谓三次握手(Three way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送4个包(两个SYN,两个ACK); 第一次握手:当客户端向服务器发起连接请求时,客户端会发送同步序列标号SYN到服务器,等待服务器确认,这时客户端的状态为SYN_SENT。 第二次握手:当服务 ...
分类:
其他好文 时间:
2018-05-10 23:21:11
阅读次数:
143
TCP 特征 没有选择确认或否认的滑动窗口协议 长连接:三次握手、四次挥手 可靠性:保证数据确实到达目的地,如果未到达,能够发现并重传 数据排序:序列号,累积确认 数据流控:拥塞控制 滑动窗口与拥塞控制 滑动窗口 通告窗口:接收方通告给发送放,涉及累积确认 窗口移动 窗口合拢 ... ...
分类:
其他好文 时间:
2018-05-10 23:19:29
阅读次数:
133