这节课程能学到的啥?
一、接入问题引入
1、经典问题引入
输入域名到网页加载出来,经历了哪些过程?
- 域名解析
- TCP建立连接
- SSL握手
- ……
DNS -> TCP -> TLS -> HTTP请求
2、字节接入架构
《》
二、企业接入升级打怪之路
1、使用域名系统
(1)Host管理
- 流量和负载
- 名称冲突
- 时效性
(2)使用域名系统
《》
解决Host管理的问题
关于域名空间:
顶级域gTLD:gov、edu、com、mil、org等
域名报文格式:
《》
(3)域名的购买
各大云厂商可以购买
(4)如何开放外部用户访问
《》
2、自建DNS服务器
(1)问题背景
- 效率低下
- 容易被攻击
- 容易出问题
- 扩大公司自己的影响力
(2)DNS查询过程
(3)DNS记录类型
(4)权威DNS系统架构
Q:企业需要那种DNS?
A:权威DNS
常见的开源DNS:bind、nsd、knot、coredns
- DNS Query
- DNS response
- DNS Update
- DNS Notify
- DNS XFR
3、接入HTTPS协议
(1)问题背景
- 出现白页
- 返回403
- 页面弹出广告
HTTP明文传输,所以使用HTTPS
(2)对称加密和非对称加密
- 对称加密:一份密钥
《》
- 非对称加密:公钥和私钥
《》
(3)SSL通信过程
- client random
- server random
- premaster secret
- 加密算法协商
得到密钥:session key
(4)证书链
client收到证书会进行验证:
- 颁发机构是否可信
- 与实际访问域名是否一致
- 检查数字签名是否一致
- 检查证书的有效期
- 检查证书的撤回状态
证书链验证签名
证书摘要信息 - 数字签名 - 上级CA公钥
(5)使用HTTPS
《》
4、接入全站加速
(1)问题背景
- 源站容量低
- 报文经过网络设备越多,丢包、劫持、mtu
- 自主选路网络链路长
(2)解决方案
源站容量
后端机器扩容、静态加速缓存
网络传输
动态加速DCDN
全站加速:静态加速 + 动态加速
(3)静态加速CDN
缓存静态文件
- 缓解运营商之间互联的瓶颈造成的影响
- 减轻了各省出口带宽的压力
- 优化网络热点内容分布
(4)动态加速DCDN
针对 POST 等非静态请求等不能在用户边缘缓存的业务,基于智能选路技术,从众多回源线路中择优选择一条线路进行传输
(5)DCDN原理
5、Nginx
(1)反向代理
《》
(2)内部架构
《》
(3)事件驱动模型
异步非阻塞模型、减少OS进程切换
(4)简单调优
《》