计算机网络—面试题2

1、TCP和UDP区别

    1)TCP是面向连接的协议,UDP是无连接的协议。

    2)TCP提供可靠地交付,UDP不可靠

    3)TCP协议会为你排好序,UDP不提供任何有序性保证。

    4)TCP速度慢,UDP速度快

    5)TCP是重量级协议,UDP是轻量级协议

    6)TCP有流量控制和拥塞控制。

    7)TCP面向字节流,UDP面向报文

    8)TCP只能单播,不能发送广播和组播,UDP可以

2、TCP如何实现流量控制和拥塞控制,怎么做错误处理?

   利用滑动窗口机制实现流量控制,利用TCP中窗口大小字段。

   拥塞控制:慢开始,拥塞避免,快重传,快恢复

   Nagle避免存在太多小包,尽可能发送大包。

   TCP黏包:本来发送多个TCP报文,但是只收到一个,多个报文合成一个。(原因:Nagle算法;接收端接受不及时;)

                   解决办法:1、关闭nagle算法2、接收端尽可能从缓冲区读数据。3、增加一个表示数据的开头和结尾的字符。

3、物理层:RJ45、CLOCK、IEEE802.3

     数据链路层:PPP、FR、HDLC、VLAN、MAC

     网络层:IP、ICMP、RARP、OSPF、IPX、RIP、IGMP

      传输层:TCP、UDP、SPX

      会话层:RPC、SQL、NETBIOS、NFS

      表示层:JPEG、MPEG、ASCII、MIDI

      应用层:RIP、BGP、FTP、DNS、Telent、SMTP、HTTP、WWW、NFS

4、TCP头部:1)源端口和目的端口字段。2)序号字段3)确认号字段。4)数据偏移。5)保留字段。6)紧急位。7)确认位。8)推送位。9)复位位。10)同步位。11)终止位。12)窗口字段。13)检验和。14)紧急指针字段。15)选项字段16)填充字段。

5、HTTP请求报文主要由请求行、请求头、空行、请求正文组成。

6、HTTP响应报文主要由状态行、响应头、空行、响应正文组成。

7、Http1.1和Http1.0的区别

     1)Http1.1默认使用持久连接,只要客户端服务端任意一端没有明确提出端来TCP连接,就一直保持连接,在同一个TCP连接下,可以发送多次HTTP请求,默认用流水线方式发送请求。 

     2)Http1.0可以指定实体长度的唯一机制是通过Content——Length字段

          Http1.1引入了被称为分块的传输方法。将消息实体分为任意大小的组块,并单独发给他们。

     3)Http1.1加入了新的状态码100Continue,用于客户端在发送POST数据给服务器之前,征询服务器情况,看服务器是否处理POST数据。(通常是处理冗长请求的情况下)

     4)Http1.1在Request消息头里多了一个Host域,而1.0没有这个域,1.0默认每台服务器绑定一个唯一的IP地址。

8、http请求中get和post区别

     1)GET一般用于获取或者查询资源信息,是幂等的,POST一般是用来更新信息,既不是安全也不是幂等

     2)GET方法时,客户端要把发送的数据添加到URL后面,POST是需要把传递的数据放到HTTP请求报文的消息体中。

9、HTTP为什么是无状态的?会话跟踪技术有哪些?

    对事务处理没有记忆能力,不能保存每次客户端提交的信息,有点事不需要分配内存来记忆,缺点是必须重新上传

   会话跟踪技术:COOKIE、Session、URL重写、作为隐藏域嵌入HTML表单中

10、Http的短连接和长连接的原理

      HTTP/1.0 中,默认使用的是短连接。也就是说,浏览器和服务器每进行一次 HTTP
操作, 就建立一次连接, 但任务结束就中断连接。 如果客户端访问的某个 HTML 或其他类
型的 Web 页中包含有其他的 Web 资源, 如 JavaScript 文件、 图像文件、 CSS 文件等
当浏览器每遇到这样一个 Web 资源,就会建立一个 HTTP 会话。HTTP1.0 需要在 request

中增加Connectionkeep-aliveheader 才能够支持长连接。

11、http安全问题

     1)使用明文不加密,内容可能被窃取。

      2)不验证同新方身份,可能遭到伪装

      3)无法验证报文完整性,可能被篡改

12、Https作用

     内容加密,身份加密,数据完整性

13、HTTP和HTTPS的区别

        1)https更安全

             HTTPS是有SSL+HTTP协议构建可进行加密传输、身份认证的网络协议,要比http安全。

        2)HTTPS需要申请证书

        3)端口不同,https使用443端口,http使用80端口

        4)所在层次不同

            HTTP协议在TCP上,HTTPS在SSL/TLS之上得HTTP协议。

14、Cookie和Session的原理

       session可以放在文件、内存或数据库都可以,是以键值对的形式存储

       Session ID保存方法:1)使用Cookie来保存。

                                      2)URL重写。

                                      3)在页面表单里面增加隐藏域。

        cookie种类:1)以文件方式在硬盘上的永久性cookie。

                           2)停留在浏览器所占内存中临时性的cookie

        Cookie中的maxAge决定者Cookie的有效期,单位为秒。

        Cookie包括了:名字、值、过期时间、域和路径

        Cookie被禁用之后:1)URL重写。2)页面表单里面增加隐藏域。

      Cookie和Session的区别:1)cookie数据存在客户端,用来记录用户信息,session数据存在服务器。

                                           2)Cookie对客户端可见。Session不可见。

                                           3)Cookie不占用服务器资源


15、session和cache区别

        session是单用户会话状态,cache是服务器端缓存。

16、如果有几千个session,就把它放到redis或memcache缓存中。

17路由器和交换机区别?

    1)交换机工作在数据链路层,路由器工作在网络层。

    2)交换机转发数据帧,路由器转发IP分组。

    3)交换机隔离冲突域,不隔离广播域,路由器隔离冲突域,隔离广播域。

18、HTTP断电续传

    在请求报文头中加入Range段。

19、TCP如何保证按序接收

      1)TCP具有缓冲区

      2)TCP报文具有序列号

      


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值