网络

作者: Li_Po | 来源:发表于2020-10-18 18:31 被阅读0次

    http/https

    • http的6种请求方式
      get
      post
      head
      put
      delete
      options

    get:获取资源:幂等、可缓存、安全的。请求参数以?分割拼接到URL后面
    post:处理资源:非不幂的、不可缓存、不安全的。请求参数在body里面
    (安全指的是不引起server端的任何状态变化,幂等指同一个请求方法执行多次和执行一次的下过完全相同,缓存指大部分代理服务器可缓存)

    • 状态码
      1xx:
      2xx:200响应成功
      3xx:301、302网络重定向
      4xx:403、404客户端发起的请求可能有问题
      5xx:502、501server异常

    • 连接建立流程

    image.png
    • http特点
      无连接:可以通过http的持久连接来补偿。持久连接可以提高网络请求效率
      无状态:同一个用户多次请求服务器并不能识别,通过cookie/session来识别同一个用户

    cookie主要用来记录用户状态,区分用户;状态保存在客户端。
    客户端发送的cookie在http请求报文的cookie首部字段中。
    服务端设置http响应报文的set-Cookie首部字段
    怎样修改cookie?->新cookie覆盖旧cookie。覆盖规则name、path、domain等需要与原cookie一致
    怎样删除cookie?->覆盖,设置expirse=过去的一个时间点,或maxAge=0
    怎样保证cookie安全?->加密cookie、只在https上携带、设置cookie为httpOnly,防止跨站脚本攻击

    session 也是用来记录用户状态,区分用户;状态保存在服务端。
    session和cookie关系?session需要依赖于cookie机制


    image.png
    • 持久连接头部字段
      connection:keep-alive //客户端期许持久连接
      time:20//持久连接有效持续时间
      max:最大发生多少个连接相应对

    • 怎样判断一个请求是否结束
      Content-length:1024 //通过响应报文头部字段大小来判断到是否结束
      chunked //post请求多次响应,最后会有一个空的chunked来判断是否结束

    • Charles抓包原理,利用了中间人攻击漏洞来实现。
      client<------中间人------->server

    • https和http的区别
      https=http+SSL/TLS

    image.png
    image.png

    会话秘钥=随机数random s + random c + 预主秘钥

    • https使用了哪些加密
      连接过程中使用非对称加密,保证安全,但是耗时。(公钥加密私钥解密/私钥加密公钥解密)
      后续通信过程使用对称加密,秘钥在传输过程中可能遇到中间人攻击,不保证绝对安全。(加密解密的秘钥相同)
    image.png
    image.png

    tcp/udp

    • UDP:传输层协议,用户数据报协议。
      特点:无连接、尽最大努力交付、面向报文(既不合并,也不拆分)。
      功能:复用、分用、差错检测
    image.png
    image.png
    • TCP: 传输层协议,传输控制协议。
      特点:
      1.面向连接:(3次握手4次挥手)
      2.可靠传输:(1.保证报文:无差错、不丢失、不重复、按序到达。2.停止等待协议:无差错情况-请求->响应、超时重传、确认丢失、确认重传)。
      3.面向字节流:TCP会将发送方的数据拆分或合并后发给接收方
      4.流量控制:基于滑动窗口协议来实现的。
      5.拥塞控制:(慢开始,拥塞避免。快回复、快重传)
    image.png
    image.png

    DNS

    • DNS解析:域名到ip地址的映射,DNS解析请求采用udp数据报,且明文
    • 递归查询 “我去给你问一下” Clint<=>本地dns<=>跟域dns<=>顶级dns<=>权限dns
    • 迭代查询 “我告诉你谁可能知道”
    image.png
    image.png
    • 常见问题:
      1.dns劫持问题。两种解决方法 httpDNS/长连接
      2.dns解析转发问题
    image.png

    相关文章

      网友评论

          本文标题:网络

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