前言
本节课介绍了一些网络接入的问题,并且进行了一些动手实践。
1.网络接入
1.介绍
- 字节接入框架
2.使用域名系统
-
用域名系统替换hosts文件
-
域名空间
- 域名空间被组织成树形结构
- 域名空间通过划分zone的方式进行分层授权管理
- 全球公共域名空间仅对应一棵树
- 根域名服务器:查询起点
- 域名组成格式:[a-zA-ZO-9_-],以点划分label
-
域名备案:防止在网上从事非法的网站经营活动,打击不良互联网信息的传播,一般在云厂商处即可进行实名认证并备案
3.自建DNS服务器
-
DNS查询流程
-
常见的开源 DNS:bind、nsd、knot、coredns
4.接入HTTPS协议
-
常见的加密算法
- 对称加密:一份密钥;非对称加密:公钥与私钥
-
SSL通信过程
-
证书链:证书摘要信息、数字签名、上级CA公钥
5.接入全站加速
- 问题:极大的流失了大部分的用户群体,NPS 留存率数据不乐观。响应慢、卡顿
- 解决方案
- 源站容量问题:增加后端机器扩容;静态内容,使用静态加速缓存
- 网络传输问题:动态加速DCDN
- 全站加速问题:静态加速+动态加速
- 静态加速CDN优势:
- 解决服务器端的“第一公里”问题
- 缓解甚至消除了不同运营商之间互联的瓶颈造成的影响
- 减轻了各省的出口带宽压力
- 优化了网上热点内容的分布
6.4层负载均衡
-
定义:基于IP+端口,利用某种算法将报文转发给某个后端服务器,实现负载均衡地落到后端服务器上
-
功能:
- 解耦 vip 和 rs
- NAT
- 防攻击:syn proxy
-
特点:
- 大部分都是通过dpdk技术实现,技术成熟,大厂都在用
- 纯用户态协议栈,消除协议栈瓶颈
- 无缓存,零拷贝,大页内存
- 仅针对4层数据包转发,小包转发可达到限速,可承受高 cps
-
常见调度算法原理
- RR轮询:Round Robin,将所有的请求平均分配给每个真实服务器RS
- 加权RR轮询:给每个后端服务器一个权值比例,将请求按照比例
- 分配最小连接:把新的连接请求分配到当前连接数最小的服务器
- 五元组hash:根据sip、sport、 proto、dip、dport对静态分配的服务器做散列取模
- 缺点:当后端某个服务器故障后,所有连接都重新计算,影响整个hash 环
- 一致性hash:只影响故障服务器上的连接session,其余服务器上的连接不受影响