HTTP/2 sẽ được thay thế cho giao thức HTTP từ năm 2016

09:10 | 05/07/2016

Ngày 17/2/2016, phiên bản mới của giao thức truyền siêu văn bản HTTP/2 đã được IESG chấp thuận. Đây là sẽ là giao thức thay thế cho giao thức HTTP được sử dụng từ năm 1999.



HTTP (HyperText Transfer Protocol - Giao thức truyền tải siêu văn bản) là một trong năm giao thức chuẩn về mạng Internet, được dùng để trao đổi thông tin giữa Máy cung cấp dịch vụ (Web server) và Máy sử dụng dịch vụ (Web client), là giao thức Client/Server dùng cho World Wide Web (WWW). HTTP cũng là một giao thức ứng dụng của bộ giao thức TCP/IP. Tuy nhiên, sau hơn 17 năm sử dụng giao thức này đã bộc lộ những nhược điểm trong quá trình hoạt động. Giao thức HTTP/2 có ưu điểm nổi bật là hiệu suất cao, giảm lưu lượng sử dụng băng thông, đặc biệt là cải thiện thời gian tải trang.

Bản nâng cấp HTTP này là rất cần thiết, vì khi HTTP 1.1 lần đầu tiên được phát triển, các trang web chưa sử dụng các công nghệ Flash, Javascript, CSS,…. Để truyền tải lượng dữ liệu này, các nhà phát triển sản phẩm đã phải sử dụng những biện pháp khắc phục như sử dụng bộ nhớ đệm, domain sharding (tách các nguồn trên nhiều miền để cải thiện thời gian tải trang)…. Tuy nhiên, giờ đây điều này sẽ không còn cần thiết với giao thức HTTP/2. Giao thức HTTP/2 cung cấp các tính năng chính:

- Multiplexing:song song xử lý các yêu cầu, phản hồi. HTTP/2cho phép gửi nhiều yêu cầu trong một kết nối TCP nhằm giảm tải cho máy chủ.

- Stream dependencies: ưu tiên gói dữ liệu, cho phép client ra lệnh cho máy chủ có nguồn quan trọng nhất.

- Server push: cho phép máy chủ đoán yêu cầu dữ liệu kế tiếp mà client sẽ cần để giảm thời gian mặc dù chưa có sự yêu cầu từ phía client.

- Header compression: HTTP/2 sẽ nén các header gói tin nhằm giảm chi phí. 

- Binary code information transfer: HTTP/2 truyền dữ liệu ở dạng nhị phân. Với giao thức HTTP dữ liệu được gửi thông qua dạng văn bản, để hiểu được các nội dung máy chủ sẽ phải dịch sang một định dạng khác. Như vậy, cần thêm một bước để xử lý dữ liệu. Việc truyền dữ ở dạng nhị phân sẽ hiệu quả, tiêu tốn ít thời gian hơn.

Hiện nay, những trình duyệt hàng đầu đã bắt đầu hỗ trợ giao thức HTTP/2 nên các nhà quản trị website cần chuẩn bị để khai thác những lợi ích mà HTTP/2 mang lại. Tuy nhiên, không cần chuẩn bị ngay tức thì cho việc sử dụng HTTP/2. Các trang web và các ứng dụng sẽ vẫn tiếp tục hoạt động bình thường và được cải thiện thực hiện hiệu quả và tiêu tốn ít tài nguyên hơn. Nhưng các nhà quản trị cần phải lưu ý để có thể khai thác tối đa ưu điểm của giao thức HTTP/2. 

Tất cả các biện pháp của nhà phát triển như sử dụng cho thiết kế như hình ảnh động Flash, CSS… để hoạt động tối ưu trên giao thức HTTP sẽ không còn cần thiết và nên được gỡ bỏ. Người dùng cũng nên xem xét đến việc mã hóa nội dung. Như hầu hết các trình duyệt đã tuyên bố họ sẽ chỉ sử dụng HTTP/2 nếu như trang web sử dụng lớp truyền tải bảo mật (TLS). Tuy nhiên, nếu người dùng vẫn có thể truy cập những trang web không được mã hóa; trình duyệt sẽ chuyển về sử dụng giao thức HTTP, điều này phủ nhận những lợi ích của HTTP/2. HTTP/2 sẽ không còn cho phép các nhà phân tích hệ thống vượt qua quy trình phân tích dòng cho mục đích xử lý sự cố. Việc sửa lỗi văn bản đơn thuần sẽ không còn khả thi.

Khi danh sách những ưu điểm của HTTP/2 được công bố, cộng đồng CNTT đã công nhận ý nghĩa của nó trong việc tối ưu hóa hoạt động trang web. Tuy nhiên, sự đánh giá sớm này đã dẫn đến việc chủ sở hữu những trang web nghĩ rằng nó có tác động tới mạng lưới phân phối nội dung (Content Distribution Network - CDN) - điều đó là không chính xác. 

Một mạng lưới máy chủ toàn cầu của CDN đảm bảo rằng người dùng trang web nào đó sẽ luôn được chuyển hướng đến các máy chủ gần với vị trí của họ nhất. Một khoảng cách nhỏ giữa người dùng và máy chủ sẽ làm giảm thời gian tải trang hơn bất kỳ cải tiến nào của HTTP/2.

Sự kết hợp của các máy chủ toàn cầu của CDN và những cải tiến định dạng nội dung web của HTTP/2 sẽ cung cấp cho người dùng cuối thời gian tải ngắn nhất và trải nghiệm trình duyệt web tốt nhất có thể. Có một mạng lưới các máy chủ của CDN nhằm đảm bảo cân bằng khả năng tải, khiến trang web đáng tin cậy hơn. Một CDN cũng sẽ cung cấp khả năng bảo mật. Bao gồm cả việc bảo vệ trước các tấn công DDoS. Điều này có nghĩa: có thể tối ưu hóa hiệu suất trang web với giao thức HTTP/2, bao gồm cả việc tiếp tục sử dụng CDN.