第八次课堂记录 | 青训营笔记

182 阅读2分钟

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

打开抖音互联网会发生什么? -- 探索计算机网络

image.png

刷抖音网络如何交互?

1.1 网络接入

先让手机能访问抖音服务器

网络接入--互联网 image.png

网络接入--路由

image.png 往同网段如何发包?

改变目标IP的MAC,改成目标IP查到的MAC地址。

路由是否一定对称?

不一定

路由工作在哪一层协议?

工作在IP网络层。

那路由改的是IP地址吗?

路由改MAC,找到发包口。

image.png

网络接入--ARP协议

image.png

  • 逻辑同网段才能发送ARP
  • ARP请求广播,ARP应答单播
  • 免费ARP?ARP代理 广播不能跨网段

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

网络接入--IP协议

唯一表示,互联网通用,抖音服务端一个,抖音客户端一个

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

不能

IPv4不够用,一般怎么解决的?

用IPv6进行扩充,使用NAT

网络接入--NAT

NAT改变IP+端口 image.png

1.2 网络传输

网络传输--数据包

image.png

包的封装

image.png

网络传输--数据包发送

image.png

网络传输--先请求DNS

image.png

递归DNS/迭代DNS

网络传输--UDP image.png

想发什么包,就分配一个UDP头,把payload塞到数据里。

如何用好UDP?

  • 由于MTU的存在,我们要做好分片
  • 怎么避免分片,怎么知道没丢包?
  • 怎么权衡传输效率和质量?

网络传输--三次握手TCP

Tcodump + Wireshark

image.png

网络传输--TCP传输

timewait要等两个MSL

image.png

网络传输--HTTP/HTTP1.1

HTTP在TCP的基础上多加了一层规矩,能够让用户更清晰

HTTP1.1的优化

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

HTTPS在解密出来还是HTTP