|
編輯推薦: |
遨游海域的座头鲸、成群结队的角马、群聚飞翔的火烈鸟……构成了一幅幅壮美的生存画面,迁徙是自然界令人叹为观止的景观。
数智时代的“上云”与自然界的“迁徙”何其相似啊!
2022年伊始,我们博文视点的编辑团队联合阿里云技术团队,为广大IT技术人员奉上“阿里云数字新基建系列”。这个系列包括5本书,题材涉及Kubernetes、混合云架构、云数据库、CDN原理与流媒体技术、云服务器运维(Windows),囊括了领先的云技术知识与阿里云技术团队独到的实践经验,是国内IT技术图书中又一套重磅作品!
关于本书《CDN技术架构》:
(1)由阿里云郝冲等技术大牛领衔撰写,作者郝冲为阿里云资深技术专家,沉浸于CDN行业近20年,见证了中国CDN从初级硬件搭建到全面云化的多次技术变革。本书多位技术作者都拥有非常资深的技术背景,这是本书内容的保障。
(2)详解CDN技术架构,分享流量调度、节点软件、网络传输及运营支撑系统关键技术;详解4大场景化实践,详解CDN命中率提升、应用市场下载加速、超低延时互动课堂及点播加速、动态加速实践。干货多,读得懂!
|
內容簡介: |
内容分发网络(Content Delivery Network,CDN)已经发展成为互联网的基础设施,为App 及Web 站点等提供各类静态/ 动态内容、实时流媒体加速及网络安全防护等功能。
本书共有14 章,可划分为4 大部分:第1 部分(第1 章)介绍CDN 核心产品的技术原理、应用场景及CDN 的发展历史;第2 部分(第2~6 章)重点介绍CDN 核心子系统的技术原理及工程实现,内容涵盖调度系统、节点系统、网络传输及运营支撑系统;第3 部分(第7~12 章)介绍CDN 的4 大核心产品的架构设计、功能详解及产品优化实践,具体产品包括视频点播、实时流媒体、动态加速及安全防护;第4 部分(第13~14 章)介绍阿里云CDN 的技术演进策略,包括CDN 自身核心技术的升级换代及CDN 向边缘计算平台的演进策略等。
本书可作为高等院校研究生、本科生学习CDN 整体架构及核心技术的学习材料,也可供对CDN 产品和技术感兴趣的工程技术人员、研究人员阅读与参考,亦可作为CDN 产品的现有及潜在用户了解产品技术实现细节的参考手册。
|
關於作者: |
本书作者来自阿里云CDN团队,很多技术专家都有十年以上的CDN技术经历,这是本书内容这么扎实的实力保障。
·郝 冲·阿里云资深技术专家,沉浸于CDN行业近20年,见证了中国CDN从初级硬件搭建到全面云化的多次技术变革。
·李 克·阿里云资深技术专家,深度参与了阿里云CDN商业化转型、边缘云中台体系的建设,有十余年的CDN、视频云领域的行业经验。
·卢 日·阿里云视频直播和短延时直播RTS负责人,专注实时高性能流媒体传输和云边组网技术十余年,致力于推动实时流媒体网络技术向下一代GRTN架构演进。
·曾福华·阿里云边缘云调度系统负责人,长期专注于超大规模调度系统架构,超10年CDN行业经验,深度参与阿里云CDN、边缘云商业化进程。
·赵 伟·阿里云智能边缘云安全负责人,主要负责边缘云的安全、NAT 网关、负载均衡等。
·丁玉杰·阿里云高级技术专家,全站加速DCDN产品负责人。具有多年CDN节点和选路系统研发、架构经验。
·白常明·阿里云高级技术专家,负责边缘计算的技术架构、5G与标准、创新业务等工作。具有丰富的通信行业经验、云计算技术研发经验和ICT技术融合研发与架构经验。
·邓光青·阿里云高级技术专家,工学博士,擅长数据驱动的大规模分布式系统性能优化,负责CDN服务质量调优,推动调优模式从工具化、白屏化向数据化、智能化演进。
·陈 晨·阿里云技术专家,多年CDN边缘传输网络性能调优经验,现主要负责阿里云CDN边缘网络传输性能优化及传输数据体系搭建工作,持续提升阿里云CDN高性能、高稳定性的服务能力。
·杨 超·阿里云技术专家,10年以上音视频编解码、流媒体及CDN开发经验,负责边缘云通用加速相关开发工作,专注于提升CDN的高性能和高可用性。
·肖文奇·阿里云CDN产品解决方案架构师,8年CDN行业经验,主导过多个现象级应用的高可用架构方案设计与实现,现聚焦于CDN技术在各领域的实践与应用。
·李志明·阿里云技术专家,有多年CDN行业及架构经验,负责CDN云原生技术架构核心技术方案的设计和落地,在高性能缓存服务器、负载均衡服务器Nginx、服务网格、Kubernetes等多个技术领域有丰富的经验。
|
目錄:
|
第1章 引言
1.1 CDN概述
1.2 CDN的基本原理
1.2.1 动态内容的加速原理
1.2.2 静态内容的加速原理
1.2.3 安全防护的原理
1.3 CDN的应用场景
1.3.1 动态内容加速
1.3.2 静态内容加速
1.3.3 安全防护
1.4 CDN的技术定位
1.5 CDN的发展历史
第2章 CDN系统架构概述
2.1 CDN整体框架
2.2 CDN核心子系统
2.2.1 调度系统
2.2.2 节点软件
2.2.3 网络传输
2.2.4 运营支撑
第3章 调度系统
3.1 资源规划
3.1.1 要解决什么问题
3.1.2 画像
3.1.3 业务与资源匹配
3.1.4 小结
3.2 全局负载均衡
3.2.1 典型的调度形式
3.2.2 调度分层
3.2.3 调度策略与典型算法
3.3 调度服务器
3.3.1 高性能DNS服务器
3.3.2 IP调度服务器
3.4 全局感知系统
3.4.1 全局感知系统概述
3.4.2 CDN服务可用性感知
3.4.3 实时覆盖质量感知
第4章 CDN节点系统
4.1 概述
4.2 多级缓存架构
4.2.1 阿里云CDN节点系统的发展背景
4.2.2 阿里云CDN的经典二层架构
4.2.3 阿里云CDN的多级缓存架构
4.2.4 节点系统的未来展望
4.3 接入域网关组件
4.3.1 HTTP/2优化
4.3.2 HTTPS优化
4.4 回源域组件
4.5 CDN缓存系统
4.5.1 高性能缓存服务器
4.5.2 高性能存储引擎
4.5.3 分级缓存架构
4.5.4 缓存的未来发展
第5章 CDN网络优化
5.1 网络传输优化的挑战
5.2 网络拥塞控制原理
5.3 网络丢包恢复原理
5.3.1 概述
5.3.2 丢包恢复算法介绍
5.3.3 阿里云CDN业务场景下的优化方向
5.4?网络旁路干扰技术
5.4.1?背景介绍
5.4.2?干扰设备部署方式
5.4.3?工作原理简介
5.4.4?旁路干扰真实案例详解
5.4.5?干扰识别技术概述
5.4.6?干扰溯源技术概述
第6章 CDN运营支撑
6.1 管控系统
6.1.1 用户管理
6.1.2 域名管理
6.1.3 CDN控制台
6.2 配置管理系统
6.2.1 用户配置
6.2.2 软件配置
6.3 内容管理系统
6.3.1 基础能力
6.3.2 内容刷新
6.3.3 内容预热
6.3.4 内容封禁
6.4 监控系统
6.4.1 CDN边缘监控的特点
6.4.2 智能化监控
6.5 日志系统
6.5.1 日志使用场景和挑战
6.5.2 报表
6.5.3 常见数据场景和交付
6.5.4 边缘分析
第7章 CDN产品概述
7.1 视频点播简述
7.2 视频直播简述
7.3 全站加速简述
7.4 安全防护简述
7.4.1 线上服务的安全风险
7.4.2 CDN 多层次纵深防护
第8章 CDN视频点播
8.1 视频点播应用场景
8.1.1 视频拖曳
8.1.2 动态转封装
8.1.3 试看试听
8.1.4 听视频
8.1.5 视频分析
8.1.6 图片处理
8.2 视频点播关键技术
8.2.1 自适应限速
8.2.2 全网限流
8.2.3 点播防盗链技术
8.2.4 点播封禁技术
第9章 CDN实时流媒体
9.1 实时流媒体基础原理
9.1.1 RTMP
9.1.2 HTTP-FLV
9.1.3 HLS
9.2 实时流媒体应用场景
9.2.1 实时音视频
9.2.2 视频直播
9.3 实时流媒体系统架构
9.3.1 流媒体节点
9.3.2 流媒体大脑
9.4 实时流媒体创新技术
9.4.1 QUIC
9.4.2 GRTN
第10章 CDN动态加速
10.1 动态加速原理
10.2 动态加速应用场景
10.3 动态加速系统架构
10.4 动态加速选路核心技术
10.4.1 网络探测
10.4.2 智能选路
10.4.3 流量规划
10.5 四层动态加速核心技术
10.5.1 目标场景和形态
10.5.2 四层加速架构
10.5.3 高可用、负载均衡
10.5.4 TCP相关优化
10.5.5 QUIC和路由隧道
10.5.6 端口映射、VIP复用技术
10.6 七层动态加速核心技术
10.6.1 负载均衡
10.6.2 长链接管道
10.6.3 回源策略
10.6.4 WebSocket
第11章 CDN安全防护
11.1 安全防护概述
11.2 安全架构
11.3 四层负载均衡及DDoS防护
11.3.1 简介
11.3.2 ELB 四层请求分发模型
11.3.3 DDoS 攻击检测与处理
11.4 应用层安全
11.4.1 应用层安全概述
11.4.2 精准访问控制
11.4.3 区域封禁
11.4.4 IP频次控制
11.4.5 机器流量管理
第12章 CDN场景化实践
12.1 CDN命中率优化实践
12.1.1 缓存命中率的基本概念
12.1.2 缓存机制
12.1.3 优化CDN缓存命中率的措施
12.1.4 总结
12.2 移动App——应用市场下载加速实践
12.3 在线教育——超低延时互动课堂及点播加速实践
12.3.1 点播方案
12.3.2 通用直播方案
12.3.3 小班课直播方案
12.4 新闻社交——动态加速实践
第13章 CDN未来技术演进
13.1 演进背景
13.2 未来技术架构
13.3 调度未来架构
13.4 中台技术
13.5 边缘可编程
第14章 CDN与边缘计算 P335
14.1 边缘计算技术架构
14.2 vCDN方案与实践
14.2.1 CDN传统建设方案 P352
14.2.2 ENS如何帮助客户解决问题 P353
14.2.3 小结 P355
|
內容試閱:
|
内容分发网络(Content Delivery Network,CDN)是构建在现有互联网基础架构之上的覆盖网(Overlay Network),一方面通过边缘节点缓存减轻骨干网的拥塞情况,另一方面通过边缘节点协同提升网络的抗攻击能力,从而为互联网上的各类App 和Web 站点等提供动/ 静态内容加速、实时流媒体加速以及网络安全防护等功能。在2020 年,国内各大、中、小学因疫情原因线下停课,转而采用线上课堂的形式继续开展教学活动,CDN 平台凭借其遍布全球的边缘加速节点、全面的内容加速能力以及智能的流量实时调度系统,成功支撑了在线课堂网络流量几十倍地迅猛增长,助力实现了“停课不停学”的目标,创造了巨大的社会价值。
阿里云CDN 起源于自有电商业务的图片加速,经过阿里巴巴集团历届“双11”高并发场景的不断打磨,其技术能力显著提升、网络规模快速扩大,逐渐发展为节点遍布全球的大型CDN 平台。当前,CDN 已经融入我们日常生活的方方面面,不管是网上购物、观看短视频或直播、听在线音乐,还是浏览网页,后台往往由CDN 在提供加速及安全能力支撑。我在服务海内外客户及进行人才招聘的过程中,发现不管是CDN 的客户、合作伙伴,还是希望进入CDN 行业工作的应届毕业生或社招技术人员,对CDN 的体系架构、核心模块、产品功能、应用场景等往往存在着或多或少的疑问或者理解不透彻的地方。其原因大致可分为两个方面:一方面是因为CDN 作为一个大规模的分布式系统,其技术非常复杂,不易理解;另一方面是因为市面上能体系化阐述CDN 前沿技术、实践的书籍太少,学习资料缺乏。
为此,阿里云CDN 团队组织了几十名一线技术和产品专家合力撰写了《CDN 技术架构》这本书,从CDN 的基础技术、核心产品、实践场景及未来边缘计算平台演进四个方面总结了阿里云CDN 在过去十余年中取得的技术和产品化进展,希望能增进大家对于CDN 技术和产品的理解,通过交流和分享共同推动CDN 行业的发展与技术进步。
本书共包含14 章,具体可划分为4 个部分:第1 部分由第1 章组成,简要介绍了CDN 核心产品(动态加速、静态加速及安全防护等)的技术原理及应用场景,以及CDN 在互联网架构中的定位和CDN 的发展历史;第2 部分由第2~6 章组成,主要从调度系统、节点系统、网络传输以及运营支撑4 个方面对CDN 平台的核心技术进行介绍;第3 部分由第7~12 章组成,详细阐述了CDN 四大产品(视频点播、实时流媒体、动态加速以及安全防护)的产品架构设计及功能详解,以及CDN 产品的场景化优化实践;第4 部分由第13~14 章组成,主要阐述阿里云CDN 平台的技术演进策略,包括CDN 核心技术的演进方向,以及CDN 向边缘计算平台的演进策略等。
各章内容的具体介绍如下。
第1 章引言
本章主要围绕“什么是CDN”“CDN 能做什么”“互联网为什么需要CDN”这三个问题展开论述。CDN 是构建在已有互联网基础设施之上的大规模分布式“覆盖网”,为各类互联网数字内容(包括视频、文本及实时流媒体等)提供动/ 静态加速及安全防护能力。在互联网中心侧,CDN 通过减少数字内容的冗余传输来缓解骨干网的拥塞;在互联网边缘侧,CDN 通过数字内容前置及就近调度来加速边缘下载速度。本章首先简述CDN 三大核心能力(动态加速、静态加速及安全防护能力)的工作原理及应用场景,然后介绍CDN 在互联网技术架构中的定位及作用,后简述了CDN 的发展历史。
第2 章 CDN 系统架构概述
本章介绍CDN 系统的整体技术架构及四大核心子系统,包括流量调度系统、节点软件系统、网络传输系统及运营支撑系统。调度系统主要解决海量用户与CDN 节点的匹配问题,既加速边缘下载速度又保持CDN 节点在各个维度(带宽、CPU、存储、I/O 等)的负载均衡。节点软件系统主要解决互联网业务的高并发接入及产品功能的灵活实现问题,提供高性能、高可靠的CDN 服务。网络传输系统主要解决互联网内容的快速分发问题,通过优化TCP/IP 协议栈来提升下载速度。运营支撑系统为CDN 平台提供计费结算、运营分析、客户服务及决策支持等功能。
第3 章调度系统
本章详细介绍阿里云调度系统的关键组件与核心算法。首先介绍资源规划模块,该模块通过资源画像与业务画像来实现资源与业务的适配。接着介绍负载均衡模块,其通过DNS、HTTPDNS 以及302 跳转三种流量牵引方式实现节点资源(带宽、CPU、存储和I/O 等)的综合负载均衡。然后,对DNS 和IP 调度服务器的系统架构和关键模块进行详细介绍。后,对全局感知系统进行阐述,包括CDN 服务可用性及实时覆盖质量的感知。
第4 章 CDN 节点系统
本章详细阐述CDN 节点系统的核心软件,包括接入域网关及缓存系统等。首先阐述了节点架构的演进过程,当前阿里云CDN 采用多级缓存架构,具备异构资源接入及流量网状转发能力,能灵活、高效地支撑业务功能定制、成本与质量优化等。接下来阐述接入域网关组件,从HTTP/2、HTTPS 等方面进行详细介绍。然后介绍回源域组件。后重点介绍CDN 缓存系统,包括架构设计及高性能软、硬件一体化缓存算法的设计与实现。
第5 章 CDN 网络优化
本章介绍TCP/IP 传输层优化技术。首先介绍网络传输优化面临的挑战,然后以BBR 算法为代表阐述网络拥塞控制的原理,接着以DUPACK 、SACK、FACK 等技术为例介绍网络丢包恢复原理,后介绍网络旁路干扰技术,包括旁路干扰设备的部署、干扰原理及具体案例等。
第6 章 CDN 运营支撑
本章介绍CDN 运营支撑系统,包括管控系统、配置管理系统、内容管理系统、监控系统、日志系统等。首先从用户管理、域名管理及CDN 控制台三个方面介绍管控系统;接着从用户配置、软件配置两个方面介绍配置管理系统;然后从基础能力、内容刷新、内容预热、内容封禁四个方面介绍内容管理系统;接下来是监控系统介绍,重点介绍智能化监控技术方案;后是日志系统,介绍日志系统面临的挑战、常见数据交付场景及边缘分析加速等。
第7 章 CDN 产品概述
本章主要对CDN 的四大核心产品进行概述。7.1 节介绍视频点播产品功能及发展历史;7.2 节从直播发展的四个阶段、直播全链路七大环节及五种主流的流媒体协议等不同角度对CDN 直播产品进行详细介绍;7.3 节介绍动态加速产品的业务场景及产品能力;7.4 节从常见的安全风险类型及CDN 安全防护体系构建两大角度对安全防护产品进行简要介绍。
第8 章 CDN 视频点播
本章详细介绍CDN 点播产品。首先介绍视频点播的应用场景,包括视频拖曳、动态转封装、试看试听、听视频等;接着介绍视频点播的核心技术,包括自适应限速、节点限流、点播防盗链、点播封禁等。
第9 章 CDN 实时流媒体
本章详细介绍实时流媒体产品功能、应用场景及技术架构。首先介绍三大主流实时流媒体协议——RTMP 、HTTP-FLV 、HLS ;接着介绍实时流媒体的典型应用场景,包括实时音视频(例如连麦、云会议)及视频直播(包括P2P 直播);然后对实时流媒体的系统架构进行详细介绍,包括传统的三层树状结构及的网状结构;后介绍实时流媒体创新技术,包括QUIC 传输协议、GRTN 新一代传输网等。
第10 章 CDN 动态加速
本章详细介绍动态加速这款产品的加速原理、应用场景及技术架构。首先从传输组网、协议栈优化的角度介绍动态加速的原理;接下来介绍动态加速的典型使用场景,包括电商、社交、政企、游戏、金融等;然后介绍动态加速的技术架构,紧接着阐述动态加速的核心技术,包括网络探测、智能选路、流量规划等;后,分别对四层加速、七层加速的软件组件进行详细介绍。
第11 章 CDN 安全防护
本章详细介绍安全防护产品的技术架构、使用场景。首先从中心安全大脑、边缘智能防御两方面介绍安全防护整体架构;然后介绍四层负载均衡及DDoS 防护,四层负载均衡设备具备SYN Flood 防御、分片攻击防御、会话检测、畸形报文检测及协议合规检测等安全功能,DDoS 防护的核心技术包括边缘加速、智能调度、大流量防御;后介绍应用层安全,涵盖精准访问控制、区域封禁、IP 频次控制、机器流量管理等。
第12 章 CDN 场景化实践
本章主要介绍典型的CDN 场景化实践案例。12.1 节介绍CDN 命中率优化实践,对共享缓存、刷新和预热、分片缓存及调度流量收敛等各类命中率优化手段进行详细介绍。12.2 节介绍应用市场下载加速实践,对资源池化与逻辑隔离、302 调度、HTTPDNS 调度、一致性Hash(哈希)回源等手段进行详细介绍。12.3 节介绍超低延时互动课堂及点播加速实践,基于教学视频点播、大班课/ 公开课直播及小班课实时音视频直接交流的场景进行详细阐述。12.4 节介绍动态加速实践,针对新闻媒体类客户具有的传播广、用户杂、实时性要求高、突发性高的特点介绍动态加速的优化措施。
第13 章 CDN 未来技术演进
本章主要介绍CDN 核心技术的演进方向。5G 高带宽、低延迟边缘接入技术的发展对CDN 提出了更高的要求,为此,首先从传统架构存在的问题、技术架构选型和云原生CDN 架构设计三个方面介绍节点技术架构的演进思路,接着分别从调度系统、中台技术及边缘可编程三个方面对CDN 的核心技术演进进行详细介绍。
第14 章 CDN 与边缘计算
本章探讨边缘计算的内涵与外延,以及CDN 与边缘计算的融合进展。14.1 节详细讨论边缘计算的具体定义、技术架构、核心能力、运维管控、核心技术及应用场景等;14.2 节介绍阿里云CDN 基于ENS(Edge Node Service,边缘节点服务)构建vCDN 节点的技术方案及工程实践,vCDN 节点与物理节点相比,具有弹性扩/ 缩容、快速交付等优点。
本书是阿里云CDN 团队集体创作的结晶,鉴于本书作者水平有限,书中错误和疏漏之处在所难免,恳请广大读者批评指正。
本书作者代表 邓光青
|
|