HTTP基础 | 青训营笔记

42 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 5 天

HTTP 概述

HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。客户端连上web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式 关于 TCP

OIP-C.jfif

TCP

提供一种面向连接的、可靠的字节流服务 在一个 TCP 连接中,仅有两方进行彼此通信。广播和多播不能用于 TCP TCP 使用校验和,确认和重传机制来保证可靠传输 TCP 给数据分节进行排序,并使用累积确认保证数据的顺序不变和非重复 TCP 使用滑动窗口机制来实现流量控制,通过动态改变窗口的大小进行拥塞控制

TCP并不能保证数据一定会被对方接收到,因为这是不可能的。它不是100%可靠的协议,它所能提供的是数据的可靠传递或故障的可靠通知。

HTTP的主要特点

fetching_a_page.png

  • 灵活。HTTP允许传输任意类型的数据对象。

  • 简单快速。客户端向服务器请求时,只需传送请求方法和路径,请求方法有post、get等,每种方法规定了客户端与服务端。连接的类型不同。由于HTTP协议简单,使得HTTP服务程序规模小而且通信速度很快。

  • 无连接。限制每次连接只能处理一个请求,服务器处理完客户端的请求并收到客户端的应答后即断开连接。

  • 无状态。无状态是指协议对事务处理没有记忆能力,意味着如果后续处理需要前面的信息,则必须被重传。这可能导致每次连接的数据量增大,另一方面不需要前面信息时,它的应答就较快。

  • 支持客户端/服务器模式。HTTP工作于客户端服务端的架构之上,浏览器作为客户端通过url向服务器及web服务器发送请求,web服务器根据接收到的请求向客户端发送响应信息。