前言
共6题。
WebSocket对比HTTP?
HTTP的通信是单向的,要先请求后响应,类似于对讲机;WebSocket的通信双向的、实时的,客户端和服务端可以同时发消息,类似于手机通话。
我们在项目中大部分场景下都是使用HTTP协议,只有在高实时场景下,建议使用WebSocket。
HTTP的会话有四个过程,都是什么?
HTTP会话过程包括以下四个步骤建立TCP连接、发出请求、发出响应、释放TCP连接。
网络协议4层(TCP/IP)的话都有哪几层?http协议在哪一层?
应用层、传输层、网络层、数据链路层。http协议在应用层。
- 应用层包括协议有:
http、https、ftp(文件传输)、smtp(邮件传输)、dns(域名解析)- 传输层协议有:
tcp(可靠)、udp(快速但不可靠)- 网络层:
ip
网络协议7层(osi模型)都有哪几层?
- 物理层:网络中使用的各种网线(如
Cat5/Cat6)和接口(如RJ45)都在物理层中定义。 - 数据链路层:以太网协议(
IEEE 802.3)属于数据链路层,局域网(LAN)中的交换机就是在这一层工作,通过MAC地址转发数据包。 - 网络层:
IPV4和IPV6是网络层协议,路由器就是工作在网络层,通过IP地址路由数据包。 - 传输层:
TCP和UDP - 会话层:会话层管理应用程序之间的会话,它可以启动、保持和终止通信会话,确保数据在不同设备间的顺序正确。
- 表示层:
SSL/TLS协议就是表示层的重要组成部分,它为应用层的数据提供加密,使得网络通信更加安全。 - 应用层:常见的应用层协议有
HTTP、FTP、SMTP等。
websocket的心跳机制的问题?
如前端突然断线,后端能不能感知到连接断了,如果感知不到,前端重启会不会导致很多无用连接?
若前端突然崩溃,因为websocket基于tcp协议,操作系统会通知websocket服务器,此时后端通过监听onClose事件就可以知道连接断开了。
而websocket本身没有心跳机制,基于上述情况我认为无需添加该机制。
为什么要进行ipv4到ipv6的升级?
-
IPv4地址是一个32位的二进制数,通常以点分十进制表示(如192.168.1.1)。 -
IPv6是IPv4的继任者,旨在解决IPv4地址耗尽的问题。IPv6地址是一个128位的二进制数,通常以冒号分隔的十六进制表示(如2001:0db8:85a3:0000:0000:8a2e:0370:7334)。