Οι νυχτερινές εκδόσεις του Firefox υποστηρίζουν πλέον το HTTP/3

В νυχτερινές κατασκευές Firefox, που θα αποτελέσει τη βάση για την κυκλοφορία του Firefox 72, που έχει προγραμματιστεί για τις 7 Ιανουαρίου, προστέθηκε Υποστήριξη πρωτοκόλλου HTTP/3. Από προεπιλογή, το HTTP/3 είναι απενεργοποιημένο και απαιτεί την ενεργοποίηση της επιλογής "network.http.http3.enabled" στο about:config.

Η υποστήριξη HTTP/3 στον Firefox βασίζεται σε ένα έργο που αναπτύχθηκε από τη Mozilla κάτι, το οποίο παρέχει εφαρμογή πελάτη και διακομιστή για το πρωτόκολλο QUIC. Ο κωδικός στοιχείου για υποστήριξη HTTP/3 και QUIC είναι γραμμένος σε Rust.
Από το λογισμικό πελάτη, υπάρχει ήδη πειραματική υποστήριξη για το HTTP/3 προστέθηκε σε Chrome και curl, και για διακομιστές είναι διαθέσιμο στη μορφή modulя για nginx και δοκιμαστικό διακομιστή με βάση τη βιβλιοθήκη quiche (εφαρμογή QUIC και HTTP/3 στο Rust από το Cloudflare). Για να ελέγξετε τη λειτουργία των πελατών HTTP/3 εκτοξεύτηκε αρκετοί ιστότοποι δοκιμών, οι περισσότεροι από τους οποίους δεν ανοίγουν ακόμα σωστά στον Firefox (το HTTP/3 βρίσκεται στο στάδιο προσχέδιο προδιαγραφών και δεν είναι πλήρως τυποποιημένη).

Θυμηθείτε ότι το HTTP/3 τυποποιεί τη χρήση του πρωτοκόλλου QUIC ως μεταφορά για το HTTP/2. Πρωτόκολλο QUIC Το (Quick UDP Internet Connections) αναπτύχθηκε από την Google από το 2013 ως εναλλακτική λύση στον συνδυασμό TCP+TLS για τον Ιστό, επιλύοντας προβλήματα με μεγάλους χρόνους εγκατάστασης και διαπραγμάτευσης για συνδέσεις στο TCP και εξαλείφοντας τις καθυστερήσεις όταν χάνονται πακέτα κατά τη μεταφορά δεδομένων. Το QUIC είναι μια επέκταση του πρωτοκόλλου UDP που υποστηρίζει πολυπλεξία πολλαπλών συνδέσεων και παρέχει μεθόδους κρυπτογράφησης ισοδύναμες με TLS/SSL.

Ο κύριος χαρακτηριστικά QUIC:

  • Υψηλή ασφάλεια παρόμοια με το TLS (ουσιαστικά το QUIC παρέχει τη δυνατότητα χρήσης TLS μέσω UDP).
  • Έλεγχος ακεραιότητας ροής, αποτροπή απώλειας πακέτων.
  • Δυνατότητα άμεσης δημιουργίας σύνδεσης (0-RTT, περίπου στο 75% των περιπτώσεων τα δεδομένα μπορούν να μεταδοθούν αμέσως μετά την αποστολή του πακέτου ρύθμισης σύνδεσης) και να παρέχει ελάχιστες καθυστερήσεις μεταξύ της αποστολής ενός αιτήματος και της λήψης απάντησης (RTT, Round Trip Time).
  • Μη χρήση του ίδιου αριθμού σειράς κατά την αναμετάδοση ενός πακέτου, γεγονός που αποφεύγει την ασάφεια στον εντοπισμό των ληφθέντων πακέτων και απαλλαγεί από τα χρονικά όρια.
  • Η απώλεια ενός πακέτου επηρεάζει μόνο την παράδοση της ροής που σχετίζεται με αυτό και δεν σταματά την παράδοση δεδομένων σε παράλληλες ροές που μεταδίδονται μέσω της τρέχουσας σύνδεσης.
  • Λειτουργίες διόρθωσης σφαλμάτων που ελαχιστοποιούν τις καθυστερήσεις λόγω αναμετάδοσης χαμένων πακέτων. Χρήση ειδικών κωδικών διόρθωσης σφαλμάτων σε επίπεδο πακέτου για τη μείωση καταστάσεων που απαιτούν αναμετάδοση χαμένων δεδομένων πακέτων.
  • Τα κρυπτογραφικά όρια μπλοκ ευθυγραμμίζονται με τα όρια πακέτων QUIC, γεγονός που μειώνει τον αντίκτυπο των απωλειών πακέτων στην αποκωδικοποίηση των περιεχομένων των επόμενων πακέτων.
  • Κανένα πρόβλημα με τον αποκλεισμό ουράς TCP.
  • Υποστήριξη για το αναγνωριστικό σύνδεσης, το οποίο μειώνει τον χρόνο που απαιτείται για τη δημιουργία μιας επανασύνδεσης για πελάτες κινητής τηλεφωνίας.
  • Δυνατότητα σύνδεσης προηγμένων μηχανισμών ελέγχου συμφόρησης σύνδεσης.
  • Χρησιμοποιεί τεχνικές πρόβλεψης απόδοσης ανά κατεύθυνση για να διασφαλίσει ότι τα πακέτα αποστέλλονται με βέλτιστους ρυθμούς, αποτρέποντας τη συμφόρηση και την απώλεια πακέτων.
  • Αντιληπτός ανάπτυξη απόδοση και απόδοση σε σύγκριση με το TCP. Για υπηρεσίες βίντεο όπως το YouTube, το QUIC έχει αποδειχθεί ότι μειώνει τις λειτουργίες rebuffering κατά την παρακολούθηση βίντεο κατά 30%.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο