美文网首页
常问知识点-网络

常问知识点-网络

作者: aston_c | 来源:发表于2018-04-18 23:59 被阅读0次

    网络

    TCP和UDP的区别

    1. TCP面向有连接,提供可靠的传输;UDP面向无连接,不可靠传输
    2. TCP面向字节流,UDP面向数据包

    TCP如何提供传输的可靠性

    1. 将数据截取为合理的长度
    2. 超时重传机制
    3. 对于收到的请求,给出确认响应
    4. 对数据包进行校验,错误的丢弃
    5. 对数据进行排序
    6. 提供流量控制

    TCP三次握手,四次挥手,SYN攻击

    三次握手的状态
    closed:不在连接状态
    listen:被动打开,接收方等待连接请求
    SYN_SENT:主动打开,发送完连接请求后等待回复
    SYN_received:接受连接请求,进行确认同时也向对端发送连接请求,等待恢复。
    established:三次握手完毕,TCP连接建立完成。
    三次握手四次挥手过程详解

    TCP/IP协议模型几层,OSI模型几层

    OSI七层模型 TCP/IP五层模型
    应用层
    表示层
    会话层 应用层
    传输层 传输层
    网络层 网络层
    数据链路层 数据链路层
    物理层 物理层

    HTTP的版本有几种

    0.9 1.0 1.1 2.0

    HTTP请求报文结构,响应报文结构

    GET请求报文实例:

    GET  /562f25980001b1b106000338.jpg   HTTP/1.1
    Host    img.mukewang.com
    Accept    image/webp,image/*,*/*;q=0.8
    Referer    http://www.imooc.com/
    Accept-Encoding    gzip, deflate, sdch
    Accept-Language    zh-CN,zh;q=0.8
    
    
    组成部分
    请求行 包括: 请求类型, 要访问的资源, HTTP版本号
    请求头部 说明服务器要使用的附加信息
    空行 作用是通知服务器以下的不是请求头部
    请求数据 POST请求中使用

    响应报文实例:

    HTTP/1.1 200 OK
    Date: Fri, 22 May 2009 06:07:21 GMT
    Content-Type: text/html; charset=UTF-8
    
    <html>  
          <head></head>  
          <body>  
                <!--body goes here-->  
          </body>  
    </html> 
    
    组成部分
    状态行 包括:HTTP版本号, 状态码, 状态消息
    消息报头 说明客户端要使用的附加信息
    空行 作用是通知客户端以下的不是请求头部
    响应正文 服务器返回给客户端的文本信息

    HTTP状态码分类,400和500的区别

    1xx:指示信息--表示请求已接收,继续处理

    2xx:成功--表示请求已被成功接收、理解、接受

    3xx:重定向--要完成请求必须进行更进一步的操作

    4xx:客户端错误--请求有语法错误或请求无法实现

    5xx:服务器端错误--服务器未能实现合法的请求

    HTTP常见状态码

    200 OK //客户端请求成功

    400 Bad Request //客户端请求有语法错误,不能被服务器所理解

    401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用

    403 Forbidden //服务器收到请求,但是拒绝提供服务

    404 Not Found //请求资源不存在,eg:输入了错误的URL

    500 Internal Server Error //服务器发生不可预期的错误

    503 Server Unavailable //服务器暂时不能处理客户端的请求,一段时间后可能恢复正常

    HTTP和HTTPS的区别,HTTPS原理,加密方式

    • 区别
      HTTP协议以明文方式发送内容,不提供任何方式的数据加密,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

    • HTTPS工作原理

    (1)客户发送https请求访问Web服务器,要求与Web服务器建立SSL连接。

    (2)Web服务器收到客户端请求后,会将网站的证书信息(证书中包含公钥)传送一份给客户端。

    (3)客户端的浏览器与Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。

    (4)客户端的浏览器根据双方同意的安全等级,建立会话密钥,然后利用网站的公钥将会话密钥加密,并传送给网站。

    (5)Web服务器利用自己的私钥解密出会话密钥。

    (6)Web服务器利用会话密钥加密与客户端之间的通信。

    • 加密方式
      协商阶段是非对称加密,会话阶段是对称加密

    浏览器输入地址到返回结果发生了什么

    1. 发送到DNS(域名服务器)获得域名对应的WEB服务器的IP地址。

    2. 客户端浏览器与WEB服务器建立TCP连接。

    3. 客户端浏览器向对应IP地址的WEB服务器发送相应的HTTP或HTTPS请求。

    4. WEB服务器响应请求,返回指定的URL数据或错误信息;如果设定重定向,则重定向到新的URL地址。

    5. 客户端浏览器下载数据,解析HTML源文件,解析的过程中实现对页面的排版,解析完成后,在浏览器中显示基础的页面。

    6. 分析页面中的超链接,显示在当前页面,重复以上过程直至没有超链接需要发送,完成页面的全部显示。

    相关文章

      网友评论

          本文标题:常问知识点-网络

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