计算机网络补充

  1. TCP协议在哪一层?IP协议在那一层?HTTP在哪一层?

    TCP协议在运输层
    IP协议在网络层
    HTTP协议在应用层
    
  2. 讲一下TCP的连接和释放连接。

    TCP的连接就是三次握手的过程
    TCP的释放连接就是四次挥手的过程
    
  3. TCP与UDP有哪些应用场景

       TCP 是可靠的但传输速度慢 ,UDP 是不可靠的但传输速度快。因此在选用具体协议通信时,应该根据通信数据的要求而决定。
      若通信数据完整性需让位与通信实时性,则应该选用 TCP 协议(如文件传输、重要状态的更新等);
      反之,则使用 UDP 协议(如视频传输、实时通信等)。
    
  4. tcp为什么可靠

     在TCP协议中使用了接收确认和重传机制。这样每一次信息的传输都经过了像三次握手那样的一个过程,使得每一个信息都能保证到达,是可靠的。
     而UDP是尽力传送,没有应答和重传机制,UDP只是将信息发送出去,对方收不收到也不进行应答。所以UDP协议是不可靠的。
    
  5. http的请求有哪些,应答码502和504有什么区别

    Options  返回服务器针对特定资源所支持的HTML请求方法   或web服务器发送*测试服务器功能(允许客户端查看服务器性能)
    Get   向特定资源发出请求(请求指定页面信息,并返回实体主体)
    Post   向指定资源提交数据进行处理请求(提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改
    Put   向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容)
    Head  与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头)
    Delete   请求服务器删除request-URL所标示的资源*(请求服务器删除页面)
    Trace   回显服务器收到的请求,用于测试和诊断
    Connect   HTTP/1.1协议中能够将连接改为管道方式的代理服务器
    **http服务器至少能实现get、head、post方法,其他都是可选的 **
    
    502表示错误网关,无效网关
    504表示网关超时,说明服务器作为网关或代理,但是没有及时从上游服务器收到请求。
    
  6. http1.1和1.0的区别

    1.htttp1.0的特点
    ·请求与响应支持头域
    ·响应对象以一个响应状态行开始
    ·响应对象不只限于超文本
    ·开始支持客户端通过POST方法向Web服务器提交数据,支持GET、HEAD、POST方法
    ·支持长连接(但默认还是使用短连接),缓存机制,以及身份认证
    2.http1.1的特点
    ·HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
    GET 请求指定的页面信息,并返回实体主体。
    HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
    POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
    PUT 从客户端向服务器传送的数据取代指定的文档的内容。
    DELETE 请求服务器删除指定的页面。
    CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
    OPTIONS 允许客户端查看服务器的性能。 TRACE 回显服务器收到的请求,主要用于测试或诊断。
    
  7. 说说ssl四次握手的过程

1. 客户端向服务器发送加密通信的请求,请求包括:协议版本,客户端随机数,加密方法,压缩方式;
2. 服务器确认支持协议版本,如果不支持则关闭加密通道;确认加密方式(从算法列表中选取响应的算法),生成随机数;返回服务器证书
3. 客户端做出响应:客户端确认证书是否合法,如果合法,生成随机数并是使用公钥进行加密;使用约定的加密方式对握手信息进行加密,并使用随机数对消息进行加密,最后将所有的信息发送给服务器。
4. 服务器使用自己的私钥对信息解密取出密码,使用密码对握手信息进行解密,同时利用client random、server random和premater secret通过一定算法生成对称加密key - session key。
  1. 304状态码有什么含义?
304状态码是告诉浏览器可以从缓存中获取所请求的资源。
当浏览器请求某一文件时,发现自己缓存的文件有Last-Modified,
就会在httpRequest里面添加消息头If-Modified-Since 和If-Non-Match,
服务器在收到reqeust时,和服务器本地文件对比,如果没有更新,则仅仅返回一个响应头Head(状态码304,而没有响应体),
客户端在收到这个响应时,就会从本地缓存加载请求的资源。 

9.arp协议,arp攻击

ARP是地址解析协议,根据IP地址获得MAC地址。 属于网络层

原理:当两台主机A和B通信的时候,如果A要向B发送信息,会先查询本地主机ARP缓存表,将B的ip解析为B的MAC地址,然后进行数据传输。
如果没有找到,则A主机广播一个ARP请求,请求IP地址为B主机IP的物理地址。主机B识别自己的IP地址,向A主机发回一个ARP响应报文
。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存,接着使用这个MAC地址发送数据。

ARP攻击:局域网中的机器B向A发送一个自己伪造的ARP应答,如果这个应答是B冒充C伪造来的,即IP地址为C的IP
,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,
而它的MAC地址已经不是原来那个了。当A再要向C发送信息的时候,就会发送到B,而不是再发向C。 

10.icmp协议

icmp为网络控制报文协议 属于网络层协议
用于传输差错报文以及传递信息(异常情况报告)
我们常用的DOS命令中的ping就是icmp协议报文

11.讲一下路由器和交换机的区别?

路由器是在网络层 交换机则是在数据链路层
路由器是转发路由 交换机则是转发数据包
交换机即插即用 有较高的转发速度

12.DNS寻址过程

1、客户机发出查询请求,在本地计算机缓存查找,若没有找到,就会将请求发送给dns服务器
2、先发送给本地dns服务器,本地的就会在自己的区域里面查找,若找到,根据此记录进行解析,若没有找到,就会在本地的缓存里面查找
3、本地服务器没有找到客户机查询的信息,就会将此请求发送到根域名dns服务器
4、根域名服务器解析客户机请求的根域部分,它把包含的下一级的dns服务器的地址返回到客户机的dns服务器地址
5、客户机的dns服务器根据返回的信息接着访问下一级的dns服务器
6、这样递归的方法一级一级接近查询的目标,最后在有目标域名的服务器上面得到相应的IP信息
7、客户机的本地的dns服务器会将查询结果返回给我们的客户机
8、客户机根据得到的ip信息访问目标主机,完成解析过程 

13.负载均衡反向代理模式优点及缺点

一、概念:
负载均衡:将客户端的请求按照一定的规则分配到一群服务器上,并将处理结果返回给相应的客户端。
反向代理:外网通过代理访问内网,那这个代理就是反向代理。
反向代理负载均衡技术是把将来自internet上的连接请求以反向代理的方式动态地转发给内部网络上的多台服务器进行处理,从而达到负载均衡的目的。
反向代理负载均衡可以将优化的负载均衡策略和代理服务器的高速缓存技术结合在一起,提升静态网页的访问速度,提供有益的性能;由于网络外部用户不能直接访问真实的服务器,具备额外的安全性。
其缺点主要表现在以下两个方面:
反向代理是处于OSI参考模型第七层应用层,所以就必须为每一种应用服务专门开发一个反向代理服务器,这样就限制了反向代理负载均衡技术的应用范围,现在一般都用于对web服务器的负载均衡。
针对每一次代理,代理服务器就必须打开两个连接,一个对外,一个对内,因此在并发连接请求数量非常大的时候,代理服务器的负载也就非常大了,在最后代理服务器本身会成为服务的瓶颈。

一般来讲,可以用它来对连接数量不是特别大,但每次连接都需要消耗大量处理资源的站点进行负载均衡,如search等。 

待更新。。。。

猜你喜欢

转载自blog.csdn.net/lingxing9454/article/details/88902221