Hotline : 07 088 44444
Thích
Chia sẻ

Giao thức RTP là gì? Ưu điểm của giao thức RPT

20/09/2021

Giao thức RTP là gì?

giao thức RTP là gì

Real-Time Transport Protocol (RTP) là một tiêu chuẩn giao thức internet, chỉ định cách thức các chương trình quản lý việc truyền dữ liêu đa phương tiện theo thời gian thực qua các dịch vụ mạng unicast hoặc multicast. Ban đầu, RTP được quy định trong RFC 1889 của IETF để hỗ trợ các hội nghị truyền hình có nhiều người tham gia, ở nhiều vị trí địa lý khác nhau.

RTP thường được sử dụng trong các ứng dụng điện thoại internet. Bản thân giao thức này không đảm bảo cung cấp dữ liệu đa phương tiện theo thời gian thực (vì việc này phụ thuộc vào đặc tính của mạng). Tuy nhiên, nó cung cấp khả năng quản lý dữ liệu rất tốt.

Giao thức RTP kết hợp việc vận chuyển dữ liệu của nó với một giao thức điều khiển (RTCP). Do đó nó có thể giám sát việc phân phối dữ liệu cho các mạng đa hướng lớn. Việc giám sát cho phép người dùng phát hiện xem có bất kỳ packet nào bị lạc mất hay không, và để bù đắp cho các khoảng thời gian bị delay. Cả hai giao thức RTP và RTCP đều hoạt động độc lập với các giao thức ở lớp Transport và Network.

Các thông tin trong header RTP cho người dùng biết cách tái cấu trúc dữ liệu và mô tả cách các bit stream codec được đóng gói. Theo quy định, RTP chạy trên giao thức UDP, mặc dù nó có thể sử dụng các giao thức truyền dẫn khác. Cả SIP lẫn H.323 đều dùng RTP.

Định dạng Header của RTP

Sơ đồ định dạng Header của gói RTP được hiển thị dưới đây:

RTP là gì

Định dạng Header của RTP rất đơn giản và nó bao gồm tất cả các ứng dụng thời gian thực. Giải thích về từng trường của định dạng Header được đưa ra dưới đây:

  • Version: trường này có độ dài 2 bit, xác định số phiên bản. Phiên bản hiện tại đang là 2.
  • P (1 bit): Nếu giá trị là 1, nó cho biết có phần đệm ở cuối packet, và ngược lại nếu giá trị là 0.
  • X (1 bit): Nếu giá trị là 1, có một header mở rộng bổ sung ở giữa dữ liệu và header cơ bản. Và ngược lại nếu có giá trị là 0.
  • Contributor count (4 bit): Cho biết số lượng người đóng góp, tối đa là 15 vì trường 4 bit chỉ có thể chứa các số từ 0 đến 15.
  • M (1 bit): dùng để điểm đánh dấu kết thúc, biểu thị kết thúc dữ liệu.
  • Payload types (7 bit): Cho biết kiểu của payload. Có một số kiểu payload phổ biến như:
payload của RTP

Kiểu payload là một con số duy nhất, được biểu thị bằng 7 bit trong định dạng RTP header. Mọi kiểu payload đều cho biết một cách mã hóa hình ảnh/âm thanh. Nguồn RTP được phép gửi một kiểu payload duy nhất trong một lần. Trường này chủ yếu chỉ loại của codec dùng trong media stream.

Ví dụ, nếu dùng ‘1’ để chỉ kiểu payload, với tên encoding là 1016, thì nó sẽ dùng kiểu mã hóa giọng nói FS-1016 cho các luồng media.

RTP data units

Còn nếu dùng kiểu payload ’31’, tên encoding là H.261 thì sẽ sử dụng tiêu chuẩn nén video ITU-T. Tương tự, mỗi con số của các kiểu payload đều cho biết một loại mã hóa nhất định cho các luồng âm thanh/video.

Sequence Number

Trường này có độ dài 16 bit, dùng để cung cấp số serial cho các gói RTP, giúp đánh số thứ tự. Số thứ tự của gói đầu tiên được cấp một số ngẫu nhiên, và các gói tiếp theo tăng dần 1 đơn vị. Trường này chủ yếu dùng để kiểm tra xem có bị mất gói hay sai thứ tự hay không.

Time Stamp

Trường Time Stamp có độ dài 32 bit, dùng để tìm mối quan hệ giữa thời gian của các gói RTP khác nhau. Timestamp cho packet đầu tiên được chọn ngẫu nhiên, và các packet tiếp theo được tính bằng tổng của timestamp trước và thời gian cần thiết để tạo ra byte đầu tiên của packet hiện tại. Giá trị của 1 lần đánh dấu có thể khác nhau với các ứng dụng.

Synchronization Source Identifier

Có độ dài 32 bit, dùng để xác định và định nghĩa nguồn RTP là gì. Giá trị là một số ngẫu nhiên được chọn bởi nguồn. Trường này chủ yếu giúp giải quyết các xung đột phát sinh khi hai nguồn có cùng một số thứ tự.

Contributor Identifier

Cuối cùng, trường 32 bit này dùng để nhận dạng nguồn khi có nhiều hơn một nguồn trong phiên. Mixer source sử dụng một bộ Synchronization source identifider và các nguồn còn lại (tối đa là 15) bằng Contributor Identifier.

Ưu điểm của giao thức RTP

Ưu điểm của RTP là gì? Đúng như cái tên của nó, RTP giúp truyền dữ liệu liên quan đến phương tiện trong thời gian thực. RTP bao gồm cơ chế bù jitter, phát hiện các packet bị mất và phân phối các packet không có thứ tự. Đây là lỗi đặc biệt phổ biến trong việc truyền UDP thông qua IP.

Vì RTP cho phép truyền dữ liệu đến nhiều điểm cuối song song thông qua IP multicast, nên nó là tiêu chuẩn chính được triển khai cho truyền mạng IP âm thanh, video. Cơ chế cho profile liên quan và định dạng payload được tham chiếu trong kiến trúc của RTP, và được thực hiện ở lớp ứng dụng thay vì lớp hệ điều hành.

Các ứng dụng như VoIP cần truyền dữ liệu đa phương tiện theo thời gian thực, thường yêu cầu cung cấp dữ liệu kịp thời và cũng dễ bị mất các packet. Ví dụ như việc mất các audio packet trong ứng dụng VoIP có thể làm hụt vài mili giây trong dữ liệu. Việc này có thể được xử lý bằng các thuật toán bù lỗi để giảm bớt ảnh hưởng.

Giao thức TCP cũng được tiêu chuẩn hóa để sử dụng RTP, mặc dù không thường được sử dụng trong các ứng dụng. Vì cơ chế kiểm soát lỗi có nó có thể gây delay và ảnh hưởng đến việc phân phối các packet. Do đó, hầu hết các ứng dụng RTP thường triển khai trên UDP.

Như vậy là bạn đã biết giao thứ RTP là gì và ưu điểm của nó, hy vọng bài viết này cung cấp cho bạn nhiều kiến thức bổ ích, chúc bạn thành công!

Nếu bạn có thắc mắc hay có vấn đề cần hỗ trợ, bạn có thể liên hệ trực tiếp với Vietnix thông qua các kênh sau:
  • Hotline: 1800 1093 - 07 088 44444
  • Email: support@vietnix.vn
  • Hoặc chat trực tiếp với Vietnix thông qua biểu tượng Livechat ở góc phải màn hình. Đội ngũ chuyên viên của chúng tôi luôn sẵn sàng tư vấn và hỗ trợ bạn 24/7.
Vietnix hiện đang có chương trình khuyến mãi lớn nhất trong năm, giảm giá TRỌN ĐỜI: Đăng ký dùng thử ngay và Vietnix sẽ hoàn tiền 100% nếu quý khách không hài lòng với chất lượng sản phẩm, dịch vụ!
Mình là Bo - admin của Quản Trị Linux. Mình đã có 10 năm làm việc trong mảng System, Network, Security và đã trải nghiệm qua các chứng chỉ như CCNP, CISSP, CISA, đặc biệt là chống tấn công DDoS. Gần đây mình trải nghiệm thêm Digital Marketing và đã hòan thành chứng chỉ CDMP của PersonVUE. Mình rất thích được chia sẻ và hỗ trợ cho mọi người, nhất là các bạn sinh viên. Hãy kết nối với mình nhé!
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments