راه‌اندازی

راه‌اندازی در Matter به فرایند اختصاص دادن اعتبارنامه Fabric به دستگاه جدید اشاره دارد. «راه‌انداز» دستگاهی است که فرایند «راه‌اندازی» را انجام می‌دهد. «کمیسیون‌گیرنده» دستگاه جدیدی است که باید در «ساختار» آماده‌سازی شود.

در سطح بالا، جریان راه‌اندازی را می‌توان به چند مرحله تقسیم کرد:

جریان راه‌اندازی
شکل ۱: جریان راه‌اندازی - سطح بالا

یافتن دستگاه

قبل‌از شروع جریان «راه‌اندازی»، «راه‌اندازی‌شونده» باید تبلیغ کردن خود را شروع کند. «کمیسیون‌گیرنده» می‌تواند بااستفاده از هریک از سه روش «قابل‌کمیسیون» در «کاوش» خود را تبلیغ کند. «کمیسیون‌گیرنده» باید بار داده آماده‌سازی را نیز ارائه دهد.

متصل شدن به دستگاه (PASE)

وقتی «راه‌انداز» آگهی را دید و «تشخیص‌دهنده» را مطابقت داد، «راه‌انداز» از گذرنویسه موجود در بار داده آماده‌سازی برای انجام Passcode Authenticated Session Establishment (PASE) جهت اتصال به دستگاه استفاده می‌کند. این روشی برای ایجاد ایمن کلیدهایی است که هر دو دستگاه می‌توانند از آن‌ها برای برقراری ارتباط استفاده کنند. در این مرحله، «راه‌انداز» یک حالت ایمن را نیز فعال می‌کند. یک حالت ایمن روشی برای بازگرداندن دستگاه به حالت اصلی خود درصورت عدم موفقیت راه‌اندازی ارائه می‌دهد.

دریافت اطلاعات کمیسیونر

«کمیسیونر» همه توصیف‌کننده‌ها را از «کمیسیون‌گیرنده» می‌خواند. ‫ DescriptorCluster در نقطه پایانی ۰ دستگاه قرار دارد و همه نقاط پایانی دیگر را توصیف می‌کند. «راه‌انداز» همچنین «خوشه اطلاعات پایه» را می‌خواند که شامل اطلاعاتی مثل شناسه فروشنده، شناسه محصول، نام محصول، و شماره سریال است. در این مرحله، «کمیسیونر» نوع دستگاه «کمیسیون‌شونده» را نیز می‌خواند که به هدایت تجربه کاربری در سمت «کمیسیونر» کمک می‌کند.

پیکربندی نظارتی

«کمیسیونر» اطلاعات نظارتی را در «کمیسیون‌گیرنده» بااستفاده از فرمان SetRegulatoryConfig پیکربندی می‌کند. اطلاعات نظارتی شامل اطلاعاتی مانند پیکربندی مکان (داخلی/خارجی/هر دو) دستگاه یا تنظیم کد کشور است.

گواهی کارمزدگیرنده

هدف از روال تصدیق «مأمور» این است که مشخص شود آیا دستگاهی گواهینامه دریافت کرده است و دستگاه Matter اصیل است یا نه. «راه‌انداز» گواهی تصدیق دستگاه (DAC) و گواهی واسطه تصدیق محصول (PAI) را از «راه‌اندازی‌شونده» استخراج می‌کند. این گواهی‌ها حاوی شناسه فروشنده، شناسه محصول، و کلید عمومی گواهی هستند. پس‌از دریافت گواهی‌ها، «کمیسیونر» درخواست چالشی را انجام می‌دهد که باید توسط «کلید خصوصی تصدیق» امضا شود و از آن برای تأیید اصالت «کمیسیون‌گیرنده» استفاده می‌کند.

درخواست امضای گواهی (CSR)

«کمیسیونر» یک «درخواست امضای گواهی» (CSR) به «کمیسیون‌گیرنده» ارسال می‌کند. «راه‌اندازی‌شونده» جفت کلید عملیاتی یکتایی ایجاد می‌کند که بعداً در Certificate Authenticated Session Establishment (CASE) استفاده خواهد شد. «کمیسیون‌گیرنده» اطلاعات CSR حاصل را به «کمیسیون‌دهنده» برمی‌گرداند.

افزودن گواهینامه عملیاتی گره (NOC)

«مأمور» از اطلاعات CSR دریافتی از «مأمورشده» استفاده می‌کند و آن را به مدیر دامنه اداری (ADM) ارسال می‌کند تا گواهی عملیاتی گره (NOC) معتبری تولید کند. «کمیسیونر» بااستفاده از فرمان AddTrustedRootCertReq، «گواهینامه ریشه» را در «کمیسیون‌گیرنده» نصب می‌کند و سپس بااستفاده از فرمان AddNOC، «گواهینامه عملیاتی گره» را نصب می‌کند.

تدارک شبکه

«راه‌انداز» شبکه عملیاتی را در «راه‌اندازی‌شونده» پیکربندی می‌کند. این مرحله برای دستگاه‌های Thread یا Wi-Fi لازم است. این مرحله برای «دستگاه‌های اترنت» که دستگاه ازقبل به شبکه متصل است لازم نیست. از فرمان‌های ScanNetworks، AddOrUpdateWifiNetwork، و ConnectNetwork استفاده می‌کند.

اکتشاف عملیاتی

وقتی گره جدیداً راه‌اندازی‌شده به شبکه متصل شد، «راه‌انداز» از Operational Discovery برای پیدا کردن گره در شبکه عملیاتی استفاده می‌کند. کاوش عملیاتی فرایندی است که طی آن گره‌های راه‌اندازی‌شده در شبکه عملیاتی بااستفاده از DNS-SD پیدا می‌شوند. اگر «راه‌اندازی‌شونده» دستگاه Wi-Fi باشد، از mDNS برای شناسایی دستگاه استفاده خواهد کرد.

«اکتشاف عملیاتی» به «کمیسیونر» و «گره‌های» دیگر در شبکه کمک می‌کند بدانند «کمیسیون‌گیرنده» از کدام نشانی IP و درگاه استفاده می‌کند.

ایجاد جلسه CASE

وقتی گره جدیداً راه‌اندازی‌شده شناسایی شد، یک جلسه CASE بین «راه‌انداز» و دستگاه برقرار می‌شود. این جلسه توسط «راه‌انداز» شروع می‌شود و دستگاه به آن پاسخ می‌دهد. در این مرحله، گواهی‌های عملیاتی مبادله می‌شوند و با اعتبارسنجی اینکه در یک ساختار منطقی قرار دارند، اعتماد مشترک برقرار می‌شود.

راه‌اندازی کامل شد

«راه‌انداز» از CASE برای ارسال فرمان CommissioningComplete به دستگاه جدیداً راه‌اندازی‌شده استفاده می‌کند. این آخرین مرحله در فرایند راه‌اندازی است. CommissioningComplete همچنین زمان‌سنج ایمن دربرابر خرابی را به‌طور خودکار غیرفعال می‌کند. پس‌از اینکه راه‌اندازی با موفقیت تکمیل شد، دستگاه مانند هر گره دیگری در شبکه عملیاتی کار می‌کند.