打开抖音互联网会发生什么 | 青训营笔记

201 阅读3分钟

这是我参与「第三届青训营-后端场」笔记创作活动的的第六篇笔记

打开抖音互联网会发生什么
网络接入:
路由不一定对称
路由是工作在网络层和运输层的
路由改的不是ip地址是mac地址
动态路由BGP、OSPF

ARP协议:逻辑的同网段才能发送ARP
ARP请求广播,ARP应答单播
免费ARP::一是用于IP地址冲突检测,二是用于更新ARP地址缓存表中的原有记录
ARP代理:中间设备
ARP本质上是查找下一跳的MAC,不是请求目标地址

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

mac地址不能代替IP地址:向下兼容,地址统一

IPV4不够用:NAT
内网用户通过NAT改源地址,连接外网的用唯一的地址
NAT改的是ip地址+端口

视频下载:数据包
网络传输-先请求DNS
避免分片:效率
MTU对于发送端发送的每份IP数据报来说,其标识字段都包含一个值。该值在数据报分片时被复制到每个片中。标志字段用其中一个比特来表示“更多的片”。除了最后一片外,其他每个组成数据报的片都要把该比特置1。片偏移字段指的是该片偏移原始数据报开始处的位置。另外,当数据报被分片后,每个片的总长度值要改为该片的长度值。
最后,标志字段中有一个比特称作“不分片”位。如果将这一比特置1,IP将不对数据报进行分片。相反把数据报丢弃并发送一个ICMP差错报文给起始端。
当IP数据报被分片后,每一片都成为一个分组,具有自己的IP首部,并在选择路由时与其他分组独立。这样,当数据报的这些片到达目的端时有可能会失序,但是在IP首部中有足够的信息让接收端能正确组装这些数据报片。

TCP连接:
拔了网线,连接会断吗?看是否有TCP保护
MMS避免分片
三次握手怎么确定MSS?
TCP option字段非常重要的字段。TCPdump+wireshark

sequence number:表示的是我方(发送方)这边,这个packet的数据部分的第一位应该在整个data stream中所在的位置
acknowledge number:表示的是期望对方(接受方)的下一次sequence number是多少。注意,SYN/FIN的传输虽然没有data,但是会让下一次传输的packet seq增加1,但是ack的传输,不会让下一次的传输packet加一

Timewait:连接正常关闭,
丢包怎么办?
滑动窗口,流量控制和拥塞控制
http/http1.1
HTTP连接 = 以HTTP协议为通信协议的TCP连接
http协议规定了网络通信的规则
HTTP1.1优化:长连接,部分传输,host,缓存

https:加密
ssl/TLS握手
对称加密和非对称加密
CA

网络提速-http2.0
多路复用

单个TCP链接传输
丢包:队头阻塞,SACK

网络提速-QUIC/HTTP3.0
优化UDP
用户态:userspace
0 Rtt
弱网优势

路径优化
CDN
网络提速-数据中心分布
同运营商访问
静态资源(图片视频)路径优化(CDN)
动态API(播放/评论接口)路径优化(DSA)

网络稳定-容灾概念
故障发生,故障感知,自动切换,服务恢复

没有容灾的故障怎么查?
故障明确,故障止损,分段排查
先止损在排查
如何止损