1 / 28

מעבדה למערכות מבוזרות

מעבדה למערכות מבוזרות. סמסטר אביב, תשס"ט. אדמיניסטרציה. סגל הקורס: פרופ/ח' רועי פרידמן, טאוב 605, roy@cs אלכס קוגן, טאוב 315, sakogan@cs אתר הבית: http://webcourse.cs.technion.ac.il/236371. שלב ראשון: בחירת הפרויקט. 1-2 פרויקטים מועדפים + אנשי צוות - בדוא"ל לאלכס

chesna
Download Presentation

מעבדה למערכות מבוזרות

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. מעבדה למערכות מבוזרות סמסטר אביב, תשס"ט

  2. אדמיניסטרציה • סגל הקורס: • פרופ/ח' רועי פרידמן, טאוב 605, roy@cs • אלכס קוגן, טאוב 315, sakogan@cs • אתר הבית: http://webcourse.cs.technion.ac.il/236371

  3. שלב ראשון: בחירת הפרויקט • 1-2 פרויקטים מועדפים + אנשי צוות - בדוא"ל לאלכס • תאריך יעד: שבוע מתחילת סמסטר • שיבוץ צוותים לפרויקטים לפי עדיפויות • על בסיס מקום פנוי

  4. שלב שני: Functional Specification • כתיבת מסמך functional specification לפרויקט • איך הבנתם את דרישות הפרויקט? • אילו כלים דרושים למימושו? • על אילו פלטפורמות הוא יעבוד (התקן, מ"ה וכו')? • אורך המסמך - עמוד אחד • תאריך יעד: שבועיים מתחילת סמסטר

  5. שלב שלישי: מסמך ארכיטקטורה • רשימת מודולים ויחסי גומלין ביניהם. לכל מודול: • האם מפותח מ-scratch או מבוסס על מימוש קיים? • מה הפונקציונאליות שלו? • על איזו פלטפורמה ירוץ? • תיאור Use-Case-ים נפוצים • תאור UI (אם קיים) • אורך המסמך -2 עמודים • תאריך יעד: 3 שבועות אחרי סיום שלב שני

  6. שלב רביעי:קדם מצגת • הצגת גרסת alpha של המערכת • הדגמת יכולות בסיסיות • ללא טיפול במקרי קצה • המטרה: לקבל משוב לפני הגשה סופית • תאריך יעד: 3 שבועות לפני סוף סמסטר

  7. שלב חמישי: הגשה סופית • הדגמת פרוייקט • מצגת קצרה • מדריך משתמש (Word / HTML) • מסמך ארכיטקטורה (Word / HTML) • מתוקן לפי המימוש הסופי • כל קוד הפרויקט (כולל כלים קיימים) • תאריך יעד: סוף סמסטר • נשתדל להיות גמישים ... מסודר בתוך אתר

  8. דרישות כלליות • קוד קריא, מתועד היטב ... • שפת תכנות - לפי בחירת הצוות • מלבד פרויקטים בהם נדרש פיתוח בשפה מסוימת • דגש על מימוש power-aware • ניתוח מספר הודעות נשלחות • הימנעות מחישובים מיותרים • תצוגה מותאמת לסוג מכשיר • לא מצופה GUI מתוחכם, אך חשוב שיהיה נוח

  9. מה אם נתקענו? • סגל הקורס זמין לשאלות לאורך כל הסמסטר • אתם מוזמנים להגיע ולדון בכל פרט הקשור לתכנון ומימוש הפרויקט • אל תחכו לרגע אחרון!!

  10. פרוייקטים מבוססי Asus Eee

  11. 1# : אפליקצית P2P ל-video streaming • פיתוח אפליקצית P2P להזרמת וידאו (streaming) בין מחשבים ניידים ברשת אלחוטית • כל מחשב יוכל להזרים ערוץ וידאו ו/או לקבל ערוצים המשודרים על ידי מחשבים אחרים • דוגמה לשימוש: מרצה בכיתה מציג סרטון לסטודנטים על גבי המחשבים שלהם • לצורך המימוש, נשתמש בשתי טכנולוגיות הבאות: • Bonjour - מימוש פשוט של מנגנון לגילוי שירותים (service discovery) של התקנים המחוברים לרשת • ספריית open source לעבודה עם וידאוVideoLan) )

  12. 1# : אפליקצית P2P ל-video streaming • צוות – עד 3 סטודנטים • מכשיר Asus לכל חברי צוות למשך כל הסמסטר • מיומנויות נרכשות: • הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות • פיתוח תוכנה peer-to-peer שימושית • עבודה עם ספריית וידאו

  13. 2# : אפליקציתP2P להעברת קול • תוכנה פשוטה לביצוע שיחות voice בין אנשים עם מחשבים המחוברים ברשת אלחוטית (דוגמת Skype) • שימוש בשתי טכנולוגיות מתקדמות Bonjour ו-XMPP • Bonjour- מימוש פשוט של מנגנון לגילוי שירותים (service discovery) של התקנים המחוברים לרשת • XMPP (Extensible Messaging and Presence Protocol) - טכנולוגית client-server לניהול נוכחות ותקשורת בזמן אמת • סטנדרט פתוח, עם מספר מימושים עבור צד של שרת ועבור צד של לקוח • המפורסם שבהם - GoogleTalk • שימוש במימוש קיים של תוכנה המשתמשת ב-XMPP ו-Bonjourוהוספת יכולת לביצוע voice chat

  14. 2# : אפליקציתP2P להעברת קול • צוות – עד 3 סטודנטים • מכשיר Asus לכל חברי צוות למשך כל הסמסטר • מיומנויות נרכשות: • הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות • פיתוח תוכנה peer-to-peer שימושית

  15. 3# : משחק P2P • פיתוח משחק P2P מרובה משתתפים ברשת אלחוטית • שימוש בטכנולוגיית Bonjour • מימוש פשוט של מנגנון לגילוי שירותים (service discovery) של התקנים המחוברים לרשת • הצוות יוכל לבחור את המשחק כרצונו • יש להיות מקוריים!

  16. 3# : משחק P2P • צוות – עד 3 סטודנטים • מכשיר Asus לכל חברי צוות למשך כל הסמסטר • מיומנויות נרכשות: • הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות • פיתוח תוכנה peer-to-peer שימושית

  17. 4# : Wireless-to-Wired proxy • תכנון ומימוש מערכת לשיתוף חיבור אינטרנט קווי בין מחשבים ניידים עם כרטיס WiFi • המערכת הבסיסית המורכבת משני חלקים: • צד של שרת אשר ירוץ על מחשב אישיעם חיבור קווי לאינטרנט וישמש כ-proxyעבור מחשבים ניידים לצורך גישה לאינטרנט • צד של לקוח אשר ירוץ על מחשב נייד בעל כרטיס WiFi ויאפשר חיבור לשרת ה-proxy • המערכת תחליף את הצורך בנתב אלחוטי בכרטיס אלחוטי

  18. 4# : Wireless-to-Wired proxy • צוות – 2-4 סטודנטים • בהתאם למספר הסטודנטים בקבוצה, נבחר לממש גם: • תמיכה בחיבור multi-hop • חיבור ממחשב נייד לשרת שעובר דרך מספר מחשבים ניידים • תמיכה בתזוזה של מחשבים ניידים • ניתוב חבילות דרך מסלולים חלופיים • מכשיר Asus לכל חברי צוות למשך כל הסמסטר • מיומנויות נרכשות: • הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות • פיתוח תוכנה peer-to-peer שימושית • מימוש אלגוריתם ניתוב ברשת ניידת

  19. פרוייקטים מבוססי Android

  20. 5# :Stocks Ticker • פיתוח תוכנה ל-Android למעקב בזמן אמת אחר רשימה של ניירות ערך שהמשתמש הגדיר • בעזרת חיבור אינטרנט לאתר פיננסי • התוכנה תרוץ ברקע ותתריע למשתמש על • שינויים קיצוניים במחיר נייר ערך • פרסום חדשות הקשורות לנייר

  21. 5# :Stocks Ticker • צוות - 2-3 סטודנטים • מיומנויות נרכשות: • פיתוח תוכנה לפלטפורמה ניידת עתידית • עבודה עם אמולטור מתקדם • הכרות תכנות GUI ב-Java

  22. 6# : יצירת ערוץ מאובטח עם XMPP • שימוש בפרוטוקול XMPP ליצירת ערוץ מאובטח בין שני מכשירי Android • בעזרת ערוץ זה, נייצר shell מרוחק - אפליקציה שבעזרתה נוכל להריץ פקודות על מכשיר מרוחק ולקבל תוצאות על מכשיר מקומי

  23. 6# : יצירת ערוץ מאובטח עם XMPP • צוות - 2 סטודנטים • מיומנויות נרכשות: • פיתוח תוכנה לפלטפורמה ניידת עתידית • עבודה עם אמולטור מתקדם • הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות

  24. פרוייקט מבוסס PC

  25. 7# : ערוץ "חודר Firewall" עם XMPP • בארגונים רבים, מדיניות אבטחה מונעת תוכנות רבות מלהתחבר לאינטרנט • לעתים, שימוש בפרוטוקול XMPP כן אפשרי • GoogleTalk עובד ... • ננסה להראות כי בעזרת XMPP ושימוש במחשב Proxy (שיכול להיות ממוקם בבית), ניתן להפעיל תוכנות "אסורות" בארגון • נעשה זאת ע"י יצירת tunnel בין שני מחשבים

  26. 7# : ערוץ "חודר Firewall" עם XMPP • צוות - 2 סטודנטים • מיומנויות נרכשות: • הכרת טכנולוגיות חדשות בעולם מערכות מבוזרות • ישום עקרונות ומושגים הנלמדים בקורס מערכות הפעלה, תקשורת נתונים ותכנות מקבילי ומבוזר

  27. פרויקטים מחקריים

  28. פרויקטים מחקריים • השנה מוצעים מספר פרויקטים מחקריים בעלי אופי תאורטי • אך משלבים לא מעט פיתוח! • השתתפות באחד הפרויקטים האלה עשויה לשמש נקודת התחלה מצוינת למחקר בתחום מערכות מבוזרות • על כן, מומלצת במיוחד לסטודנטים בשלבי סיום של לתואר ראשון או לסטודנטים מוסמכים • בונוס נוסף הוא האפשרות לפרסום תוצאות הפרויקט באחד הכנסים המובילים בתחום מערכות מבוזרות • לפרטים, נא לפנות לצוות הקורס

More Related