Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Model programowania aplikacji komunikacyjnych przy użyciu Java SIP Servlet API Waldek Kot.

Podobne prezentacje


Prezentacja na temat: "Model programowania aplikacji komunikacyjnych przy użyciu Java SIP Servlet API Waldek Kot."— Zapis prezentacji:

1 Model programowania aplikacji komunikacyjnych przy użyciu Java SIP Servlet API
Waldek Kot

2 Agenda Dlaczego taki temat ? Krótkie wprowadzenie do protokołu SIP
Demo - Hello SIP Servlet World Krótkie wprowadzenie do SIP Servlet API Demo - Przykładowe aplikacje Przydatne narzędzia i informacje Q&A

3 Dlaczego taki temat ? Trochę inne zastosowanie Java i pochodnych technologii Przełamać opory przed przyglądnięciem się „technologii telekomunikacyjnej” rozumiejąc jak się buduje aplikacje web, już wiecie jak budować aplikacje komunikacyjne Kariera na horyzoncie są duże projekty także w Polsce operatorzy dostawcy technologii i usług ciekawe konkursy

4 Protokół SIP Internetowy protokół do zarządzania sesjami komunikacyjnymi multi-media Protokół sygnalizacyjny przynajmniej w dużym stopniu Ma wiele wspólnego z HTTP i SMTP Współpracuje też z innymi znanymi: IP, TCP/UDP/SCTP, DNS, RTP, SDP, NAT, ... z HTTP: model client-server (request-response), stosowanie URI, statusy Z SMTP: protokół tekstowy, nagłówki Ale w odróżnieniu od HTTP, m.in.: jest asynchroniczny (zdarzeniowy) peer-to-peer (np. serwer może inicjować komunikację) wiele odpowiedzi do jednego żądania transakcyjność wbudowana maszyna stanów SIP nie jest protokołem transportowym nie zarządza przesyłaniem mediów Bardzo bogata rodzina specyfikacji (kilkaset) Główne specyfikacje: RFC3621 do 3265 Bardzo duże wsparcie operatorów, dostawców sprzętu i oprogramowania

5 Typowa komunikacja w SIP
Registrar Server Redirect Server Registrar Server 3: INVITE Proxy Server 4: Contact B 1: REGISTER Proxy Server 5: INVITE 8: OK 2: REGISTER 9: OK 6: INVITE User Agent 7: OK 10: ACK User Agent 12: BYE Caller A 11: Media (RTP) Caller B lallala

6 Przykład komunikatu SIP (Request)

7 Przykład komunikatu SIP (Response)

8 SIP Request – wybrane metody
REGISTER INVITE ACK OPTIONS BYE CANCEL INFO MESSAGE SUBSCRIBE NOTIFY PRACK UPDATE PUBLISH ....

9 SIP Request – wybrane nagłówki (headers)
To From Contact CSeq Call-ID Via Expires Max-Forwards Content-Type Content-Length Record-Route ....

10 Typowa sesja komunikacyjna

11 Inny przykład sesji (B2BUA)

12 SIP Server przetwarza komunikaty SIP różne role
proxy registrar redirect najbardziej elastyczny –> SIP application server programowalny kontener dla aplikacji SIP często udostępniający też inne modele (web, J2EE/JEE) integracja różnych „światów” są różne modele budowy aplikacji SIP (w tym non-Java) SIP Servlet API (JSR-116 i wkrótce JSR-289) SIP CGI JAIN SLEE JAIN SIP ... SIP app server wspiera programistę Programowanie na wyższym poziomie abstrakcji Zajmuje się złożonymi aspektami (transakcje, security, ...) Skalowalność, niezawodność, wysoka dostępność, ... Zarządzanie Możliwość integracji z innymi systemami/technologiami

13 Miejsce SIP Servlet Dialog Management Layer Transaction Layer Stos SIP
(niskopoziomowa sygnalizacja) Message Parser (Coder/Decoder) Transport Layer TCP UDP TLS lallala

14 Miejsce SIP Servlet Obiekty Request Response Message ... Session API
Timer API Deployment Listeners SIP Servlet Container Dialog Management Layer Transaction Layer Stos SIP Message Parser (Coder/Decoder) Transport Layer TCP UDP TLS lallala

15 Servlet API – Przypomnienie (?)
Request / Response np. HTTP request / HTTP response Kontener jest hostem dla servlet’ów Mapowanie URI do servletów ServletConfig ServletContext Sesje bo HTTP jest bezstanowy

16 Demo – Hello World SIP

17 SIP Servlet API JSR-116 wkrótce uaktualnienie JSR-289, m.in. 2003 r.
uściślenia – m.in. „współpraca” sesji HTTP i SIP kompozycja aplikacji adnotacje (podobnie jak w HTTP Servlet 2.5)

18 Model obiektów SIP Servlet

19 Klasa SIP Servlet

20 Klasy SipServletRequest i SipServletResponse

21 Klasa SipFactory

22 Sesje (2 rodzaje)

23 URI i adresy

24 Proxy

25 Timers

26 Mapowanie (w sip.xml) lallala

27 Kompozycja aplikacji SIP Request SIP Request SIP “Request Object”
SIP Servlet App. 1 SIP Servlet App. 2 SIP Servlet App. 3 SIP “Request Object” SIP “Request Object” SIP “Request Object” SIP Request SIP Request Servlet Container lallala

28 Przydatne narzędzia IDE SIP app server (z kontenerem SIP Servlet)
BEA WebLogic SIP Server IBM WebSphere 6.x takża ma prosty kontener SIP Servlet Glassfish – projekt SailFin – wciąż w fazie beta/alpha ... Wireshark Telefony Softphone: np.: X-lite, SJ Phone, ... „Hard”: np.: Grandstream SIP client (np. Nokia E61i) SIPp – przydatne do testowania, wysyła i przetwarza komunikaty SIP Opcje: media servers, gateways, ...

29 Demo Aplikacja SIP

30 Demo Aplikacja konwergentna „Click-to-make-a-conference”

31 Przydatne informacje SIP Servlet API http://dev2dev.bea.com/wlcp

32 Podsumowanie Dlaczego taki temat ?
Krótkie wprowadzenie do protokołu SIP Demo - Hello SIP Servlet World Krótkie wprowadzenie do SIP Servlet API Demo - Przykładowe aplikacje Przydatne narzędzia i informacje

33 Waldek Kot (prv) waldemar_kot@gazeta.pl waldemar.kot@bea.com
Dzięki  ! Waldek Kot (prv)


Pobierz ppt "Model programowania aplikacji komunikacyjnych przy użyciu Java SIP Servlet API Waldek Kot."

Podobne prezentacje


Reklamy Google