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

121 阅读5分钟

刷抖音网络是怎么交互的?

怎么让我的手机能访问抖音服务器

网络接入-互联网

网络接入-路由

交换机-同网段发包交互?

找MAC地址就行,SDN(Software Defined Network)软件定义网络

路由一定是对称的吗?

不一定,去的时候可以是一条路,回来的时候另一条路

路由是工作在哪一层协议?

ip层 传输层

路由改的是IP地址吗?

源IP地址和⽬标IP地址在传输过程中是不会变化的,只有源 MAC 地址和⽬标 MAC ⼀直在变化。

动态路由BGP/OSPF?

blog.csdn.net/weixin_4391…

blog.csdn.net/weixin_4391…

网络接入-ARP协议

逻辑同网段才能发送ARP?

blog.csdn.net/weixin_4391…

ARP请求广播,应答单播

ARP的本质是寻求下一跳的MAC,而不是请求目标地址

非同网段需要借助路由器的帮助

免费ARP?

免费告诉别人我的MAC地址

免费 ARP(Gratuitous ARP)包是一种特殊的 ARP 请求,它并非期待得到 IP 对应的 MAC 地址

免费 ARP 报文与普通 ARP 请求报文的区别在于报文中的目标 IP 地址。普通 ARP 报文中的目标 IP 地址是其他主机的 IP 地址;而免费 ARP 的请求报文中,目标 IP 地址是自己的 IP 地址。

zhuanlan.zhihu.com/p/371088648

ARP代理? 代理 ARP 是一种技术,即一台主机(通常是[路由器])应答要发送至另一台机器的 ARP 请求。"通过"伪造"其身份,需要说明的是这里的"伪造"是一种善意的欺骗,路由器负责将信息包路由到“真实”目的地。"代理 ARP 可以帮助子网中的计算机到达远程子网,而无需配置路由或默认网关。

网络接入-IP协议

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

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

www.cnblogs.com/botoo/p/779…

  • IP地址是网络层使用的地址,它是分层次等级的。
  • 硬件地址是数据链路层使用的地址(如MAC地址),它是平面式的。

随着网络中的设备逐渐增多,人们发现路由(也就是寻找数据包从发送方到接收方的路径)变得越来越困难了

MAC 地址就像自己的 ID 号,而 IP 地址就像带着邮政编码的住址,各有各的用途。所以我们需要两个地址,缺一不可。

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

NAT、IPv6

网络接入-NAT

家里路由器是怎样上网的?

(Network Address Translation)网络地址转换

私有地址(10 172 192)--公用地址

该网络中的主机使用私用IP地址.当私有网络内部主机和外部Internet通信时,网关(gateway)路由器负责将私有IP地址转换为全球IP地址

多个内网客户端访问同一个目标地址+端口,源端口恰好一样,冲突了?

NAPT

(Network Address and Port Translation)

把端口也变了

网络打通了怎么下载视频

网络传输-数据包

网络传输-数据包发送

网络传输-先请求DNS

blog.csdn.net/weixin_4391…

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

由于过于简单,用好很难

发包每次发多少?怎么避免切片?

MTU(数据帧最大传输单元)有限制,∴要分片

怎么知道没有丢包?

怎么权衡传输效率与质量?

网络传输-TCP三次握手

拔了网线,连接会断吗?

看具体情况。

假设TCP有探活,假设刚好在一次探活后拔了网线,不会立马断开

你真的了解TCP三次握手?

最大报文段长度(MSS)是TCP协议的一个选项,用于在TCP连接建立时,收发双方协商通信时每一个报文段所能承载的最大数据长度(不包括文段头)。为了避免IP切片

区分MSS与MTU

最大报文段长度(MSS)与最大传输单元(Maximum Transmission Unit, MTU)均是协议用来定义最大长度的。不同的是,MTU应用于OSI模型的第二层数据链接层,并无具体针对的协议。MTU限制了数据链接层上可以传输的数据包的大小,也因此限制了上层(网络层)的数据包大小。例如,如果已知某局域网的MTU为1500字节,则在网络层的因特网协议(Internet Protocol, IP)里,最大的数据包大小为1500字节(包含IP协议头)。MSS针对的是OSI模型里第四层传输层的TCP协议。因为MSS应用的协议在数据链接层的上层,MSS会受到MTU的限制

TCP的有限状态机

为什么老问你Timewait?

等待足够的时间以确保远程 TCP 收到其连接终止请求的确认。

blog.csdn.net/mystyle_/ar…

丢包怎么办?

blog.csdn.net/weixin_4391…

滑动窗口

流量控制/拥塞控制

blog.csdn.net/weixin_4391…

blog.csdn.net/weixin_4391…

网络传输-HTTP/HTTP1.1

为什么不直接用TCP通信?

TCP内容太多了,编程麻烦

其实HTTP只是多加了一层规矩,HTTP仍然是TCP,只是这个规矩让用户更清晰

www.cnblogs.com/heluan/p/86…

zhuanlan.zhihu.com/p/266578819

网络传输-HTTPS

网络传输-SSL/TLS握手

www.jianshu.com/p/6811285c5…

网络架构怎么给抖音提质?

网络提速-HTTP2.0

网络提速-如何理解多路复用/stream

单个TCP链接传输

实际上stream还是串行的

如果TCP丢包怎么办?

TCP队头阻塞,TCP有个option,可以指定ack的序列号,指定需要重传的

网络提速-QUIC/HTTP3.0

TCP or UDP?

改TCP动一发而牵全身

Kernel or Userspace?

0RTT

弱网优势

网络提速-数据中心分布

核心机房

POP接入

边缘机房

汇聚机房

网络提速-同运营商访问

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

Content Delivery Network,即内容分发网络

网络提速-动态API路径优化(DSA)

网络稳定-容灾概念

故障发生

故障感知

自动切换

服务恢复

专线

外网容灾

云控?

web页面不能嵌入SDK、用户权限、

网络稳定-故障排查

故障明确

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

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

故障体现在哪里?

访问其他目标是否正常?

是否是修改导致的异常?

故障止损

先止损再排查

分段排查