Slide 1

Slide 1 text

Learn “QUIC” Quickly! 2021.9.24 ࣛࣇౡ.mk

Slide 2

Slide 2 text

ࣗݾ঺հ Chapter.0

Slide 3

Slide 3 text

Who am i? ࣗݾ঺հ ▸ ;ʔ͕ ▸ ݱ৬͸ެ຿һ ૊৫ͷDXਪਐΛ୲౰ ▸ FjordBootCampͰRuby/RailsͳͲΛֶश ࠷ऴͷΧϦΩϡϥϜͰࣗ࡞αʔϏε੡࡞த ▸ ݱࡏɺస৬׆ಈத ▸ ೝఆதຊϚελʔʢࣗশʣ ໤ݹλϯϝϯதຊΛ͜Αͳ͘Ѫ͢ΔRubyist Twitter: @fuga__ch

Slide 4

Slide 4 text

ͳͥ͜ͷλΠτϧʹͨ͠ͷ͔ Chapter.0-1

Slide 5

Slide 5 text

Chapter.0-1 ͳͥ͜ͷλΠτϧʹͨ͠ͷ͔ ▸ ϓϩάϥϛϯάΛֶͿதͰɺ͍͔ͭ͘ͷϓϩτίϧΛѻͬͨ HTTPɺSMTP΍ POPͰͷϝʔϧૹड৴ ͳͲ ▸ ͦΕΑΓ΋͞Βʹ௿ϨΠϠͷϓϩτίϧ΋͋Δ ଘࡏ͸஌Γͭͭ΋ษڧ͢ΔඞཁੑΛײ͍ͯ͡ͳ͔ͬͨ ▸ ͦΜͳதɺʮ”QUIC”ͱ͍͏৽͍͠ϓϩτίϧ͕Ͱ͖ͨʯهࣄΛಡΜͩ ʮͳΜͩΖ͏ʁʯʮԿ͕มΘΔΜͩΖ͏ʁʯʮτϥϯεϙʔτ૚ͬͯʁʯ ษڧͯ͠ΈΑ͏ʂ ൃදͨ͠Β΋ͬͱཧղͰ͖Δ͔΋ʂ

Slide 6

Slide 6 text

”QUIC”ͬͯɺͳʹʁ Chapter.1

Slide 7

Slide 7 text

Chapter.1 “QUIC”ͬͯɺͳʹʁ ▸ τϥϯεϙʔτ૚ʹ͓͚Δ৽͍͠௨৴ϓϩτίϧ ▸ ʮTCPʹऔͬͯ୅ΘΔϓϩτίϧʯͱݴΘΕ͍ͯΔ ▸ Google͕WEBͷ଎౓վળΛओͳ໨తͱͯ͠։ൃ࢝͠Ίͨ ▸ 2021೥5݄ɺIETFʹΑͬͯඪ४Խ͞Εͨ ▸ QUIC্Ͱಈ࡞͢Δͷ͕HTTP/3 τϥϯε ϙʔτ૚ʁ ̩̘̥ʁ ̝̩̩̥ʗ̏ʁ

Slide 8

Slide 8 text

HTTP/2·Ͱͷτϥϯεϙʔτ૚ Chapter.2

Slide 9

Slide 9 text

Chapter.2 HTTP/2·Ͱͷτϥϯεϙʔτ૚ ▸ σʔλ఻ૹͷ৴པੑΛఏڙ͢Δ໾ׂ ▸ TCP·ͨ͸UDP͍ͣΕ͔ͷϓϩτίϧͰ௨৴͢Δ ɾσʔλ͕ૹΕ͍ͯΔ͔ ɾҰ౓ʹૹ৴Ͱ͖ΔαΠζʹ෼ׂʢ෼ׂͨ͠1ͭ͋ͨΓͷσʔλ୯Ґʹύέοτʣ ɾσʔλ͕յΕ͍ͯͳ͍͔ ɾॱ൪௨Γʹͳ͍ͬͯΔ͔

Slide 10

Slide 10 text

Chapter.2 HTTP/2·Ͱͷτϥϯεϙʔτ૚ ▸ σʔλͷ׬શੑΛอূ ▸ ΫϥΠΞϯτ͕ύέοτΛड͚औ͔ͬͨͲ͏͔ΛஞҰ֬ೝ ̩̘̥ ɾίωΫγϣϯͷཱ֬ ɾ3wayϋϯυγΣΠΫ ▸ จॻ౳ͷ׬શੑ͕ٻΊΒΕΔσʔλ఻ૹʹ࢖ΘΕΔ ग़యɿhttps://www.infraexpert.com/study/tcpip9.html ɾ࠶ૹ੍ޚɹɾ֬ೝԠ౴ɹɾϑϩʔ੍ޚɹɾ᫔᫓੍ޚ

Slide 11

Slide 11 text

Chapter.2 HTTP/2·Ͱͷτϥϯεϙʔτ૚ ▸ σʔλͷ׬શੑ͸อূ͞Εͳ͍ ▸ ίωΫγϣϯ΍࠶ૹ੍ޚ͕ͳ͍෼ɺߴ଎ ̪̙̥ ɾ௨৴தʹσʔλ͕յΕ͍ͯΔ͔Ͳ͏͔͸֬ೝ͍ͯ͠Δ ▸ ಈը΍Ի੠௨࿩ͳͲͷେ༰ྔ͔ͭ׬શੑΛٻΊΒΕͳ͍௨৴ʹར༻ ɾյΕ͍ͯͯ΋ɺഁغͯ͠ऴΘΓ ɾΫϥΠΞϯτ͕ύέοτΛड͚औ͔ͬͨͲ͏͔͸֬ೝ͠ͳ͍

Slide 12

Slide 12 text

TCP/UDPͷ໰୊఺ Chapter.3

Slide 13

Slide 13 text

Chapter.3 TCP/UDPͷ໰୊఺ ▸ ߴ଎Խͷݶք ▸ ϔουΦϒϥΠϯϒϩοΩϯά ઌߦ͢Δύέοτ͕ύέοτϩεͨ͠৔߹ɺޙଓͷύέοτ͕ಧ͍ͯ΋࢖͏͜ͱ͕Ͱ͖ͳ͍ ▸ ֦ுੑͷݶք ɾTCPͰ͸3wayϋϯυγΣΠΫ͕ඞਢͷͨΊɺ઀ଓͷཱ֬ʹ͕͔͔࣌ؒΔ ɾ͞ΒʹɺTLSͷϋϯυγΣΠΫ΋͋ΔͷͰ༨ܭʹ͕͔͔࣌ؒΔ ɾUDP͸ߴ଎͕ͩ৴པੑ͸ͳ͍ ɾTCP͸Χʔωϧ(OS)͕ఏڙ͢Δػೳ ɾ৽͍͠ϓϩτίϧ֦ுΛ࡞ͬͯ΋ɺϢʔβʔ͕OSΛߋ৽͠ͳ͍ͱద༻͞Εͳ͍ ɾΑͬͯɺϓϩτίϧͷվྑͷαΠΫϧΛૉૣ͘ճ͍ͯ͘͜͠ͱ͕Ͱ͖ͳ͍ Ͱ΋΋ͬͱૣ͘ ͍ͨ͠ΜͩΑʂ

Slide 14

Slide 14 text

QUICͷొ৔ Chapter.4

Slide 15

Slide 15 text

Chapter.4 QUICͷొ৔ ▸ TCPʹ૬౰͢Δ࠶ૹ੍ޚͷ͘͠Έ ▸ ϋϯυγΣΠΫͷ࡟ݮʹΑΔ௨৴ͷޮ཰Խ ɾτϥϯεϙʔτ૚ͱ҉߸ԽͷϋϯυγΣΠΫΛฒྻʹߦ͏ ɾཱ֬·Ͱʹ1ԟ෮൒͔͔͍ͬͯͨͱ͜Ζɺ1ԟ෮ʹ ▸ ϔουΦϒϥΠϯϒϩοΩϯάͷ๷ࢭ ▸ ΞϓϦέʔγϣϯͷҰ෦ͱ࣮ͯ͠૷ ɾվྑ΍֦ு͕༰қʹ ex)Webϒϥ΢β͕Ξοϓσʔτ͞ΕΕ͹QUIC΋Ξοϓσʔτ͞ΕΔ ౳ ͭ·Γɺɺɺ

Slide 16

Slide 16 text

CHAPTER.4 QUICͷొ৔ τϥϯεϙʔτ૚ʹ͓͚Δ໰୊ͱ՝୊Λղܾ͠ɺ ߴ଎ੑɺ৴པੑͱ֦ுੑΛߴΊͨ৽͍͠ϓϩτίϧ ͦΕ͕ɺɺɺ ̦̪̞̘

Slide 17

Slide 17 text

͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ ͍͔͕Ͱ͔ͨ͠ʁQUICͷ֓ཁ͕ͳΜͱͳʙ͘ɺ͔ͭΊ·͔ͨ͠ʁ ;ʔ͕@fuga__ch