http协议

来源:互联网 发布:php人力资源管理系统 编辑:程序博客网 时间:2024/06/09 14:45

1.uri(统一资源标识符):url(统一资源定位符)、urn(统一资源名)

url语法:<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>

-----------------方案--------用户名-----密码---------主机----端口----路径------参数-------查询-----片段--------


2.http报文组成

  1. 起始行
  2. 首部
  3. 主体
3.IP分组
  1. IP分组首部:源/目的IP地址、长度、标记、检验
  2. TCP段首部:TCP端口号、标记、检验
  3. TCP数据块
4.http事务主要时延
  1. DNS解析域名
  2. TCP连接建立
  3. 客户端发送http请求,web服务器读取请求报文并处理
  4. web服务器回送http响应
5.并行连接与持久连接
        站点本地性:初始化了对某服务器HTTP请求的应用程序很可能会在不 久的将来对那台服务器发起更多的请求
  • 并行连接优缺
    • 充分利用客户端因特网带宽,连接时延重叠
    • 每个事务都会打开/关闭一条新的连接,会耗费时间和带宽(引发自身性能问题)
    • 由于TCP慢启动特性的存在,每条新连接的性能都会有所降低
    • 可打开的并行连接数量实际上是有限的(大量连接会造成服务器性能的严重下降)
  • 持久连接优缺
    • 降低了时延和连接建立的开销,减少了打开连接的潜在数量
    • 可能会累积出大量的空闲连接,耗费本地以及过程客户端和服务器上的资源
  • keep-alive连接:HTTP/1.0  默认不使用    存在被代理挂起的危险
  • persistent连接:HTTP/1.1  默认是激活的  事务结束后需显示添加Connection:close首部  客户端和服务器仍然可以随时关闭空闲的连接

6.Web服务器主要执行任务
  1. 建立连接——接受客户断连接
  2. 接收请求——从网络中读取一条HTTP请求报文
  3. 处理请求——对请求报文进行解释,并采取行动
  4. 访问资源——访问报文中指定的资源
  5. 构建响应——创建带有正确首部的HTTP响应报文
  6. 发送响应——将响应回送给客户端
  7. 记录事务处理过程——将与已完成事务有关的内容记录到日志文件中
7.代理与网关
代理使用同一种协议,网关则将不同的协议连接起来


原创粉丝点击