menu

数据包从发送端系统到接收端系统经过的通信链路和数据包交换的顺序称为通过网络的路由或路径。

PON(passive optical networks) ,无源光纤网络

电路交换(Circuit Switching),相当于需要预约的餐馆,用餐需要提前预约,到达后无需等待座位 包交换(Packet),用餐不需预约,到达后需要等待空桌

ISP 之间如何互相链接,低级 ISP 链接高级 ISP,最高级的 ISP 称为一级骨干网(tier-1 isp),高级 ISP 网络中供低级 ISP 接入的一组路由器称为 PoPs(Points of presence),低级 ISP 链接多个高级 ISP 称为 multi-homing。 同级 ISP 之间相互链接称为 Peer,多个ISP 互相 Peer 的节点称为 IXP。另外还有 Content Provider ,比如谷歌的 Content Provider 网络,之间的设备跨越全球,独立于互联网相互链接,同时向外提供互联网服务,也有接入各个层级的 ISP。

延迟 节点通过路由发送数据包到另外一个节点时的延迟称为节点延迟(nodal delay),由四个延迟构成:

  1. 处理延迟(Processing),主要是路由检查数据包的标头并确定将数据包定向到何处,数量级微秒
  2. 排队延迟(Queuing),排队等待发送到链路,数量级微秒到毫秒
  3. 传输延迟(Transmission),基于分组转发的网络中,等到数据包接受完整才能转发(存储转发?),等于数据包大小除与传输速度,微秒到毫秒。
  4. 传播延迟(Propagation),比特在链路中传播的时间,大概就是光速。

排队延迟是最有趣与复杂的部分。

a 包每秒,L 包大小,R 传输速率。 La/R traffic intensity, TI 大于 1 时,队列会无限增长。

但队列满了,路由就会丢弃新的数据包。

吞吐(throughput),

作者将因特网分为 5 层

  1. 应用层,包称为 message
  2. 传输层,包称为 segment
  3. 网络层,包称为 datagrams,源和目标之间的一系列路由器来路由 datagram。
  4. 链路层,包称为 frame,将 frame 从一个节点传播到另一个节点, Ethernet, WiFi 等
  5. 物理层,包视为独立的位,

packet sniffer

  1. packet capture library,复制链路层的帧 (libpcap)
  2. packet analyzer

Application

传输层提供给应用层的四个维度:

  1. 可靠,TCP
  2. 吞吐,未能保证,实际可用
  3. 时效,未能保证,实际可用
  4. 安全,TLS(TLS 是在应用层实现的)

HTTP

stateless protocol

RTT(round-trip time)

HOST,预留给代理使用

HTTP/2

HOL(Head of Line) blocking,持久链接的 http,所有请求用同一个链接,出现大对象传输阻塞了小对象传输,增加 UPD(user-perceived delay)。

HTTP/1.1 会并发多个 TCP 链接来解决 HOL。

HTTP/2 减少打开单个页面并发多个 TCP 链接的数量。

用 framing mechanism 来减少 UPD。大概的机制是每个对象都被分为大小相等数量不等的帧组,然后遍历每个帧组每次传输一个帧。

EMail

SMTP,邮件服务器之间的协议。只允许传输 7-bit ASCII,用于推送邮件 IMAP,客户端从邮件服务器获取邮件的协议

DNS

BIND

P2P

  • Peer 优先获取最稀有的 chunk,
  • Peer 优先向传输率最高的 Peers 发送数据。最高的四个,称为 unchoked
  • Peer 每 30s 会随机选择一个 Peer 发送数据,称为 optimistically unchoked

DHT

Video Streaming & CDN2

Transport Layer

keyboard_arrow_up