HTTP/3.0 đã nhận được trạng thái tiêu chuẩn được đề xuất

IETF (Lực lượng đặc nhiệm kỹ thuật Internet), chịu trách nhiệm phát triển các giao thức và kiến ​​trúc Internet, đã hoàn thành việc hình thành RFC cho giao thức HTTP/3.0 và công bố các thông số kỹ thuật liên quan theo mã định danh RFC 9114 (giao thức) và RFC 9204 ( Công nghệ nén tiêu đề QPACK cho HTTP/3). Đặc tả HTTP/3.0 đã nhận được trạng thái “Tiêu chuẩn được đề xuất”, sau đó công việc sẽ bắt đầu cung cấp cho RFC trạng thái của tiêu chuẩn dự thảo (Tiêu chuẩn dự thảo), điều này thực sự có nghĩa là sự ổn định hoàn toàn của giao thức và có tính đến tất cả các những ý kiến ​​đã đưa ra. Đồng thời, các phiên bản cập nhật thông số kỹ thuật cho giao thức HTTP/1.1 (RFC 9112) và HTTP/2.0 (RFC 9113) đã được xuất bản, cũng như các tài liệu xác định ngữ nghĩa của các yêu cầu HTTP (RFC 9110) và các tiêu đề kiểm soát bộ nhớ đệm HTTP. (RFC 9111).

Giao thức HTTP/3 xác định việc sử dụng giao thức QUIC (Kết nối Internet UDP nhanh) làm phương tiện truyền tải cho HTTP/2. QUIC là phần mở rộng của giao thức UDP hỗ trợ ghép kênh nhiều kết nối và cung cấp các phương thức mã hóa tương đương với TLS/SSL. Giao thức này được Google tạo ra vào năm 2013 để thay thế cho tổ hợp TCP+TLS cho Web, giải quyết các vấn đề về thời gian đàm phán và thiết lập kết nối lâu trong TCP, đồng thời loại bỏ sự chậm trễ khi gói bị mất trong quá trình truyền dữ liệu.

HTTP/3.0 đã nhận được trạng thái tiêu chuẩn được đề xuất

Hiện tại, hỗ trợ QUIC và HTTP/3.0 đã được triển khai trong tất cả các trình duyệt web phổ biến (trong Chrome, Firefox và Edge, hỗ trợ HTTP/3 được bật theo mặc định và trong Safari, tính năng này yêu cầu cài đặt “Nâng cao > Tính năng thử nghiệm > HTTP/3” sẽ được kích hoạt). Về phía máy chủ, việc triển khai HTTP/3 có sẵn cho nginx (trong một nhánh riêng biệt và ở dạng mô-đun riêng biệt), Caddy, IIS và LiteSpeed. Hỗ trợ HTTP/3 cũng được cung cấp bởi mạng phân phối nội dung Cloudflare.

Các tính năng chính của QUIC:

  • Bảo mật cao tương tự TLS (về cơ bản QUIC cung cấp khả năng sử dụng TLS qua UDP);
  • Kiểm soát tính toàn vẹn luồng, ngăn ngừa mất gói;
  • Khả năng thiết lập kết nối ngay lập tức (0-RTT, trong khoảng 75% trường hợp, dữ liệu có thể được truyền ngay sau khi gửi gói thiết lập kết nối) và cung cấp độ trễ tối thiểu giữa việc gửi yêu cầu và nhận phản hồi (RTT, Thời gian khứ hồi);
    HTTP/3.0 đã nhận được trạng thái tiêu chuẩn được đề xuất
  • Sử dụng số thứ tự khác khi truyền lại gói, điều này tránh sự mơ hồ trong việc xác định các gói đã nhận và loại bỏ thời gian chờ;
  • Việc mất gói chỉ ảnh hưởng đến việc phân phối luồng liên kết với nó và không dừng việc phân phối dữ liệu trong các luồng song song được truyền qua kết nối hiện tại;
  • Tính năng sửa lỗi giúp giảm thiểu độ trễ do truyền lại các gói bị mất. Sử dụng mã sửa lỗi đặc biệt ở cấp độ gói để giảm tình huống yêu cầu truyền lại dữ liệu gói bị mất.
  • Ranh giới khối mật mã được căn chỉnh với ranh giới gói QUIC, giúp giảm tác động của việc mất gói trong việc giải mã nội dung của các gói tiếp theo;
  • Không có vấn đề với việc chặn hàng đợi TCP;
  • Hỗ trợ mã định danh kết nối, giúp giảm thời gian cần thiết để thiết lập kết nối lại cho máy khách di động;
  • Khả năng kết nối các cơ chế kiểm soát tắc nghẽn kết nối tiên tiến;
  • Sử dụng các kỹ thuật dự đoán thông lượng theo hướng để đảm bảo tốc độ chuyển tiếp gói tối ưu, ngăn ngừa tắc nghẽn và mất gói;
  • Tăng đáng kể hiệu suất và thông lượng so với TCP. Đối với các dịch vụ video như YouTube, QUIC đã được chứng minh là giúp giảm 30% hoạt động lưu vào bộ đệm khi xem video.

Trong số những thay đổi trong đặc tả HTTP/1.1, người ta có thể lưu ý việc cấm sử dụng ký tự trả về đầu dòng (CR) bên ngoài phần nội dung, tức là. Trong các thành phần giao thức, ký tự CR chỉ có thể được sử dụng cùng với ký tự cấp dòng (CRLF). Thuật toán bố cục yêu cầu chunked đã được cải tiến để đơn giản hóa việc tách các trường và phần đính kèm bằng tiêu đề. Đã thêm các đề xuất để xử lý nội dung không rõ ràng nhằm chặn các cuộc tấn công "Lừa đảo yêu cầu HTTP", cho phép chúng tôi xen vào nội dung yêu cầu của người dùng khác trong luồng giữa giao diện người dùng và phụ trợ.

Bản cập nhật đặc tả HTTP/2.0 xác định rõ ràng sự hỗ trợ cho TLS 1.3. Không dùng nữa lược đồ ưu tiên và các trường tiêu đề liên quan. Cơ chế không sử dụng để cập nhật kết nối với HTTP/1.1 đã bị tuyên bố là lỗi thời. Giảm yêu cầu kiểm tra tên và giá trị trường. Một số loại khung và thông số dành riêng trước đây được đề xuất sử dụng. Các trường tiêu đề bị cấm liên quan đến kết nối được xác định chính xác hơn.

Nguồn: opennet.ru

Thêm một lời nhận xét