Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.
Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

Pengalamatan IPv6

Lihat sumber di GitHub

Mari kita lihat bagaimana Thread mengidentifikasi setiap perangkat di jaringan, dan jenis alamat apa yang mereka gunakan untuk berkomunikasi satu sama lain.

Cakupan

Lingkup OT

Ada tiga cakupan dalam jaringan Thread untuk pengalamatan unicast:

  • Link-Local - semua antarmuka dapat dijangkau oleh satu transmisi radio
  • Mesh-Local - semua antarmuka dapat dijangkau dalam jaringan Thread yang sama
  • Global - semua antarmuka dapat dijangkau dari luar jaringan Thread

Dua cakupan pertama sesuai dengan prefiks yang ditentukan oleh jaringan Thread. Link-Local memiliki prefiks fe80::/16 , sedangkan Mesh-Local memiliki prefiks fd00::/8 .

Unicast

Ada beberapa alamat unicast IPv6 yang mengidentifikasi perangkat Thread tunggal. Masing-masing memiliki fungsi yang berbeda berdasarkan ruang lingkup dan use case.

Sebelum kami merinci setiap jenis, mari pelajari lebih lanjut tentang yang umum, yang disebut Routing Locator (RLOC). RLOC mengidentifikasi antarmuka Thread, berdasarkan lokasinya di topologi jaringan.

Bagaimana Routing Locator dibuat

Semua perangkat diberi ID Router dan ID Anak. Setiap Router memiliki tabel semua Children mereka, kombinasi yang secara unik mengidentifikasi perangkat dalam topologi. Misalnya, pertimbangkan node yang disorot dalam topologi berikut, di mana angka dalam Router (segi lima) adalah ID Router, dan angka dalam Perangkat Akhir (lingkaran) adalah ID Anak:

Topologi OT RLOC

Setiap ID Router Anak sesuai dengan Induk (Router) mereka. Karena Router bukan Anak, ID Anak untuk Router selalu 0. Bersama-sama, nilai ini unik untuk setiap perangkat di jaringan Thread, dan digunakan untuk membuat RLOC16, yang mewakili 16 bit terakhir dari RLOC.

Misalnya, inilah cara RLOC16 dihitung untuk node kiri atas (ID Router = 1 dan ID Anak = 1):

OT RLOC 16

RLOC16 adalah bagian dari Pengenal Antarmuka (IID), yang sesuai dengan 64 bit terakhir dari alamat IPv6. Beberapa IID dapat digunakan untuk mengidentifikasi beberapa jenis antarmuka Thread. Misalnya, IID untuk RLOCs selalu dalam bentuk 0000:00ff:fe00: RLOC16 .

IID, dikombinasikan dengan Mesh-Local Prefix, menghasilkan RLOC. Misalnya, menggunakan Mesh-Local Prefix dari fde5:8dba:82e1:1::/64 , RLOC untuk node di mana RLOC16 = 0x401 adalah:

OT RLOC

Logika yang sama ini dapat digunakan untuk menentukan RLOC untuk semua node yang disorot dalam contoh topologi di atas:

Topologi OT dengan Alamat

Namun, karena RLOC didasarkan pada lokasi node di topologi, RLOC node dapat berubah saat topologi berubah.

Misalnya, mungkin node 0x400 dihapus dari jaringan Thread. Node 0x401 dan 0x402 membuat tautan baru ke Router yang berbeda, dan sebagai hasilnya mereka masing-masing diberi RLOC16 dan RLOC baru:

Topologi OT setelah Perubahan

Jenis alamat unicast

RLOC hanyalah salah satu dari banyak alamat unicast IPv6 yang dapat dimiliki perangkat Thread. Kategori alamat lain disebut Endpoint Identifiers (EIDs), yang mengidentifikasi antarmuka Thread yang unik dalam partisi jaringan Thread. EID tidak bergantung pada topologi jaringan Thread.

Jenis unicast umum dijelaskan di bawah ini.

EID yang mengidentifikasi antarmuka Thread yang dapat dijangkau oleh transmisi radio tunggal.
Contoh fe80::54db:881c:3845:57f4
IID Berdasarkan 802.15.4 Extended Address
Cakupan Tautan-Lokal
Detail
  • Digunakan untuk menemukan tetangga, mengonfigurasi tautan, dan bertukar informasi perutean
  • Bukan alamat yang dapat dirutekan
  • Selalu memiliki awalan fe80::/16

Mesh-Local EID (ML-EID)

EID yang mengidentifikasi antarmuka Thread, terlepas dari topologi jaringan. Digunakan untuk mencapai antarmuka Thread dalam partisi Thread yang sama. Juga disebut Unique Local Address (ULA).
Contoh fde5:8dba:82e1:1:416:993c:8399:35ab
IID Acak, dipilih setelah komisioning selesai
Cakupan Mesh-Lokal
Detail
  • Tidak berubah saat topologi berubah
  • Harus digunakan oleh aplikasi
  • Selalu memiliki awalan fd00::/8

Routing Locator (RLOC)

Mengidentifikasi antarmuka Thread, berdasarkan lokasinya di topologi jaringan.
Contoh fde5:8dba:82e1:1::ff:fe00:1001
IID 0000:00ff:fe00: RLOC16
Cakupan Mesh-Lokal
Detail
  • Dibuat setelah perangkat terhubung ke jaringan
  • Untuk mengirimkan datagram IPv6 dalam jaringan Thread
  • Berubah saat topologi berubah
  • Umumnya tidak digunakan oleh aplikasi

Anycast Locator (ALOC)

Mengidentifikasi antarmuka Thread melalui pencarian RLOC, ketika RLOC tujuan tidak diketahui.
Contoh fde5:8dba:82e1:1::ff:fe00:fc01
IID 0000:00ff:fe00:fc XX
Cakupan Mesh-Lokal
Detail
  • fc XX = ALOC tujuan , yang mencari RLOC yang sesuai
  • Umumnya tidak digunakan oleh aplikasi

Alamat Unicast Global (GUA)

EID yang mengidentifikasi antarmuka Thread pada cakupan global, di luar jaringan Thread.
Contoh 2000::54db:881c:3845:57f4
IID
  • SLAAC - Ditentukan secara acak oleh perangkat itu sendiri
  • DHCP - Ditetapkan oleh server DHCPv6
  • Manual - Ditetapkan oleh lapisan aplikasi
Cakupan Global
Detail
  • Alamat IPv6 publik
  • Selalu memiliki awalan 2000::/3

Multicast

Multicast digunakan untuk mengkomunikasikan informasi ke beberapa perangkat sekaligus. Dalam jaringan Thread, alamat tertentu dicadangkan untuk penggunaan multicast dengan grup perangkat yang berbeda, bergantung pada cakupannya.

Alamat IPv6 Cakupan Dikirim ke
ff02::1 Tautan-Lokal Semua FTD dan MED
ff02::2 Tautan-Lokal Semua FTD
ff03::1 Mesh-Lokal Semua FTD dan MED
ff03::2 Mesh-Lokal Semua FTD

Anda mungkin memperhatikan bahwa Sleepy End Devices (SEDs) tidak disertakan sebagai penerima dalam tabel multicast di atas. Sebaliknya, Thread mendefinisikan alamat multicast IPv6 berbasis link-local dan realm-local scope unicast prefix yang digunakan untuk Semua Thread Node, termasuk SED. Alamat multicast ini bervariasi menurut jaringan Thread, karena dibangun di atas prefiks Mesh-Local unicast (lihat RFC 3306 untuk detail selengkapnya tentang alamat multicast IPv6 berbasis unicast-prefix).

Cakupan arbitrer di luar yang sudah terdaftar juga didukung untuk perangkat Thread.

Anycast

Anycast digunakan untuk merutekan lalu lintas ke antarmuka Thread ketika RLOC tujuan tidak diketahui. Anycast Locator (ALOC) mengidentifikasi lokasi beberapa antarmuka dalam partisi Thread. 16 bit terakhir dari ALOC, disebut ALOC16, dalam format 0xfc XX , yang mewakili tipe ALOC.

Misalnya, ALOC16 antara 0xfc01 dan 0xfc0f dicadangkan untuk Agen DHCPv6. Jika DHCPv6 Agent RLOC tertentu tidak diketahui (mungkin karena topologi jaringan telah berubah), pesan dapat dikirim ke DHCPv6 Agent ALOC untuk mendapatkan RLOC.

Thread mendefinisikan nilai ALOC16 berikut:

ALOC16 Tipe
0xfc00 Pemimpin
0xfc01 - 0xfc0f Agen DHCPv6
0xfc10 - 0xfc2f Layanan
0xfc30 - 0xfc37 Komisaris
0xfc40 - 0xfc4e Agen Penemuan Tetangga
0xfc38 - 0xfc3f
0xfc4f - 0xfcff
Pendiam

Rekap

Apa yang telah Anda pelajari:

  • Jaringan Thread terdiri dari tiga cakupan: Link-Local, Mesh-Local, dan Global
  • Perangkat Thread memiliki beberapa alamat IPv6 unicast
    • RLOC mewakili lokasi perangkat di jaringan Thread
    • ML-EID unik untuk perangkat Thread di dalam partisi dan harus digunakan oleh aplikasi
  • Thread menggunakan multicast untuk meneruskan data ke grup node dan router
  • Thread menggunakan anycast ketika RLOC tujuan tidak diketahui

Untuk mempelajari lebih lanjut tentang pengalamatan IPv6 Thread, lihat bagian 5.2 dan 5.3 dari Spesifikasi Thread .