1. TCP和UDP的区别
https://blog.csdn.net/Gouhailiang/article/details/75042513
2. 四次挥手:
A:客户端 B:服务器
- A向B发送结束请求报文,报文中FIN=1
- B收到请求后,确认回复报文号为请求报文中序列号+1,同时ACK=1,此时只是回应,B可能还有数据要传,不会立即断开。A收到回复后不能发送数据但是还能收
- 等B发送完数据后,向A发送结束请求报文,并设FIN=1
- A收到报文后回应结束应答报文,此时进入到time wait状态,并设ACK=1,time wait等待结束后,未收到回复,说明服务器正常关闭了
3. 需要time wait的原因,为啥是2msl
为了保证A发送最后一个ACK报文能到达B。因为这个报文可能会丢失,B收不到这个FIN+ACK报文的话,会重传一个请求确认的报文,而A在2msl内可以收到这个报文。假如A在发完最后一条报文后立即释放连接,就收不到B发的报文,B无法按照正常流程进入closed状态
4. 说一下http和https
https://blog.csdn.net/xiaoming100001/article/details/81109617
5. HTTP2.0与HTTP1.0的区别
https://blog.csdn.net/zhglance/article/details/76162176