zoukankan      html  css  js  c++  java
  • 一次Http请求中都发生了什么

    本博文是博主心血,严禁复制和转发,转发必举报,举报必封号!!

    一次Http请求中都做了什么

    在验证这个之前,我们需要一个工具,一个名为Wireshark的抓包工具。

    下载地址: https://www.wireshark.org/download.html

    安装: 按照默认提示,一路next, 安装完毕需要重启电脑。

    Http介绍

    超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。

    以上是百度百科对Http的定义,可能不准确,但是足够说明问题了。

    首先超文本传输协议里面的超文本,我们先不解释,下面我们会介绍到。但是我们应该能明显的看出它是一种在网络中负责数据传递的一种格式协议。

    请求-响应协议是指客户端发起一个获取数据的请求,服务端针对这个请求给出一定的反馈信息。这里有层隐含的意思,你客户端没有主动发起,我服务器不会主动给你的。

    TCP是Http协议的底层支持协议,也就是在Http的发送和响应的过程中会用到TCPTCP也是一种协议,这种协议我们以后会介绍到,今天我们先看一次Http请求干了哪些事情。

    实验

    第一步: windows 环境下,打开CMD命令窗口,输入:

    ping www.baidu.com
    

    并记下其中的IP地址:110.242.68.4

    image

    第二步: 打开Wireshark,选择自己的网卡信息,如果电脑连接的是WIFI,请选择无限网卡。如果自己是插网线,请选择本地连接。
    并在输入框中输入:

    ip.addr == 110.242.68.4
    

    image

    第三步: CMD窗口,输入:

    curl www.baidu.com
    

    image

    然后你就会在抓包软件中看到如下结果:

    image

    分析

    抓个包结果主要分为三部分:建立连接;发送请求和接受响应;断开连接。

    建立连接:

    这个阶段,你会发现总共三次数据包的交换,分别是:

    客户端56103端口 -> 服务器80端口
    
    服务器80端口    -> 客户端56103端口
    
    客户端56103端口 -> 服务器80端口
    
    发送和响应阶段:

    这个阶段,你明显发现,有一个是GET请求和一个结果为200 OK的响应。

    客户端56103端口 -> 服务器80端口
    
    服务器80端口    -> 客户端56103端口
    
    断开连接阶段:

    在这个阶段总共有四次数据包的交互,分别是:

    客户端56103端口 -> 服务器80端口
    
    服务器80端口    -> 客户端56103端口
    
    服务器80端口    -> 客户端56103端口
    
    客户端56103端口 -> 服务器80端口
    

    总结

    1. 在http一次交互中,主要经历三个阶段,分别是:建立连接、发送请求和接受响应、断开连接。

    2. 建立连接需要客户端和服务器交互三次,发送和响应交互两次,断开连接需要四次交互。

    拓展

    1. 我们使用的是www.baidu.com,那110.242.68.4是哪里来的?
    2. 在这三个阶段中,分别都做了什么?为啥连接交换三次,断开需要四次呢?
    3. 咱们上面提到的端口56103和端口80是什么东西?
    4. Http定义里面提到的TCP和我们截图结果中显示的Protocol列中的TCP有什么关系呢?
    好了,本节博客就结束了,我们会持续更新网络中的各种概念和各种实验,欢迎大家关注!!!下期更精彩!!!
    我的个人博客 Ahoh(www.ahoh.club),找我一起玩耍吧!!
  • 相关阅读:
    yum puppet dashboard
    puppet常用调试命令
    mysql oracle静默 一键安装脚本
    libvirt 基于C API基本使用案例
    mysql二进制
    mysql启动停止,一台服务器跑 多个mysql数据库
    mysql binaryVInstall
    Centos6.x/Oracle11G 自动化静默安装配置脚本
    最受欢迎linux命令
    xpages很不错的demo
  • 原文地址:https://www.cnblogs.com/weidawang/p/15429788.html
Copyright © 2011-2022 走看看