RTCP – Protokół Sterujący dla RTP
RTCP (Real-time Transport Control Protocol) jest protokołem wspierającym RTP (Real-time Transport Protocol) w transporcie danych w czasie rzeczywistym, takich jak audio i wideo. Jego głównym celem jest monitorowanie dostarczania danych oraz dostarczanie funkcji kontrolnych i identyfikacyjnych poprzez okresową transmisję pakietów kontrolnych do uczestników sesji.
Zadania RTCP
RTCP realizuje cztery kluczowe zadania:
- Przekazywanie informacji zwrotnej o poprawności odebranych danych.
- Przenoszenie stałego identyfikatora transportowego źródła (CNAME), który jest niezmienny w przeciwieństwie do identyfikatora SSRC.
- Dopasowywanie częstotliwości wysyłania pakietów kontrolnych do liczby uczestników sesji.
- Opcjonalne przenoszenie zminimalizowanej informacji kontrolnej, takiej jak identyfikator użytkownika nadawcy.
Format Pakietu RTCP
Pakiety RTCP mogą przyjmować różne formy, w tym:
- SR (Sender Report) – raport o statystykach nadawcy.
- RR (Receiver Report) – raport o statystykach odbiorcy.
- SDES (Source Description) – opis źródła sygnału z identyfikatorem CNAME.
- BYE – informacja o zakończeniu udziału w sesji.
- APP – pakiety z funkcjami specyficznymi dla aplikacji.
Pakiety RTCP są grupowane w tzw. pakiety złożone, które są przesyłane jako pojedyncze jednostki przez protokoły niższego poziomu, takie jak UDP.
Warunki Poprawnego Funkcjonowania RTCP
- Statystyki powinny być wysyłane regularnie, aby zapewnić ich dokładność.
- Nowi odbiorcy powinni jak najszybciej otrzymać identyfikator źródła (CNAME).
- Liczba typów pakietów w pakiecie złożonym powinna być ograniczona.
- Pierwszy pakiet w pakiecie złożonym musi być raportem (SR lub RR).
- Pakiet BYE, jeśli jest obecny, powinien być ostatni.
- Pakiet SDES z identyfikatorem CNAME musi być zawarty w każdym pakiecie złożonym, a inne informacje są opcjonalne.
Podsumowanie
RTCP jest kluczowym protokołem w systemach przesyłania danych w czasie rzeczywistym, który zapewnia niezbędne funkcje kontrolne i identyfikacyjne, wspierając efektywne zarządzanie sesjami multimedialnymi.