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

Xem mã nguồn trên GitHub

Mạng Thread

Mạng luồng được xác định bằng 3 giá trị nhận dạng duy nhấ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) 8 byte
  • Tên mạng mà con người đọc được

Ví dụ: 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ột mạng Thread mới hoặc tìm kiếm một mạng Thread hiện có để tham gia, thiết bị Thread sẽ quét chủ động các mạng 802.15.4 trong phạm vi sóng:

  1. Thiết bị phát đi Yêu cầu beacon 802.15.4 trên một Kênh cụ thể.
  2. Đổi lại, mọi Bộ định tuyến hoặc Thiết bị cuối đủ điều kiện của bộ định tuyến (REED) trong phạm vi phát sóng một Beacon chứa mã nhận dạng PAN, mã nhận dạng XPAN và tên mạng của mạng Thread.
  3. Thiết bị lặp lại hai bước trước đó cho mỗi Kênh.

Sau khi phát hiện tất cả mạng trong phạm vi, thiết bị Thread có thể đính kèm vào 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 thấy mạng nào.

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

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

  • Khám phá đường liên kết đến các thiết bị lân cận
  • Xác định chất lượng của đường liên kết đến các thiết bị lân cận
  • Thiết lập đường liên kết đến các thiết bị lân cận
  • Thương lượng 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ị đồng cấp

MLE phổ biến các loại thông tin sau đây cho các thiết bị muốn thiết lập đường liên kết:

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

Việc truyền tải tuyến trong Luồng 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 bận rộn nhất và Mã nhận dạng PAN không được các mạng khác sử dụng, sau đó trở thành Trình định tuyến và tự chọn làm Trình điều phối. Thiết bị này gửi thông báo Quảng cá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 và phản hồi các Yêu cầu Beacon của các thiết bị Thread khác đang 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, Mã nhận dạng PAN, Mã nhận dạng XPAN và Tên mạng để khớp với mạng mục tiêu thông qua quy trình Cấp phép luồng, sau đó trải qua quy trình đính kèm MLE để đính kèm dưới dạng Thiết bị con (Thiết bị cuối). Quy trình này được dùng cho các đường liên kết Con-Cha mẹ.

  1. Thiết bị con gửi Yêu cầu gốc đa điểm đến tất cả các Trình định tuyến và REED lân cận trong mạng mục tiêu.
  2. Tất cả các Trình định tuyến và REED lân cận (nếu Mặt nạ quét yêu cầu của cha mẹ bao gồm cả REED) sẽ gửi Phản hồi của cha mẹ kèm theo thông tin về chính chúng.
  3. Thiết bị con chọn một thiết bị Cha mẹ và gửi Yêu cầu mã nhận dạng trẻ đến thiết bị đó.
  4. Tài khoản mẹ gửi Phản hồi mã con để xác nhận việc thiết lập liên kết.

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

Yêu cầu gốc là một yêu cầu truyền đa điểm từ thiết bị đính kèm dùng để khám phá các Trình định tuyến lân cận và Thiết bị đầu cuối đủ điều kiện của Trình định tuyến (REED) trong mạng mục tiêu.

Yêu cầu đính kèm tài khoản mẹ trong OT MLE
Nội dung thư yêu cầu của cha mẹ
Chế độ Mô tả thiết bị đính kèm
Thách thức 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 Chỉ giới hạn yêu cầu ở Bộ định tuyến hoặc ở cả Bộ định tuyến và REED

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

Phản hồi gốc là phản hồi một địa chỉ đến một Yêu cầu gốc, cung cấp thông tin về Trình định tuyến hoặc REED cho thiết bị đính kèm.

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 luồng
Đáp Bản sao của Yêu cầu thách thức của cha mẹ
Bộ đếm khung hình liên kết Bộ đếm khung hình 802.15.4 trên bộ định tuyến/REED
Bộ đếm khung MLE Bộ đếm khung MLE trên Bộ định tuyến/REED
Địa chỉ nguồn RLOC16 của Bộ định tuyến/REED
Lề liên kết Nhận chất lượng tín hiệu của Bộ định tuyến/REED
Khả năng kết nối Mô tả mức độ kết nối của Bộ định tuyến/REED
Dữ liệu leader Thông tin về Trình định tuyến/Người lãnh đạo của REED
Thách thức Kiểm tra tính kịp thời của Yêu cầu giấy tờ tuỳ thân của trẻ để ngăn chặn các cuộc tấn công phát lại

3. Yêu cầu giấy tờ tuỳ thân của trẻ

Yêu cầu mã nhận dạng con là một yêu cầu truyền tin một địa chỉ từ thiết bị đính kèm (Con) được gửi đến Bộ định tuyến hoặc REED (Mẹ) nhằm mục đích thiết lập mối liên kết Con-Mẹ. Nếu yêu cầu được gửi đến một REED, thì yêu cầu đó sẽ tự nâng cấp lên một Trình định tuyến trước khi chấp nhận yêu cầu.

Yêu cầu đính kèm giấy tờ tuỳ thân của trẻ trong OT MLE
Nội dung thư yêu cầu mã nhận dạng trẻ em
Phiên bản Phiên bản giao thức luồng
Đáp Bản sao của thử thách phản hồi dành cho cha mẹ
Bộ đếm khung hình liên kết Bộ đếm khung hình 802.15.4 trên thiết bị con
Bộ đếm khung MLEBộ đếm khung hình MLE trên thành phần con
Chế độ Mô tả thành phần con
Hết thời gian chờ Khoảng thời gian không hoạt động trước khi Tài khoản mẹ xoá Tài khoản con
Đăng ký địa chỉ (chỉ dành cho MED và SED) Đăng ký địa chỉ IPv6

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

Phản hồi mã nhận dạng con là phản hồi một địa chỉ từ thiết bị mẹ được gửi đến thiết bị con để xác nhận rằng đã thiết lập được mối liên kết giữa thiết bị con và thiết bị mẹ.

Phản hồi đính kèm mã nhận dạng con trong OT MLE
Nội dung thông báo phản hồi về mã nhận dạng trẻ em
Địa chỉ nguồn RLOC16 của thành phần mẹ
Address16 RLOC16 của tệp con
Dữ liệu leader Thông tin về Leader của Parent (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 mạng, tự động định cấu hình địa chỉ, tuyến đường cụ thể hơn)
Tuyến đường (chỉ dành cho REED) Truyền tải tuyến đường
Hết thời gian chờ Khoảng thời gian không hoạt động trước khi Tài khoản mẹ xoá Tài khoản con
Đă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 quét tích cực để tìm các mạng hiện có
  • Thread sử dụng tính năng Thiết lập liên kết lưới để định cấu hình các đường liên kết và phổ biến 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ề mạng và trạng thái liên kết của thiết bị
  • Quá trình đính kèm MLE thiết lập các đường liên kết Con-Mẹ

Kiểm tra mức độ hiểu biết

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 mạng luồng được xác định một phần bằng mã số tài khoản cá nhân (PAN).
Mã nhận dạng mạng cá nhân mở rộng (XPAN ID) gồm 8 byte.
Sai. Một mạng luồng được xác định một phần bằng mã XPAN.
Tên mạng mà con người đọc được.
Sai. Một mạng luồng được xác định một phần bằng Tên mạng mà con người đọ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 Bộ định tuyến lân cận và Thiết bị đầu cuối đủ điều kiện của bộ định tuyến (REED) trong mạng mục tiêu.
Chính xác. Yêu cầu gốc do một thiết bị phát hành để tìm cách đính kèm vào một mạng.
Để thông báo rằng một Trình định tuyến đang trở thành thành phần mẹ.
Sai. Bộ định tuyến không bắt đầu mối quan hệ Cha-con với một thiết bị mạng khác. Thay vào đó, một thiết bị mạng sẽ chọn một Trình định tuyến để trở thành Trình định tuyến con.
Để yêu cầu một Thiết bị đầu cuối đủ điều kiện là Bộ định tuyến được quảng bá thành Bộ định tuyến.
Sai.
Yêu cầu của cha mẹ sử dụng loại địa chỉ nào?
truyền đơn hướng
Sai.
anycast
Sai.
truyền đa hướng
Chính xác.
truyền tin
Sai.
Khi một thiết bị ban đầu đính kèm vào mạng Thread, lớp thiết bị của thiết bị đó là gì?
Thiết bị con (Thiết bị cuối)
Chính xác. Một thiết bị tham gia mạng Thread luôn bắt đầu dưới dạng Thiết bị cuối trên mạng đó.
FTD (Thiết bị Thread đầy đủ)
Sai.
REED (Thiết bị đầu cuối đủ điều kiện sử dụng bộ định tuyến)
Sai.