SIP-basert Proaktiv Handover
Abstract
Utviklingen innen informasjons- og kommunikasjonsteknologi går raskt. Stadig flere løsninger og tjenester blir tilgjenglige over internett, ulike teknologier smelter sammen og det er en eksplosiv økning i mobile brukere på verdensbasis. På grunn av dette er det viktig å designe og modellere mobilitetshåndteringer i heterogene nettverk på den mest effektive måten, for dermed å sikre tilgjengeligheten til enhver klient basert på en definert tjenestekvalitet. En utfordring med heterogene nett er mangelen på en felles mobilitetshåndteringsfunksjon. Vi kan oppnå sesjonskontinuitet ved innføring av to hovedtilnærminger. Den første baseres på nettverkslaget med Mobile IP og den andre baseres på applikasjonslaget med eksisterende protokoller for VoIP som H.323 og Session Initiation Protocol (SIP). Denne hovedoppgaven behandler kun den andre tilnærmingen med hovedfokus på SIP. For å kunne opprettholde en sesjon ved et nettskifte er det nødvendig å ha en form for handoverhåndtering. Med begrepet handover menes hva som skjer når en mobilenhet beveger seg ut av dekningsområdet og skifter nettverksaksesspunkt. SIP er en applikasjonslagsprotokoll designet for å sette opp, modifisere og terminere peer-to-peer-sesjoner. Den har foreløpig ingen effektiv mekanisme for handoverhåndtering når en sesjon allerede er i gang. En effektiv handover-mekanisme som gir mulighet for å holde en sesjon i live ved bytte mellom to ulike IP-nett, ble tidligere foreslått og kalt for proaktiv handover. Videre beskriver denne rapporten implementeringen av SIP-basert proaktiv handover i en valgt open source VoIP- klient, "SIP-Communicator", som bruker SIP-stack fra JAIN-SIP. JAIN-SIP utgjør en komplett stack, med APIer fra kommunikasjonsprotokollen SIP opp til ulike tjenester. Siden implementeringen av proaktiv handover krever modifisering av standard SIP-meldinger, er det også nødvendig å endre JAIN-SIP stacken på tilsvarende måte. Prosjektoppgaven er en videreføring av mitt tidligere prosjektarbeid utført høsten 2007, under temaet Mobilitet i heterogene nettverk . Hovedfokuset da var å studere hensikten med innføring av mobilitetshåndteringer i heterogene nettverk og analysere SIP Communicator programvaren for viderearbeid. Hovedfokus for denne hovedoppgaven har vært analyse av mitt tidligere forslag for implementering av proaktiv handover, undersøke sterke og svake sider rundt forslaget og eventuelt å foreslå en ny løsning for implementering. Den nye løsningen som beskrives og implementeres i denne rapporten baseres på primær implementering av SIP proaktiv handover i JAIN-SIP-stack ved å instansiere to Listening Point i SIP-stacken. Hvert registrert ListeningPoint beregnes dermed som et nettverksgrensesnitt for sesjonsoverføringen. Et ListeningPoint er et objekt som mapper til en IP-adresse og portnummer tilgjengelig over SIP-stacken. I tillegg til IP-adressen og portnummeret, var det nødvendig å mappe til en transporttype. Transporttypen kan være TCP, UDP eller TLS. Dermed indikerer en SipProvider typen for medietransport for hvert av de tilhørende ListeningPoint-ene. . Oppgaven omfatter basisteori omkring mobilitetsløsninger med hovedfokus på SIP og muligheter for implementering av SIP proaktiv handover, løsningsspesifikk teori, design av løsning, implementeringsbeskrivelse, dokumentasjon, testrapport, samt en del-implementert løsning for SIP proaktiv handover.