SIP - podstawowy przepływ połączeń
Poniższy obraz przedstawia podstawowy przepływ połączeń w sesji SIP.
Poniżej znajduje się wyjaśnienie krok po kroku powyższego przepływu połączeń -
Za zainicjowanie sesji odpowiada żądanie INVITE wysyłane do serwera proxy.
Serwer proxy sendsa 100 Trying natychmiastowa odpowiedź do dzwoniącego (Alicji), aby przerwać ponowną transmisję żądania INVITE.
Serwer proxy wyszukuje adres Roberta na serwerze lokalizacji. Po uzyskaniu adresu przekazuje dalej żądanie INVITE.
Odtąd, 180 Ringing (Tymczasowe odpowiedzi) wygenerowane przez Boba są zwracane Alicji.
ZA 200 OK odpowiedź jest generowana wkrótce po podniesieniu telefonu przez Roberta.
Bob otrzymuje ACK od Alice, kiedy już się pojawi 200 OK.
W tym samym czasie sesja zostaje nawiązana i pakiety RTP (konwersacje) zaczynają płynąć z obu końców.
Po rozmowie każdy uczestnik (Alicja lub Bob) może wysłać plik BYE żądanie zakończenia sesji.
BYE sięga bezpośrednio od Alicji do Boba z pominięciem serwera proxy.
Wreszcie Bob wysyła plik 200 OK odpowiedź potwierdzająca BYE i sesja zostaje zakończona.
W powyższym podstawowym przepływie połączeń trzy transactions są (oznaczone jako 1, 2, 3) dostępne.
Cała rozmowa (od INVITE do 200 OK) jest znana jako Dialog.
Trapez SIP
W jaki sposób proxy pomaga połączyć jednego użytkownika z innym? Dowiedzmy się za pomocą poniższego schematu.
Topologia pokazana na schemacie jest znana jako trapez SIP. Proces przebiega w następujący sposób -
Gdy dzwoniący inicjuje połączenie, do serwera proxy wysyłana jest wiadomość INVITE. Po otrzymaniu INVITE serwer proxy podejmuje próbę ustalenia adresu odbiorcy za pomocą serwera DNS.
Po uzyskaniu następnej trasy serwer proxy dzwoniącego (Proxy 1, znany również jako wychodzący serwer proxy) przekazuje żądanie INVITE do serwera proxy wywołującego, który działa jako przychodzący serwer proxy (Proxy 2) dla odbiorcy.
Serwer proxy ruchu przychodzącego kontaktuje się z serwerem lokalizacji, aby uzyskać informacje o adresie odbiorcy, pod którym zarejestrował się użytkownik.
Po uzyskaniu informacji z serwera lokalizacji przekazuje połączenie do miejsca docelowego.
Gdy agenci użytkownika poznają swój adres, mogą ominąć połączenie, czyli rozmowę przechodzić bezpośrednio.