Rozumiem wiele drobnych szczegółów połączeń dziurkowania NAT, ICE i SIP VOIP. Odpowiedziałem na kilka pytań dotyczących SO na te tematy. Teraz mam pytanie.Jaka jest potrzeba SIP RE-INVITE w odniesieniu do ICE?
Próbuję zrozumieć potrzebę wiadomości RE-INVITE, która jest udokumentowana dla SIP + ICE po nawiązaniu połączenia.
Założenie topologii urządzeń VoIP, które sygnalizują SIP i używają ICE (z STUN/TURN) do ustanawiania łączności z mediami. Po przeprowadzeniu sprawdzania łączności ICE oba punkty końcowe powinny ustalić najlepsze pary kandydatów na adresy (adres IP, port) i powinny być gotowe do strumieniowego przesyłania multimediów w obu kierunkach.
Ale moje doświadczenie z SIP i dużą ilością dokumentacji sugeruje, że po wysłaniu przez callee komunikatu 200 OK, aby wskazać, że jest on w stanie odebranym, osoba dzwoniąca ma oczekiwać, że wyśle RE-INVITE z SDP zawierającą wybranego kandydata na adres przez kontrolę łączności.
Niektóre linki opisujące RE-INVITE z ICE to here i here (krok 8). Rosenberg's tutorial (strona 30) mówi, że RE-INVITE "zapewnia, że Middlebox ma prawidłowy adres medialny". Nie jestem pewien, dlaczego to jest ważne.
Po otrzymaniu RE-INVITE, czy spodziewany jest rekonfigurować swój stos ICE, aby przełączać gniazda lub adresy na podstawie otrzymanego nowego SDP? Czy też RE-INVITE jest formalnością protokołu, aby formalnie potwierdzić, że połączenie zostało ustanowione? Jeśli krok RE-INVITE został pominięty i obie strony zaczęły strumieniować multimedia, co mogło pójść nie tak?
Powodem, dla którego pytam, jest to, że badam używanie Lodu przez usługę sygnalizacji, która nie jest SIP. Próbuję dowiedzieć się, czy RE-INVITE musi być emulowany.
Co za nieszczęśliwy wyborca chce wyjaśnić, dlaczego nie podoba mu się to pytanie? – selbie