Mobilidade na camada de Aplicação usando o Session Initiation Protocol (SIP) Referências: RFC 3261, IETF SIP Working Group http://www.radvision.com www.cs.columbia.edu/hgs/ www.networkcomputing.com Introdução Originalmente projetado por H. Schulzrinne (Columbia U.) e M. Handley y( (UCLondon) em 1996 SIP é um protocolo de sinalização básico para iniciar, gerenciar e terminar sessões (de texto, voz, video ou combinação destes) na internet. Pode ser usado por qualquer aplicação que requeira a iniciação de uma seção. Uma sessão SIP pode envolver um ou mais participantes (e pode usar unicast ou multicast) É independente do protocolo de transporte (pode ser usado com UDP, TCP ou SCTP) Mensagens são em texto
Endereçamento SIP Elementos endereçados por SIP são usuários em hosts (e não as máquinas) SIP Uniform Resource Locator (URL) [user@host] user = um username ou Número de telefone host = nome de domínio ou endereço IP Descoberta de domínios/hosts é feita com DNS Endereços SIP podem ser obtidos de várias formas: informação direta do usuário ái (out-of-band), aprendidos através de media gateways, gravados em uma conversa anterior, or chutados (são parecidos com enderços E-mail) Entidades SIP User Agent - executam no terminal do usuário User Agent Client componente que interage com usuário ou aplicação User Agent Server componente que responde às mensagens SIP Proxy Server é um servidor intermediário que faz chamadas em nome de um UA Redirect server é um UA que direciona uma chamada para um terceiro elemento Registrar servidor que aceita REGISTROS e passas as informações recebidas para um serviço de localização
Tratamento da Mobilidade pelo Redirect Server O RS encaminha chamadas para nova localização, fazendo papel de roteador; Para isso consulta servidor de localização Se UA trocar de endereço IP durante a seção, aplicação precisa solicitar um novo INVITE Cada request SIP é mapeado para 0 ou mais endereços, que são retornados para o cliente Ao contrário do Proxy, o RS não inicia uma nova requisição SIP Ao contrário de um UA, o RS não aceita chamadas Redirect Server Proxy Agent PSTN User Agent User Agent Tipos de Mensagem SIP Requisições: de cliente para o servidor q ç p INVITE ACK BYE CANCEL OPTIONS REGISTER INFO
Tipos de Mensagem SIP (Cont.) Respostas: do servidor para o cliente Success Redirection Forwarding Request failure Server failure Global failure Fonte: The RADVISION SIP Whitepaper
SIP Estabelecimento de uma Sessão Establishment Término da Chamada endler@inf.puc-rio.br bob@yahoo.com.br From the RADVISION whitepaper on SIP Redirecionamento de Chamadas From the RADVISION whitepaper on SIP
O Proxy Server Pode localizar o outro dispositivo e criar a sessão em nome do UA. From the RADVISION whitepaper on SIP Instant messaging baseado em SIP SIMPLE Session Inition Protocol for Instant M i d P L i E t i Messaging and Presence Leveraging Extensions SIP promete a interoperabilidade entre vários sistemas de IM SIP tem forma de acompanhar a localização do usuário, mesmo quando ele se conecta de diferentes máquinas Endereçamento SIP: username@domainname, independente de protocolos de transporte e de aplicações
Exemplo de SIP para Instant Messaging columbia.edu SIP Redirect server SIP Proxy dynamic.com 1 SIP Client 12 2 13 3 4 1 1 SIP proxy 5 foo.com 6 7 1 0 8 9 SIP Client Location service SIP proxy sales.foo.com Localizando um Servidor SIP Cliente indica um Universal Resource Identifier (Request-URI), ou indica um SIP proxy server previamente configurado Se for Request-URI, cliente precisa determinar (endereço IP, protocolo, & porta) do servidor destino Usa-se DNS para obter endereço IP Cliente deve tentar contactar servidor em porta especifica ou porta 5060 Se nenhum protocolo é definido, id então assume-se UDP Se UDP não funciona, usa-se TCP
Outras Aplicações do SIP PINT (PSTN and Internetworking) protocol Internet call waiting Futuro do SIP? SIP ainda é um proposed standard Já existem vários produtos e open source Asterisk, FreeSWITCH, SIP Express Router, sipx, CISCO, Microsoft Office Communications Server, etc. Existem protocolos competidores H.323 e XMPP Os produtos de IM ainda não adotaram o SIP Google anunciou que vai integrar sua extensão de XMPP (Jingle) com SIP