概念介绍
UDP协议与TCP协议有什么区别?
TCP协议是面向连接的,在正式收发数据前,必须和对方建立可靠的连接。主要适用于注重可靠性、对数据准确性要求高而速度要求相对较低的场景,如文件传输、收发邮件和远程登录等。
UDP协议是面向非连接,数据发送前不需要与对方进行三次握手,而是直接进行数据包发送传送。主要适用于注重实时性、对可靠性要求相对较低的场景,如视频聊天、金融实时行情推送等。
监听器的默认超时时间是多少?
- TCP监听器默认超时时间为900秒,允许设置的范围为10 - 900秒。
- UDP监听器默认超时时间为90秒,允许设置的范围为1 - 300秒。
CLB流量统计和公网IP流量统计有什么不同?
公网IP流量是在公网出入口统计,是限速后从公网到达这个公网IP的所有流量;CLB流量统计是CLB下所有监听器(所有监听端口)的流量总和,除了公网流量,还包含从火山云机房内部访问该CLB的流量。CLB除了流量统计,还包含新建连接数和活跃连接数等指标的统计。
操作使用
CLB监听端口与后端服务器端口是否可以不一致?
可以。CLB监听端口与后端服务器端口无必然联系,CLB监听端口用于外部客户端访问CLB实例,后端服务器端口用于服务器对外提供服务,您可以按需自定义。
CLB对上传文件的速度和大小是否有限制?
- 四层监听器本身不会限制客户端上传文件的速度,但会根据CLB实例定义的私网带宽限制上传速度。
- 七层监听器限制客户端上传文件大小为1GB,且根据CLB实例定义的私网带宽上限限制上传速度。
说明
无论是四层监听器还是七层监听器,如果CLB实例关联了公网IP(如公网CLB实例和已绑定公网IP的私网CLB实例),则上传速度还受公网带宽上限的影响。
监听器删除之后,CLB是否会立即停止转发业务流量?
- 如果客户端和CLB之间是短连接,那么删除四层监听器时,CLB会立即停止转发业务流量。
- 如果客户端和CLB之间保持长连接,那么删除七层监听器时,新的连接不再建立,但已建立的TCP长连接不受监听器删除的影响,直到达到系统默认的监听超时时间后,CLB才会断开这些长连接并停止转发业务流量。
将四层监听器关联的后端服务器权重修改为0,原连接会自动关闭吗?
对于四层TCP监听器来说,如果客户端与后端服务器建立的连接为长连接,此时,将后端服务器的权重修改为0,原连接不会立刻关闭,请手动关闭或等待keep-alive timeout时间后自动关闭。
HTTPS协议的监听器访问后端服务器的请求通过什么协议传输?
HTTPS协议的监听器只对客户端到CLB之间的请求进行加密,CLB访问后端服务器的请求仍然通过HTTP协议传输。
七层监听器访问后端服务器的协议版本是什么?
七层监听器访问后端服务器的协议版本默认为HTTP 1.1,与客户端和服务器的协议版本无关。
HTTPS协议监听器开启HTTP2.0协议后,客户端与CLB之间互访的协议版本为HTTP 2.0,CLB与后端服务器之间互访的协议版本仍为HTTP 1.1。
CLB是否支持HTTP 2.0协议?
单个UDP报文超过MTU时CLB是否支持?
不支持。CLB不支持UDP分片,单个UDP报文超过MTU时会被丢弃。
监听器是否支持Gzip数据压缩?
七层监听器支持。HTTP/HTTPS监听器默认开启Gzip数据压缩。当客户端请求头部携带accept-encoding: gzip时,若后端服务器向客户端返回特定类型(包含text/plain、text/css、text/xml、application/xml、text/javascript、application/x-javascript、 application/json、application/javascript、application/x-protobuf)的文件,则CLB先将其压缩,再返回给客户端。
调度算法相关
监听器支持的调度算法?
加权轮询(WRR)、加权最小连接数(WLC)、源地址哈希(SH)。
- 加权轮询(WRR):权重值越高的后端服务器,被轮询到的次数(概率)越高。
- 加权最小连接数(WLC):将请求分发给“当前连接/权重”比值最小的后端服务器。
- 源地址哈希(SH):基于源IP地址的一致性哈希,相同源地址的请求会调度到相同的后端服务器。
为什么用浏览器向四层监听器发起多次请求时,请求总是会调度到同一台后端服务器上?
- 如果您使用的是源地址哈希(SH)算法,相同源地址的请求会调度到相同的后端服务器。
- 如果您使用的是加权轮询(WRR)或加权最小连接数(WLC)算法,请注意发起请求的浏览器是否使用Http1.1协议版本,Http1.1默认开启长连接,将会导致短时间内同一客户端发起的多次请求复用同一TCP连接,四层监听器从客户端到服务器端的连接将被保持。
说明
如您希望关闭Http1.1的长连接,请在请求头中标明Connection:Close。
修改监听器的调度算法会导致业务中断吗?
不会。修改调度算法只影响之后的访问请求转发,不影响已有连接,因此不会导致业务中断。
转发规则相关
如何为七层监听器配置域名或URL?
可以通过为七层监听器配置转发规则来配置域名或URL,详细操作请参见添加转发规则。 为什么在控制台界面找不到配置转发规则的入口?
只有HTTP和HTTPS协议的监听器支持配置转发规则,请检查您的监听器协议是否为TCP或UDP。
转发规则支持大小写模糊匹配吗?
支持。转发规则匹配域名时不区分大小写,匹配URL时区分大小写。所以为七层监听器配置转发规则时,请根据实际URL的大小写正确配置。
WS/WSS协议相关
什么是WS/WSS?
WebSocket(简称为WS)协议是HTML5的一种通信协议,能够使客户端和服务端之间的双向数据传输更简单快捷。WS建立在TCP之上,在TCP进行一次握手后即可建立持久性连接。建立连接后,客户端和服务端都能够主动向对方发送或接收数据。
WebSocket Secure(简称为WSS)协议是WS的加密版本。
为什么要使用WS/WSS?
WS/WSS协议出现以前,客户端都是通过轮询的方式从服务端拉取数据。这种数据交换方式不仅效率低,而且服务端无法主动推送数据到客户端。
伴随HTML5发布的新协议WebSocket解决了以上问题,实现了客户端与服务端之间的双向数据传输。
相比HTTP协议,WS协议还具有以下优点:
哪些地域支持WS/WSS?
当前CLB服务支持的所有地域均支持WS/WSS协议。
如何启用WS/WSS?
CLB的七层监听器默认支持,无需额外配置。
HTTP协议的监听器默认支持WS协议。
HTTPS协议的监听器默认支持WSS协议。
WS/WSS协议是否收费?
WS和WSS协议默认免费,您无需支付任何费用。
会话保持相关
CLB支持哪些类型的会话保持?
CLB支持基于源IP和基于Cookie两种类型的会话保持。
- 四层监听器(TCP和UDP协议)支持基于源IP的会话保持。
- 七层监听器(HTTP和HTTPS协议)调度算法为“加权轮询(WRR)”时,支持基于Cookie的会话保持,分为植入Cookie和重写Cookie两种Cookie处理方式。
会话保持超时时间是否支持修改?
支持。
- 四层监听器(TCP和UDP协议)和七层监听器(HTTP和HTTPS协议)植入Cookie方式的会话保持超时时间可直接在监听器配置页面修改。
- 七层监听器(HTTP和HTTPS协议)重写Cookie方式的会话保持超时时间默认与后端服务器Cookie配置一致,需要在后端服务器Cookie配置中修改。
监听器的调度算法与会话保持有什么关系?
- 调度算法是监听器必配的基本功能,是转发访问请求的策略,对所有到达CLB的访问请求生效。
- 会话保持是监听器可选配置的高级功能,用于将来自同一用户的访问请求转发到相同的后端服务器。
七层监听器(HTTP和HTTPS协议)仅当调度算法为“加权轮询(WRR)”时,支持配置会话保持功能;四层监听器(TCP和UDP协议)所有调度算法类型均支持配置会话保持功能。
会话保持与长连接有什么不同?
会话保持和长连接是两个不同的概念,没有必然联系。
- 会话保持是指CLB将来自同一个会话的访问请求转发到相同的后端服务器进行处理。
- 长连接是指在一个客户端和服务器之间建立的持久连接,连接建立后,双方可连续进行多次数据传输。
如何查看会话保持字符串?
- 使用浏览器时,点击F12查看响应头中的Set-Cookie字段。
- 使用命令行时,运行curl -v命令查看响应头中的Set-Cookie字段。
七层监听器如何配置重写Cookie的会话保持?