网络交互,架构,提速,优化 | 青训营

139 阅读3分钟

刷抖音网络是怎么交互的

1.1 网络接入-互联网

物理连通 image.png

1.2网络接入-路由

逻辑连通

image.png

往同网段如何发包/交互?

改目标IP的map,改为查到的目标IP的map

跨网段的接入

image.png

路由一定是对称的吗?

并不一定是对称的

image.png

路由是工作在那一层的协议

工作在ip层

那路由是改的IP地址吗?

路由改的是map地址,找到发包口

路由发包流程

image.png

1.3 网络接入-ARP协议

逻辑同网段才能发送ARP

ARP请求广播,ARP应答单播

**免费ARP(提前判断IP有冲突) ARP代理 image.png

ARP本质上是查找下一跳的MAC,不是请求目标地址

1.4网络接入-IP协议

唯一标识,互联网通用。抖音客户端一个,抖音服务端一个

MAC地址不能代替IP地址吗?

二层协议,不只有MAC协议

IPV4不够用,一般怎么解决?

1.5网络接入-NAT

image.png

NAT改IP加端口

1.6网络传输-数据包

image.png

数据包的发送

image.png

1.7网络传输-先请求DNS

image.png

image.png

1.8网络传输-DNS的传输协议UDP

UDP本身相对简单

image.png

发什么包,就分配一个UDP的头,把payload里面塞数据发出去

1.9网络传输-TCP三次握手

什么是TCP连接?

image.png

拔了网线,TCP连接会断吗?

TCP连接是一个状态,会断开,在一定场景不会断开

TCP传输

image.png

image.png

1.10网络传输-HTTP/HTTP1.1

其实HTTP只是加了一层规矩。HTTP依然是TCP,只是这个规矩让用户更清晰/更简洁

HTTP1.1有哪些优化

长连接,部分传输,HOST,缓存

1.11网络传输-HTTPS

传输中被插入小网站怎么办?

HTTPS解密出来依然是HTTP

做一次加密 image.png

image.png

如何给抖音提质

2.1网络提速-HTTP2.0

image.png

2.2网络提速-怎末理解多路复用/stream

tcp丢包,后面的包要一直等待

image.png

2.3网络提速-QUIC/HTTP3.0

image.png

2.4网络提速-数据中心分布

image.png

2.5网络提速-同运营商访问

image.png

跨网质量差,丢包概率高

2.6 网络提速-静态资源路径优化(CDN)

image.png

本质概念是缓存,每个边缘机房会做一些缓存

2.7网络提速-动态API(播放/评论接口)路径优化(DSA)

image.png

2.8网络稳定-容灾概念

故障发生-故障感知-自动切换-服务恢复

2.8.1网络容灾的具体案例一

image.png

2.8.2网络容灾的具体案例二

image.png

2.8.3网络容灾的具体案例三

image.png

2.8.4网络容灾的具体案例四

image.png

2.9网络稳定-故障排查

故障排查-故障止损-分段排查

2.10网络稳定-故障明确

出现什么故障?-沟通是前提

什么业务?什么接口故障?

故障体现在哪里?

访问其他目标是否正常?

是否是修改导致的结果?

2.11网路稳定-故障止损

先止损再排查:用户体验第一;对公司收入的影响是按照分钟甚至秒来计算

如何止损:组件没有容灾,但是系统有没有?降级

中间链路排查:服务器跟客户端确保没有问题;中间网络设备有没有问题?(交换机,路由器,网关LB);旁路的DNS有没有问题

2.13网络稳定-网络故障排查常用命令

dig查询DNS问题

ping/telent/nmap查询三层/四层连通性

Traceroute排查中间链路

iptabels

tcpdump

2.13.1网络故障排查案例一

image.png

2.13.2网络故障排查案例二

image.png

2.13.3网络故障排查案例三

image.png

2.13.4网络故障排查案例四

image.png

2.14网络稳定-故障预防很重要

监控报警-故障演练/预案-故障降级/止损

image.png

image.png