210 likes | 420 Views
Wireless Mesh Project Multi-Hop WLAN Networks. טל קול, ארקדי וייסמן מנחה: אדי בורטניקוב חלק ממחקר המתבצע ע"י אדי בורטניקוב, פרופ' ישראל צידון ודר' עידית קידר המעבדה למערכות תכנה הפקולטה להנדסת חשמל, הטכניון. LQSR. רשתות Mesh אלחוטיות – למה?. פרישת WLAN רחבה דורשת AP בכל מקום
E N D
Wireless Mesh ProjectMulti-Hop WLAN Networks טל קול, ארקדי וייסמן מנחה: אדי בורטניקוב חלק ממחקר המתבצע ע"י אדי בורטניקוב, פרופ' ישראל צידון ודר' עידית קידר המעבדה למערכות תכנה הפקולטה להנדסת חשמל, הטכניון
LQSR רשתות Mesh אלחוטיות – למה? • פרישת WLAN רחבה דורשת AP בכל מקום • לא! כל מחשב שולחני יהיה נתב (multi-hop)
הפלטפורמה שבחרנו • פרויקט ניסיוני של Microsoft Research(Networking Research Group) • Mesh Connectivity Layer(MCL) • מיועד לרשתות Ad-Hoc • מימוש ראשוני קיים באמצעות driver • קוד וערכת פיתוח ניתנים לאוניברסיטאות • רץ על מחשב Windows XP ביתי!
פרוטוקול ניתוב ברשת Mesh • פרוטוקול ניתוב ברמה 2.5 בשם LQSR • פיתוח של פרוטוקול IETF בשם DSR • Source Routing – כל מסלול הניתוב מופיע על כל אחת מהפקטות שנשלחות. • Route Discovery – תהליך גילוי מסלול ממקור ליעד. • תוספת מחיר משוקלל של כל חיבור • אופטימיזציה למטריקות אופייניות לתווך אלחוטי • Retransmission Count, Transmission Time
חידוש: תמיכה במשתמשים חיצוניים • ב-MCL חסרה תמיכה במשתמשים מזדמנים • תמיכה מקורית ברשת Ad-Hoc עצמאית בלבד • חייבים להתקין את ה-driver כדי לתקשר ב-mesh • תקשורת ב-mesh בפרוטוקול ייעודי (LQSR) • MCL תומך רק ב-Windows XP • מה לגבי linux, מחשבי כף יד וכו'? • נדרוש שקיפות למשתמש הזמני • התקנה out of the box (ללא תכנה נוספת) • פרוטוקולים סטנדרטים בלבד (IRDP, DHCP, ARP)
משתמשים זמניים - AP Mesh Router User User • הפתרון: אחד הנתבים יתפקד כ-Access Point (AP) עבור המשתמש הזמני • ממסור הודעות LQSR למשתמש בצורה שקופה • נתב mesh יידע לשלב בין LQSR לתקשורת ישירה • תמיכה ב-hand-offs ומוביליות של משתמשים
משתמשים זמניים - ארכיטקטורה • Global User Cache (GUC) • טבלה אחידה השמורה אצל כל נתב mesh • מכילה צימודים בין משתמשים ל-AP • מעודכנת ריכוזית ע"י ה-Controller • Local User Cache (LUC) • כל המשתמשים הזמניים אותם רואה נתב mesh • נשלחת באופן אוטומטי אל ה-Controller • כלי תומך החלטה (לצימודים) • Default Gateway IP וירטואלית אחידה
משתמשים חיצוניים – Handoff • מנגנון Handoff נבחן בשלוש דרכים: • ICMP Router Discovery Protocol (IRDP) • פרוטוקול בו Default Gateway מפרסם את כתובתו ואת עלות של השימוש דרכו • דורש שרת DHCP כדי להיתמך ב-Windows XP • DHCP Reconfigure • שינוי Default Gateway ע"י שרת DHCP • לא נתמך ע"י Windows XP • Gratuitous ARP • חלק מפרוטוקול הARP- • עדכון מחשב מרוחק על הקשר בין IP ל MAC • הפתרון שנבחר על ידינו
חידוש:Quality of Service • MCL תוכנן לתקשורת בין נתבי ה-mesh • ארכיטקטורה לרמה 2 בלבד (single segment) • מה לגבי יציאה החוצה מה-mesh? (רמה 3) • מספר נתבים מכילים חיבור חיצוני (אינטרנט, ארגון) • נרצה להשתמש בהם כ-gateways עבור השאר • כל נתב mesh או משתמש זמני יוכלו לגשת החוצה
Quality of Serviceתצורת חיבור של רשת Mesh לעולם החיצון • חיבור רשת ה-Mesh לרשת חיצונית מאופיין ע"י ניתוב כניסה ויציאה מהרשת • יציאה מMesh- (דפ"אות) • Gateway סטטי יחיד (ניצול LQSR) • Gateway משתנה לכל משתמש Mesh (דפ"ן) • כניסה לMesh- (דפ"אות) • Gateway ראשי שירכז את הכניסה (דפ"ן) • חיבור Gateways ב-Mesh שלא באמצעות נל"ן • Distributed NAT (כיוון מחקר עתידי?)
סביבת הפיתוח • קוד driver עבור ניהול כרטיס הרשת (על MCL) • Kernel-mode NDIS driver (Win XP DDK) • שימוש ב-Academic Toolkit (דיאלוג עם MS-R) • סביבת סימולציה במעבדה (testbed) • 3 מחשבי XP שולחניים ו-2 מחשבי XP ניידים
תהליך הפיתוח • שימוש בכלי עזר לבדיקות וקומפילציה של הקוד • סביבת וירטואליזציה ע"ג VMWare
תהליך הפיתוח (המשך) • שימוש בכלי עזר לבדיקות וקומפילציה של הקוד • צפייה בפקטות באמצעות Netmon
תהליך הפיתוח (המשך) • שימוש בכלי עזר לבדיקות וקומפילציה של הקוד • הדפסות Debug באמצעות DebugView
תרחישים (1) • תקשורת בין משתמש זמני לנתב Mesh • המשתמש הזמני מתקשר אך ורק עם ה-AP • ה-AP מתקשר עם שאר רשת ה-mesh
תרחישים (2) • תקשורת בין משתמש זמני לאינטרנט
תרחישים (3) • ביצוע Handoff למשתמש זמני • יוזמת התהליך ע"י ה-Controller • עדכון ה-GUC אצל כל נתבי הרשת • עדכון המשתמש באמצעות Gratuitous ARP
מדידות Handoff • ניסוי במעבדה כדי למדוד את עלות התהליך • התהליך כרוך בפגיעה זמנית (זמן עד להתייצבות) • שיפור ברור בטווח הארוך • בדיקות UDP בשני כיוונים, TCP
נושאים להמשך הפיתוח • מימוש תוכנת הקונטרול • הגדרת אלגוריתם שיוך משתמשים זמניים לGateway - • בעיות scalability • Broadcast לא אמין