Thông tin tổng quan ngắn gọn về quá trình phát triển, cấu trúc, trường hợp sử dụng và tương lai của WebRTC.
Quy trình xác định tiêu chuẩn web là một quy trình dài hạn nhằm đảm bảo tính hữu ích, tính nhất quán và khả năng tương thích trên các trình duyệt. Hôm nay, W3C và IETF đánh dấu việc hoàn tất một trong những tiêu chuẩn quan trọng nhất trong đại dịch: WebRTC.
Cập nhật trước đây
WebRTC là một nền tảng cung cấp cho trình duyệt, ứng dụng di động và ứng dụng máy tính để bàn các chức năng giao tiếp theo thời gian thực, thường được dùng để gọi video. Nền tảng này bao gồm một bộ công nghệ và tiêu chuẩn toàn diện. Google đã khởi xướng ý tưởng tạo WebRTC vào năm 2009, thay thế cho Adobe Flash và các ứng dụng trên máy tính không thể chạy trong trình duyệt. Thế hệ sản phẩm dựa trên trình duyệt trước đây được xây dựng dựa trên công nghệ độc quyền được cấp phép. Nhiều sản phẩm được xây dựng bằng công nghệ này, bao gồm cả Hangouts. Sau đó, Google đã mua lại các công ty mà Google đã cấp phép công nghệ và cung cấp công nghệ đó dưới dạng dự án WebRTC nguồn mở. Cơ sở mã này được tích hợp trong Chrome và được phần lớn ứng dụng sử dụng WebRTC sử dụng. Cùng với các nhà cung cấp trình duyệt và các nhà lãnh đạo trong ngành khác như Mozilla, Microsoft, Cisco và Ericsson, quá trình chuẩn hoá WebRTC đã bắt đầu trong cả W3C và IETF. Năm 2013, Mozilla và Google đã minh hoạ tính năng gọi video giữa các trình duyệt của họ. Trong quá trình phát triển của tiêu chuẩn, nhiều cuộc thảo luận về cấu trúc đã dẫn đến sự khác biệt trong việc triển khai trên các trình duyệt, đồng thời thách thức khả năng tương thích và khả năng tương tác. Cuối cùng, hầu hết các ý kiến bất đồng này đã được giải quyết khi tiêu chuẩn này được hoàn thiện trong những năm qua. Thông số kỹ thuật WebRTC hiện đi kèm với một bộ kiểm thử nền tảng đầy đủ và các công cụ để giải quyết khả năng tương thích, đồng thời các trình duyệt đã điều chỉnh đáng kể cách triển khai của chúng cho phù hợp. Điều này đã chấm dứt một giai đoạn đầy thách thức, trong đó các nhà phát triển web phải liên tục điều chỉnh dịch vụ của họ cho phù hợp với các thay đổi về thông số kỹ thuật và cách triển khai trình duyệt.
Cấu trúc và chức năng
API RTCPeerConnection
là phần trung tâm của quy cách WebRTC. RTCPeerConnection
xử lý việc kết nối hai ứng dụng trên các điểm cuối khác nhau để giao tiếp bằng giao thức ngang hàng. API PeerConnection
tương tác chặt chẽ với getUserMedia
để truy cập vào máy ảnh và micrô, cũng như getDisplayMedia
để chụp nội dung màn hình. WebRTC cho phép bạn gửi và nhận các luồng bao gồm nội dung âm thanh và/hoặc video, cũng như dữ liệu nhị phân tuỳ ý thông qua DataChannel
. Chức năng đa phương tiện để xử lý, mã hoá và giải mã âm thanh và video là cốt lõi của mọi hoạt động triển khai WebRTC.
WebRTC hỗ trợ nhiều bộ mã hoá và giải mã âm thanh, trong đó Opus là bộ mã hoá và giải mã được sử dụng nhiều nhất và linh hoạt nhất. Bạn phải triển khai WebRTC để hỗ trợ cả bộ mã hoá và giải mã video VP8 miễn phí của Google và H.264 để xử lý video. Các kết nối WebRTC luôn được mã hoá thông qua hai giao thức hiện có: DTLS và SRTP. WebRTC dựa nhiều vào các tiêu chuẩn và công nghệ hiện có, từ bộ mã hoá và giải mã video (VP8, H264), truyền tải qua mạng (ICE), truyền tải (RTP, SCTP) đến các giao thức mô tả nội dung đa phương tiện (SDP). Điều này được liên kết với nhau trong hơn 50 RFC.
Trường hợp sử dụng: khi chỉ cần vài mili giây
WebRTC được sử dụng rộng rãi trong các ứng dụng quan trọng về thời gian như phẫu thuật từ xa, giám sát hệ thống và điều khiển từ xa ô tô tự động, cũng như các cuộc gọi thoại hoặc video được xây dựng trên UDP mà không thể lưu vào bộ đệm. Hầu hết các dịch vụ gọi video dựa trên trình duyệt của các công ty như Google, Facebook, Cisco, RingCentral và Jitsi đều sử dụng WebRTC. Google Stadia và NVIDIA GeForce NOW sử dụng WebRTC để truyền trực tuyến quá trình chơi trò chơi từ đám mây đến trình duyệt web mà không có độ trễ đáng kể.
Đại dịch đặt trọng tâm vào hiệu suất của cuộc gọi video
Trong năm qua, mức sử dụng WebRTC trong Chrome đã tăng gấp 100 lần do số lượng cuộc gọi video từ trong trình duyệt tăng lên. Nhận thấy việc gọi video đã trở thành một phần thiết yếu trong cuộc sống của nhiều người trong thời gian diễn ra đại dịch, các nhà cung cấp trình duyệt đã bắt đầu tối ưu hoá các công nghệ mà tính năng gọi video phụ thuộc vào. Điều này đặc biệt quan trọng vì các cuộc họp lớn đòi hỏi nhiều tài nguyên và hiệu ứng video trong cuộc họp video trở nên phổ biến hơn khi nhân viên và học viên bắt đầu làm việc và học tập tại nhà. Trong năm qua, Chrome đã tiết kiệm pin hơn tới 30% khi gọi video, đồng thời sẽ có nhiều tính năng tối ưu hoá hơn cho các trường hợp sử dụng nhiều. Mozilla, Apple và Microsoft đều đã cải thiện đáng kể việc triển khai WebRTC trong đại dịch, đặc biệt là đảm bảo tuân thủ tiêu chuẩn hiện đã được chính thức hoá.
Tương lai của WebRTC
Mặc dù WebRTC hiện đã hoàn thiện dưới dạng tiêu chuẩn W3C, nhưng chúng tôi vẫn tiếp tục cải tiến. Bộ mã hoá và giải mã video mới AV1 giúp tiết kiệm tới 50% băng thông sẽ có trong WebRTC và trình duyệt web. Việc liên tục cải thiện cơ sở mã nguồn mở dự kiến sẽ giúp giảm độ trễ và cải thiện chất lượng của video có thể phát trực tuyến. WebRTC NV tập hợp các sáng kiến để tạo API bổ sung nhằm hỗ trợ các trường hợp sử dụng mới. Các API này bao gồm các tiện ích mở rộng cho các API hiện có để tăng cường quyền kiểm soát đối với chức năng hiện có, chẳng hạn như Mã hoá video có thể mở rộng cũng như các API cấp quyền truy cập vào các thành phần cấp thấp hơn. Loại sau giúp nhà phát triển web linh hoạt hơn trong việc đổi mới bằng cách tích hợp các thành phần WebAssembly tuỳ chỉnh có hiệu suất cao. Với sự xuất hiện của mạng 5G và nhu cầu về các dịch vụ tương tác hơn, chúng tôi dự kiến sẽ thấy số lượng dịch vụ xây dựng dựa trên WebRTC tiếp tục tăng trong năm tới.