美文网首页
HTTP相关知识点

HTTP相关知识点

作者: ACtong | 来源:发表于2020-07-19 23:36 被阅读0次

    一、网络基础TCP/IP

    分层:应用层--传输层--网络层--数据链路层

    • 应用层
      决定了向用户提供应用服务时通信活动
      应用服务:FTP,DNS,HTTP
    • 传输层
      提供处于网络连接中的两台计算机之间的数据传输
      传输层协议:TCP,UDP
    • 网络层(网络互连层)
      这层即处理在网络上流动的数据包,数据包则是网络层上的最小数据单位。规定了通过怎样的路径到达对方计算机,并把数据包传给对方。
      也就是在与对方计算机之间通过多台计算机或网络设备进行传输时,网络层起着在众多的选项内选择一条传输线路。
    • 数据链路层(网络接口层)
      处理网络硬件的部分。
      例如操作系统,设备驱动,网络适配器,网卡,光纤等。

    二、TCP/IP通信传输

    image.png image.png

    发送端在层与层之间的传输数据时,每经过一层必定会被打上一个该层所属的首部信息,反之,接收端在层与层传输数据时,每经过一层时,会把对应的首部消去。

    三、与 HTTP 关系密切的协议 : IP、TCP 和 DNS

    1、负责传输的IP协议

    IP(Internet Protocol)网际协议,是确保把各种数据包传给对方

    • 它有两个重要的条件其中 IP 地址MAC 地址(Media Access Control Address)。
    • 它也就是一种协议名称,可能有人会把“IP”和“IP地址”搞混

    IP地址:指明了节点被分配到的地址
    MAC地址:指网卡所属的固定地址
    IP地址可以变换,MAC地址一般不会变化

    APR协议(Address Resolution Protocol):,它是一种解析地址的协议,根据通信方的IP地址就可以查出对应的MAC地址

    IP之间的通信依赖MAC地址,由于计算机在同一LAN内的情况很少,通常时经过多台计算机和网络设备中转才能连接到对方,而中转时,会利用下一站中的中转设备的MAC地址来搜索下一个中转目标,这是,会采用APR协议

    在到达通信目标前的中转过程中,那些计算机和路由器等网络设备只能获悉很粗略的传输路线,这种机制称为路由选择(routing)

    image.png
    2、确保可靠性的TCP协议

    总是这是确保数据能达到目标。
    TCP是将大块数据分割成报文段(segment)为单位的数据包进行管理,而可靠是指能够把数据准确可靠地传给对方,这也被称为字节流服务(Byte Stream Service)

    TCP为了准确无误将数据送达目标处,则采用了三次握手(three-way handshaking)策略

    三次握手策略

    握手过程中使用了TCP的标志(flag)——SYN(synchronize)和ACK(acknowledgement)
    发送端首先发送一个带SYN标志的数据包给对方,接收端收到后,回传一个带有SYN/ACK标志的数据包以传达确认信息,最后,发送端再回传一个带ACK标志的数据包,代表握手结束。
    若在握手过程中某个阶段莫名中断,TCP协议会再次以相同的顺序发送相同的数据包。


    三次握手策略
    3、负责域名解析的DNS服务

    DNS(Domain Name System)服务是和HTTP协议一样的位于应用层的协议。它提供域名到IP地址之间的解析协议服务。

    四、URI和URL

    URI 是 Uniform Resource Identifier
    URL(Uniform Resource Locator,统一资源定位符)

    URL 是 URI 的子集

    URI格式
    URI格式
    URI请求方式
    image.png

    HTTP协议

    HTTP方法
    • GET:获取资源
    • POST:传输实体主体
    • PUT:传输文件
    • HEAD:获得报文首部
      和GET方法一样,只不返回报文主体,用于确认URI的有效性
    • OPTIONS:询问支持的方法
    • TRACE:追踪路径
    HTTP的持久连接

    一次TCP连接后,进行多次请求和响应的交互

    ** HTTP/1.1** 中,所有的连接默认都是持久连接,


    image.png
    管线化

    持久连接使得多数请求以管线化(pipelining)方式发送成为可能。
    同时并行发送多个请求,而不需要一个接一个地等待响应了。


    image.png

    相关文章

      网友评论

          本文标题:HTTP相关知识点

          本文链接:https://www.haomeiwen.com/subject/jmrlkktx.html