HTTP

本文详细介绍了HTTP协议,包括其作为超文本传输协议的角色,TCP/IP协议族的层次结构,以及HTTP的工作原理。文章讨论了TCP连接、持久连接、管线化、内容编码、分块传输、DNS、URI、URL、HTTP方法、状态码、首部字段等内容。此外,还涵盖了HTTP的安全性问题,如SSL/TLS、HTTPS,以及HTTP的认证方式。最后,文章提到了HTTP的发展,包括HTTP/1.1、HTTP/2.0、WebDAV、CGI、Servlet、XML、RSS/Atom、JSON等技术。
摘要由CSDN通过智能技术生成

HTTP:超文本传输协议
SGML:标准通用标记语言
1.通常使用的网络是在TCP/IP协议族的基础上运作的
2.计算机与网络设备要相互通信,双方就必须基于相同的协议
3.TCP/IP协议族分为:应用层,传输层,网络差和数据链路层
应用层:决定了向用户提供应用服务时通信的活动。
FTP:文件传输协议
UDP:用户数据报协议
TCP:传输控制协议
DNS:域名系统
传输层:提供处于网络连接中的两台计算机之间的数据传输
网络层:用户处理网络流动的数据包,数据包是网络通信中最小的数据单位;该层规定了通过怎样的路径到达对方计算机,并把数据包传给对方。数据传输时网络层所起的作用就是在众多的选项中选择一条传输线。
链路层:处理连接网络的硬件部分包含操作系统、硬件设备驱动、NIC、网络适配器、及光纤等物理可见部分。
IP:网际协议,位于网络层
IP地址IP地址:节点被分配到的地址
MAC地址:网卡所属的固定地址
ARP协议:解析地址的协议,根据通信方的IP地址就可以反查出对应的MAC地址
TCP协议:提供可靠的字节流服务
字节流服务:将大块数据分割成以报文段为单位的数据包进行管理。
可靠性服务:能够把数据准确传送给对方

TCP协议为了更容易传送大数据才把数据分割,而且TCP协议能够确认数据最终是否送到对方,为了准确无误的将数据送达目标处,采用三次握手策略。
1.发送端先发送一个带有SYN标志的数据包给对方。
2.接受段收到后回传一个带有SYN/ACK标志的数据以示传达确认信息
3.最后发送端回传一个带有ACK标志的数据包代表”握手结束”

DNS:提供通过域名查找IP地址,或逆向从IP地址反查域名的服务。
URI:统一资源标识符
URL:统一资源定位符
应用HTTP协议时,必定是一端担任客户端角色,另一端担任服务器
请求报文:由请求方法、请求URI、协议版本、可选的请求首部字段和内容实体构成。

HTTP是不保存状态的协议
HTTP协议自身不对请求和响应之间的通信状态进行保存,在HTTP这个级别,协议对于发送过的请求或响应都不做持久化处理,为了实现期望的保持状态功能,引入Cookie技术.
HTTP/1.1中可使用的方法
GET:获取资源
POST:传输实体主体
PUT:传输文件
HEAD:获得报文首部与GET方法一样,只是不返回报文主体部分,用于确认URI的存放性及资源更新的日期时间等。
DELETE:删除文件
OPTIONS:询问支持的方法,用于查询针对请求URI指定的资源支持的方法
TRACE:追踪路径,让Web服务器端将之前的请求通信环回给客户端的方法,客户端通过TRACE方法可以查询发送出去的请求是怎样的被加工/篡改 的,容易引发XST(跨站追踪)攻击,不常用。
CONNECT:要求用隧道协议连接代理,要求在与代理服务器通信时建立隧道。实现用隧道协议进行TCP通信,主要使用SSL和TLS协议把通信内容和加密后经网络隧道传输
持久连接:HTTP/1.1和一部分的HTTP/1.0想出了持久连接的方法
特点:只要任何一端没有明确提出断开连接,则保持TCP连接状态.
好处:减少了TCP连接的重复建立和断开所造成的额外开销,减轻了服务器的负载
管线化:持久化连接使得多数请求以管线化方式发送成为可能,不用等待响应亦可直接发送下一个请求。
请求行:包含用于请求的方法,请求URI和HTTP版本
状态行:包含表明响应结果的状态码,原因短语和HTTP版本
首部字段:包含表示请求和响应的各种条件和属性的各类首部
4钟首部:通用首部、请求首部、响应首部和实体首部。
报文:是HTTP通信中基本单位,有八位组字节流组成,通过HTTP通信传输
实体:作为请求或响应的有效载荷数据被传输,其内容由实体首部和实体主体组成。
内容编码:指明应用在实体内容上的编码格式并保持实体信息原样压缩,内容编码后的实体内容由客户端接收并负责解码。
编码格式:gzip、compress(UNIX系统的标准压缩)、deflate(zlib)、identity(不进行编码)

分块传输:在传输大容量数据时通过把数据分割成多块、能够让浏览器逐步显示页面。
MIME:多用途因特网邮件扩展机制,它允许邮件处理文本,图片、视频等多个不同类型的数据
范围请求:指定下载的实体范围,对一份10000字节大小的资源,如果使用范围请求,可以只请求5001-10000字节内的资源使用首部字段Range来指定资源的byte范围;如果服务器无法响应范围请求,则会返回状态吗200 OK 和完整的实体内容。

内容协商:客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源
当浏览器的默认语言为英语或中文访问相同URI的Web页面时,则会显示对应的英语版或中文版的Web页面

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值