• 【网络】HTTP知识点(1)


    1.HTTP全称 超文本传输协议

    2.协议的意思:

    协:要求至少两个参与者

    议:协议是对参与者的一种行为约定和规范

    3.HTTP是一个在计算机世界里专门用来在两点之间传输数据的约定和规范。

    4.文本”(Text),就表示HTTP传输的不是TCP/UDP这些底层协议里被切分的杂乱无章的二进制包(datagram),而是完整的、有意义的数据,可以被浏览器、服务器这样的上层应用程序处理。

    5.超文本就是超越普通文本的文本。包含文字、图片、音频、视频,甚至超链接,可以跳转到另外一个超文本。

    6.超文本资源使用HTTP,普通文件使用FTP,电子邮件使用SMTP和POP3等

    7.HTTP通常跑在TCP/IP协议栈之上,依靠IP协议实现寻址和路由、TCP协议实现可靠数据传输、DNS协议实现域名查找、SSL/TLS协议实现安全通信。
    8
    .

     9.浏览器部分:

    渲染引擎的职责就是渲染,即在浏览器窗口中显示所请求的内容。这是每一个浏览器的核心部分,所以渲染引擎也称为浏览器内核。

    10.

    CDN,全称是“Content Delivery Network”,翻译过来就是“内容分发网络”。它应用了HTTP协议里的缓存和代理技术,代替源站响应客户端的请求。
    可以缓存源站的数据,让浏览器的请求不用“千里迢迢”地到达源站服务器,直接在“半路”就可以获取响应。如果CDN的调度算法很优秀,更可以找到离用户最近的节点,
    11.
    TCP协议意思是“传输控制协议”,它位于IP协议之上,基于IP协议提供可靠的、字节流形式的通信,是HTTP协议得以实现的基础。
    12.
    URI(Uniform Resource Identifier),中文名称是统一资源标识符
    13.
    URL(uniform resource kocator) 统一资源定位符。
    14.
    15.HTTPS  (HTTP over SSL/TLS)为HTTP提供了安全的外壳。
    16.
    代理(Proxy)是HTTP协议中请求方和应答方中间的一个环节,作为“中转站”,既可以转发客户端的请求,也可以转发服务器的应答。
    我们刚才说的CDN就是代理。
     
    17.
    所谓的“四层负载均衡”就是指工作在传输层上,基于TCP/IP协议的特性,例如IP地址、端口号等实现对后端服务器的负载均衡。
    所谓的“七层负载均衡”就是指工作在应用层上,看到的是HTTP协议,解析HTTP报文里的URI、主机名、资源类型等数据,再用适当的策略转发给后端服务器。
    18.发送数据和接受数据的过程

     19.

    要访问“www.apple.com”,就要进行下面的三次查询:
     
     
    1. 访问根域名服务器,它会告诉你“com”顶级域名服务器的地址;
    2. 访问“com”顶级域名服务器,它再告诉你“apple.com”域名服务器的地址;
    3. 最后访问“apple.com”域名服务器,就得到了“www.apple.com”的地址。
     
    20.如何加快DNS解析过程
    (1)非权威DNS服务器

    许多大公司、网络运行商都会建立自己的DNS服务器,作为用户DNS查询的代理,代替用户访问核心DNS系统

    (2)操作系统缓存

    (3)Windows里是“C:WINDOWSsystem32driversetchosts”,如果操作系统在缓存里找不到DNS记录,就会找这个文件

    21.基于域名的负载均衡

    Windows里是“C:WINDOWSsystem32driversetchosts”,如果操作系统在缓存
    里找不到DNS记录,就会找这个文件
    (1)域名解析得到多个IP地址,可以使用轮询算法进行访问,到达负载均衡的效果。
    (2)多个IP地址,可以选择质量更好的服务器主机,达到负载均衡。
     
    22.
    进行一次get请求的抓包
     

     

    再简要叙述一下这次最简单的浏览器HTTP请求过程:
    1. 浏览器从地址栏的输入中获得服务器的IP地址和端口号(DNS解析);
    2. 浏览器用TCP的三次握手与服务器建立连接;
    3. 浏览器向服务器发送拼好的报文;
    4. 服务器收到报文返回TCP-ACK后处理请求,同样拼好报文再发给浏览器;
    5. 客户端收到返回TCP-ACK,浏览器解析报文,渲染输出页面。
     
    23.HTTP报文格式

     请求报文的“请求头”(起始行和头部的合称)

    请求行:

    1.
    请求方法:是一个动词,如GET/POST,表示对资源的操作;
    2.
    请求目标:通常是一个URI,标记了请求方法要操作的资源;
    3.
    版本号:表示报文使用的HTTP协议版本

    (CRLF是回车换行)

    响应报文的“响应头”(起始行和头部的合称)

     状态行:

    1.
    版本号:表示报文使用的HTTP协议版本;
    2.
    状态码:一个三位数,用代码的形式表示处理的结果,比如200是成功,500是服务器错误;
    3.
    原因:作为数字状态码补充,是更详细的解释文字,帮助人理解原因
     
     
     
    字段:
    1.
    通用字段:在请求头和响应头里都可以出现; Date字段 表示HTTP报文创建的时间。
    2.:
    请求字段:仅能出现在请求头里,进一步说明请求信息或者额外的附加条件; 
     HTTP/1.1的请求报文必须有Host字段:用来表示相对于IP地址上的某一主机。
    User-Agent是请求字段,只出现在请求头里。它使用一个字符串来描述发起HTTP请求的客户端,服务器可以依据它来返回最合适此浏览器显示的页面。
    (还有下一文写的 accept系列 accept媒体类型 accept-language自然语言 accept-charset字符集 accept-encoding编码)
    3.
    响应字段:仅能出现在响应头里,补充说明响应报文的信息;Server字段 表示当前服务器的软件和版本号。
    (location将请求的URI重定向到别的地方)
    4.
    实体字段:它实际上属于通用字段,但专门描述body的额外信息
     (

    Content-Encoding:实体主体适用的编码方法

    Content-Language:实体主体的自然语言

    Content-Length:实体主体的大小(单位:字节)

    Content-Location:替代对应资源的URI

    Content-MD5:实体主体的报文摘要

    Content-Range:实体主体的位置范围

    Content-Type:实体主体的媒体类型

    Expires:实体主体过期的日期时间

    Last-Modified:资源的最后修改日期时间

    24.HTTP/1.1的请求方法
    Windows里是“C:WINDOWSsystem32driversetchosts”,如果操作系统在缓存
    里找不到DNS记录,就会找这个文件
    User-Agent
    是请求字段,只出现在请求头里。它使用一个字符串来描述发起HTTP请求的客户端,服务器可
    以依据它来返回最合适此浏览器显示的页面。
  • 相关阅读:
    TRUNCATE TABLE 删除表中的所有行,而不记录单个行删除操作
    血腥!实况转播SQL注入全过程,让你知道危害有多大。
    DB2隔离级别设置
    使用解释工具分析SQL语句
    DB2的七种武器
    db2精华文档和论坛链接
    “饮水机”:形象比喻 深入浅出理解RAID
    DB2 数据库恢复测试
    IBM DB2 日常维护汇总
    镜像分割与高可用性灾难恢复
  • 原文地址:https://www.cnblogs.com/cckong/p/14315904.html
Copyright © 2020-2023  润新知