HTTP协议基本原理简介(一)

简介: HTTP协议基本原理简介(一)

今天给大家主要介绍HTTP协议的基本原理,本文主要内容是HTTP协议简介、统一资源标识符URI和HTTP1.0版本和1.1版本的区别。

一、HTTP协议简介
HTTP协议,即Hyper Text Transfer Protocol,超文本传输协议的简称,是目前互联网上所广泛使用的一种网络协议,当前所有的WWW服务器都是使用该协议。
HTTP协议为应用层协议,建立在TCP协议之上。HTTP协议是一种典型的C/S架构的协议,其中WWW服务器为HTTP的服务端,用户所使用的浏览器为客户端。用户在访问网页时,会随机使用一个端口,访问服务端的指定端口(默认是80),经过TCP三次握手后,建立HTTP链接。

二、统一资源标识符URI
我们使用同意资源标识符来(Unique Resource Identifier,URIne)标识唯一标识一个网络资源,URI又可以细分为URL和URN。其中,URL为统一资源定位符,Unique Resource Locator,URN为统一资源命名符,Unique Resource Name。URI、URL和URI的关系如下图所示:

目前,URL的使用较为普遍,完整的URL格式为:
protocol://Domain:Port/Path/…/[?QueryString][#Anchor]
protocol为URL的协议,可以是http、ftp等,Domain为主机域名,也可以是IP地址,Port为服务端端口号,默认为80,Path为目标资源在服务端的路径,QueryString为通过GET方式传递给服务器的参数,Anchor为锚点。锚点即一个定位点,如果一个web页面过长时,通过锚点可以快速跳转到锚定位置。

三、HTTP1.1与HTTP1.0区别
HTTP1.0与HTTP1.1版本有着很大的区别,其中最主要的方面是HTTP1.1采用了长链接结束。不论是在HTTP1.0还是在HTTP1.1版本中,HTTP协议都会封装在TCP链接中,在完成TCP三次握手后,即可发送HTTP链接。但是,在HTTP1.0版本中,每个TCP链接只能有一次HTTP的请求和响应。因此,如果客户端要多次访问服务器,那么客户端必须每次发起TCP三次握手的过程,极大的浪费了带宽资源。而在HTTP1.1中,由于采用了长链接技术,在一个TCP链接中,客户端和服务端可以多次发起请求和响应。
当然,HTTP1.1和HTTP1.0版本的区别不仅仅在于长链接上,HTTP1.1增加了更多的请求头和响应头,增加了更多的状态码,增加了缓存处理等机制。
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/121778734

目录
相关文章
|
2天前
|
网络协议 安全 Go
Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
【10月更文挑战第28天】Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
22 13
|
2天前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
4天前
|
网络协议 前端开发 API
HTTP 和 TCP 协议的应用场景有哪些不同
【10月更文挑战第25天】HTTP(超文本传输协议)和 TCP(传输控制协议)处于网络协议栈的不同层次,各自具有独特的功能和特点,因此它们的应用场景也存在明显的差异。
|
4天前
|
安全 前端开发 JavaScript
利用HTTP协议进行文件上传和下载的常见方法
【10月更文挑战第25天】可以利用HTTP协议方便地实现文件的上传和下载功能,满足不同应用场景下的需求。在实际应用中,还可以根据具体的业务需求和安全要求,对文件上传和下载的过程进行进一步的优化和安全处理。
|
Web App开发 存储 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
      前段时间公司hadoop集群宕机,发现是namenode磁盘满了, 清理出部分空间后,重启集群时,重启失败。 又发现集群Secondary namenode 服务也恰恰坏掉,导致所有的操作log持续写入edits.new 文件,等集群宕机的时候文件大小已经达到了丧心病狂的70G+..重启集群报错 加载edits文件失败。
911 0
|
Java Apache
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
hbase从集群中有8台regionserver服务器,已稳定运行了5个多月,8月15号,发现集群中4个datanode进程死了,经查原因是内存 outofMemory了(因为这几台机器上部署了spark,给spark开的...
810 0
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
最近在线上往hbase导数据,因为hbase写入能力比较强,没有太在意写的问题。让业务方进行历史数据的导入操作,中间发现一个问题,写入速度太快,并且业务数据集中到其中一个region,这个region无法split掉,处于不可用状态。
1337 0
|
Web App开发 前端开发
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Every Programmer Should Know These Latency Numbers 1秒=1000毫秒(ms) 1秒=1,000,000 微秒(μs) 1秒=1,000,000,000 纳秒(ns) 1秒=1,000,000,000,000 皮秒(ps) L1 cache reference .
647 0

热门文章

最新文章