- 网络带宽因素
- 带宽挤占:
- DDoS 攻击会向目标服务器发送海量的流量。这些恶意流量如同洪水般占据网络带宽。流媒体服务正常运行需要一定的带宽来传输数据,比如常见的标清视频流可能需要 1 – 2Mbps 带宽,高清视频流可能需要 5 – 10Mbps 带宽。
- 当 DDoS 攻击流量占用了大部分的带宽后,用于流媒体服务传输的带宽就变得极为有限。例如,一个流媒体服务器接入带宽为 100Mbps,正常情况下可以支持 10 个高清视频流同时播放。但遭受 DDoS 攻击后,80Mbps 带宽被攻击流量占用,只剩下 20Mbps,此时可能只能支持 2 – 3 个高清视频流正常播放,其余用户就会因带宽不足而出现卡顿。
- 网络拥塞与丢包:
- 由于攻击流量导致网络拥塞,流媒体数据包在传输过程中容易出现丢包现象。流媒体数据是由大量的数据包按照特定顺序和时间间隔组成的。
- 以视频流为例,当网络拥塞时,部分数据包可能会丢失或者延迟很久才到达用户端。对于视频播放来说,丢失一定比例的数据包(如超过 5%)就会导致画面无法正常显示,出现卡顿、花屏甚至无法播放的情况。就像一个拼图游戏,缺少了关键的几块拼图(数据包),就无法完整地呈现画面。
- 带宽挤占:
- 服务器资源因素
- CPU 过载:
- 在 DDoS 攻击期间,服务器的 CPU 要处理大量恶意请求。同时,流媒体服务本身也需要 CPU 进行数据处理,如视频的编码、解码和转码等操作。
- 例如,在正常情况下,服务器 CPU 可以轻松处理流媒体数据,保证视频每秒 30 帧的帧率。但在遭受 DDoS 攻击时,CPU 忙于处理攻击请求,可能只能保证每秒 10 – 15 帧的帧率,导致视频播放速度变慢、画面不连贯,出现卡顿现象。这就好比一个人原本可以同时做两件事,但突然增加了大量额外任务,导致原本的工作效率大幅下降。
- 内存资源紧张:
- 服务器内存是存储临时数据的关键资源。对于流媒体服务,内存用于缓存视频数据,以加快数据的读取和播放速度。
- 大量的攻击请求会占用服务器内存,导致用于缓存流媒体数据的内存空间减少。例如,正常情况下服务器内存可以缓存 10 分钟的视频数据,方便用户快速拖动进度条进行播放。但在 DDoS 攻击下,内存被攻击相关的数据占用,只能缓存 1 – 2 分钟的视频数据,当用户拖动进度条或者播放新的视频片段时,服务器需要从磁盘等存储设备中读取数据,而磁盘读取速度比内存慢得多,这就会导致视频播放出现卡顿。
- CPU 过载:
- 服务质量保障机制失效因素
- 负载均衡紊乱:
- 正常情况下,流媒体服务采用负载均衡系统将用户请求分配到多个服务器,以实现资源的合理利用。但在 DDoS 攻击下,负载均衡系统可能会出现问题。
- 例如,负载均衡器可能会错误地将大量攻击流量和正常用户流量都分配到已经过载的服务器上,而不是均匀地分配到各个服务器。这会导致部分服务器承受巨大的压力,无法正常处理流媒体服务,从而出现卡顿现象。
- 优先级混乱:
- 流媒体服务通常会为不同类型的用户请求和数据设置优先级。例如,正在播放的视频流的优先级高于视频预加载请求的优先级。
- 然而,在 DDoS 攻击环境下,大量的攻击流量会扰乱这种优先级设置。服务器可能无法区分高优先级的流媒体播放请求和攻击请求,导致流媒体播放请求不能及时得到处理,进而出现卡顿。
- 负载均衡紊乱: