计算机网络面试题3

四次挥手

断开连接需要四次挥手

1.客户端发送一个FIN(SEQ=x)标志的数据包到服务端,用来关闭客户端到服务端的数据传送,                  然后客户端进入FIN-WAIT-1状态。

2.服务端收到一个FIN(SEQ=x)标志的数据包,它发送一个ACK(ACK=x+1)标志的数据包到客户                  端,服务端进入CLOSE-WAIT状态,客户端进入FIN-WAIT-2状态。

3.服务端发送一个FIN(SEQ=y)标志的数据包到客户端,请求关闭连接,服务端进入LAST-ACK状                态

4.客户端发送一个ACK(ACK=y + 1)标志的数据包到服务端,然后客户端进入TIME-WAIT状态,服                务端收到这个数据包后进入CLOSE状态,如果此时客户端等待2MSL后依然没有收到回                  复,证明服务端已经正常关闭,随后客户也可以关闭连接了。

为什么不能把服务端发送的ACK和FIN合并起来,变成三次挥手?

因为服务端收到客户端断开连接的请求时,可能还有一些数据没有发完,先回复ACK表示接收到了断开连接的请求,等到数据发完之后再发FIN,断开服务端到客户端的数据传送。

为什么第四次挥手需要等待2MSL时间?

如果服务端没有收到客户端的ACK,会重发FIN。2MSL是一个发送和一个回复所需的最大时间,如果直到2MSL客户端都没有再收到FIN,则客户端认为ACK已经被成功接收,结束TCP连接。

TCP与UDP区别

1.TCP是面向连接的,UDP不是。

2.TCP是可靠传输,UDP不可靠。

3.TCP传输是有状态的,UDP是无状态服务

4.TCP的传输效率UDP低

5.TCP面向字节流,UDP面向报文

6.TCP首部开销比UDP大

7.TCP只支持点对点通信,UDP提供广播和多播服务

TCP如何保证传输的可靠性?

1.基于数据块传输

2.通过序列号保证数据包的有序性

3.校验和

4.重传机制

5.流量控制

6.拥塞控制

HTTP是基于TCP还是UDP?

HTTP/3.0之前是基于TCP协议的。HTTP/3.0弃用TCP,改用基于UDP的QUIC协议

DNS协议使用的是TCP还是UDP?

DNS在域名解析的过程中,会根据DNS响应报文的大小选择使用TCP还是UDP。一般情况下响应报文不会超过512字节,所以实际DNS配置时仅支持UDP查询包。

区域传输的时候使用TCP协议

什么是MAC地址,IP地址到MAC地址如何转换?

一切网络设备都由MAC地址唯一标识。

ARP地址解析协议,解决了IP地址转MAC地址的一些问题。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值