Computer Networks · 免费预览
路由器实现
路由器是一种把分组从输入端口转移到输出端口的设备:软件设计在通用处理器下把每个分组都缓冲在主存中,受限于内存带宽和每分组处理速率;硬件设计则把每分组的处理工作交给网络处理单元,后者配备快速静态内存、三元内容可寻址匹配表以及可编程的匹配-动作流水线,可实现太比特每秒的转发速率。每分组数据平面与运行路由协议的后台控制平面之间的清晰分离,正是软件定义网络发展成的全行业架构理念。
1. The Software Switch
The Software Switch
2. Two Planes
Two Planes
3. The Hardware Path
The Hardware Path
4. Software-Defined Networking
Software-Defined Networking
5. The two bottlenecks
What limits a router built from a general-purpose computer with several network interfaces?
6. Small packets
Why must switch designers plan for minimum-size packets rather than average traffic?
7. The planes
A router recomputes its forwarding table after a topology change while continuing to forward packets. Which plane does each activity belong to?
8. The ternary table
What does ternary content-addressable memory give a forwarding pipeline that an ordinary table lookup does not?
9. The pipeline
How does a network processing unit sustain tens of terabits per second when each packet needs several lookups?
10. Bare metal
What changed when high-performance switches became bare-metal commodity hardware?
11. Packet budget
A processor forwards 40 million packets per second and traffic arrives as minimum-size 64-byte packets. About how many gigabits per second of aggregate throughput does that allow?
12. The match table
Which memory technology lets a forwarding pipeline match header patterns containing wildcards in a single step?
13. The pipeline language
Which domain-specific language programs the match-action pipelines of modern network processing units?
14. The faster memory
Bare-metal switches buffer packets in which memory technology, roughly an order of magnitude faster than the dynamic memory of main memory?