HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤:
(1)建立TCP连接
在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接,该连接是通过TCP来完成的,该协议与IP协议共同构建Internet,即著名的TCP/IP协议族,因此Internet又被称作是TCP/IP网络。HTTP是比TCP更高层次的应用层协议,根据规则,只有低层协议建立之后才能,才能进行更层协议的连接,因此,首先要建立TCP连接,一般TCP连接的端口号是80
(2)Web浏览器向Web服务器发送请求命令
一旦建立了TCP连接,Web浏览器就会向Web服务器发送请求命令
例如:GET/sample/hello.jsp HTTP/1.1
(3)Web浏览器发送请求头信息
浏览器发送其请求命令之后,还要以头信息的形式向Web服务器发送一些别的信息,之后浏览器发送了一空白行来通知服务器,它已经结束了该头信息的发送。
(4)Web服务器应答
客户机向服务器发出请求后,服务器会客户机回送应答,
HTTP/1.1 200 OK
应答的第一部分是协议的版本号和应答状态码
(5)Web服务器发送应答头信息
正如客户端会随同请求发送关于自身的信息一样,服务器也会随同应答向用户发送关于它自己的数据及被请求的文档。
(6)Web服务器向浏览器发送数据
Web服务器向浏览器发送头信息后,它会发送一个空白行来表示头信息的发送到此为结束,接着,它就以Content-Type应答头信息所描述的格式发送用户所请求的实际数据
(7)Web服务器关闭TCP连接
一般情况下,一旦Web服务器向浏览器发送了请求数据,它就要关闭TCP连接,然后如果浏览器或者服务器在其头信息加入了这行代码
Connection:keep-alive
TCP连接在发送后将仍然保持打开状态,于是,浏览器可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的时间,还节约了网络带宽。
分享到:
相关推荐
以下是对HTTP通信过程的详细解释: 1. **URL解析**:HTTP通信始于用户在浏览器中输入的URL,如`http://www.baidu.com`。URL包含了协议类型(HTTP)、主机名(www.baidu.com)以及可选的路径(/)。默认端口是80,...
HTTP(超文本传输协议)是互联网上...总结来说,HTTP通信协议的工作原理涉及域名解析、TCP连接建立、HTTP请求发送、服务器处理和响应、资源加载以及连接关闭。理解这一过程对于开发Web应用程序和优化网络性能至关重要。
利用Wireshark分析TCP、SMTP、FTP、HTTP通信过程,首先需要了解这些协议的基本概念以及如何通过Wireshark这个网络协议分析工具来捕获和分析网络上的数据包。 首先,Wireshark是一个网络协议分析工具,它可以捕获...
SSL通信过程主要包括以下几个步骤: 1. **TCP三次握手**:客户端(SSL Client)和服务器(SSL Server)首先通过TCP协议建立连接,进行三次握手,确保双方都有能力进行数据传输。 2. **SSL套接字连接**:客户端创建...
7. **Web服务器关闭TCP连接**:默认情况下,一次HTTP请求完成后,服务器会关闭TCP连接,释放资源。但若请求头中的`Connection`字段设置为`keep-alive`,则表明浏览器希望保持连接,以便后续请求能复用此连接,减少...
TCP通过三次握手建立连接,数据传输过程中会进行确认,确保数据的完整性和顺序性。适用于对数据准确性要求较高的场景,如网页浏览、文件传输等。 - **UDP**:用户数据报协议,提供无连接的服务,不对数据包进行排序...
本资源提供了一个特别的工具,它允许一次性连续运行多个客户端,从而简化了网络通信程序的测试流程,便于评估服务器性能。 标题中的“网络通信调试工具 用于一次性连续运行多个客户端”指的是一款专为开发人员设计...
可能包含了一个或多个示例程序,演示了具体的通信过程。描述中的链接“http://www.cnblogs.com/hejava/”可能指向了一篇博客文章,详细解释了该通信实现的步骤和技术细节,但由于链接未提供实际内容,我们只能根据...
在NJ网络sockettcp中,"tcp"指的是TCP协议的使用,意味着通信过程是建立在TCP连接基础之上的。使用SOCKETS进行TCP通信时,需要经过三个阶段:连接(三次握手)、数据传输和断开连接(四次挥手)。在编程实践中,...
- **无状态:** 每个请求都是独立的,服务器不会保留关于前一次请求的信息。 - **支持多种方法:** 如GET、POST、PUT等。 **示例代码:** ```java URL url = new URL("http://example.com"); HttpURLConnection ...
4. 通信方式:串行通信是一次传输一个比特,而并行通信则一次性传输多个比特。 二、数据编码与调制 1. 数据编码:将二进制数据转换为适合物理信道传输的形式。常见的有曼彻斯特编码和差分曼彻斯特编码,它们都有自...
- **三次握手**:建立连接的过程,确保双方都准备好通信。 - **四次挥手**:断开连接的过程,确保数据传输完成且双方都同意结束连接。 **3.2 UDP协议** - **特性**:面向无连接、不可靠传输。 - **应用场景**:...
HTTP/1.0 和 HTTP/1.1 在通信过程中有所不同。在 HTTP/1.0 下,每完成一次请求和响应,TCP 连接就会断开。这样,每个资源的请求和响应都需要经历一次 TCP 连接。到了 HTTP/1.1,TCP 连接可以持久连接,也就是说,一...
它通过三次握手建立连接,并在数据传输过程中采用确认机制、序列号和重传策略来确保数据的正确性与完整性。TCP适合于对数据完整性要求较高的场景,如电子邮件、文件传输和数据库连接等。在Linux系统中,可以使用...
HTTP 1.1支持HTTPS(HTTP over SSL/TLS)协议,提供了数据加密、服务器身份验证和消息完整性检查,保障了通信的安全。 总之,HTTP 1.1协议是构建互联网应用的基础,理解和掌握其原理和特性对于开发和优化网络服务至...
2. 低延迟:WebSocket 只需要一次 HTTP 握手,服务端就能一直与客户端保持通信,减少了服务器的资源开销。 3. 灵活性:WebSocket 可以与各种服务器端语言和框架集成,例如 Node.js、Python、Java 等。 四、...
在Keep-Alive模式下,客户端和服务器之间的TCP连接在完成一次HTTP事务后不会立即关闭,而是保持一段时间以便重用,从而提高效率。 综上所述,这个Http请求处理工具可能具有以下特性: 1. 支持多种HTTP方法,如GET...
例如,通过流程图解释TCP三次握手和四次挥手,使读者能直观地理解连接建立和关闭的过程。此外,还会用图表展示请求和响应的结构,以及不同状态码的含义,使学习更为生动。 最后,书中可能还会涉及HTTPS安全协议,这...