Khám phá và hình thành mạng

Xem nguồn trên GitHub

Mạng Thread

Mạng Thread được xác định bằng 3 giá trị nhận dạng riêng biệt:

  • Mã nhận dạng mạng cá nhân (PAN ID) gồm 2 byte
  • Mã nhận dạng mạng cá nhân mở rộng (XPAN ID) gồm 8 byte
  • Tên mạng mà con người có thể đọc được

Ví dụ: một mạng Thread có thể có các giá trị nhận dạng sau:

Số nhận dạng Giá trị
Số tài khoản vĩnh viễn 0xBEEF
Mã XPAN 0xBEEF1111CAFE2222
Tên mạng yourThreadCafe
Quét chủ động OT

Khi tạo mạng Thread mới hoặc tìm kiếm mạng Thread hiện có để tham gia, thiết bị Thread sẽ thực hiện quá trình quét chủ động cho các mạng 802.15.4 trong phạm vi vô tuyến:

  1. Thiết bị phát Yêu cầu báo hiệu 802.15.4 trên một Kênh cụ thể.
  2. Đổi lại, mọi Thiết bị có khả năng mở rộng (ECD) trong phạm vi đều phát một Beacon chứa PAN ID, XPAN ID và Tên mạng của mạng Thread.
  3. Thiết bị sẽ lặp lại hai bước trước đó cho từng Kênh.

Sau khi phát hiện tất cả các mạng trong phạm vi, thiết bị Thread có thể kết nối với một mạng hiện có hoặc tạo một mạng mới nếu không phát hiện được mạng nào.

Thread sử dụng giao thức Thiết lập đường liên kết dạng lưới (MLE) để định cấu hình các đường liên kết và truyền bá thông tin về mạng cho các thiết bị Thread.

Trong cấu hình liên kết, MLE được dùng để:

  • Khám phá các đường liên kết đến các thiết bị lân cận
  • Xác định chất lượng của các đường liên kết đến các thiết bị lân cận
  • Thiết lập mối liên kết với các thiết bị lân cận
  • Đàm phán các tham số liên kết (loại thiết bị, bộ đếm khung hình, thời gian chờ) với các thiết bị ngang hàng

MLE truyền bá các loại thông tin sau đến những thiết bị muốn thiết lập đường liên kết:

  • Dữ liệu về phân vùng chính (RLOC của phân vùng chính, Mã phân vùng, Trọng số phân vùng)
  • Dữ liệu mạng (tiền tố trên lưới, tự động định cấu hình địa chỉ, các tuyến đường cụ thể hơn)
  • Truyền tuyến đường

Việc truyền tuyến trong Thread hoạt động tương tự như Giao thức thông tin định tuyến (RIP), một giao thức định tuyến vectơ khoảng cách.

Tạo mạng mới

Nếu chọn tạo một mạng mới, thiết bị sẽ chọn Kênh ít bận nhất và PAN ID không được các mạng khác sử dụng, sau đó trở thành Bộ mở rộng mạng lưới và tự chọn làm Trưởng nhóm. Thiết bị này gửi thông báo MLE đến các thiết bị 802.15.4 khác để thông báo cho chúng về trạng thái liên kết của thiết bị, đồng thời phản hồi các Yêu cầu về tín hiệu của các thiết bị Thread khác đang thực hiện quá trình quét chủ động.

Tham gia một mạng hiện có

Nếu chọn tham gia một mạng hiện có, thiết bị sẽ định cấu hình Kênh, PAN ID, XPAN ID và Tên mạng sao cho khớp với mạng mục tiêu thông qua quy trình Thiết lập Thread, sau đó trải qua quy trình MLE Attach để đính kèm dưới dạng Thiết bị con (Thiết bị đầu cuối). Quy trình này được dùng cho mối liên kết giữa trẻ và cha mẹ.

  1. Thiết bị con gửi một Yêu cầu của thiết bị mẹ truyền tin đa hướng đến tất cả các Thiết bị có khả năng mở rộng lân cận trong mạng mục tiêu.
  2. Tất cả các Bộ mở rộng mạng lưới lân cận (và ECD ở chế độ chờ, nếu Parent Request Scan Mask bao gồm ECD ở chế độ chờ) đều gửi Parent Responses (Phản hồi của thiết bị mẹ) kèm theo thông tin về chính chúng.
  3. Trẻ chọn một thiết bị của Cha mẹ và gửi Yêu cầu về mã nhận dạng trẻ đến thiết bị đó.
  4. Phần tử Mẹ gửi Phản hồi mã nhận dạng con để xác nhận việc thiết lập mối liên kết.

1. Yêu cầu của cha mẹ

Yêu cầu của thiết bị mẹ là một yêu cầu truyền tin đa hướng từ thiết bị đính kèm, được dùng để khám phá các Thiết bị có khả năng mở rộng lân cận trong mạng mục tiêu.

OT MLE Attach Parent Request
Nội dung tin nhắn yêu cầu của cha mẹ
Chế độ Mô tả thiết bị đính kèm
Thử thách Kiểm tra tính kịp thời của Phản hồi của cha mẹ để ngăn chặn các cuộc tấn công phát lại
Mặt nạ quét Giới hạn yêu cầu chỉ đối với Bộ mở rộng mạng dạng lưới hoặc đối với tất cả Thiết bị có khả năng mở rộng

2. Phản hồi của cha mẹ

Parent Response (Phản hồi của thiết bị gốc) là một phản hồi đơn hướng đối với Parent Request (Yêu cầu của thiết bị gốc) nhằm cung cấp thông tin về Extender-Capable Device (Thiết bị có khả năng mở rộng) cho thiết bị đang kết nối.

OT MLE Attach Parent Response
Nội dung tin nhắn phản hồi của cha mẹ
Phiên bản Phiên bản giao thức Thread
Đáp Bản sao của Thử thách yêu cầu của cha mẹ
Bộ đếm khung liên kết Bộ đếm khung 802.15.4 trên thiết bị có khả năng mở rộng
Bộ đếm khung MLE Bộ đếm khung MLE trên thiết bị có khả năng mở rộng
Địa chỉ nguồn RLOC16 của Thiết bị có khả năng mở rộng
Đường liên kết Lề Nhận chất lượng tín hiệu của Thiết bị có thể mở rộng
Khả năng kết nối Mô tả mức độ kết nối của Thiết bị có khả năng mở rộng
Dữ liệu của người dẫn đầu Thông tin về thiết bị có khả năng mở rộng
Thử thách Kiểm tra tính kịp thời của Yêu cầu mã nhận dạng con để ngăn chặn các cuộc tấn công phát lại

3. Yêu cầu về mã nhận dạng trẻ em

Yêu cầu về mã nhận dạng thiết bị con là một yêu cầu truyền đơn hướng từ thiết bị đính kèm (Thiết bị con) được gửi đến Thiết bị có khả năng mở rộng (Thiết bị mẹ) nhằm mục đích thiết lập mối liên kết giữa Thiết bị con và Thiết bị mẹ. Nếu yêu cầu được gửi đến một Thiết bị có khả năng mở rộng ở chế độ chờ, thì thiết bị đó sẽ tự nâng cấp lên Bộ mở rộng mạng lưới trước khi chấp nhận yêu cầu.

OT MLE Attach Child ID Request
Nội dung của thông báo yêu cầu mã nhận dạng trẻ em
Phiên bản Phiên bản giao thức Thread
Đáp Bản sao của Thử thách dành cho phản hồi của cha mẹ
Bộ đếm khung liên kết Bộ đếm khung 802.15.4 trên thiết bị con
Bộ đếm khung MLEBộ đếm khung hình MLE trên trẻ
Chế độ Mô tả Đứa trẻ
Hết thời gian chờ Khoảng thời gian không hoạt động trước khi Cha mẹ xoá Trẻ
Địa chỉ đăng ký (chỉ dành cho MED và SED) Đăng ký địa chỉ IPv6

4. Phản hồi mã nhận dạng con

Child ID Response (Phản hồi về mã nhận dạng trẻ) là một phản hồi đơn hướng từ Parent (Thiết bị gốc) được gửi đến Child (Thiết bị con) để xác nhận rằng mối liên kết giữa Child và Parent đã được thiết lập.

OT MLE Attach Child ID Response
Nội dung thông báo phản hồi mã nhận dạng trẻ em
Địa chỉ nguồn Parent's RLOC16
Address16 RLOC16 của trẻ
Dữ liệu về người lãnh đạo Thông tin về Trưởng nhóm chính (RLOC, Mã phân vùng, Trọng số phân vùng)
Dữ liệu mạng Thông tin về mạng Thread (tiền tố trên lưới, tự động định cấu hình địa chỉ, các tuyến đường cụ thể hơn)
Tuyến đường (chỉ dành cho ECD ở chế độ chờ) Truyền tuyến đường
Hết thời gian chờ Khoảng thời gian không hoạt động trước khi Cha mẹ xoá Trẻ
Đăng ký địa chỉ (chỉ dành cho MED và SED) Xác nhận địa chỉ đã đăng ký

Tóm tắt

Kiến thức bạn học được:

  • Thiết bị Thread thực hiện quét chủ động để tìm các mạng hiện có
  • Thread sử dụng Mesh Link Establishment để định cấu hình các đường liên kết và truyền bá thông tin về các thiết bị mạng
  • Thông báo Quảng cáo MLE thông báo cho các thiết bị Thread khác về trạng thái mạng và trạng thái liên kết của một thiết bị
  • Quy trình Đính kèm MLE thiết lập các mối liên kết Con-Cha

Kiểm tra kiến thức của bạn

Giá trị nhận dạng nào không được dùng để xác định mạng Thread?
Mã nhận dạng mạng cá nhân (PAN ID) gồm 2 byte.
Sai. Một phần của mạng Thread được xác định bằng PAN ID.
Mã nhận dạng mạng cá nhân mở rộng (XPAN ID) gồm 8 byte.
Sai. Một phần của mạng lưới Thread được xác định bằng mã nhận dạng XPAN.
Tên mạng mà con người có thể đọc được.
Sai. Một phần của mạng lưới Thread được xác định bằng Tên mạng mà con người có thể đọc được.
SSID gồm 32 ký tự.
Chính xác. Không giống như mạng Wi-Fi 802.11, giá trị nhận dạng mạng Thread không sử dụng SSID.
Yêu cầu của cha mẹ dùng để làm gì?
Để khám phá các Thiết bị có khả năng mở rộng lân cận trong mạng mục tiêu.
Chính xác. Yêu cầu của thiết bị gốc do một thiết bị đưa ra khi muốn kết nối với một mạng.
Để thông báo rằng một Thiết bị có thể hoạt động như một Bộ mở rộng đang trở thành một thiết bị chính.
Sai. Bộ mở rộng mạng lưới không thiết lập mối quan hệ Mẹ – Con với thiết bị mạng khác. Thay vào đó, một thiết bị mạng sẽ chọn một Thiết bị có khả năng mở rộng để trở thành Thiết bị mẹ.
Yêu cầu nâng cấp một Thiết bị có thể mở rộng thành Bộ mở rộng mạng lưới.
Sai.
Yêu cầu của cha mẹ sử dụng loại địa chỉ nào?
unicast
Sai.
anycast
Sai.
multicast
Chính xác.
truyền tin
Sai.
Khi một thiết bị ban đầu kết nối với mạng Thread, phân loại thiết bị của thiết bị đó là gì?
Trẻ em (Thiết bị đầu cuối)
Chính xác. Một thiết bị tham gia mạng Thread luôn bắt đầu với vai trò là Thiết bị đầu cuối trên mạng đó.
FTD (Thiết bị Thread đầy đủ)
Sai.
Bộ mở rộng mạng mesh
Sai.