08进阶之路-网络相关

1.HTTP协议

超文本传输协议

  • 请求/响应报文
    image

    HTTP的请求方法有哪些
    HTTP1.1支持7种请求方法:GET、POST、HEAD、OPTIONS、PUT、DELETE和TARCE。
    GET、POST的区别
    GET请求参数以?分割拼接到URL后面,POST请求参数在Body里面。
    GET请求长度限制2048个字符,POST没有长度的限制
    image

    安全的:不应该引起Server端的任何变化
    幂等的:同一个请求方法执行多次和执行一次的效果是完全相同
    可缓存的:请求是否可以被缓存
    image
  • 连接建立流程


    image
  • HTTP的特点
    无连接(短链接):可以支持持久链接
打开持久链接的方法
头部字段
Connect:keep-alive
time:20 (链接事件)
max:10 (最多可以发生多少个http请求)
判断一个请求是否结束的?
Content-length:1024
chunked:最后会有一个空的chunked

Charles抓包原理?

利用HTTP的中间人攻击的漏洞
代理服务器横着Client和Server中间

无状态:Session与Cookie解决

  • 状态码的关键字
    link

2.HTTPS协议与网络安全相关

  • HTTP和HTTPS的区别?
    HTTPS = HTTP + SSL/TLS
    在应用层(HTTP)的下面,传输层(TCP)的上面插入了SSL/TLS协议\
  • HTTPS的建立流程


    image

    image
  • HTTPS是使用了哪些加密手段?
  1. 链接建立的过程中,预主秘钥是进行的非对称加密 (效率低,耗时)
  2. 后续对话使用对称加密 会话秘钥进行对称加密和解密 (效率高)
  • 对称加密和非对称加密


    image

    image

3.UDP(用户数据报协议)详解

  • 无连接
  • 尽最大努力交付 (不可靠)
  • 面向报文。既不拆分,也不合并
  • 功能
    复用和分用
    image

    差错检测
    image

4.TCP(传输控制协议)详解

  • 面向连接
    数据传输之前,建立连接。三次握手,四次挥手
    image

    三次握手的原因:因为如果是两次,第一次SYN的报文超时了,第二次重连连接上了,这时第一次的SYN到达了,server就会有两次连接。有了ACK,client会忽略第一次超时的。
    image

    四次挥手的原因:连接是全双工的,两条通道。需要分别都关闭。
  • 可靠传输 (停止等待)
  1. 无差错
  2. 不丢失
  3. 不重复
  4. 按序到达


    image

    image
  • 面向字节流


    image
  • 流量控制
    滑动窗口协议
    image
  • 拥塞控制
    慢开始,拥塞避免,
    快恢复,快重传
    image

5.DNS详解

域名到IP地址的映射,DNS解析采用UDP数据报文。且明文传输。循环递归查询。
DNS劫持。钓鱼网站

image

DNS安全解决方法。

  1. HTTPDNS
  2. 长链接

6.Session与Cookie详解

HTTP协议无状态特点的补偿

  • Session(sever端)
    Session记录用户状态,区分用户,状态保存在服务器端


    image
  • Cookie (client端)
    主要用来记录用户状态,区分用户,状态保存在客户端
    image

    怎样修改(删除)Cookie
    新Cookie覆盖旧Cookie
    覆盖规则:name。path。domain与Cookie一致
    删除设置Cookie的expire=过去时间点或者maxAge=0
    怎样保证Cookie的安全
    对Cookie加密
    只在https上携带Cookie
    设置Cookie为httpOnly,反正跨站的脚本攻击

你可能感兴趣的:(08进阶之路-网络相关)