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
Segment Routingの利用例と未来
Search
Takeru Hayasaka
October 08, 2018
Programming
2.5k
12
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Segment Routingの利用例と未来
#wakate2018で話したSegment Routingについての紹介スライド
公開版なので自己紹介とちょっとした補足が増えてます(がほとんど本編に変わりはありません)
Takeru Hayasaka
October 08, 2018
More Decks by Takeru Hayasaka
See All by Takeru Hayasaka
XDPerf: A High-Performance Traffic Generator Built with WASM and eBPF
takehaya
0
70
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
10
2.9k
eBPF at Mobile Network Data Plane
takehaya
0
260
Programmable Bandwidth Management with eBPF
takehaya
2
480
eBPF Deep Dive: Architecture and Safety Mechanisms
takehaya
14
3.3k
Perlで始めるeBPF: 自作Loaderの作り方 / Getting started with eBPF in Perl_How to create your own Loader
takehaya
3
4.7k
Exploring XDP: Fundamentals and Real-World Implementations in Mobile Network Data Plane
takehaya
1
5.3k
JANOG53 LT 自作k6 Extension利用した NFVへの負荷計測手法の紹介
takehaya
0
1.2k
Wakamonog13 LT: VPPで始めるHigh Performance BGPルーター
takehaya
4
2.7k
Other Decks in Programming
See All in Programming
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
540
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
200
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.1k
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
210
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
170
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
180
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
1
190
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
870
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
420
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
150
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
370
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
230
Building a Scalable Design System with Sketch
lauravandoore
463
34k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
sira's awesome portfolio website redesign presentation
elsirapls
0
310
Are puppies a ranking factor?
jonoalderson
1
3.7k
Test your architecture with Archunit
thirion
1
2.3k
Producing Creativity
orderedlist
PRO
348
40k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Chasing Engaging Ingredients in Design
codingconduct
0
240
Deep Space Network (abreviated)
tonyrice
0
230
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Transcript
4FHNFOU3PVUJOHͷ ར༻ྫͱະདྷ ૣࡔඩྲྀ !UBLFNJP*0 XBLBUF 1
8IPBNJ w ͔͚ͨ͞Δ !UBLFNJP*0 w ωοτϫʔΫҙຯ JOGPTFD ʹڵຯ͕͋Δ w
͕ੜͰඒຯ͍͓͠ञͷ ҿΈํΛֶͼʹདྷ·ͨ͠ w ࣮ωοτϫʔΫࠓ͔Β ͬͯΔॳ৺ऀͳͷͰͪΐͬͱ ͨ͠αʔϕΠΛ͠ʹདྷͨ !2
త 4FHNFOU3PVUJOHΛ ͳΜͱͳ͘ ཧղͨ͠φͰϠϯάͳएखʹͳΔ !3
ௐࠪ 4
ௐࠪ! #(1041' *(1Λ ͍ͬͯΔ͍ͬͯΔ
ௐࠪ! ΞϯμʔϨΠΦʔόʔϨΠͱ ݴΘΕͯงғؾ͕Θ͔Δ
ௐࠪ! 4FHNFOU3PVUJOHΛ͍ͬͯΔ
ௐࠪ 4FHNFOU3PVUJOH Λʮͬͯʯ͍Δ
4FHNFOU3PVUJOHΛ Α͘͝ଘͷօ͞Μ ΄ͲͷٳܜʹͳΓ·͢ !9
͓ॻ͖ wഎܠࣄͱ4FHNFOU3PVUJOHͱ wجૅࣝ wϢʔεέʔε wඪ४Խಈ wະདྷͱͦͷઌ !10
എܠࣄͱ4FHNFOU3PVUJOHͱ !11
എܠ w ωοτϫʔΫࣄۀऀͷ๊͑ͯΔ w ωοτϫʔΫͱτϥϑΟοΫύλʔϯʑෳࡶͰ ଟ༷ʹͳ͍ͬͯΔɻ w ऩӹΛߴΊΔʹ٬ʹྑ͍αʔϏεΛఏڙ͢Δඞཁ͕ ͋Γɺਫ਼ͷߴ͍τϥϑΟοΫ੍ޚͷχʔζߴ·ͬ ͍ͯΔɻ
!12
ڞ௨ͷ͍ !13
ڞ௨ͷ͍ w2ཧίετΛ૿େͤͣ͞ʹଟ༷ͳαʔϏε Λఏڙ͢ΔʹɺͲ͏͢Ε͍͍ͷ͔ɻ
ڞ௨ͷ͍ w"ܦ࿏Λ໌ࣔతʹࢦఆ੍͠ޚ͢Δ wҰൠʹτϥϑΟοΫΤϯδχΞϦϯάͱΑ ΕΔ w ʢ͔ͳΓڱٛͳදݱײ͋ΔͷͰ͋͘·ͰҰྫͰ͢ʣ
τϥϑΟοΫ ΤϯδχΞϦϯά w௨ৗͷ*1ܦ࿏ใʹैͬͨܦ࿏બͰɺجຊత ʹ࠷ܦ࿏͕બ͞ΕΔɻ w݁Ռɺಛఆܦ࿏ʹτϥϑΟοΫ͕ूத͘͢͠ͳΓɺ αʔϏεͷ༰ʹԠͨ͡ॊೈͳܦ࿏બ͠ ͍ɾɾɾ wଞʹطଘͷϓϩτίϧʹ͕ɾɾɾ
34715&ͷྫ w34715& wطଘͷ3471ʹϥϕϧͱ5&ʢ5SB⒏D &OHJOJFFSJOHʣͷػೳΛରԠ֦ͤͨ͞ுϓϩτί ϧ
34715&ͷྫ wύέοτͷ௨աܦ࿏ͱͳΔτϯωϧΛ࡞͢ΔͨΊɺ ࣄલγάφϦϯά͕ൃੜ͢Δ w֤ϊʔυ͕ܦ࿏ʹؔ͢ΔεςʔτΛอ࣋͢Δ w݁Ռཧ͕ෳࡶʹͳΓɺεέʔϥϏϦςΟͷ੍ ൃੜ࣌ͷରԠͷ͠͞ʹ݁͢Δ
34715&ͷྫ wŨŽŘ w৽װઢμΠΞௐͱ͍͏ਓྗγάφϦϯάΛͨ͠ ͔Βਏ͔ͬͨ wʢิɿXBLBUFͷॳʹ౦৽װઢ͕Ұ ࣌ؒࢭ·ͬͨͷͰࢀՃऀΈΜͳʹӨڹͨ͠ʣ
ղܾࡦ !20
!21
4FHNFOU3PVUJOHͱ w ωοτϫʔΫΛ4FHNFOUͱ͍͏ཁૉΛ༻͍ͯදݱ͠ɺ ͦͷ4FHNFOUΛࢦఆ͢Δ͜ͱʹΑΓύέοτͷసૹΛ ࣮ݱ͢ΔΞʔΩςΫνϟ w *&5'ͷ413*/( 4PVSDF1BDLFU3PVUJOHJO /FUXPSLJOH Ͱࡦఆ͞ΕͯΔ
w ࣮ੜͯ͠पͩͬͨΓ͢Δ !22
ಛ w εςʔτϨε w ػثෛՙɾӡ༻ෛՙܰݮ w *(1 041'*4*4 ͚ͩͰ࣮ݱ w
ίϯτϩʔϧϓϨʔϯͷγϯϓϧԽ w σʔλϓϨʔϯඇґଘ w .1-4·ͨ*1W !23
جૅࣝ !24
4FHNFOUͷछྨ w /PEF4FHNFOU w ಛఆͷϊʔυΛද͢͜ͱ͕Ͱ͖Δ w QSFpY4*%ͱ͔ݴͬͨΓ͢Δ w "EKBDFODZ4FHNFOU w
ϊʔυຖͷྡؔΛࣔ͢ w ୠ͠ยํͣͭͷ w 4FHNFOU*%ʢ4*%ʣ w ͜ΕΒͷ4FHNFOUʹৼΒΕΔݻ ༗ͷ*% /PEF4FHNFOU /PEF4FHNFOU "EKBODFODZ 4FHNFOU SPVUFS SPVUFS 0 "EKBODFODZ 4FHNFOU !25
4FHNFOUΛ ݩʹͨ͠େࡶͳύέοτసૹྫ 0 1 1 2 4FHNFOUʮ̎ʯ ύέοτσʔλ ύέοτͷྲྀΕ /PEF4FHNFOUʮ̎ʯ
Λͬͯ·͢ !26
/PEF4FHNFOU /PEF4*% ͷసૹಈ࡞ 1 4 1 3 0 2 4*%ʮʯ
ύέοτσʔλ /PEF4*%ʮʯ !27
/PEF4FHNFOU /PEF4*% ͷసૹಈ࡞ 1 4 1 3 0 2 4*%ʮʯ
ύέοτσʔλ /PEF4*%ʮʯ *(1ͷTIPSUFTU QBUIʹ͕ͨͬͯ͠ύέοτ సૹΛߦ͏ !28
/PEF4FHNFOU /PEF4*% ͷసૹಈ࡞ 1 4 1 3 0 2 ύέοτσʔλ
/PEF4*%ʮʯ 4*%ʮʯ 4*%ʮʯ 4FHNFOU-JTU 4PVSDF3PVUJOHͷܦ࿏ʹ ԊͬͯฒΒΕͨ4*%ͷϦετ ʢڍಈ·Μ·ɹελοΫ !29
/PEF4FHNFOU /PEF4*% ͷసૹಈ࡞ 1 4 1 3 0 2 ύέοτσʔλ
/PEF4*%ʮʯ 4*%ʮʯ 4FHNFOU-JTU !30
/PEF4FHNFOU /PEF4*% ͷసૹಈ࡞ 1 4 1 3 0 2 ύέοτσʔλ
/PEF4*%ʮʯ /POF 4FHNFOU-JTU !31
/PEF4FHNFOUͷڍಈಛ w ͳͥҠಈ͕εΩοϓͰ͖͔ͨ w /PEF4FHNFOU(MPCBMͳ4FHNFOUͰ͋Δ w ͭ·Γ/PEF4*%ҙͷ43EPNBJOʢͭ·Γ43 ͷྖҬʣͰϢχʔΫͳ w/PEF4*%͕ଘࡏ͢ΔύέοτͲͷϧʔλ͕ड͚औͬ ͯѼઌಉҰϊʔυʢϧʔλʣʹసૹ͞ΕΔ
!32
"EKBDFODZ4FHNFOU "EK4*% ͷసૹಈ࡞ 1 4 1 3 0 2 4*%ʮʯ
ύέοτσʔλ "EK4*% \ ^ !33
"EKBDFODZ4FHNFOU "EK4*% ͷసૹಈ࡞ 1 4 1 3 0 2
"EK4*% \ ^ 4*%ʮʯ 4FHNFOU-JTU ύέοτσʔλ !34
"EKBDFODZ4FHNFOU "EK4*% ͷసૹಈ࡞ 1 4 1 3 0 2
"EK4*% \ ^ /POF 4FHNFOU-JTU ύέοτσʔλ !35
"EKBDFODZ4FHNFOU ͷڍಈಛ w "EKBDFODZ4FHNFOU-PDBM4FHNFOUͳͷͰҟͳ ΔϊʔυͰ͋Εಉ͡"EK4*%Λ༻͢Δ͜ͱ͕Մೳ wٯʹ͍͑ಉ͡"EK4*%͕༩͞ΕͨύέοτͰ͋ͬͯ ड͚औͬͨ࣌ͷѼઌϧʔλຖʹҟͳΔڍಈΛ͢Δ !36
/PEFͱ"EKBDFODZΛΈ߹ Θͤͨసૹಈ࡞ 1 4 1 3 0 2 "EK4*% 4*%ʮʯ
4FHNFOU-JTU ύέοτσʔλ 4*%ʮʯ 4*%ʮʯ !37
/PEFͱ"EKBDFODZΛΈ߹ Θͤͨసૹಈ࡞ 1 4 1 3 0 2 "EK4*% 4*%ʮʯ
4FHNFOU-JTU ύέοτσʔλ 4*%ʮʯ /PEF4*%సૹ !38
/PEFͱ"EKBDFODZΛΈ߹ Θͤͨసૹಈ࡞ 1 4 1 3 0 2 "EK4*% 4*%ʮʯ
4FHNFOU-JTU /PEF4*%సૹ !39
/PEFͱ"EKBDFODZΛΈ߹ Θͤͨసૹಈ࡞ 1 4 1 3 0 2 "EK4*% /POF
4FHNFOU-JTU "EK4*%Λ௨ΔΑ͏ ʹసૹ !40
σʔλϓϨʔϯ w ༻Ͱ͖ΔσʔλϓϨʔϯ.1-4ͱ*1Wͷͭɽ 4FHNFOU-JTUΛ͜ͷೋͭͰදݱ͢Δ͜ͱ͕Ͱ͖Δ w .1-4ϥϕϧελοΫͰදݱ͞ΕΔ w *1W*1W֦ுϔομͰදݱ͞ΕΔ w ࡉ͔͍ڍಈ͕࣌ؒͳͦ͞͏ͳͷͰੋඇޙͰฉ͍͍ͯ
͚ͨͩΕʂ !41
جૅࣝͷ·ͱΊ w /PEF4FHNFOU w ಛఆͷϊʔυΛද͢͜ͱ͕Ͱ͖Δ w "EKBDFODZ4FHNFOU w ϊʔυຖͷྡؔΛࣔ͢ʢୠ͠ยํͣͭͷʣ w
4FHNFOU*%ʢ4*%ʣ w ͜ΕΒͷ4FHNFOUʹৼΒΕΔݻ༗ͷ*% w ͜ΕΒશͯΛΈ߹Θͤͯར༻͕Ͱ͖Δ !42
Ϣʔεέʔε !43
Ϣʔεέʔε w ಛతʹܦ࿏Λࢦఆͨ͠Γ͢ΔͷʹΘΕΔ w αʔϏενΣΠχϯά w ߏ w /7' w
ΞϓϦέʔγϣϯ͝ͱʹ੍ޚ͞ΕͨϧʔςΟϯά w ྫ͑TJNͷFOBCMFʹ͢Δ͔ͳͲͷ"1*ͱ͔ w ͳͲɾɾɾ !44
αʔϏενΣΠχϯά 1 4 1 3 0 2 w 43Λͬͯ'8%1*ͳͲͷαʔϏεϊʔυΛ௨ΔΑ͏ ʹઃఆ͢Δ͜ͱ͕Մೳ
firewallɿ10 !45
%$ͷߏ IUUQTXXXTMJEFTIBSFOFUMJOFDPSQTT !46
ඪ४Խಈ !47
ඪ४Խಈ w *&5'ͷ413*/( 4PVSDF 1BDLFU3PVUJOHJO /FUXPSLJOH Ͱࡦఆ͞ΕͯΔ w ΞΫςΟϒͳυϥϑτ͕ ͋Γ׆ൃ
w ͜ͷத͔ΒҰͭϐοΫΞοϓ͠ ͯݟ·͢ɽ !48
ඪ४Խಈ w ͪͳΈʹͲΕ͘Β͍׆ൃͳͷ͔ͷ΄͔ͱαΠζΛൺֱ IUUQͰ߹ܭIJU 5-4ͰIJU !49
ඪ४Խಈ 43WͰຊਓ͕ٞʹࢀՃͯ͠ ΠχγΞνϒΛ࣋ͬͯΔʂ w ͳͷͰ43Wʹ͍ͭͯͷඪ४Խಈʹ͍ͭͯ΄ Μͷͪΐͬͱ͚ͩগ͠ϐοΫΞοϓ͠·͢ !50
ඪ४Խಈ w ࡢͷESBGUpMTpMTTQSJOHTSWOFUXPSLQSPHSBNNJOH w ʮ֦ுϔολʔʹసૹઌͷࢦఆʢ-PDBUPSʣ͚ͩͰͳ͘ύέοτΛड͚ औͬͨ࣌ͷ"DUJPOʢ'VODUJPOʣ߹Θͤͯࢦఆ͢Δ͜ͱ͕ఆ͍ͯ͠Δʯ w ֦ுϔολʔʹॻ͖ࠐΊΔ4*%͕Ϗοτ͋Δ -PDBUPSʢసૹઌʣ "SHVNFOU
"DUJPOʹର͢Δύϥϝʔλ 'VODUJPO "DUJPO CJU ͪͳΈશͯՄมͷ߲ !51
ඪ४Խಈ w ࠓͷESBGUpMTpMTTQSJOH TSWOFUXPSL QSPHSBNNJOHͰ w ͍ͭʹެࣜͰ࣮ݧ࣮͕ੜ͑ͨ w IUUQTHJUIVCDPN FCJLFOQTSW
w Θ͔ͣҰΒͣͰ͍͢͝ ◦T.Insert ◦T.Encaps, T.Encaps.Red ◦End, End.DT6 ◦End.MAP (future) ◦End.M.GTP6.D ◦End.M.GTP6.E ◦End.M.GTP4.E (future) ◦T.M.Tmap (future) ◦End.Limit (not planned) !52
ඪ४Խಈ w ݸਓతʹ໘ന͔ͬͨͷϕϯμʔ֤͕ࣾͲ͏͍͏ํʹ͖ ͍ͨͷ͕ผ్ͷࢿྉΛ୳͢ͱຯʹಁ͚ͯΘ͔Δͱ͍͏͜ͱɽ IUUQTXXXOJDBEKQKBNBUFSJBMTJFUGSFQPSUNBUTVTIJNBQEG !53
ඪ४Խಈ IUUQTXXXOJDBEKQKBNBUFSJBMTJFUGSFQPSUNBUTVTIJNBQEG !54
ඪ४Խಈ·ͱΊ w 43W࣮ʹඪ४Խ͕ग़͔ͨΓͷ৽͍ͭ͠ w Ͳ͜ͷϕϯμʔڵຯʑͱ͍͏͜ͱ͕Θ͔Γɼ͜ΕΒ͔ ͳΓਐาͯ͠Δʂ w ฒʑͳΒ͵ྗΛײ͡ΔͷͰͥͻ৭ʑݟͯཉ͍͠ !55
ະདྷͱͦͷઌ !56
ࠓͷ43๊͕͑Δ w 4*%ͷཧϓϥΫςΟεϓϩϏδϣχϯά͕ඞཁ w ηάϝϯτϧʔςΟϯάͷ֊Խ w ͲΜͳ5&ϙϦγʔʹ͢Ε͍͍ͷ͔ w ϥϕϧελοΫͷ૿ՃͰͷݶք w
ύοͱࢥ͍͍ͭͨͷͰ͜Μͳײ͡Ͱ·ͩ·ͩࣽ٧Ί Δඞཁ͕͋Γͦ͏ !57
4*%ͷཧϓϥΫςΟε ϓϩϏδϣχϯά͕ඞཁ w /PEF4*%4FHNFOUEPNBJOͰ(MPCBMͳͰ͋Δඞཁ͕͋Δ w ͭ·ΓඃΒ͍͚ͤͯͳ͍ɽ w ඃͬͯ͠·ͬͨϊʔυͷͲͪΒΛ༗ޮʹ͠Α͏͔ͱ͍͏نఆͪ ΖΜଘࡏ͢Δ w
DGESBGUJFUGTQSJOHDPOqJDUSFTPMVUJPO w ίϯϑΟάͰԿઃఆ͢ΔJOEFYͷͳΜͯͨͩͷͳͷͰͱͯ ਏ͍ɾɾɾ w ϓϩϏδϣχϯάπʔϧՄࢹԽͷϓϥΫςΟε͕ඞཁ !58
ηάϝϯτϧʔςΟϯά ͷ֊Խ w ֤ϊʔυ͕43EPNBJOͷશ4*%ใΛอ࣋͢Δඞཁ ੑ͕ଘࡏ͢Δͭ·ΓωοτϫʔΫن֦େʹ͏ใ ྔͷ૿ՃͰࢮ͵ w ղܾࡦɿ֊ԽΛߦ͏ w ֤ϊʔυʹ্ҐηάϝϯτͷใͷΈΛ࣋ͨͤɼ
ଞͷ্ҐηάϝϯτͷϊʔυΛӅṭ w ֤ϊʔυͷ࣋ͭใྔݮΛ࣮ݱ !59
ηάϝϯτϧʔςΟϯά ͷ֊Խ w ͜ͷղܾࡦʹ͕͋Δ w ϙϦγઃఆൣғͷ໌֬ԽԿͰ͢Εྑ͍ΜͩΖ͏ w ্Ґηάϝϯτͷ4*%༩ͷ༗ແʹΑΔྨʁ w 431$&ͷϙϦγઃఆख๏ʹΑΔྨʁ
w ͦͦநԽͨ͠֊Խͨͭ͠11ΑΖ͘͠ͳײ͡Ͱ࣍ ܘతͷ͕ͦͷ͏ͪى͖ΔͷͰɾɾɾʁ w ࠷େ࣍ͱܘͷ੍ͷͱͰͲΕ͚ͩΛଟؚ͘Μͩ άϥϑΛ࡞ΕΔ w DGܘ͕খ͍͞ԆΛখ͘͞Ͱ͖Δ !60
·ͱΊ w 43ΊͬͪΌศརɽؒҧ͍ͳ࣍͘ੈͷύϥμΠϜʹ ͳΔʢͱࢲࢥͬͯΔʣ w ͔͠͠ΦϖϨʔγϣϯͷ؍͔ΒͲ͏͢Εྑ͍Μͩ Ζ͏ͳͱ͍͏ͷ͕ΰϩΰϩ͋Γ·ͩ·ͩࣽ٧ΊΔ͖ ੈք؍ɽ w ͔ͳΓ༻ޠΛͰ͖Δ͚ͩল͍ͨͷͰॏശͷ۱Λͭͭ͘
ͱϘϩ͕ग़ΔͷͰʢ༏͘͠ʣٙฉ͍͍ͯͩ͘͞ !61
ࢀߟ https://www.slideshare.net/tech_jstream/traffic-engineering-jtf2017 https://docs.fd.io/vpp/17.04/srv6_doc.html http://www.segment-routing.net/ietf/ https://docs.fd.io/vpp/17.04/srv6_doc.html https://clnv.s3.amazonaws.com/2018/anz/pdf/BRKRST-1124.pdf https://www.cisco.com/c/dam/assets/global/JP/training-events/events-webinars/interop/sp-03-interop2016-segment.pdf https://www.mpls.jp/2017/presentations/mpls_jp_2017_matsushima-post.pdf https://www.janog.gr.jp/meeting/janog40/application/files/7815/0104/5635/janog40-sr-mpls-miyasaka-00.pdf https://datatracker.ietf.org/doc/draft-ietf-spring-segment-routing-central-epe/?include_text=1
https://datatracker.ietf.org/doc/draft-ietf-spring-segment-routing-ldp-interop/?include_text=1 https://datatracker.ietf.org/doc/draft-filsfils-spring-srv6-network-programming/?include_text=1 !62
"SFUIFSFBOZRVFTUJPOT !63