170 likes | 342 Views
Final presentation. SIP based VoIP conference server. by Roman Nassimov & Evgeny Erlihman. תוכן המצגת. מוטיבציה יעדי הפרויקט רקע סקירה ארכיטקטונית של המערכת אופן פעולת המערכת סיכום. מוטיבציה.
E N D
Final presentation SIP based VoIP conference server by Roman Nassimov & Evgeny Erlihman
תוכן המצגת • מוטיבציה • יעדי הפרויקט • רקע • סקירה ארכיטקטונית של המערכת • אופן פעולת המערכת • סיכום
מוטיבציה טלפונייה מבוססת אינטרנט (VoIP) היא תחום מתפתח ומתרחב בצורה מהירה. אפליקציות רבות קיימות כיום – skype, ooVoo, msn etc. ולאחרונה אפילו Google.
יעדי הפרויקט • פיתוח אפליקציית שרת שתספק מענה לצורכי ועידה רבת משתמשים. • ניהול והקמת שיחות ועידה בעזרת SIP. • ניתוב מחדש חבילות קול ברמת UDP. • ניהול מדיה בעזרת JMF.
יעדים אישיים שהושגו • הכרת SIP. • הכרת שפת Java ו- JMF. • התנסות בהעברת קול מעל UDP לפי RTP. • הכרת אופן עבודה של פרוטוקולי תקשורת ברשת.
רקע מודל שיחת ועידה מבוססת שרת מול P2P. יתרונות: • רוחב פס יוצא אצל משתתפי ועידה קטן בהרבה יחסית למודל השני • עומס עבודה עיקרי מוטל על השרת ולא על המחשב החזק ביותר מבין המשתתפים חסרונות: • כשל בשרת גורם לכשל כל הועידות
רקע - SIP Session Initiation Protocol RFC 3261 פרוטוקול איתות המשמש להקמת שיחה בין לקוחות • יתרונות: • קל להבנה (פחות קל בשימוש). • תמיכה בשחזור חבילות אבודות (שימוש ב-timeouts). • בעל השהיה נמוכה ליצירת שיחה. • ניתן להרחבה.
רקע - JMF Java Media Framework • חבילה רשמית של סאןמאפשרת ניהול וטיפול במדיה מזמן אמת. • חבילה נוחה לשימוש למתחילים בתחום • אינה נתמכת יותר ע"י היצרן
סקירת המערכת • אפליקציית שרת אשר תספק שרותי ועידה למספר משתמשים, עם אחד המשתמשים כמנהל הועידה. • אפלקציית משתמש אשר תשמש משתתף בועידה. • השרת מסוגל לקיים מספר שיחות ועידה בו זמנית.
Server - Client Application Server: • תמיכה בהקמת ועידה חדשה וניהולה בהתאם להוראות מנהל השיחה. • קבלת שידורי קל מכל משתמש והזרמתם לשאר משתתפי השיחה. Client: • מדמה משתתף ועידה על ידי שידור קול מוקלט והשמעת שידורים מתקבלים. • ישתתף בהקמת וניהול הועידה.
סקירה ארכיטקטונית השרת מחולק לשני חלקים עיקריים: • ניהול שיחות ועידה (הקמה, סיום, הוספת משתתפים וכו') • קבלת מדיה קולי וניתובו למשתמשי הועידה המתאימה SIP messaging & User management RTP Media forwarding
System design: Server Sip sender/listener Object model sip agents databases connectors to outside 1 Sip command handler 2 Call database 2 Participants database 4 4 3 Packets preparing 6 5 Packets sender Packet receiver
UA Session master Server UA invitee invite 100 invite 200 200 ACK ACK SESSION אופן פעולת המערכת UA Server UA נתאר אופן ניהול שיחת ועידה עם 3 משתתפים:
הזמנת משתתף נוסף באופן דומה בהודעות 466-494 סיום שיחת ועידה ע"י moderator xxx.xx.xx.75 – server addr.xxx.xx.xx.76 – moderator addr.xxx.xx.xx.74 / 77 - callees ניהול שיחת ועידה בת 3 משתתפים קבלת בקשת INVITEמיוזם השיחה (moderator) אשר כוללת בתוכה את כתובת המוזמן (calee) שליחת אישור על קבלת ההודעה ליוזם שליחת בקשת INVITE למוזמן קבלת אישור על קבלת INVITE אצל המוזמן קבלת אישור מהמוזמן על כך שהוא מוכן להשתתף בשיחה שליחת אישור ליוזם על כן שהמוזמן מוכן שליחת אישור למוזמן על תחילת השיחה קבלת אישור מהיוזם כאשר מספר ועידות >1 מתקבל רצף הודעות SIP זהה עבור כל שיחה ללא תלות בשיחות אחרות
סיכום יעדי הפרויקט שהושגו: • הבנת פרוטוקול SIP ושימוש בו • התנסות ב-JMF • התנסות עבודה בשכבת הרשת אפשרויות להרחבה: • הוספת וידאו והודעות טקסט • תמיכה ב-NAT • מערכת רישום משתמשים