Download presentation
Presentation is loading. Please wait.
1
ARD presentation Application for Clients in a Mobile-IP Environment Rinat, Guy, Oz and Vitaly
2
מוטורולה ישראל מבצעת פרויקט עבור אחד מכוחות הביטחון. כחלק מפרויקט זה, הקבוצה שלנו התבקשה לפתח אפליקציית מיקום לקוח - שרת. הלקוחות הניידים שולחים את מיקומיהם, אשר התקבלו ע " י ה GPS driver שמותקן בכל סביבת לקוח, לשרת בחבילות - מיקום. קצת רקע...
3
GPS - Global Positioning System מערכת ה-GPS מבוססת על 28 לוויינים בגובה 20,200 ק"מ ששוגרו בידי משרד ההגנה האמריקני, המתפעל את המערכת. הלוויינים משדרים אות זמן בלבד, אותו קולט המקלט הקרקעי מ-4 לוויינים או יותר. על הקרקע מחושב המרחק בין המקלט והלוויינים, וכך הוא יודע את המיקום שלו בדיוק של עד כמטרים ספורים.
4
החבילות מיקום שנשלחות הן חבילות נפרדות משאר חבילות המידע אשר נשלחות בין הלקוחות לשרת. בשרת נאסף המידע המיקומי על הלקוחות, וע " י עיבוד הנתונים ניתן לקבל מידע מגוון כגון : מיקום הלקוח כפונקציה של זמן, ריכוזי הלקוחות, מסלולם לאורך זמן... קצת רקע...
5
1. המידע שנאסף אינו מוצג כראוי ואינו מעובד. אנו נעבד את המידע, נציג אותו על גבי מפה ובצורת גרפים סטטיסטים המתארים מדדים של כל הלקוחות או של לקוח אחד מסוים. 2. חבילות המידע מעצם היותן נפרדות משאר החבילות שנשלחות לשרת מהוות תקורה (Overhead), אשר " מבזבזת " את רוחב הפס. אנו נוריד תקורה זאת בכך שנשלח את המידע המיקומי על גבי חבילות מידע היוצאות ממילא לשרת, ובכך יתפסו מקום מזערי בתעבורה. הבעיות שאנחנו הולכים לפתור
6
הארכיטקטורה Mobile Client (Windows) GPS Mobile Client (Windows) GPS location data Communication location data Communication Web application Motorola Server (GNU/Linux) Locations DB Location server Home-Agent
7
אפליקציה היושבת על שרתים, אשר עליה לקבל הודעות מיקום מלקוחות מרובים דרך UDP port, ולהכניס את המידע לשרת חיצוני. Locations DB location data
8
עליה לטפל בכמה סוגי הודעות : הודעת התקשרות – בה הלקוח מודיע על התחברותו לשרת ומוסיפים אותו לרשימת הלקוחות הרשומים. הודעת התנתקות – בה הלקוח מודיע על ניתוקו מהשרת ומסירים אותו מרשימת הלקוחות הרשומים. הודעת מיקום – בה הלקוח שולח את המיקום ושומרים מידע זה ב database. הודעת enable/disable – שבה מודיע הלקוח על הפסקת / חידוש שירות המיקום.
9
עליה להגביל את מס ' רשומות המיקום ב database ע " י מחיקת מיקומים ישנים כדי לא ליצור overflow. Locations DB
10
עליה לתעד כל error שקורה במערכת ב log ב DB, כמו למשל לקוח שאינו רשום השולח חבילת מיקום. Locations DB
11
עליה לעמוד בעומס גדול של כ 10000 לקוחות ששולחים הודעות מיקום בצורה אסינכרונית מדי דקה. location data
12
כללי: הלקוח הינו חבילת תוכנה היושבת על תחנות עבודה ניידות המקושרות לרשת אלחוטית ומשדרות חבילות מידע לשרת של החברה. location data
13
הלקוח שולח לשרת שלושה סוגי הודעות שדובר עליהן קודם : התחברות, מיקום והתנתקות. הודעת התחברות נשלחת עם הפעלת המערכת של הלקוח לאחר טעינת קובץ קונפיגורציה ראשוני ומטרתה לעדכן את השרת על התחברות הלקוח. לאחר מכן המשתמש רשאי לבחור האם הוא מעוניין להשתמש בשרות ה- LOCATION המסופק.
14
במידה והמשתמש מעוניין להתחיל להשתמש בשרות, תוכנת הלקוח שולחת באופן מחזורי (ע"פ החלטת המשתמש) את מיקומה הגיאוגרפי של התחנה הניידת אל השרת באמצעות הודעות מיקום: Location
15
המשתמש יכול לבקש להפסיק את שרות ה- LOCATION, ולהפעילו מחדש כרצונו. עם סגירת תוכנת הלקוח נשלחת הודעת התנתקות אל השרת.
16
רקע: שליחת הודעות המיקום כפי שתיארנו יוצרת תקורה גבוהה ( OVER HEAD ) הכרוך ביצירת ערוץ תקשורת נוסף. מכיוון שקיימים ערוצי תקשורת נוספים בין הלקוח לשרת אשר אינם בתלויים באפליקציית המיקום, נחסוך יצירת ערוץ תקשורת נוסף ע"י הוספת נתוני המיקום לחבילות הנשלחות ממילא.
17
למעשה מה שיתבצע זה כתיבת פרוטוקול תקשורת חדש וע"מ לתמוך בו גם driver בצד הלקוח והשרת.
18
Udp/Tcp/Ip packet Location/ip packet
19
חבילת תקשורת מגיעה משכבת ה- Ip אל הדרייבר בצורה אסינכרונית, והדרייבר מעדכן אותה ומשנה אותה ע"י הוספת נתוני המיקום אל החבילה ועדכון הולם של ה- headers. בצד של השרת מתרחשת הפעולה ההפוכה כאשר שם הדרייבר מוציא את פרטי המיקום ומחזיר את החבילה למצבה המקורי.
20
User space אפליקציה 1אפליקציה 2 User space אפליקציה 1אפליקציה 2 TCP/IP STACK Filter driver NDIS TCP/IP STACK Filter driver NDIS packet New packet packet New packet packet
21
תוכנת הלקוח תספק למשתמש ממשק גרפי שדרכו יתאפשר עדכון הגדרות של אפליקציה (מס' UDP port או כתובת היעד) וכן ניהול התנהגות ה-driver (ביטול פעילותו, שינוי זמני שליחה וכד')
22
האפליקציה תרוץ על דפדפן אינטרנט ותאפשר למשתמש לקבל ראיה רחבה על הלקוחות ברשת אלחוטית. לשם כך היא תשתמש במידע המאוחסן במסד הנתונים על שרת Motorola המערכת תורכב ממספר מודולים פונקציונאליים
23
המסכים שיוצגו: מסך עם מידע כללי על כל הלקוחות. עבור כל לקוח יוצג: –שם –כתובת IP – מיקום –סטאטוס
24
מסך עם מידע מפורט על לקוח מסוים: – שם – כתובת IP – מיקום בקורדינאטות ומיקום גיאוגרפי – סטאטוס – זמן שידור אחרון וזמן שידור מצופה הבא – שעות פעילות –המסלול שעבר המערכת תאפשר למשתמש לבחור זמן שעבר עבור הצגת המסלול.
25
מסך בו מוצגת מפת ישראל ועליה נקודות שמייצגות את הלקוחות. על יד כל נקודה יצוין שם הלקוח. מיקום הנקודות על המפה הוא בהתאם למיקום הפיסי של הלקוחות. המשתמש יוכל לעשות "in/out zoom" ולזוז על המפה בכל כיוון אפשרי.
26
מסך סטטיסטיקות ובו המידע הבא: – מספר הלקוחות המחוברים – מס' הלקוחות הרשומים במאגר המידע – ממוצע של מספר ההודעות שהתקבלו בשרת בדקה – שעות עומס ו"בטלה" על השרת מבחינת קבלת הודעות –אזורים מחוסרי קליטה.
27
מסך עבור אדמיניסטראטור המאפשר לו לבצע פעולות שונות: –לבחור את האזור הפיסי של המפות (במקרה שלנו ישראל) – לבחור את קצב "התרעננות" המסכים – לבצע פעולות אדמיניסטרטיביות הנוגעות למסד הנתונים.
28
דרישות לא פונקציונאליות: –ה- Web Server יהיה מסוג JBoss –האפליקציה תכתב בשפת JSP\Java בטכנולוגיית J2EE ותרוץ על כל דפדפן שתומך ב-Java.
29
Location Server Location Client Web Application
30
Location Server –השרת אמור לעמוד בעומסים גבוהים ולעבוד בזמן אמת –Driver בצד השרת אמור להיכתב בשכבת kernel של Linux כאשר כתיבה לגרעין משולה להכנסת יד לתוך בטן הדרקון Location Client –וכן בצד הלקוח נדרשת כתיבתDriver במסגרת WinDDK Web application –הטכנולוגיה שנשתמש בה היא J2EE והיא אינה ידוע לנו –אופן מימוש מודול המפות גם הוא אינו מוכר קיימת עבורנו הזדמנות לרכישת toolkit קיים שתומך במנגנוני המפות, אך נצטרך לעמוד במגבלות תקציב
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.