Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.

Xử lý IPv6

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

Xem nguồn trên GitHub

Hãy cùng tìm hiểu cách Thread xác định từng thiết bị trong mạng và loại địa chỉ mà họ sử dụng để liên lạc với nhau.

Kính ngắm

Phạm vi OT

Có 3 phạm vi trong Mạng chuỗi để chỉ địa chỉ unicast:

  • Link-Local — tất cả giao diện có thể truy cập qua một đường truyền vô tuyến duy nhất
  • Mesh-Local — tất cả giao diện đều có thể truy cập được trong cùng một mạng Thread
  • Toàn cầu — tất cả giao diện có thể truy cập từ bên ngoài Mạng chuỗi

Hai phạm vi đầu tiên tương ứng với các tiền tố được chỉ định bởi một mạng Thread. Link-Local có tiền tố là fe80::/16, còn Mesh-Local có tiền tố là fd00::/8.

Unicast

Có nhiều địa chỉ unicast IPv6 xác định một thiết bị Thread. Mỗi trường hợp có một hàm khác nhau dựa trên phạm vi và trường hợp sử dụng.

Trước khi đi sâu vào từng loại, hãy tìm hiểu thêm về một loại định dạng chung, được gọi là Bộ định vị (R họ). RURI xác định giao diện Luồng và dựa trên vị trí của giao diện đó trong cấu trúc liên kết mạng.

Cách tạo bộ định tuyến định tuyến

Tất cả các thiết bị đều được gán một mã định tuyến và mã nhận dạng con. Mỗi Bộ định tuyến duy trì một bảng gồm tất cả các nhà xuất bản con của họ. Tổ hợp này sẽ xác định duy nhất một thiết bị trong cấu trúc liên kết. Ví dụ: hãy xem xét các nút được đánh dấu trong cấu trúc liên kết sau, trong đó số trong Bộ định tuyến (ngũ giác) là Mã bộ định tuyến, và số trong Thiết bị cuối (hình tròn) là Mã con:

Cấu trúc liên kết ROT OT

Mỗi Mã bộ định tuyến của con tương ứng với Cấp độ gốc (Bộ định tuyến) của chúng. Vì một Bộ định tuyến không phải là Cấp độ con nên Mã nhận dạng con của một Bộ định tuyến luôn là 0. Các giá trị này là duy nhất đối với mỗi thiết bị trong mạng Thread và được dùng để tạo RLAT16, đại diện cho 16 bit cuối cùng của RLAT.

Ví dụ: đây là cách tính X tính16 của nút trên bên trái (Mã bộ định tuyến = 1 và Mã con = 1):

OT R11

RLAT16 là một phần của Giá trị nhận dạng giao diện (IID), tương ứng với 64 bit cuối cùng của địa chỉ IPv6. Một số IID có thể dùng để xác định một số loại giao diện Thread. Ví dụ: IID cho RLATs luôn có dạng sau:

0000:00ff:fe00:RLOC16

IID, kết hợp với Tiền tố mạng cục bộ, cho kết quả bằng RLAT. Ví dụ: sử dụng Tiền tố cục bộ Mesh-Local của fde5:8dba:82e1:1::/64, RLAT cho một nút có RLAT16 = 0x401 là:

TIỀM NĂNG OT

Bạn có thể dùng cùng một logic này để xác định RLAT cho tất cả các nút được đánh dấu trong cấu trúc liên kết mẫu ở trên:

OT Topology có địa chỉ

Tuy nhiên, vì RLAT dựa trên vị trí của nút trong cấu trúc liên kết, thì RLAT của một nút có thể thay đổi khi cấu trúc liên kết thay đổi.

Ví dụ: có thể nút 0x400 bị xóa khỏi mạng Thread. Các nút 0x4010x402 thiết lập các đường liên kết mới đến các Bộ định tuyến khác nhau. Do đó, các nút này được gán một RLAT16 và RLAT mới:

Cấu trúc liên kết OT sau khi thay đổi

Loại địa chỉ Unicast

RLAT chỉ là một trong nhiều địa chỉ unicast IPv6 mà thiết bị Thread có thể có. Một danh mục địa chỉ khác có tên là Giá trị nhận dạng điểm cuối (EID), xác định một giao diện Thread duy nhất trong một phân vùng mạng Thread. EID không phụ thuộc vào cấu trúc liên kết mạng Thread.

Dưới đây là thông tin chi tiết về các loại unicast phổ biến.

Một EID xác định giao diện luồng mà một đường truyền vô tuyến có thể tiếp cận được.
Ví dụfe80::54db:881c:3845:57f4
Mã nhận dạngDựa trên 802.15.4 Địa chỉ mở rộng
Phạm viLiên kết tại địa phương
Chi tiết
  • Dùng để khám phá các vùng lân cận, định cấu hình các đường liên kết và trao đổi thông tin định tuyến
  • Không phải là địa chỉ có thể định tuyến
  • Luôn có tiền tố là fe80::/16

EID cục bộ Mesh (ML-EID)

EID xác định giao diện luồng, độc lập với cấu trúc liên kết mạng. Dùng để truy cập vào giao diện Thread trong cùng một phân vùng Thread. Còn được gọi là Địa chỉ duy nhất tại địa phương (ULA).
Ví dụfde5:8dba:82e1:1:416:993c:8399:35ab
Mã nhận dạngNgẫu nhiên được chọn sau khi hoa hồng hoàn tất
Phạm viMạng lưới địa phương
Chi tiết
  • Không thay đổi khi cấu trúc liên kết thay đổi
  • Các ứng dụng nên dùng
  • Luôn có tiền tố fd00::/8

Bộ định tuyến (RLAT)

Xác định giao diện Thread, dựa trên vị trí của giao diện trong cấu trúc liên kết mạng.
Ví dụfde5:8dba:82e1:1::ff:fe00:1001
Mã nhận dạng0000:00ff:fe00:RLOC16
Phạm viMạng lưới địa phương
Chi tiết
  • Được tạo sau khi thiết bị đính kèm vào mạng
  • Để phân phối sơ đồ dữ liệu IPv6 trong mạng Thread
  • Thay đổi khi cấu trúc liên kết thay đổi
  • Thường không được ứng dụng sử dụng

Bộ định vị Anycast (ALAT)

Xác định giao diện Chuỗi chỉ thông qua tra cứu RLAT khi không xác định RLAT của một đích đến.
Ví dụfde5:8dba:82e1:1::ff:fe00:fc01
Mã nhận dạng0000:00ff:fe00:fcXX
Phạm viMạng lưới địa phương
Chi tiết
  • fcXX = Adestination đích, tra cứu RLAT thích hợp
  • Thường không được ứng dụng sử dụng

Địa chỉ Unicast toàn cầu (GUA)

EID xác định giao diện Thread trên phạm vi toàn cầu, ngoài Mạng Thread.
Ví dụ2000::54db:881c:3845:57f4
Mã nhận dạng
  • SLAAC – Được thiết bị chỉ định ngẫu nhiên
  • DHCP – Do máy chủ DHCPv6 chỉ định
  • Thủ công — Do lớp ứng dụng chỉ định
Phạm viToàn cầu
Chi tiết
  • Một địa chỉ IPv6 công khai
  • Luôn có tiền tố là 2000::/3

Phát đa hướng

Tính năng Đa hướng được dùng để truyền thông tin tới nhiều thiết bị cùng một lúc. Trong mạng lưới, các địa chỉ cụ thể được dành riêng để sử dụng đa hướng với các nhóm thiết bị khác nhau, tùy thuộc vào phạm vi.

Địa chỉ IPv6 Phạm vi Đã gửi tới
ff02::1 Liên kết tại địa phương Tất cả FTD và MED
ff02::2 Liên kết tại địa phương Tất cả FTD
ff03::1 Mạng lưới địa phương Tất cả FTD và MED
ff03::2 Mạng lưới địa phương Tất cả FTD

Bạn có thể nhận thấy rằng Thiết bị cuối ngủ (SED) không được đưa vào làm người nhận trong bảng đa hướng ở trên. Thay vào đó, Thread xác định địa chỉ đa hướng dựa trên đường liên kết cục bộ và đường địa phương unicast sử dụng cho Tất cả các nút, bao gồm cả SED. Các địa chỉ đa hướng này khác nhau theo mạng Thread, vì địa chỉ này được xây dựng trên tiền tố unicast Local-Local (xem RFC 3306 để biết thêm thông tin về địa chỉ đa hướng IPv6 dựa trên unicast).

Ngoài các phạm vi đã liệt kê, các phạm vi tùy ý cũng được hỗ trợ cho thiết bị Chuỗi.

Anycast

Anycast được dùng để định tuyến lưu lượng truy cập đến giao diện Thread khi R biết của đích đến không xác định. Bộ định vị Anycast (ALAT) xác định vị trí của nhiều giao diện trong một phân vùng Thread. 16 bit cuối cùng của ALAT, được gọi là ALAT16, có định dạng 0xfcXX, đại diện cho loại ALAT.

Ví dụ: một AURI16 giữa 0xfc010xfc0f dành riêng cho các tác nhân có trong DHCPv6. Nếu không biết tác nhân DHCPv6 cụ thể của RLAT (có thể do cấu trúc liên kết mạng đã thay đổi), thì một thông báo có thể được gửi đến một tác nhân ALAT của DHCPv6 để nhận được RLAT.

Chuỗi xác định các giá trị ALAT16 sau:

ALAT16 Loại
0xfc00 Dẫn đầu
0xfc010xfc0f Tác nhân DHCPv6
0xfc100xfc2f Dịch vụ
0xfc300xfc37 Ủy viên
0xfc400xfc4e Nhân viên hỗ trợ khám phá vùng lân cận
0xfc38 đến 0xfc3f
0xfc4f0xfcff
Đã đặt chỗ

Tóm tắt

Những điều bạn đã tìm hiểu:

  • Mạng Thread bao gồm ba phạm vi: Link-Local, Mesh-Local và Global
  • Thiết bị luồng có nhiều địa chỉ IPv6 unicast
    • RLAT thể hiện vị trí của thiết bị trong mạng Thread
    • ML-EID là duy nhất đối với một thiết bị Thread trong một phân vùng và phải được các ứng dụng sử dụng
  • Thread sử dụng tính năng phát đa hướng để chuyển tiếp dữ liệu tới các nhóm nút và bộ định tuyến
  • Thread sử dụng anycast khi RLAT của một điểm đến không xác định

Để tìm hiểu thêm về cách xử lý IPv6 của Thread, hãy xem mục 5.2 và 5.3 của Quy cách luồng.

Kiểm tra mức độ hiểu biết của bạn

3 phạm vi nào được dùng để nhắm mục tiêu đơn lẻ trong Mạng chuỗi?
Riêng tư
Chưa chính xác.
Giao diện cục bộ
Chưa chính xác.
Liên kết tại địa phương
Đúng.
Trang web địa phương
Chưa chính xác.
Mạng lưới địa phương
Đúng.
Toàn cầu
Đúng.
Ý nghĩa của việc thiết bị có Mã con là 0?
Thiết bị này là Cấp độ con.
Chưa chính xác.
Thiết bị là REED.
Gần đúng, nhưng không chính xác.
Thiết bị này là một Bộ định tuyến.
Đúng. Bộ định tuyến luôn có mã con là 0.
Máy ảnh (là một nút trên mạng Thread) sẽ nhận được một RR16 và RLAT mới. Sự kiện nào sau đây có thể gây ra sự cố này?
Có người đã tải hình ảnh xuống từ máy ảnh từ xa.
Chưa chính xác. Sự kiện này sẽ không ảnh hưởng đến mạng Thread.
Một bộ định tuyến đã ngắt mạng.
Đúng. Khi một bộ định tuyến loại bỏ mạng, cấu trúc liên kết mạng sẽ thay đổi. Điều này có thể khiến thiết bị tự quảng bá tới bộ định tuyến và nhận được RLAT mới.
Máy ảnh đã chuyển sang chế độ ngủ, làm thay đổi cấu trúc liên kết mạng.
Chưa chính xác. Việc chuyển sang chế độ ngủ không nhất thiết sẽ khiến một thiết bị nhận được địa chỉ mạng mới.
Một thiết bị trên mạng Thread sẽ đăng ký địa chỉ đa hướng ff03::2. Thông tin này cho chúng tôi biết gì về thiết bị?
Đó là thiết bị đầu cuối tối thiểu (MED).
Chưa chính xác.
Đó là thiết bị toàn diện (FED).
Chưa chính xác. (Gợi ý: Có thể là FED hay không).
Đó là Thiết bị luồng nhỏ (MTD).
Chưa chính xác.
Đó là một thiết bị luồng đầy đủ (FTD).
Đúng. Chỉ các thiết bị Chuỗi đầy đủ mới đăng ký địa chỉ đa hướng ff03::2. Họ làm việc này trong phạm vi Mesh-Local.
Thread sử dụng loại định tuyến và định tuyến nào để chuyển tiếp dữ liệu tới các nhóm nút và bộ định tuyến?
unicast
Chưa chính xác.
mọi sự kiện liên quan
Chưa chính xác.
phát đa hướng
Đúng.
truyền tin
Chưa chính xác.
Thiết bị Thread sử dụng loại tiêu chí định tuyến và định tuyến nào khi không xác định được RLAT của người nhận tin nhắn dự kiến?
unicast
Chưa chính xác.
mọi sự kiện liên quan
Đúng. Anycast cho phép một thiết bị kết nối với một nút không biết đến RLAT, bằng cách giải quyết ALAT của thiết bị.
phát đa hướng
Chưa chính xác.
truyền tin
Chưa chính xác.