TCP Socket Http关系

时间:2023-03-09 06:43:47
TCP Socket Http关系

理解Tomcat内部处理网络数据的机制同时需要了解相关的一些术语,这样我们在阅读源码的时候能更加清楚的理解Connector下使用到的Socket通信原理。

TCP/IP:

数据在网络传输是基于TCP/ IP 协议传输的。对应于网络模型的话,TCP处于传输层,IP属于网络层。

Socket:

应用程序开发网络数据传输的一个接口,Socket是对TCP/IP的一个协议封装。Socket变成必须指定IP与port。

Http:

是一种应用协议,处于网络模型的最上层(应用层),一般来讲Http通信是基于socke封装TCP/IP协议来通信的。应用软件如:浏览器与Tomcat/Apache/Nginx 都是基于Http协议通信。

Http,Socket.TCP/IP:

浏览器发送HTTP请求,该请求基于TCPIP协议传输数据,只是包含了HTTP头部信息。Socket处于二者之间,相当于一个中间人,将二者结合起来参数数据的传输。

1.首先浏览器与服务器(Tomcat)先建立TCP连接,这时候就需要经过三次握手协议。

2.建立起连接后浏览器发送HTTP协议的请求,该请求是建立在之前的TCP连接上的。服务器收到http请求后经过后台容器的处理返回一个HTTP响应头数据,这时候浏览器根据相应数据渲染成页面。

3.如果没有其他的HTTP请求了,则断开TCP连接,需要经过4次握手。