http连接
使用http连接就是使用TCP连接+一些规则去安全可靠的传输信息
TCP就是为http传输提供了一条可靠的比特传输管道,数据从tcp连接的一端输入,然后会以原来的顺序正确的传输出来。
如果是https协议,那么数据在进入tcp管道之前会先经过一个SSL加密层加密
TCP数据流与IP数据包
tcp数据流(我们使用http传输的数据)在传输时,会将这些数据流切割成小块,每个小数据块都封装在一个IP分组中传输,这就是我们所说的数据包。
所以数据整个流程就是http--TCP--IP数据包,每个数据包经过这个流程都会增加tcp首部和ip首部,ip首部包括源/目的ip地址、长度等;tcp首部包括源/目的端口号等
大概样子就是:【ip首部】【tcp段首部】【tcp数据块】,这些数据包根据ip头和tcp头中的信息传输到目的地的端口地址
其中最重要的就是ip首部和tcp首部中的:源ip地址、目的ip地址、源端口、目的端口
只要这四个值有一个不同,就算一个新tcp连接,不允许存在重复的
这里需要说一下,我们的浏览器是有许多源端口号的,大约有60000个,所以都可以用来建立新tcp连接,但是为了防止网络拥塞,一般会有很多限制,在后续中会说
TCP连接的建立
1.2.3.步骤就是最出名的tcp连接三次握手!
1.客户端向服务器请求连接时,先发送一个小ip数据包,这个包里包含一个特殊了SYN标记,证明这是一个连接请求