- tcp为什么四次挥手?为什么三次握手?
- CLOSED_WAIT出现在主动端还是被动端?大量CLOSED_WAIT会是什么原因?
由图可知道CLOSE_WAIT出现在服务端,如果大量客户端主动发送FIN信号断开连接,那么服务端就会出现大量的CLOSE_WAIT状态 - 拆包和粘包问题怎么解决?
出现拆包和粘包问题是TCP协议本身导致的,因为TCP是面向字节流传输的,TCP对于每一个Socket连接会维护一个发送缓存和接收缓存,应用层通过write系统调用写字节数组到发送缓存,发送缓存其实也是一个字节数组,传输层会不规律地从发送缓存中顺序读取字节流交付给IP网络层,可能每次读取的字节是前面write字节的后一部分加上后面write的字节,这叫粘包;而TCP接收方接收到数据后会把数据缓存到Socket的接收缓存等待应用层读取,应用层读取过程不知道读取的数据是如何组成的,这叫拆包。解决办法有:1、定长,即应用层每次读取定长的字节数组成一个数据包;2、分割符,即应用层读取到分割符就组成一个数据包;3、基于长度的变长包,定长不利于应用层协议的扩展,分割符如果本身数据就包含分割符的话需要特殊处理,所以可以像HTTP协议一样定义基于长度的协议 - 查看网络的命令?netstat怎么查看端口?
- 了解什么加密方式?
对称加密:双方使用同一个密钥,算法有DES、AES;非对称加密:公钥加密,私钥解密,算法有RSA,HTPPS协议使用了RSA算法实现 - DNS协议原理和DNS的负载均衡
- DNS协议传输层
- Https的原理
计算机网络面试题
最新推荐文章于 2024-09-20 09:09:17 发布