システム系論文輪講会3 @2014/12/06 
Reading: 
[Fastpass: A Centralized “Zero- 
Queue” Datacenter Network] 
@SIGCOMM’14 , Jonathan Perry et al. 
 
ὀ㔘䛾䛺䛔ᅗ⾲䛿ཎㄽᩥ䠈Ⓨ⾲䝇䝷䜲䝗䜘䜚ᘬ⏝
Summary 
• ┠ⓗ 
– east-­‐west 
traffic䛾ప㐜ᘏ/㧗฼⏝⋡໬ 
• ᡭἲ 
– 䜶䞁䝗䝜䞊䝗䛾䝟䜿䝑䝖㏦ฟ䝍䜲䝭䞁䜾䠈㏦ฟඛ䝟䝇䜢Arbiter 
䛷㞟୰ⓗ䛻ไᚚ䛩䜛䛣䛸䛷䠈䝇䜲䝑䝏䛾䜻䝳䞊䜲䞁䜾䛻䜘䜛 
㐜ᘏ䜢䝊䝻䛻 
• ⤖ᯝ 
– RTT䛜3056us-­‐230us䛻ᨵၿ䠈䝇䝹䞊䝥䝑䝖䛿1.6%䛾䜏పୗ 
• Bulk 
Transfer䝅䝘䝸䜸 
– 8-­‐core 
allocator䛷2.21TB/sec䜢ᐇ⌧ 
– TCP䛾෌㏦ᅇᩘ䛜1/4䛻 
㻞
Growth in East-West Traffic 
Ref. 
hFps://www.youtube.com/watch?v=mLEawo6OzFM 
㻟
䛭䜒䛭䜒㐜ᘏ䛸䛿䠛 
㻠 
100us 
ᒆ䛔䛯᫬้ 
– 
㏦䛳䛯᫬้
䛭䜒䛭䜒㐜ᘏ䛸䛿䠛 
㻡 
200us(+100us) 
䝖䝷䝣䜱䝑䜽䛜ከ㔜໬䛥䜜䛯ሙྜ䛻㐜ᘏ䛜ቑຍ
䜒䛳䛸ヲ䛧䛟ぢ䛶䜏䜛䛸 
㻢 
200us(+100us) 
䝇䜲䝑䝏ୖ䛾Queue䛜㐜ᘏ䛾୍ᅉ 
Queue䛻䝟䜿䝑䝖䛜⁀䜎䜙䛺䛔䜘䛖䛻䛩䜛䛯䜑䛻䛿䠛
䜒䛳䛸ヲ䛧䛟ぢ䛶䜏䜛䛸 
㻣 
200us(+100us) 
䝇䜲䝑䝏ୖ䛾Queue䛜㐜ᘏ䛾୍ᅉ 
Queue䛻䝟䜿䝑䝖䛜⁀䜎䜙䛺䛔䜘䛖䛻䛩䜛䛯䜑䛻䛿䠛
䜒䛳䛸ヲ䛧䛟ぢ䛶䜏䜛䛸 
㻤 
䝇䜲䝑䝏ୖ䛾Queue䛜㐜ᘏ䛾୍ᅉ 
Queue䛻䝟䜿䝑䝖䛜⁀䜎䜙䛺䛔䜘䛖䛻䛩䜛䛯䜑䛻䛿䠛
䜒䛳䛸ヲ䛧䛟ぢ䛶䜏䜛䛸 
㻥 
䝇䜲䝑䝏ୖ䛾Queue䛜㐜ᘏ䛾୍ᅉ 
Queue䛻䝟䜿䝑䝖䛜⁀䜎䜙䛺䛔䜘䛖䛻䛩䜛䛯䜑䛻䛿䠛
㐜ᘏ䛾ᮏ㉁ⓗ䛺ཎᅉ 
䝟䜿䝑䝖䜢ྠ᫬䛻ฟ䛩䛸Queue䛻ධ䜛 
ฟ䛩䝍䜲䝭䞁䜾䜢䛪䜙䛫䜀ゎỴ䟿 
㻝㻜 
䝇䜲䝑䝏ୖ䛾Queue䛜㐜ᘏ䛾୍ᅉ 
Queue䛻䝟䜿䝑䝖䛜⁀䜎䜙䛺䛔䜘䛖䛻䛩䜛䛯䜑䛻䛿䠛
䝟䜿䝑䝖䜢㏦ಙ䛾ㄪ೵䛸ゝ䛘䜀䠛 
㻝㻝 
䝞䝇䝅䝇䝔䝮䟿䜰䞊䝡䝍䟿 
Ref. 
hFp://www.slideshare.net/pfi/pfi-­‐seminar-­‐20100121
FastPath Arbiter 
㻝㻞 
FastPath䛷䛿”IP䝛䝑䝖䝽䞊䜽”䛻Arbiter䜢ᑟධ䟿 
– 䝟䜿䝑䝖䛾㏦ฟ䝍䜲䝭䞁䜾䠄䝍䜲䝮䝇䝻䝑䝖䠅 
– 䝟䜿䝑䝖䛾㏦ฟ䝟䝇 
䚷䚷䚷 
䜢୰ኸ㞟ᶒⓗ䛻䝁䞁䝖䝻䞊䝹
䛣䛾◊✲䛾䝫䜲䞁䝖 
᪤Ꮡ䛾IP䜲䞁䝣䝷ୖ䛷䠈䝜䞊䝗䛾 
䝟䜿䝑䝖㏦ฟ䝍䜲䝭䞁䜾䜢ྵ䜑䛯ㄪ೵䜢ᐇ⌧
䝟䜿䝑䝖㏦ฟ䜎䛷䛾ὶ䜜 
1. Hostノードがsend()する 
2. FCP ClientがArbiterに問い合わせ送信 
3. Arbiterがタイムスロットを確保し,使用す 
㻝㻠 
るパスを決定,Clientに返答 
4. FCP Clientは指示通りパケットを送信
FastPath Architecture 
㻝㻡
• Timeslot unit = MTU-size Packet / Fastest Link  
• NW全体を大きな1つのスイッチとして見てingress/ 
egressの集合が重複無しなら良い 
 
 
Timeslot Allocation 
㻝㻢 
in out 
in 
out in 
out 
Traffix䛜in/out䜻䝳䞊䜢 
ඹ᭷䛧䛺䛔OK䛺౛
Src/Dstの最大マッチング問題 
– 任意のFairness Measureもここで優先度を付けることで実現可能 
– rearrangeably non blocking性を持つNWを前提としている  
 
 
 
Timeslot Allocation 
㻝㻣
Path Selection 
㻝㻤 
同じリンクを2つのPacketが利用してはいけない 
- マッチング後の2部グラフのエッジ彩色問題
Implementation 
• Arbiter䛾ྛ䝇䝔䞊䝆䜢䝟䜲䝥䝷䜲䞁ᐇ⾜ 
㻝㻥
Implementation 
• Clock 
Synchroniza`on 
– IEEE 
1588 
Precision 
Time 
Protocol 
• Sub-­‐microsecond䜎䛷ືᶵྍ⬟ 
• ClientTiming 
– High-­‐resolu`on 
`mers(hr`mers)䜢฼⏝ 
• Microsecond-­‐scale䛷ྠᮇྍ⬟ 
㻞㻜
Evaluation 
㻞㻝
Evaluation 
㻞㻞
䜎䛸䜑 
㻞㻟 
• 䝇䜲䝑䝏䛻䛚䛡䜛”Zero-­‐Queuing”䜢䠈䝩䝇䝖 
䝜䞊䝗䛾䝟䜿䝑䝖㏦ฟ䝍䜲䝭䞁䜾䜎䛷䜢⟶⌮ 
䛧䛶ᐇ⌧ 
• ⤖ᯝ䠈኱ᖜ䛺RTT䛾๐ῶ䜢ᐇ⌧ 
• goto 
hFps://github.com/yonch/fastpass
⚾ឤ 
• Google䛾Spannerⓗ䛺኱⫹䛺Ⓨ᝿ 
– 䝜䞊䝗䛜᏶඲䛻ྠᮇ䛧䛶ືస䛩䜜䜀㍽㍵䛺䜣䛶䛭䜒䛭䜒㉳䛣䜙䛺䛔 
– IP䝛䝑䝖䝽䞊䜽䛾ཎ๎䜢↓ど䛧䛶䜔䛳䛶䜏䛯䛸䛔䛖䜲䝯䞊䝆 
• ୍᪉䠈ᐇ⏝ᛶ䛻䛿␲ၥ䜒䠛 
– 䝟䜿䝑䝖㏦ฟഃ䛷⤖ᒁᚅ䛴䛾䛷䛒䜜䜀䠈Queue䜢䝩䝇䝖䝜䞊䝗䛻⛣ 
ື䛧䛯䛰䛡䛻䜒ぢ䛘䜛 
– Bulk 
Transfer䛾Replica`on⣔䝖䝷䝣䜱䝑䜽䛸䠈interac`ve䛺䜰䝥䝸䜿䞊 
䝅䝵䞁䝖䝷䝣䜱䝑䜽䛾ศ㞳┠ⓗ䛺䜙౑䛘䜛䠛 
– ௒䛾IP䝛䝑䝖䝽䞊䜽䛾㍽㍵ไᚚᶵ⬟䜢ୖᡭ䛟฼⏝䛧䛯ሙྜ䛸䛾ẚ㍑ 
䛜ᚲせ 
㻞㻠

Fastpass-システム系論文輪講会3