אנחנו מנתבים את הצומת בכל צומת ברשת הבית של Google (HAN), בכל מכשיר נייד המסייע בהתאמה או בפקד של צומת, ובשירות ששומר על צמתים ומכשירים ניידים מסונכרנים. במערכת Weave, הרכיבים האלה צומת, מכשיר, שירות – נקראים resources
.Weave יכול לספק את מקור המהימנות של הנתונים לכל משאב, וכן את האמצעים שמאפשרים לתקשר ביניהם באופן מאובטח.
יש ארבעה רכיבים עיקריים ב-Weave. מומלץ להבין כל אחד מהם ברמה גבוהה, לפני שהוא בודק כיצד הם יוצרים אינטראקציה זה עם זה ובאילו שכבות הם נמצאים במערכת.
סכימה
הסכימה
היא מודל הנתונים של פלטפורמת Weave.הסכימה מגדירה שלושה רכיבים:
- ערכים יחידת מידה בסיסית כמו מצב הנכס, הודעה על המדינה או בקשה לשנות את המדינה
- פלטפורמות קבוצת תכונות שמייצגות פונקציה ספציפית, כמו המאפיינים והאירועים המגדירים מנעול בריח
- משאבים פעולה לוגית פיזית המורכבת מתכונות ומממשקים, כמו מכשיר Nest, מבנה או משתמש
אפשר לחשוב על הסכימה כמסד נתונים המפוזר על פני משאבים מרובים, כאשר העותק של ה-"e>master" של כל תכונה (מקור העובדות) לא מאוחסן במלואו במשאב יחיד, אלא מחולק בין משאבים לפי תכונות. המשאב המקורי של תכונה משמש כמוציא לאור של התכונה, בעוד שמשאבים אחרים הם מנויים של התכונה הזו.
לדוגמה, ייתכן שיש לכם סכימה פשוטה שמורכבת משתי תכונות המשותפות לשלושה משאבים. משאב 1 יכול להיות בעל התוכן הדיגיטלי עבור נתיב א', ומשאב 3 יכול להיות בעל התוכן הדיגיטלי עבור נתיב ב'. המשאבים האחרים הם מנויים למאפיינים האלה:
כמו כן, אפשר להציג יותר ממשאב אחד בתור בעל אתר עבור אותה תכונה, בהתאם לצרכים של המערכת.
השירות
השירות ב-Weave נקרא לעיתים קרובות משאב. מנקודת המבט של הסכימה, הוא עשוי להציג את עצמו כמשאבים מרובים. במילים אחרות כל המשאבים האחרים במערכת Weave.
לדוגמה, ייתכן שחיישן יצטרך לפרסם ולהירשם רק לתכונות שרלוונטיות לפונקציונליות שלו, שייתכן שחלק מהן ישותפו עם משאבים אחרים, כמו מרכז או צומת. למקורות המידע האלה עשויות להיות תכונות אחרות שהחיישן לא נרשם אליהן. עם זאת, השירות יכול להירשם או לפרסם את כל התכונות האלה.
פרופילים
הפונקציונליות של Weave מקובצות למבנים לוגיים שנקראים פרופילים כמעט עשרים פרופילים זמינים עם OpenWeave.
. כל פרופיל תואם לקבוצה ספציפית של פונקציונליות Weave, המורכבת מרכיבים כמו פרוטוקולים, סוגי הודעות וקודי שגיאות. קיימיםלדוגמה, פרופיל ניהול הנתונים
מטפל בזמן אמת בניהול תכונות בדפוס העברת הודעות לאחר הרשמה. הוא עשוי לעדכן את המצב של תכונת תפוסה במשאב ביתי על סמך קלט ממשאב אחר (שינוי המדינה מ-"home" ל-"a&way; ) משום שהמכשיר הנייד מזהה שאתם לא בבית, אולי).פרופיל אחר הוא אקו
. הפרופיל הזה אנלוגי לפינג רשת ומשמש לבדיקת הקישוריות של הרשת, זמן האחזור, האבטחה והחיים.פרופיל אחר הוא הקצאת רשתות
. הפרופיל הזה כולל פונקציות לסריקת רשתות אלחוטיות והגדרת פרטי הכניסה שלהן כדי להקצות משאב ברשת הזו.הודעות
כדי לבצע את הפונקציונליות של פרופילים, משאבים ב-HAN צריכים להיות מסוגלים לשלוח הודעות זה לזה. ו-Weave כולל שכבת הודעות
שמטפלת בכל ההודעות בין המשאבים במערכת.יש שני סוגים של הודעות:
- הודעה כללית כולל תוכן כללי של Weave
- הודעת מנהרה כולל חבילת IP
לכל פרופיל אפשר להגדיר קבוצה של סוגי הודעות שבאמצעותה הוא מציג את הפונקציונליות שלו. לדוגמה, הפרופיל לניהול נתונים עשוי לשלוח הודעה כללית עדכון בקשה כדי לשנות את המצב של תכונה מסוימת. פרופיל הד עשוי לשלוח הודעה כללית בנושא הד הפנייה למשאב. פעולה זו שולחת הודעת הד תגובה בתגובה.
אריג
כדי להעביר את כל ההודעות האלה בין משאבים, צריך להקצות בד
. בד הוא אוסף של משאבים התומכים ב-Weave ושיתוף פעולה כדי לספק שירותים לשירותים ולשירותים אחרים.כל המשאבים בבד דוברים את השפה הנפוצה של Weave, ללא קשר לחיבור המקורי או לסוג הרשת. לכל צומת בבד מוקצה כתובת IPv6 נוספת לשימוש מאובטח של אפליקציית Weave.
Weave משתמש בטכנולוגיית התחבורה הבסיסית (לדוגמה, Wi-Fi או חוטים) כדי לשלוח הודעות בין כתובות IPv6 מבד.
תקציר
מה למדתם:
- במערכת Weave, צמתים, מכשירים ושירות אחרים נקראים משאבים
- Weave מספק את המקור למהימנות נתונים ותקשורת מאובטחת עבור כל משאב במערכת Weave
- Weave מורכב מארבעה רכיבים עיקריים:
- סכימה מודל הנתונים וממשק ה-API
- פרופילים פרוטוקולים של אפליקציות לניהול קבוצה של פונקציונליות
- העברת הודעות מטפלת בכל ההודעות בין משאבים
- בד אוסף של משאבים התומכים ב-Weave