QUIC (ፈጣን የዩዲፒ ኢንተርኔት ግንኙነት) ሁሉንም የTCP፣ TLS እና HTTP/2 ባህሪያትን የሚደግፍ እና አብዛኛዎቹን ችግሮቻቸውን የሚፈታ ፕሮቶኮል በ UDP አናት ላይ ነው። ብዙውን ጊዜ አዲስ ወይም "የሙከራ" ፕሮቶኮል ተብሎ ይጠራል, ነገር ግን የሙከራ ደረጃውን ከረጅም ጊዜ በላይ አልፏል: ልማት ከ 7 ዓመታት በላይ ቆይቷል. በዚህ ጊዜ ፕሮቶኮሉ መደበኛ መሆን አልቻለም ፣ ግን አሁንም ተስፋፍቷል ። ለምሳሌ QUIC እንደ ጎግል እና ፌስቡክ ያሉ ግዙፍ ኩባንያዎች የትራፊክ ፍሰትን ለማፋጠን እና የሞባይል ኔትወርኮች መዘግየቶችን ለመቀነስ የሚጠቀሙበት ሲሆን IETF የፕሮቶኮሉን ሹካ ለኤችቲቲፒ/3 መስፈርት መሰረት አድርጎ አውጇል (ምንም እንኳን HTTP/2 ቢጠቀምም)
ጽንሰ-ሐሳብ
QUIC የተሰራው በመጀመሪያ ዝቅተኛ ኪሳራ ላለባቸው ባለገመድ አውታረ መረቦች የተነደፈውን ትሩፋት TCP ለመተካት ነው። TCP እሽጎችን በቅደም ተከተል ያቀርባል፣ ስለዚህ አንድ ፓኬት ከጠፋ፣ ወረፋው በሙሉ ይቆማል (
QUIC የTCP ምትክን እና የTLS 1.3 አተገባበርን ስላጣመረ ሁሉም ግንኙነቶች ሁል ጊዜ የተመሰጠሩ ናቸው፣ እና እንደዚህ አይነት ትራፊክ መፍታት በኤችቲቲፒኤስ ላይ ካለፈ ቀላል አይደለም። በተጨማሪም፣ የTCP ቁልል ሙሉ በሙሉ መተካት ስለሚያስፈልግ QUIC በመተግበሪያው ደረጃ ይተገበራል። ዘላለማዊነት.
በኤችቲቲፒ/2 ውስጥ ብዜት እንዲደረግ ድጋፍ ቢደረግለትም፣ እሽጎችን በቅደም ተከተል ማድረስ ስለሚያስፈልገው የጭንቅላት መስመርን የመዝጋት ችግር እዚያ ቆይቷል። QUIC በ UDP አናት ላይ ተተግብሯል, ስለዚህ በመርህ ደረጃ ምንም እገዳ የለውም, እና እሽጎች ለዘላለም እንዳይጠፉ ለመከላከል, የተቆጠሩ እና የ "ጎረቤቶች" ክፍሎችን ሊይዙ ይችላሉ, ይህም ተጨማሪ ጊዜ ይሰጣል. በተጨማሪም፣ QUIC በአንድ ግኑኝነት ውስጥ ለተለያዩ የጥያቄ ዓይነቶች ሞኖሊቲክ ወረፋውን ወደ ብዙ ክሮች ይከፍላል። ስለዚህ አንድ ፓኬት ከጠፋ ችግሮች ሊፈጠሩ የሚችሉት ለአንድ ወረፋ ብቻ ነው (ለምሳሌ አንድ የተወሰነ ፋይል ለማስተላለፍ)።
ተጠቀም
መጀመሪያ ላይ QUIC የተሰራው በGoogle ውስጥ ሲሆን በአብዛኛው በኩባንያው ውስጥ ጥቅም ላይ እንዲውል ተዘጋጅቷል። እ.ኤ.አ. በ 2013 ወደ IETF ደረጃውን የጠበቀ (አሁንም በመካሄድ ላይ ነው) እና አሁን ሁሉም ሰው የጎደለውን ነገር በማቅረብ በፕሮቶኮሉ ልማት ውስጥ መሳተፍ ይችላል ። የ IETF የስራ ቡድን አመታዊ ስብሰባዎችን ያዘጋጃል በዚህ ወቅት አዲስ ደረጃ የጸደቀበት እና አዳዲስ ፈጠራዎች ውይይት የሚደረግበት። ይህ የQUIC አተገባበር እንደ ዋናው ይቆጠራል እና በእሱ መሰረት የኤችቲቲፒ/3 መስፈርት የተረጋገጠ ነው።
እስካሁን ድረስ ኤችቲቲፒ/3ን እንደ ዋና ፕሮቶኮል ስለማካተት ምንም አይነት ንግግር የለም ምክንያቱም ገና ስላላለቀ እና ስለማይደገፍ፡
ነገር ግን QUIC በመተግበሪያው እና በአገልጋዩ መካከል እንደ ማጓጓዣ ሊተገበር ይችላል፣ ይህም በተሳካ ሁኔታ በኡበር ተከናውኗል፡
በQUIC መግቢያ ላይ የኡበር አስተያየት
QUICን በተሳካ ሁኔታ ለመክተት እና የመተግበሪያ አፈጻጸምን በደካማ ግንኙነት ለማሻሻል፣ የድሮውን ቁልል (HTTP/2 ከTLS/TCP) በQUIC ፕሮቶኮል እንተካለን። የኔትወርክ ቤተ መፃህፍትን ተጠቀምን።
ክሮኔት ከChromium ፕሮጀክቶች , ዋናውን የያዘ, የፕሮቶኮሉ Google ስሪት - gQUIC. የቅርብ ጊዜውን የ IETF ዝርዝር ለመከተል ይህ ትግበራ እንዲሁ በየጊዜው እየተሻሻለ ነው።የQUIC ድጋፍን ለመጨመር መጀመሪያ ክሮኔትን ወደ አንድሮይድ መተግበሪያዎቻችን አዋህደናል። ውህደቱ የተካሄደው የስደት ወጪን ለመቀነስ በሚያስችል መንገድ ነው። ቤተ መፃህፍቱን የተጠቀመውን የድሮውን የኔትወርክ ቁልል ሙሉ በሙሉ ከመተካት ይልቅ
እሺ ኤችቲቲፒ ክሮኔትን በOkHttp API ማዕቀፍ ስር አዋህደናል። በዚህ መንገድ በመዋሃድ በኔትወርክ ጥሪዎቻችን ላይ የተደረጉ ለውጦችን አስቀርተናል (የሚጠቀሙት።ሪትርት ) በኤፒአይ ደረጃ።ልክ እንደ አንድሮይድ አቀራረብ፣ የኤችቲቲፒ ትራፊክን ከአውታረ መረብ በመጥለፍ ክሮኔትን በUber iOS መተግበሪያዎች ውስጥ ተግባራዊ አድርገናል።
ኤ ፒ አይ በመጠቀምNSURLPፕሮቶኮል . ይህ በiOS ፋውንዴሽን የቀረበው ረቂቅ ፕሮቶኮል-ተኮር የዩአርኤል ዳታዎችን የሚያስተናግድ ሲሆን ክሮኔትን ከአይኦኤስ አፕሊኬሽኖቻችን ጋር ያለ ምንም የፍልሰት ወጪ ማዋሃድ መቻልን ያረጋግጣል።
ከ የተወሰደ
ከኋላ በኩል የQUIC ግንኙነቶችን በGoogle Cloud lb ያዙ፣ ይህም
ጎግል ክላውድ በጎግል ባዘጋጀው ፕሮቶኮል ጥሩ መስራቱ ምንም አያስደንቅም ፣ ግን አማራጮቹ ምንድናቸው?
እም
ብዙም ሳይቆይ CloudFlare
curl -O https://nginx.org/download/nginx-1.16.1.tar.gz
tar xvzf nginx-1.16.1.tar.gz
git clone --recursive https://github.com/cloudflare/quiche
cd nginx-1.16.1
patch -p01 < ../quiche/extras/nginx/nginx-1.16.patch
እዚህ አስፈላጊ ከሆነ ሞጁሎችን ማገናኘት ይችላሉ
./configure
--prefix=$PWD
--with-http_ssl_module
--with-http_v2_module
--with-http_v3_module
--with-openssl=../quiche/deps/boringssl
--with-quiche=../quiche
make
የቀረው የኤችቲቲፒ/3 ድጋፍን ማንቃት ነው።
events {
worker_connections 1024;
}
http {
server {
# Enable QUIC and HTTP/3.
listen 443 quic reuseport;
# Enable HTTP/2 (optional).
listen 443 ssl http2;
ssl_certificate cert.crt;
ssl_certificate_key cert.key;
# Enable all TLS versions (TLSv1.3 is required for QUIC).
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
# Request buffering in not currently supported for HTTP/3.
proxy_request_buffering off;
# Add Alt-Svc header to negotiate HTTP/3.
add_header alt-svc 'h3-27=":443"; ma=86400';
}
}
በመደበኛ አሳሾች በኤችቲቲፒ/3 በኩል መገናኘት እስካሁን አይቻልም፣ ግን መጠቀም ይችላሉ። --enable-quic
, ወደ አገልጋይዎ ይሂዱ ወይም ለምሳሌ, quic.rocks ጣቢያው ይሂዱ እና በገንቢ መሳሪያዎች ውስጥ ያለውን የግንኙነት አይነት ይመልከቱ:
በኤችቲቲፒ/3 ፈንታ ተጽፏል http2+quic/99
, ግን በመሠረቱ አንድ አይነት ነገር ነው.
ሌሎች ቴክኖሎጂዎች
- QUIC እንዲሁ ይደግፋል
LiteSpeed (ከፌስቡክ ጋር በኤችቲቲፒ/3 ከታላቅ አድናቂ ጋር የተገናኘ) እና ተራማጅCaddy . Apache እስካሁን ማድረግ አልቻለም፣ ግን ስራ በመካሄድ ላይ ነው።ሙሉ ማወዛወዝ . - ጥር 21 ዘምኗል
ረቂቅ መደበኛ ለ WebRTC - ልክ በሌላ ቀን ማይክሮሶፍት ተከፈተ
msquic ትግበራ ኮድ , በዚህ ውስጥ ከ IETF ደረጃ ሁሉም ተግባራት ገና አልተገኙም, ግን ይህ ቀድሞውኑ ትልቅ ግኝት ነው.
መደምደሚያ
የQUIC ፍላጎት ያልተረጋጋ ነው፣ ነገር ግን እያደገ ነው፣ እና እሱን ደረጃውን የጠበቀ ለማድረግ እየተሰራ ነው። የፕሮቶኮሉ አዲስ ትግበራዎች በየወሩ ማለት ይቻላል ይታያሉ፣ እና በየአመቱ ቁጥራቸው እየጨመረ የመጣ ገንቢዎች QUIC የወደፊት መሆኑን እርግጠኞች ናቸው። ፕሮቶኮሉን በTCP ቁልል የወደፊት ስሪቶች ውስጥ እንኳን ማካተት ይቻላል፣ ይህ ማለት ፈጥኖም ይሁን ዘግይቶ መላው በይነመረብ ወደ የተረጋጋ እና ፈጣን ግንኙነቶች ይሄዳል ማለት ነው።
ቀድሞውኑ የQUIC መስተጋብርን ለመሰረተ ልማትዎ ማዋቀር ወይም ለአሳሾች እንኳን መስጠት ይችላሉ - ሁሉም ለፕሮቶኮሉ ድጋፍ ለመጨመር እያቀዱ ነው ፣ እና ከካኒየስ ጋር ያለው አሳዛኝ ስታቲስቲክስ የበለጠ አስደሳች ይሆናል።
ምንጭ: hab.com