TCP建立连接 如果有人问TCP如何建立连接?大部分的回答都是三次握手成功,就建立连接了。 那么握手的目的是什么呢? 1)告知对方自己的序号 2)初始化资源 例如以下握手案例,握手两次由客户端主动发起,一次由服务端发起。 握手步骤: 1)客户端发送TCP数据包至服务端,通知服务端客户端的序号是X。 ...
分类:
其他好文 时间:
2019-11-12 23:16:40
阅读次数:
157
构建TCP服务 + 三次握手连接: 1.客户端请求连接 2.服务器响应 3.开始传输 服务端 客户端 案例:聊天室 服务端: 客户端: ...
分类:
Web程序 时间:
2019-11-10 15:15:17
阅读次数:
127
一、TCP/IP协议簇(DoD参考模型) 一、TCP/IP协议簇(DoD参考模型) 一、TCP/IP协议簇(DoD参考模型) 一、TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准。 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性 ...
分类:
系统相关 时间:
2019-11-09 00:37:28
阅读次数:
114
1. 数据传输的大致示意图 1.1 TCP连接的几种状态说明 即命令 netstat 结果中的所有状态: 2. TCP连接建立的全过程 2.1 TCP三次握手建立TCP连接 1)客户端和服务端都处于CLOSED状态。(发起TCP请求的称为客户端,接受请求的称为服务端) 2)服务端打开服务端口,处于l ...
分类:
其他好文 时间:
2019-11-09 00:35:10
阅读次数:
106
在传统的web开发模式中,我们知道,每一次php请求,都要经过php文件从磁盘上读取、初始化、词法解析、语法解析、编译等过程,而且还要与nginx或者apache通信,如果再涉及数据库的交互,还要再算上数据库的握手、验权、关闭等操作,可见一次请求的背后其实是有相当繁琐的过程,无疑,这个过程也就带来了 ...
分类:
其他好文 时间:
2019-11-06 22:49:08
阅读次数:
129
概述 Nginx 是使用一个 master 进程来管理多个 worker 进程提供服务。master 负责管理 worker 进程,而 worker 进程则提供真正的客户服务,worker 进程的数量一般跟服务器上 CPU 的核心数相同,worker 之间通过一些进程间通信机制实现负载均衡等功能。N ...
分类:
其他好文 时间:
2019-11-06 13:24:24
阅读次数:
94
原文链接:https://www.cnblogs.com/shiqi17/p/9756880.html HTTP建立连接的过程点击:HTTP三次握手、一次HTTP请求都发生了什么 一、HTTPS HTTP是超文本传输协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私 ...
分类:
Web程序 时间:
2019-11-04 21:42:33
阅读次数:
90
今天继续深入学习socket套接字的使用,上一篇文章我们主要深入介绍了如何使用套接字进行面向连接的通信编程,这里我们主要深入讲解一下基于面向非连接的编程。 对于TCP面向连接来说,在通信前,需要经过三步握手协议以建立连接,而建立连接的过程往往比较耗费时间。连接建立后,在聊天过程中,可能经过好吃一段时 ...
分类:
其他好文 时间:
2019-11-04 11:14:46
阅读次数:
79
1. TCP的特点 TCP协议是全双工通信,即收发双发可以同时给对方发送消息,即A给B发送消息的同时,B也可以给A发送消息。而且双方谁先发起请求都可以。 TCP协议是可靠通信:因为TCP协议有ack,即消息确认机制。 面向连接的:收发消息之前双方要先建立起连接,即三次握手。 长连接:会一直占用双发的 ...
分类:
其他好文 时间:
2019-11-03 18:37:46
阅读次数:
72
三次握手四次挥手 [TOC] 1、概念介绍 序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。 确认号ack:占4个字节, ...
分类:
其他好文 时间:
2019-11-02 19:48:36
阅读次数:
85