Page 459 - 《软件学报》2025年第7期
P. 459

3380                                                       软件学报  2025  年第  36  卷第  7  期


                    当打开视频时, 客户端首先请求获取            MPD  文件, 并对其进行解析, 进而获取该视频的各种比特率资源的地址
                 和描述信息, 然后根据自身的网络状况, 选取合适的视频片段进行下载. 在视频播放的同时, DASH                           客户端可使用
                 ABR  算法, 根据网络状态、应用状态和客户端缓冲区状态动态地切换不同比特率的视频片段, 从而实现自适应码
                 率播放.
                    虽然自适应流媒体技术提高了视频用户的体验, 但其将视频片段顺序传输的特点也为研究者从流量中通过侧
                 信道技术分析出视频内容提供了可能.

                 2.2   HTTP/2  协议
                    由于  HTTP  自适应流媒体技术均基于         HTTP  协议构建, HTTP   协议作为视频数据传输的载体, 其协议规范和
                 传输机制直接影响着加密视频流的传输特征, 与加密视频识别技术密切相关. HTTP                         协议最初是专门被设计用于
                 在网站服务器和客户浏览器之间传输             Web  应用数据的协议, 由于其应用简单方便, 易于部署, 且              HTTP  流量通常
                 不会被各类防火墙过滤, HTTP        协议已经不局限于传输         Web  应用数据, 而是广泛用于传输自适应流媒体、各类
                 APP  数据等. 随着基于    HTTP  协议的应用越来越多, 为了提高网络传输性能, 优化用户服务体验, HTTP                   协议一直
                 不断进行改进, 目前主要被使用的          HTTP  版本包括   HTTP/1.1, HTTP/2, QUIC 和 HTTP/3.
                    HTTP/1.1  协议自  1999  年发布以来, 在很长一段时间内都是使用最广泛的              HTTP  协议版本. 然而, 随着互联网
                 的飞速发展, HTTP/1.1   因串行通信、队头阻塞和头部冗余等性能问题逐渐不能满足现代                       Web  应用对高并发和大
                 数据量传输的需求. 为了解决这些问题, 互联网工程任务组                 IETF (Internet engineering task force) 在  2015  年  5  月发
                 布了  HTTP/2  协议. 作为  HTTP/1.1  协议的全新升级版本, 它从根本上解决了          HTTP/1.1  的性能瓶颈, 提供了更加快
                 速、安全、高效的网络通信能力, 并迅速获得了全球众多浏览器和服务器的支持. 截至                            2023  年  12  月, HTTP/2  在
                 全球互联网网站中的使用率已达到了             37.6%  [32] , 在  TOP 10 000  的网站中使用率更是高达  62.3%. 几乎在同一时期,
                 Google 于  2015  年提出了基于  UDP  的  QUIC  协议, 旨在克服  TCP  协议的队头阻塞、连接延迟和连接迁移等固有
                 问题, 以实现更快的连接建立和无缝的连接迁移. 基于                 QUIC  的  HTTP/3  协议, 最初被称为  HTTP over QUIC, 于
                 2022  年  6  月完成标准化, 旨在进一步提升网络性能和用户体验, 目前已经初步在全球范围内推广应用.
                    当前, 互联网中呈现出       HTTP/1.1、HTTP/2、QUIC  和  HTTP/3  协议并存的现象. HTTP/2    正逐步取代老旧的
                 HTTP/1.1, 成为应用最广泛的     HTTP  协议版本. 与此同时, 以谷歌为代表的服务提供商已经开始在其服务中部署
                 HTTP/3  协议. 然而, 有研究指出    [33] , 在网络服务质量不佳的情况下, HTTP/3      的传输效率不如      HTTP/2. 因此, 服务
                 提供商选择同时支持多种协议, 并根据用户的地理位置和网络环境来选择使用                         HTTP/2 或  HTTP/3. 例如, Facebook
                 在网络状况良好时优先使用          HTTP/3  进行视频传输, 而在网络延迟较大的路径上则切换至                HTTP/2  协议. 因此, 展
                 望未来, 可以预见     HTTP/1.1  的使用将逐渐减少, 而    HTTP/2  和  HTTP/3  将在很长一段时间内在互联网中并存使用.
                 本文研究使用     HTTP/2  协议传输的加密视频内容的识别问题.
                    HTTP/2  并非  HTTP/1.1  的简单升级版, 而是使用了多路复用技术, 替代了           HTTP/1.1  的传输模式. HTTP/2  引入
                 了二进制分帧、多路复用、首部压缩、服务器推送和流的优先级控制等功能                           [34] , 从根本上解决了  HTTP/1.1  的诸
                 多问题, 大幅提升了传输数据的性能. 其中, 二进制分帧是                HTTP/2  所有性能提升的核心. 它在不改变原有            HTTP
                 语义的基础上重新定义了数据的封装和传输, 并将帧作为最小的数据单元, 所有的帧都采用二进制编码, HTTP/2
                 消息由各种数据帧共同构成. 如图           2  所示, HTTP/2  协议将  HTTP  首部信息通过   HPACK  技术压缩后封装为一个
                 HEADERS  帧进行单独传输, 并将      HTTP  负载数据封装为若干个        DATA  帧, 此外还有  WINDOW_UPDATE    帧等控
                 制帧. 在  HTTP/2  中, 每个请求或响应使用不同的流         (默认至多    100  条流). 通过使用二进制分帧, 给每个帧分配一
                 个流标识符, 使各个帧可以交错传输, 以支持同时发送多个独立请求, 当接收到流的所有帧时, 接收方可以将帧重
                 新组合成完整的消息. 这使得         HTTP/2  可以实现多路复用, 在使用单条        TCP  连接且不发生阻塞的情况下, 可以将多
                 个请求和响应并行处理, 以此大幅减少网络延迟, 提高网络资源的利用率.
                    HTTP/2  协议虽然在正式规范       RFC 7540 [35] 中并没有强制使用   HTTPS  加密传输, 但是在实际的使用过程中,
   454   455   456   457   458   459   460   461   462   463   464