SIP - Мобильность
Personal mobilityэто возможность иметь постоянный идентификатор на нескольких устройствах. SIP поддерживает базовую персональную мобильность с использованием метода REGISTER, который позволяет мобильному устройству изменять свой IP-адрес и точку подключения к Интернету, сохраняя при этом возможность принимать входящие вызовы.
SIP также может поддерживать service mobility - возможность пользователя сохранять те же услуги в мобильном телефоне
Мобильность SIP во время передачи обслуживания (предварительный вызов)
Устройство связывает свой контактный URI с адресом записи с помощью простой регистрации sip. В соответствии с IP-адресом устройства регистрация разрешает автоматическое обновление этой информации в сети sip.
Во время передачи пользовательский агент выполняет маршрутизацию между различными операторами, где он должен снова зарегистрироваться в контакте в качестве AOR с другим поставщиком услуг.
Например, давайте возьмем пример следующего потока вызовов. UA, который временно получил новый SIP URI от нового поставщика услуг. Затем UA выполняет двойную регистрацию -
Первая регистрация выполняется с новым оператором службы, который связывает контактный URI устройства с URI AOR нового поставщика услуг.
Второй запрос REGISTER направляется обратно к исходному поставщику услуг и предоставляет AOR нового поставщика услуг в качестве контактного URI.
Как показано ниже в потоке вызовов, когда запрос поступает в сеть исходного поставщика услуг, сообщение INVITE перенаправляется новому поставщику услуг, который затем направляет вызов пользователю.
Для первой регистрации сообщение, содержащее URI устройства, будет:
REGISTER sip:visited.registrar1.com SIP/2.0
Via: SIP/2.0/UDP 172.22.1.102:5060;branch = z9hG4bK97a7ea349ce0fca
Max-Forwards: 70
To: Tom <sip:[email protected]>
From: Tom <sip:[email protected]>;tag = 72d65a24
Call-ID: [email protected]
CSeq: 1 REGISTER
Contact: <sip:[email protected]:5060>
Expires: 600000
Content-Length: 0
Второе регистрационное сообщение с перемещаемым URI будет:
REGISTER sip:home.registrar2.in SIP/2.0
Via: SIP/2.0/UDP 172.22.1.102:5060;branch = z9hG4bKah4vn2u
Max-Forwards: 70
To: Tom <sip:[email protected]>
From: Tom <sip:[email protected]>;tag = 45375
Call-ID:[email protected]
CSeq: 6421 REGISTER
Contact: <sip:[email protected]>
Content-Length: 0
Первое ПРИГЛАШЕНИЕ, представленное на приведенном выше рисунке, будет отправлено на sip: registrar2.in; второе ПРИГЛАШЕНИЕ будет отправлено на sip: sip: [email protected], которое будет отправлено наsip:[email protected]. Он достигает Тома и позволяет установить сеанс. Периодически необходимо обновлять обе регистрации.
Мобильность во время разговора (повторное приглашение)
Пользовательский агент может изменять свой IP-адрес во время сеанса при переключении из одной сети в другую. Базовый SIP поддерживает этот сценарий, так как повторное ПРИГЛАШЕНИЕ в диалоговом окне может использоваться для обновления контактного URI и изменения медиаинформации в SDP.
Взгляните на поток вызовов, показанный на рисунке ниже.
Здесь Том обнаруживает новую сеть,
Использует DHCP для получения нового IP-адреса и
Выполняет повторное ПРИГЛАШЕНИЕ, чтобы разрешить передачу сигналов и мультимедиа на новый IP-адрес.
Если UA может получать медиа из обеих сетей, прерывание незначительно. Если это не так, несколько медиапакетов могут быть потеряны, что приведет к небольшому прерыванию вызова.
Повторное ПРИГЛАШЕНИЕ будет выглядеть следующим образом -
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP 172.22.1.102:5060;branch = z9hG4bK918f5a84fe6bf7a
Max-Forwards: 70
To: <sip:[email protected]>
From: sip:[email protected];tag = 70133df4
Call-ID: 76d4861c19c
CSeq: 1 INVITE
Accept: application/sdp
Accept-Language: en
Allow: INVITE,ACK,CANCEL,BYE,INFO,OPTIONS,REFER,NOTIFY,SUBSCRIBE
Contact: <sip:172.22.1.102:5060>;
Content-Type: application/sdp
Content-Length: 168
v = 0
o = PPT 40467 40468 IN IP4 192.168.2.1
s = -
c = IN IP4 192.168.2.1
b = AS:49
t = 0 0
b = RR:0
b = RS:0
a = rtpmap:97 AMR/8000/1
m = audio 6000 RTP/AVP 96
a = fmtp:102 0-15
a = ptime:20
a = maxptime:240
Повторное ПРИГЛАШЕНИЕ содержит новый IP-адрес Bowditch в полях заголовка Via и Contact, а также медиа-информацию SDP.
Мобильность в Midcall (с replace Header)
При промежуточной мобильности фактический набор маршрутов (набор прокси-серверов SIP, которые должны проходить сообщения SIP) должен измениться. Мы не можем использовать re-INVITE в мобильной связи
Например, если прокси-сервер необходим для прохождения NAT, необходимо изменить URI контакта - необходимо создать новый диалог. Следовательно, он должен отправить новое ПРИГЛАШЕНИЕ с заголовком Replaces, который идентифицирует существующий сеанс.
Note - Предположим, что A и B оба находятся в состоянии вызова, и если A получает другое сообщение INVITE (скажем, от C) с заголовком замены (должно соответствовать существующему диалогу), то A должен принять INVITE и завершить сеанс с помощью B и передать все ресурсы вновь сформированный диалог.
Поток вызовов показан на следующем рисунке. Он похож на предыдущий поток вызовов с использованием re-INVITE, за исключением того, что BYE автоматически генерируется для завершения существующего диалога, когда принимается INVITE с заменами.
Ниже приведены моменты, которые следует отметить в этом сценарии -
Существующий диалог между Томом и Джерри включает старый посещенный прокси-сервер.
Новый диалог, использующий новую беспроводную сеть, требует включения нового посещенного прокси-сервера.
В результате Том отправляет ПРИГЛАШЕНИЕ с заменами, которое создает новый диалог, который включает новый посещенный прокси-сервер, но не старый посещенный прокси-сервер.
Когда Джерри принимает ПРИГЛАШЕНИЕ, автоматически отправляется BYE, чтобы завершить старый диалог, который проходит через старый посещенный прокси-сервер, который теперь больше не участвует в сеансе.
Результирующий медиа-сеанс устанавливается с использованием нового IP-адреса Тома из SDP в сообщении INVITE.
Мобильность услуг
Услуги в SIP могут быть предоставлены как через прокси, так и через UA. Обеспечение мобильности услуг наряду с личной мобильностью может быть сложной задачей, если устройства пользователя не настроены одинаково для использования одних и тех же услуг.
SIP может легко поддерживать мобильность услуг через Интернет. При подключении к Интернету UA, настроенный на использование набора прокси в Индии, может по-прежнему использовать эти прокси в роуминге в Европе. Это не влияет на качество сеанса мультимедиа, поскольку мультимедиа всегда проходит напрямую между двумя UA и не проходит через прокси-серверы SIP.
Резидентные службы конечной точки доступны только тогда, когда конечная точка подключена к Интернету. Завершающая служба, такая как служба переадресации вызовов, реализованная в конечной точке, выйдет из строя, если конечная точка временно потеряла подключение к Интернету. Следовательно, некоторые службы реализуются в сети с использованием прокси-серверов SIP.