计算机网络

56 阅读48分钟

前言

6题。

WebSocket对比HTTP?

HTTP的通信是单向的,要先请求后响应,类似于对讲机;WebSocket的通信双向的、实时的,客户端和服务端可以同时发消息,类似于手机通话。

我们在项目中大部分场景下都是使用HTTP协议,只有在高实时场景下,建议使用WebSocket

HTTP的会话有四个过程,都是什么?

HTTP会话过程包括以下四个步骤建立TCP连接、发出请求‌、‌发出响应、释放TCP连接

网络协议4层(TCP/IP)的话都有哪几层?http协议在哪一层?

应用层、传输层、网络层、数据链路层。http协议在应用层。

  1. 应用层包括协议有:httphttpsftp(文件传输)、smtp(邮件传输)、dns(域名解析)
  2. 传输层协议有:tcp(可靠)、udp(快速但不可靠)
  3. 网络层:ip

网络协议7层(osi模型)都有哪几层?

  1. 物理层:网络中使用的各种网线(如Cat5/Cat6)和接口(如RJ45)都在物理层中定义。
  2. 数据链路层:以太网协议(IEEE 802.3)属于数据链路层,局域网(LAN)中的交换机就是在这一层工作,通过MAC地址转发数据包。
  3. 网络层IPV4IPV6是网络层协议,路由器就是工作在网络层,通过IP地址路由数据包。
  4. 传输层TCPUDP
  5. 会话层会话层管理应用程序之间的会话,它可以启动、保持和终止通信会话,确保数据在不同设备间的顺序正确。
  6. 表示层SSL/TLS协议就是表示层的重要组成部分,它为应用层的数据提供加密,使得网络通信更加安全。
  7. 应用层:常见的应用层协议有HTTPFTPSMTP等。

websocket的心跳机制的问题?

如前端突然断线,后端能不能感知到连接断了,如果感知不到,前端重启会不会导致很多无用连接?

若前端突然崩溃,因为websocket基于tcp协议,操作系统会通知websocket服务器,此时后端通过监听onClose事件就可以知道连接断开了。

websocket本身没有心跳机制,基于上述情况我认为无需添加该机制。

为什么要进行ipv4到ipv6的升级?

  • IPv4地址是一个32位的二进制数,通常以点分十进制表示(如 192.168.1.1)。

  • IPv6IPv4的继任者,旨在解决IPv4地址耗尽的问题。IPv6地址是一个128位的二进制数,通常以冒号分隔的十六进制表示(如2001:0db8:85a3:0000:0000:8a2e:0370:7334)。