计算机网络-慕课笔记5

Web#

  • 网页

    • 对象:HTML、JPEG、视频、动态脚本
    • 对其他对象的引用
  • 网页相互连接

  • 寻址

    • URL统一资源定位器RFC1738
    • 也有称其为URI的,说URL是URI的子集
    • 格式:Scheme://host:port/path

HTTP 应用协议#

超文本传输协议HyperText Transfer Protocol

客户:Browser 浏览器
服务器:Web Server 提供网上信息浏览服务

  • 例子: 布置服务器Apache

版本:1.0 1.1

使用TCP传输协议#

  • 80端口服务器等待连接
  • 浏览器发起到服务器的TCP连接(创建套接字Socket)
  • 服务器接受连接
  • 两者交换HTTP消息
  • 关闭TCP

无状态#

服务器不维护任何有关客户端的过去所发的信息,不做记录

  • 有状态的协议
    • 维护、记录
    • 客户或者服务器失效(重启),解决两边状态不一致的问题

连接类型和时间#

  • 非持久性类型
    每个TCP连接最多传一个对象 传了一个对象后关闭TCP
    1.0版本的默认使用
    一个对象两个RTT时间

  • 持久性连接
    每个TCP连接可以传输多个对象
    发送响应后服务器保持TCP的链接打开
    1.1的版本默认使用

    • 无流水的持久性连接
      收到前一个响应后发送新的请求
      每个对象一个RTT
    • 流水机制的持久性连接
      客户端遇到一个引用对象就尽快发送请求
      理想状态下,收到所有的引用只需要耗时1个RTT
      TCP 1个
      HTTP送链接和原HTML 1个
      所有的引用 1个
  • RTT(Round Trip Tme)
    从客户端发送一个小的数据包到服务器且返回的时间

    • 响应时间
      • TCP连接的建立 发送、接收:1个RTT
      • HTTP请求消息来回 1个RTT
      • 响应消息中所含文件的/对象的传输时间

HTTP请求消息 ASCII:直接可读的#

  • 请求消息
    • 方法
      • get
      • post
    • 请求头部
    • 实体
    • cookie
      • 第一次set-cookie
      • cookie存在客户浏览器上
      • 请求时携带cookie发送
      • 用于购物车、登录等等功能
      • 存在隐私问题,正在被淘汰
    • 其他
  • 响应消息
    • 状态码
    • 响应信息
    • 响应实体

实验:使用telnet连接HTTP#

telnet www.hit.edu.cn 80
连接后 再按下Ctrl+],
再按回车,输入的请求信息便可以在控制台看到

Web缓存/代理服务器技术#

在不访问服务器的前提下满足客户端的HTTP请求
可以架设局域网代理服务器,减少直接连接服务器的时间
关键词: If-modified-since:

作者:FlyingZiming

出处:https://www.cnblogs.com/FlyingZiming/p/11854111.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

但行好事,莫问前程。

posted @   飞翔的子明  阅读(187)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示
more_horiz
keyboard_arrow_up light_mode palette
选择主题
menu