Articole & Tutoriale VoIP

Despre VoIP - Ce inseamna SIP?

09 Mar 2007

In partea a treia a articolului "Despre VoIP" vom discuta despre unul dintre cele mai utilizate protocoale in sfera VoIP: SIP. Vom descrie pe scurt cum decurge inregistrarea si cum se desfasoara un apel SIP intre doua extensii interne.

Ulterior vom discuta despre posibilitatea conectarii unor telefoane analogice la o retea VoIP utilizand adaptoare FXS-SIP (numite si ATA - Analog Telephony Adapter), oferind in final un exemplu de instalare a unui astfel de adaptor.

Ce inseamna SIP?

Prescurtarea de la "Session Initiation Protocol" SIP este unul din protocoalele folosite de tehnologia VoIP. Acesta asigura crearea, modificarea sau terminarea sesiunilor cu unul sau mai multi participanti. Este un protocol de tip text, portul standard fiind 5060 (UDP sau TCP). O descriere pe larg a acestui protocol poate fi gasita la adresa http://www.ietf.org/rfc/rfc3261.txt precum si la http://www.voip-info.org/wiki-SIP.

Inregistrarea

Inainte de a putea apela sau a primi apeluri, un telefon IP sau client software (numit in continuare client SIP) trebuie sa se inregistreze la o centrala de tip PBX. Aceasta se face pe baza unui set format din cont si parola, informatii care sunt transmise unui echipament de tip server.

Cum se desfasoara un apel SIP?

Aparatele telefonice clasice se bazeaza pe centrala pentru a genera tonul de linie. In schimb, clientul SIP va genera singur acest ton, dupa ce in prealabil acesta s-a inregistrat.

Pentru a genera un apel extern (de la A la B), clientul A va genera un mesaj SIP de tip "Invite". Acesta este transmis serverului (centrala de tip PBX) care ii va raspunde cu un mesaj de tip "Trying" (cod 100).

Mesajul "Invite" primit de server este transmis, pe baza unor reguli de rutare, catre un alt server sau client. In cele din urma, clientul B primeste mesajul "Invite", genereaza semnalul de apel si raspunde prin mesajul "Ringing" (cod 180). Acesta este propagat inapoi pana la clientul A, unde se genereaza in receptor tonul specific.

In momentul in care clientul B decide sa raspunda apelului se transmite mesajul "OK" (cod 200), propagat la randul lui catre clientul A. Clientul A va confirma receptionarea acestui mesaj prin transmiterea unui mesaj de tip "ACK".

Din acest moment incepe transmisia pachetelor de voce, prin protocol RTP (Real Time Protocol) pana cand unul din clienti decide sa termine apelul prin transmiterea unui mesaj de tip "Bye". Celalalt client raspunde printr-un mesaj de tip "OK" iar apelul se termina.

Codurile mesajelor de raspuns

Codurile mesajelor de raspuns sunt consistente cu cele ale mesajelor HTTP fiind rezumate in tabelul de mai jos.

Codurile 1xx - raspunsuri informale

100 = Trying

180 = Ringing

181 = Call is being forwarded

182 = Queued

183 = Session Progress

Codurile 4xx - raspunsuri de esec

400 = Bad request

401 = Unauthorized

402 = Payment required

403 = Forbidden

404 = Not found

405 = Method not allowed

406 = Not acceptable

407 = Proxy Authentication required

408 = Request timeout

410 = Gone

413 = Request entity too large

414 = Request-URI too long

415 = Unsuported media type

416 = Unsupported URI scheme

420 = Bad extension

421 = Extension required

423 = Interval too brief

480 = Temporarily unavailable

481 = Call or transaction does not exist

482 = Loop detected

483 = Too many hops

484 = Address incomplete

485 = Ambiguous

486 = Busy here

487 = Request terminated

488 = Not acceptable here

491 = Request pending

493 = Undecipherable

Codurile 2xx - raspunsuri in caz de succes

200 = OK

Codurile 3xx - raspunsuri de redirectare

300 = Multiple Choices

301 = Moved permanently

302 = Moved temporarily

305 = Use proxy

Codurile 5xx - raspunsuri in caz de eroare la        nivel server

500 = Server internal error

501 = Not implemented

502 = Bad gateway

503 = Service unavailable

504 = Server time-out

505 = Version not supported

513 = Message too large

Codurile 6xx - raspunsuri de esec globale

600 = Busy everywhere

603 = Decline

604 = Not acceptable


Ce este un adaptor SIP?

In cazul in care se doreste utilizarea unor echipamente telefonice analogice in loc de telefoane SIP sau interconectarea unei linii analogice cu server-ul SIP, este necesar sa se utilizeze un adaptor SIP. Astfel, telefoanele necesita porturi de tip FXS iar pentru liniile analogice sunt necesare porturi FXO. Adaptorul trebuie sa fie configurat asfel incat sa se inregistreze la un server SIP inainte ca porturile FXS / FXO sa poata fi utilizate.

Adaptoare SIP disponibile de la Linksys

Prin linia de produse LVS (Linksys Voice System) sunt disponibile urmatoarele adaptoare SIP:

  • PAP-2T - adaptor SIP cu 2 porturi FXS
  • SPA2102 - adaptor SIP cu 2 porturi FXS + router
  • SPA3102 - adaptor SIP cu 1 port FXS, 1 port FXO + router

Cum se instaleaza un adaptor SIP PAP2T

  1. Se conecteaza alimentarea, cablul de retea si un telefon analogic la unul din porturile FXS
  2. Se afla adresa IP asignata de retea (printr-un server DHCP) prin intrarea in meniul de configurare (tastare ****)
  3. Se acceseaza pagina de configurare a adaptorului PAP2T prin utilizarea unui browser Internet introducand adresa IP asociata echipamentului
  4. Se configureaza sectiunea "Line 1" sau "Line 2" cu datele contului SIP configurate in prealabil (adresa server SIP, cont si parola)
  5. Se salveaza configuratia si se verifica daca linia configurata s-a inregistrat cu succes. Pentru a va familiariza cu interfata grafica de configurare a adaptorului SIP PAP2T, aceasta poate fi accesata la adresa http://ui.linksys.com/files/PAP2/User-Basic.htm

Asteptam comentariile si sugestiile dumneavoastra pe adresa info@modulo.ro cat si pe forumul VOIP - totul despre voice over ip, cu subiectul Ce inseamna SIP.