Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
naist colloquium-B 2
Search
Tomoki Sugiura
September 15, 2021
0
230
naist colloquium-B 2
Tomoki Sugiura
September 15, 2021
Tweet
Share
More Decks by Tomoki Sugiura
See All by Tomoki Sugiura
CiliumによるKubernetes Network Policyの実現 CNDT2021
shanpu
0
1.3k
ricc-20210826
shanpu
0
540
IOT53
shanpu
0
94
RICC-PIoT Workshop 2021
shanpu
0
650
ricc-nii-2020
shanpu
0
130
Cloud Native Kansai #05 LT4
shanpu
1
1k
gcpug-kyoto#2-LT1
shanpu
0
690
kubernetes-seminar
shanpu
0
190
KansaiLT2
shanpu
0
270
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Fireside Chat
paigeccino
41
3.7k
The Invisible Side of Design
smashingmag
302
51k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Making Projects Easy
brettharned
120
6.4k
Music & Morning Musume
bryan
46
6.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
It's Worth the Effort
3n
187
28k
Side Projects
sachag
455
43k
How STYLIGHT went responsive
nonsquared
100
5.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The World Runs on Bad Software
bkeepers
PRO
72
11k
Transcript
AcarɿSRv6Λ༻͍ͨΞϓϦέʔγϣϯ ͷ௨৴ಛੑΛߟྀͨ͠௨৴ܦ࿏ܾఆख๏ NAIST Colloquium B Sep. 2021 /"*45ใՊֶྖҬ ιϑτΣΞઃܭֶݚڀࣨ.ਿӜஐج
˓ ΞϓϦέʔγϣϯͷ௨৴ಛੑʹΑͬͯ࠷దͳܦ࿏ҟͳΔ ˔ ΦϯϥΠϯήʔϜˠϨΠςϯγʢԆʣॏࢹ ˔ ϑΝΠϧ௨৴ˠεϧʔϓοτʢసૹσʔλྔʣॏࢹ ˓ طଘख๏ʢFH#(1ɼ041'ʣ ˔ ΞϓϦέʔγϣϯ͝ͱʹܦ࿏ίετΛมߋ͢Δ͜ͱ͕Ͱ͖ͳ͍
˔ ଞΑΓίετ͕͍ܦ࿏ʹτϥϑΟοΫ͕ूத͢Δ ݚڀഎܠ 2
˓ ΞϓϦέʔγϣϯͷ௨৴ಛੑΛߟྀͨ͠ܦ࿏ܾఆͷ࣮ݱ ˔ ϨΠςϯγ ˔ εϧʔϓοτ ݚڀత 3
ؔ࿈ݚڀ 4 ˓ 0QFO'MPXΛ༻͍ͨઌߦݚڀ<> ˔ ͦΕͧΕͷϑϩʔΛΞϓϦέʔγϣϯͷ௨৴ಛੑʹԠͯ͡ઃఆ ˓ 0QFO'MPXͷܽ ܦ࿏ઃఆɼมߋʹ͔͔Δૢ࡞͕εΠονʹԠͯ͡૿Ճ ΞϓϦέʔγϣϯʹԠͯ͡ϑϩʔςʔϒϧ͕ංେԽ
<>16DIVQBMB FUBMl"QQMJDBUJPOBXBSFOFUXPSL/FUXPSLSPVUFNBOBHFNFOUVTJOH4%/CBTFEPOBQQMJDBUJ DIBSBDUFSJTUJDT z$4*5SBOTBDUJPOTPO*$5 WPM OP QQ ϑϩʔςʔϒϧ ͷංେԽ ͦΕͧΕͷεΠονͷ มߋө
ఏҊख๏ 5 ˓ ιʔεϧʔςΟϯάΛ׆༻ͨ͠ࢄܕܦ࿏ܾఆ͓Αͼ ੍ޚख๏ ˔ ૹ৴ݩϊʔυͰܦ࿏Λܾఆ ˔ ιʔεϧʔςΟϯάʹ4FHNFOU3PVUJOHͷҰछͰ͋Δ 43WΛ׆༻
0QFO'MPX ఏҊख๏
˓ 4FHNFOU3PVUJOHʢ43Wʣ ˔ ೖޱϧʔλͰύέοτʹ*%ϦετΛ༩ ˔ ్தϊʔυϦετͷ*%ΛݟͯసૹΛߦ͏ ˓ 43WͰ*%ʹ*1WΛ༻ ˔ *1Wͷ֦ுϔομʢ43)ʣΛ༻
Segment Routing 6
SRv6ʢ1/2ʣ 7 ˓ εΠον"Ͱ*1WͷϦετΛϔομʹ༩ ˓ ͦΕͧΕͷεΠον#ʙ%ʹϦετͷߋ৽ɼసૹॲཧͱ *1WͷରԠؔΛ͋Β͔͡Ίઃఆ &OEɿ%TUͱ43)Λॻ͖ม͑Δ &OE%9ɿ43)Λ֎͠ࢦఆͷ *1WOFYUIPQૹ৴
˓ εΠον#ʙ%ϔομʹ༩͞ΕͨϦετΛݟͯ ͦΕͧΕసૹΛߦ͏ SRv6ʢ2/2ʣ 8 &OEɿ%TUͱ43)Λॻ͖ม͑Δ &OE%9ɿ43)Λ֎͠ࢦఆͷ *1WOFYUIPQૹ৴
ఏҊख๏ͷར 9 ܦ࿏มߋ࣌ͷίετ͕͍ ˔ ೖޱϧʔλͰ༩͢Δ֦ுϔομͷ*%ϦετͷΈΛߋ৽ ϑϩʔςʔϒϧ͕ංେԽ͠ͳ͍ ˔ ܦ࿏தϊʔυʹ༧Ί4*%ͱͦΕʹඥͮ͘ॲཧΛܾఆ͓ͯ͘͠ ˔ ΞϓϦέʔγϣϯ͕૿Ճͯ͠ܦ࿏தϊʔυʹରͯ͠ϑϩʔ͝
ͱͷςʔϒϧૢ࡞ෆཁ Ϧετͷ มߋͷΈ ϑϩʔ͝ͱͷ ઃఆมߋ͕ෆཁ
˓ ͭͷఔͰॲཧΛ࣮ߦ ఏҊγεςϜʢAcarʣͷΞϓϩʔν 10
AcarͷΞʔΩςΫνϟ 11 ఏҊγεςϜ֎
AcarͷΞʔΩςΫνϟ 12 ࣮Օॴ ϝτϦΫεऩू ܦ࿏ܾఆ ఏҊγεςϜ֎
AcarͷΞʔΩςΫνϟ 13 ϝτϦΫεͷૹ৴ ࣮Օॴ ϝτϦΫεऩू ܦ࿏ܾఆ ఏҊγεςϜ֎
AcarͷΞʔΩςΫνϟ 14 ϝτϦΫεͷૹ৴ ܦ࿏ܾఆʹඞཁͳ ใͷૹ৴ ࣮Օॴ ϝτϦΫεऩू ܦ࿏ܾఆ ఏҊγεςϜ֎
AcarͷΞʔΩςΫνϟ 15 ϝτϦΫεͷૹ৴ ܦ࿏ܾఆʹඞཁͳ ใͷૹ৴ ࢉग़ͨ͠ܦ࿏ ʢ4*%Ϧετʣ ͷૹ৴ ࣮Օॴ ϝτϦΫεऩू
ܦ࿏ܾఆ ఏҊγεςϜ֎
AcarͷΞʔΩςΫνϟ 16 ϝτϦΫεͷૹ৴ ܦ࿏ܾఆʹඞཁͳ ใͷૹ৴ ࢉग़ͨ͠ܦ࿏ ʢ4*%Ϧετʣ ͷૹ৴ 4*%Ϧετͱ"QQ ͷඥ͚ใͷૹ৴
࣮Օॴ ϝτϦΫεऩू ܦ࿏ܾఆ ఏҊγεςϜ֎
AcarͷΞʔΩςΫνϟ 17 ϝτϦΫεͷૹ৴ ܦ࿏ܾఆʹඞཁͳ ใͷૹ৴ ࢉग़ͨ͠ܦ࿏ ʢ4*%Ϧετʣ ͷૹ৴ 4*%Ϧετͱ"QQ ͷඥ͚ใͷૹ৴
ઃఆͷద༻ ࣮Օॴ ϝτϦΫεऩू ܦ࿏ܾఆ ఏҊγεςϜ֎
ܦ࿏ܾఆํ๏ʹ͍ͭͯ 18 ˓ ߴଳҬ෯Λফඅ͢ΔΞϓϦέʔγϣϯͷΈΛର ˔ ԆॏࢹͳΞϓϦέʔγϣϯܦ࿏ܭࢉɼ43WͷΤϯΩϟο ϓɾσΩϟοϓͷΦʔόϔουʹΑΔӨڹΛड͚͍ͨ͢Ί ˓ ܦ࿏ܾఆΞϧΰϦζϜ ˔
ΞϓϦέʔγϣϯͷ࠷ཁٻଳҬ෯Λຬͨ͢ܦ࿏Λྻڍ ˗ ࠷ཁٻଳҬ෯ࣄલʹఆٛ ˔ ީิͷܦ࿏ͷ͏ͪɼϗοϓ͕࠷খ͍͞ͷΛબ ܦ࿏ (CQTϗοϓ ܦ࿏ .CQTϗοϓ ܦ࿏ .CQTϗοϓ .CQT Ҏ্ ܦ࿏ (CQTϗοϓ ܦ࿏ .CQTϗοϓ ϗοϓ ࠷খ ܦ࿏ .CQTϗοϓ
˓ W4QIFSF্ʹߏஙɼ-FBG4QJOFؒ.CQTʹ੍ݶ ˓ ֤Ϛγϯಉ࢜041'ʹΑΓܦ࿏Λࠂ ˓ ֤"QQMJDBUJPO)PTUʹ%PDLFSίϯςφͱͯ͠DMJFOUͱ TFSWFSΛอ༗ ධՁ ࣮ݧڥ 19
˓ )PTU͔Β)PTUɼ)PTU௨৴ ˔ ֤.CQT ɼ.CQT ˔ .CTͷ௨৴ܦ࿏ͷΈ"DBSͰ࠷దԽ ˔ ؒ௨৴Λ࣮ߦ
˓ &$.1ͱ"DBSͰ εϧʔϓοτൺֱ ධՁ ࣮ݧ1 20 4XJUDI"HFOU "DBS$PSF
˓ &$.1 ˔ ௨৴ܦ࿏ͷภΓ ˔ 5P4QJOFɿ.CQT ˔ 5P4QJOFɿ.CQT ˓ "DBS
˔ ඵൃৼͨ͠ͷͪఆৗঢ়ଶ ˔ 5P4QJOFɿ.CQT ˔ 5P4QJOFɿ.CQT ˓ ߹ܭεϧʔϓοτ͕"DBS͕ &$.1ͱൺֱͯ͠ഒ ධՁ ࣮ݧ1 ݁Ռ 21 0 50 100 150 200 250 300 Time [s] 0 100 200 300 400 500 Throughput [Mbps] ECMP Leaf1 to Spine1 ECMP Leaf1 to Spine2 Acar Leaf1 to Spine1 Acar Leaf1 to Spine2
˓ ֤)PTUؒͰ௨৴Λൃੜ ˔ ֤.CQT ɼ.CQT ˔ ؒͷ௨৴Λճ࣮ߦ ˓ &$.1ͱ"DBSͰ
εϧʔϓοτൺֱ ධՁ ࣮ݧ2 22
˓ ֤ࢼߦʹ͓͚ΔϗετຖΫϥΠΞϯ τͷ߹ܭ࣮ޮεϧʔϓοτͷฏۉ ˓ ͓͓Αͦͷࢼߦʹ͓͍ͯ"DBSͷํ͕ &$.1ͱൺֱͯ͠ߴ͍εϧʔϓοτ ධՁ ࣮ݧ2 ݁Ռ 23
ECMP Acar 450 500 550 600 650 700 750 800 850 Throughput [Mbps]
·ͱΊɾࠓޙͷ՝ 24 ˓ ΞϓϦέʔγϣϯͷ௨৴ಛੑΛߟྀͨ͠ܦ࿏ܾఆख๏ ˔ 43WΛ༻͍ͨࢄܕܦ࿏੍ޚ ˗ 0QFO'MPXʢதԝूݖܕʣͷܦ࿏มߋίετɼ సૹςʔϒϧංେԽͷ՝Λղܾ ˔
&$.1ͱൺֱͯ͠εϧʔϓοτ্͕͢Δ͜ͱΛ֬ೝ ˓ ࠓޙͷ՝ ˔ ܦ࿏ܾఆΞϧΰϦζϜͷमਖ਼ͱվળ ˔ ΑΓ࣮ڥʹ͍ۙ௨৴γφϦΦͰͷγεςϜධՁ