Dalam industri, persyaratan LAN menjadi semakin serius ICS mengambil lebih banyak fungsionalitas, dan kehilangan data dapat menyebabkan biaya serius.
Misalnya, di sektor energi, jika data dari transduser pengukur tidak mencapai terminal relai tepat waktu, ini dapat dipenuhi dengan penyebaran hubung singkat ke bagian-bagian yang berdekatan dari jaringan catu daya, yang akan menghasilkan kerugian yang jauh lebih serius daripada dalam kasus pemutusan tepat waktu dari bagian dari hubung singkat. Oleh karena itu, seringkali dalam proyek energi Anda dapat memenuhi persyaratan "Waktu pemulihan kurang dari 1 ms."
Redundansi jaringan berdasarkan protokol industri seperti RSTP, MRP, DLR, dan sejenisnya, didasarkan pada perubahan topologi jika terjadi kerusakan dalam transfer data. Mengubah topologi membutuhkan waktu tertentu (dari milidetik ke detik, tergantung pada protokol), yang disebut "waktu pemulihan". Selama waktu ini, tidak ada komunikasi dengan bagian dari jaringan dan, dengan demikian, data hilang. Yaitu teknologi redundansi cincin konvensional tidak memungkinkan waktu pemulihan kurang dari 1 ms.
Mengingat hal ini, apa yang disebut teknologi redundansi βmulusβ - PRP dan HSR - semakin populer. Redundansi berdasarkan PRP dan HSR dilakukan, berbeda dengan protokol di atas, bukan dengan membangun kembali topologi, tetapi dengan menduplikasi bingkai. Setiap frame digandakan oleh pengirim, dan kedua frame ditransmisikan dengan cara yang berbeda, dan node penerima memproses frame yang masuk pertama dan membuang yang kedua. Prinsip operasi ini tidak memerlukan restrukturisasi topologi dan, karenanya, protokol ini beroperasi hampir "mulus". Di bawah potongan Anda akan menemukan detail implementasi protokol ini.
Struktur jaringan
Redundansi mulus diimplementasikan pada node akhir, bukan komponen jaringan. Ini adalah salah satu perbedaan utama antara PRP dan HSR dari protokol cadangan lain seperti RSTP atau MRP. Pertimbangkan fitur struktur jaringan untuk PRP dan HSR.
PRP - struktur jaringan
Node akhir memiliki dua antarmuka Ethernet yang terhubung ke dua jaringan yang diisolasi satu sama lain, yang beroperasi secara paralel dan memiliki topologi independen (mis., Topologi dari dua jaringan ini dapat sama atau berbeda). Jaringan harus diisolasi agar kerusakan dan penghentian transmisi data dalam satu jaringan tidak memengaruhi yang kedua, mis. bahkan kekuatan jaringan disuplai dari sumber yang berbeda. Seharusnya tidak ada koneksi langsung antara jaringan-jaringan ini.
Struktur jaringan PRPKedua jaringan ini biasanya disebut LAN A dan LAN B. Seperti telah ditunjukkan, mereka dapat memiliki topologi yang berbeda serta kinerja yang berbeda. Keterlambatan dalam pengiriman data juga dapat bervariasi.
Jaringan mungkin mengandung elemen-elemen berikut:
- DAN (Dual Attached Node) - node yang terhubung ke kedua jaringan dan mengirim / menerima frame duplikat.
- SAN (Single Attached Node) - node yang terhubung hanya ke satu jaringan (LAN A atau LAN B) dan mengirim / menerima frame normal.
- Dalam hal ketika perlu untuk menghubungkan secara berlebihan perangkat yang memiliki satu antarmuka Ethernet dan tidak mendukung protokol PRP ke jaringan RPR, yang disebut Kotak Redundansi (biasanya RedBox) digunakan. Pada RedBox, paket dari perangkat digandakan dan dikirim ke jaringan PRP, seolah-olah data ditransmisikan dari DAN. Selain itu, perangkat di belakang RedBox dipandang sebagai DAN untuk perangkat lain. Node seperti itu disebut DAN DAN VDAN virtual (Virtual DAN).
Prinsip kerja RedBoxHSR - struktur jaringan
Struktur jaringan HSRPrinsip operasi HSR adalah bahwa semua perangkat digabungkan menjadi dering dan semua pesan, serta dalam PRP, digandakan. Perangkat mengirim kedua frame melalui ring: satu salinan searah jarum jam, yang lainnya berlawanan arah jarum jam. Penerima menerima kedua salinan, tetapi hanya memproses yang pertama, dan menghapus yang kedua. Jika sesuatu terjadi pada salah satu tautan, dan salah satu frame yang digandakan tidak datang, maka yang lain hanya diterima. Semua perangkat HSR memiliki dua antarmuka Ethernet - port A dan port B.
Menurut protokol HSR, elemen-elemen berikut mungkin ada di jaringan:
- SAN adalah simpul yang hanya memiliki satu antarmuka Ethernet. Node tersebut dapat dihubungkan ke jaringan HSR secara eksklusif melalui RedBox.
- DAN - simpul yang dapat bertukar data di dalam cincin HSR (dapat mengirim / menerima bingkai duplikat).
- RedBox - seperti di PRP, RedBox memungkinkan Anda untuk menghubungkan perangkat yang memiliki satu antarmuka Ethernet ke jaringan HSR. Perangkat di belakang RedBox dipandang sebagai DAN untuk perangkat lain. Node seperti itu disebut DAN DAN VDAN virtual (Virtual DAN).
- QuadBox - HSR juga memperkenalkan satu elemen baru - QuadBox. Perangkat ini memiliki empat port HSR. Ini memungkinkan Anda untuk menggabungkan dua cincin HSR. Di setiap dering, QuadBox bertindak sebagai DAN dan dapat mentransfer data dari satu cincin ke cincin lainnya.
Contoh QuadBoxDAN struktur
Untuk PRP dan HSR, struktur DAN serupa. Setiap DAN memiliki dua antarmuka yang beroperasi secara paralel dan terhubung ke tingkat atas dari satu tumpukan komunikasi melalui apa yang disebut lapisan LRE - tautan entitas redundansi. Pada level ini, semua fungsi cadangan dilakukan.
Kedua antarmuka DAN memiliki alamat MAC yang sama dan satu alamat IP. Ini memungkinkan Anda untuk membuat reservasi transparan ke tingkat atas. Terutama penting adalah kenyataan bahwa ini memungkinkan penggunaan ARP untuk DAN serta untuk simpul yang tidak redundan.
Namun, tentu saja, ada nuansa dalam struktur DAN untuk PRP dan untuk HSR.
Struktur PRP - DAN
Ketika sebuah frame dikirim dari level atas, LRE menduplikasinya dan mengirimkan kedua paket melalui port-port secara bersamaan. Kedua frame ditransmisikan secara paralel melalui dua jaringan dengan penundaan yang berbeda. Dalam situasi yang ideal, mereka dikirim ke node tujuan dengan perbedaan waktu minimum. Setelah menerima LRE, penerima mengirimkan bingkai yang diterima pertama ke lapisan atas, dan membuang yang kedua.
LRE membuat duplikat frame saat mengirim dan memprosesnya setelah diterima. Tingkat ini, terkait dengan tingkat atas, mewakili antarmuka biasa dari adaptor jaringan yang tidak redundan. LRE melakukan dua tugas: menangani frame duplikat dan mengelola redundansi. Untuk menerapkan kontrol, LRE menambahkan trailer kontrol redundansi 32-bit (RCT) ke setiap frame dan menghapusnya ketika frame diterima.
Mentransfer data antara dua DANs dalam PRPStruktur HSR - DAN
Bingkai yang dikirim dari lapisan atas diduplikasi oleh layer LRE, dan paket dikirim melalui port A dan port B hampir secara bersamaan. (1 dan 2 dalam diagram).
Setelah menerima bingkai, penerima mentransfernya ke tingkat LRE, dan juga mengarahkannya ke port lain dan meneruskannya lebih jauh di atas ring. (3, 4).
Jika bingkai tiba di pengirim, maka bingkai ini tidak ditransmisikan lebih lanjut, tetapi dihancurkan (5, 6).
Kedua frame tiba di level LRE, tetapi yang dikirim lebih cepat ditransfer ke level atas, dan frame yang diduplikasi dibuang.
LRE menambahkan tag HSR 48-bit ke setiap frame (mirip dengan menambahkan tag VLAN) dan menghapus tag ini setelah diterima.
Mentransfer Data antara Dua DANs dalam HSRInteroperabilitas antara SAN dan DAN
Dalam PRP, SAN dapat dihubungkan ke jaringan apa pun - LAN A atau LAN B, tetapi simpul semacam itu tidak mendukung fungsi cadangan. Oleh karena itu, SAN yang terhubung ke satu jaringan tidak dapat berkomunikasi dengan simpul serupa lainnya yang terhubung ke jaringan kedua. Untuk berinteraksi dengan SAN, DAN menghasilkan bingkai khusus. Kebutuhan ini disebabkan oleh fakta bahwa SAN dalam bingkai normal dari perangkat redundan harus mengabaikan RCT, yang tidak mungkin, karena SAN tidak dapat membedakan RCT dari blok data IEEE 802.3 reguler. Pada gilirannya, DAN memahami bahwa ia mengirim frame ke SAN dan tidak menambahkan RCT ke frame. Ini hanya meneruskan satu frame dari tingkat atas ke antarmuka yang terhubung dengan SAN. Dengan kata lain, jika DAN tidak dapat menentukan apa yang bertukar data dengan DAN lain, maka itu tidak menambahkan RCT ke bingkai.
Dalam HSR, SAN tidak dapat terhubung langsung ke jaringan. Itu dapat dihubungkan secara eksklusif melalui RedBox.
DAN Mode
Ketika bekerja dengan frame duplikat yang diterima pada kedua antarmuka (jika mereka bisa diperbaiki), DAN harus menerima salah satu frame dan membuang yang kedua. Ada dua metode pemrosesan dalam PRP:
- Duplikat terima adalah metode di mana kedua frame yang masuk diterima dan diarahkan ke tingkat atas.
- Duplicate discard - metode di mana node penerima membaca informasi dari RCT dari frame yang masuk untuk menentukan frame mana yang akan dibuang.
Untuk HSR, pertimbangkan mode U dan X paling populer.
Gandakan terima
DAN yang beroperasi dalam mode ini tidak menjatuhkan frame mana pun saat memproses pada lapisan data link.
Frame dikirim ke LAN A dan LAN B tanpa RCT. LRE penerima hanya mengalihkan kedua frame ke tingkat atas, dengan asumsi bahwa transmisi lebih lanjut akan menghancurkan duplikat (IEEE 802.1D dengan jelas menyatakan bahwa protokol tingkat atas harus dapat menangani duplikat frame).
Misalnya, TCP dan UDP memiliki tingkat ketahanan yang tinggi untuk menduplikasi bingkai.
Metode ini sangat sederhana untuk diterapkan, tetapi memiliki kelemahan serius - tidak memberikan kemampuan kontrol jaringan apa pun, seperti penerimaan kedua frame tidak dipantau dengan cara apa pun.
Buang duplikat di tingkat saluran
Saat menggunakan metode kedua, bidang yang terdiri dari empat oktet ditambahkan ke bingkai - RCT (trailer kontrol redundansi). Cuplikan ditambahkan pada level LRE ketika frame diterima dari level atas. RCT terdiri dari parameter berikut:
- Nomor urut 16-bit;
- Pengenal jaringan 4-bit, 1010 (0xA) untuk LAN A dan 1011 (0xB) untuk LAN B;
- Ukuran bingkai 12-bit.
Karena penambahan trailer RCT ke bingkai, ukurannya lebih besar dari ukuran bingkai maksimum yang ditentukan dalam standar IEEE 802.3-2005. Untuk mengirimkan data dalam jaringan dengan PRP, peralatan harus dikonfigurasikan untuk mengirimkan data dalam ukuran 1496 oktet. Karena itu, tidak setiap sakelar cocok untuk digunakan pada LAN A atau LAN B.
Bingkai dengan menambahkan RCTSetiap kali lapisan tautan mengirim bingkai ke alamat tertentu, pengirim meningkatkan nomor urut untuk simpul yang sesuai dan mengirimkan bingkai yang identik melalui kedua antarmuka.
Node penerima harus menentukan duplikat berdasarkan informasi dari RCT.
Algoritma Metode Buang Duplikat
Penerima mengasumsikan bahwa frame yang dikirim dari sumber apa pun menggunakan protokol PRP dikirim secara berurutan dengan jumlah yang terus meningkat. Nomor urut yang diharapkan untuk frame berikutnya disimpan dalam variabel ExpectedSeqA dan, karenanya, ExpectedSeqB.
Setelah menerima, kebenaran urutan dapat diperiksa dengan membandingkan nilai ExpectedSeqA (ExpectedSeqB) dengan nomor urut frame yang diterima, disimpan dalam variabel currentSeq di RCT. Jika hasilnya positif, variabel ExpectedSeq diatur ke satu lebih dari currentSeq sehingga dimungkinkan untuk melakukan pemeriksaan yang benar pada baris ini.
Frame Drop Interval (drop window)Untuk kedua antarmuka, ada interval penurunan bingkai dinamis untuk nomor urut berpasangan. Batas atas interval ini adalah ExpectedSeq (nomor urut yang diharapkan berikutnya pada antarmuka ini), tidak termasuk nilai yang diberikan itu sendiri, dan batas bawah interval ini adalah startSeq (nomor urut terkecil di mana frame duplikat dengan nomor urut ini dibuang).
Setelah memeriksa nomor urut, penerima memutuskan untuk membuang bingkai atau tidak. Asumsikan bahwa LAN A memiliki ukuran interval drop frame yang tidak nol (Gbr. 5). Frame dari LAN B yang nomornya terletak pada interval ini akan dibuang. Semua frame lain dari LAN B akan diterima dan dikirim ke tingkat atas.
Menjatuhkan bingkai dari LAN B mengurangi ukuran LAN A, karena setelah menerima bingkai ini, diharapkan tidak ada bingkai dengan angka yang lebih rendah pada antarmuka ini. Dengan demikian, startSeqA diatur ke satu lebih dari currentSeqB. Dalam hal ini, ukuran interval drop dari frame LAN B diatur ulang ke 0 (startSeqB = diharapkanSeqB), karena Jelas, frame LAN B berada "di belakang" LAN LAN dan tidak ada frame dari LAN A yang harus dibuang.
Kurangi LAN Interval setelah menjatuhkan bingkai dari LAN BDalam situasi pada Gambar. 7, ketika beberapa frame dari LAN A datang berturut-turut, tetapi tidak ada yang datang dari LAN B, mereka diterima, karena currentSeq mereka berada di luar interval membuang frame LAN B dan interval LAN A meningkat satu posisi. Jika frame dari LAN A terus berdatangan, tetapi tidak ada yang datang dari LAN B, ketika ukuran interval maksimum tercapai, startSeqA juga mulai bertambah satu.
Ketika frame yang diterima berada di luar interval discard dari frame LAN lain, maka frame ini disimpan, dan ukuran interval dari interface ini diatur ke 1, yang berarti bahwa hanya frame dari LAN lain dengan nomor urut yang sama yang akan dibuang, sedangkan drop window dari antarmuka lain diatur ke 0, yang berarti tidak ada bingkai yang akan dijatuhkan (Gbr. 7).

Bingkai dari LAN B tidak terjatuh
Situasi yang paling umum adalah ketika kedua antarmuka disinkronkan dan ukuran kedua interval adalah 0 (Gbr. 8), yang berarti bahwa bingkai antarmuka yang didahulukan akan diterima dan interval antarmuka ini akan ditingkatkan menjadi 1, yang akan memungkinkan frame untuk dijatuhkan dari antarmuka lain dengan nomor urut yang sama.
LAN yang disinkronkanKarena adanya pengenal LAN di RCT, duplikat frame berbeda satu bit (dan memiliki checksum berbeda). Penerima memeriksa bahwa frame milik antarmuka (mis., Memeriksa apakah frame dengan pengidentifikasi LAN A telah tiba di antarmuka A). Penerima tidak akan menjatuhkan bingkai ini, karena mungkin berisi informasi yang berguna di blok data, tetapi dalam kasus ini counter cntWrongLanA atau cntWrongLanB akan bertambah satu. Karena kesalahan tersebut bukan hanya satu kali (dicampur oleh LAN A dan LAN B), penghitung akan terus meningkat.
Tautkan lalu lintas HSR
Saat mentransfer data dalam jaringan HSR, tag HSR ditambahkan ke setiap bingkai.
Tag HSR terdiri dari parameter berikut:
- 16-bit HSR Ethertype
- Indikator jalur 4-bit
- Ukuran bingkai 12-bit
- Nomor urut 16 bit
Pengirim memasukkan nomor urut yang sama ke frame duplikat yang dikirim, dan kemudian menambah nomor urut untuk setiap pesan yang dikirim dari simpul ini.
Penerima memantau nomor urut semua frame dari setiap sumber dari mana ia menerima data (itu membedakan sumber dengan alamat MAC). Jika bingkai berasal dari garis yang berbeda dan memiliki sumber dan nomor urut yang sama, maka salah satunya diterima, dan yang kedua dibuang.
Untuk mengontrol jaringan, setiap perangkat memelihara tabel semua node dalam jaringan yang darinya ia menerima data. Ini memungkinkan Anda untuk mendeteksi hilangnya node dan kesalahan di bus.
Node mendefinisikan bingkai yang dikirim oleh sumber dan dengan nomor urut.
Bingkai dengan menambahkan tag HSRNode HSR tidak pernah membuang bingkai yang sebelumnya tidak diterima. Node mendefinisikan hampir semua frame duplikat, tetapi jika ada beberapa dari mereka, itu tidak menghapusnya, yaitu. bingkai hanya melewati seluruh cincin dan dihancurkan pada pengirim.
Dalam standar, algoritma untuk menentukan frame duplikat tidak ditentukan. Sebagai metode yang mungkin, tabel hash, antrian, dan pelacakan nomor urut dapat digunakan.
Mode U
Dalam mode ini, simpul yang menerima bingkai menghancurkan duplikat dan tidak memperbolehkannya untuk menyebar lebih jauh. Jika frame itu bagaimanapun ditransfer lebih lanjut, maka itu dihancurkan pada node berikut. Mode ini memungkinkan Anda untuk melepas cincin dari lalu lintas Unicast.
Dalam diagram, panah merah menunjukkan paket dengan tag HSR yang dikirim dari port "A" (selanjutnya - frame "A").
Panah hijau menunjukkan paket dengan tag HSR yang dikirim dari port "B" (selanjutnya - frame "B").
Panah kosong menunjukkan lalu lintas yang turun, mis. bingkai yang akan ditransmisikan selama operasi normal, tetapi dalam mode ini dibuang.
Tanda silang menunjukkan penghapusan lalu lintas dari cincin (dalam hal apa pun).

Mode X
Dalam mode ini, node tidak meneruskan frame lebih lanjut dan membuangnya jika frame tersebut diterima dari arah lain.
Misalnya, DAN 1 pada gambar tidak akan meneruskan bingkai "B" lebih lanjut, karena dia telah menerima frame "A", dan DAN 2 tidak akan mengirimkan frame "A" lebih lanjut, karena sudah menerima bingkai "B".
Jika terjadi kesalahan di suatu tempat dalam algoritma dan frame ditransmisikan lebih lanjut, mereka akan dibuang pada node berikut atau pada node di mana mereka dibuat.
Mode X tidak berlaku untuk pesan PTP dan untuk transmisi frame pengawasan.

Kontrol jaringan
PRP
Penerima memeriksa bahwa semua frame tiba secara berurutan dan diterima dengan benar di kedua saluran. Ini mendukung penghitung kesalahan yang dapat dibaca, misalnya, melalui SNMP.
Semua perangkat mendukung tabel simpul yang dengannya mereka bertukar data. Tabel ini berisi informasi tentang waktu ketika frame terakhir dikirim atau diterima dari node tertentu dan informasi lain mengenai protokol PRP.
Pada saat yang sama, tabel ini memungkinkan untuk mendeteksi senyawa yang perlu disinkronkan nomor urut, serta untuk mendeteksi urutan yang rusak dan node yang hilang.
Diagnostik didasarkan pada fakta bahwa setiap DAN secara berkala mengirimkan kerangka diagnostik (kerangka pengawasan), yang memungkinkan Anda untuk memeriksa integritas jaringan dan keberadaan node. Pada saat yang sama, frame ini memungkinkan Anda untuk memeriksa perangkat mana yang bertindak sebagai DAN, menentukan alamat MAC mereka dan dalam mode apa mereka bekerja - menerima duplikat atau membuang duplikat.
Hsr
Setiap node secara konstan memeriksa semua tautan.
Setiap node secara berkala mengirimkan kerangka diagnostik (ke kedua port) yang berisi informasi tentang keadaan node. Frame ini diterima oleh semua node, termasuk pengirim. Ketika pengirim menerima pesan diagnostiknya sendiri, pemeriksaan integritas saluran fisik dilakukan.
Interval untuk mengirim kerangka diagnostik relatif besar (beberapa detik), karena tidak diperlukan untuk menyediakan redundansi, tetapi diperlukan hanya untuk tujuan diagnostik.
Semua node dimasukkan ke dalam tabel semua mitra yang ditemukan, dan waktu dicatat ketika node terakhir aktif, serta semua frame dan frame yang hilang yang tidak dikirim secara berurutan.
Semua perubahan topologi yang telah terjadi juga dicatat dan semua informasi dapat diperoleh melalui SNMP.
HSR dan PRP: Pro dan Kontra

Kesimpulan
Ini bukan untuk mengatakan bahwa satu protokol lebih baik dari yang lain - mereka dirancang sedikit untuk aplikasi yang berbeda. HSR dan PRP memungkinkan redundansi jaringan yang mulus, tetapi HSR memungkinkan Anda untuk membuat solusi yang lebih hemat biaya. Tetapi keuntungan seperti itu memerlukan kesulitan, karena jaringan berbasis HSR sulit untuk diukur dan aplikasi tidak terlalu fleksibel. Fleksibilitas yang rendah disebabkan oleh topologi yang terbatas (cincin, pasangan cincin), serta kompatibilitas protokol yang buruk dengan teknologi lain. Oleh karena itu, HSR lebih cocok untuk redundansi sistem kecil dan integrasi ke dalam jaringan besar. Pencadangan seluruh jaringan berbasis HSR bermasalah. PRP, pada gilirannya, adalah solusi yang lebih mahal, tetapi memungkinkan Anda untuk mengatur jaringan skala yang cukup besar, yang di masa depan dapat diperluas tanpa masalah, karena
Protokol ini memungkinkan untuk mengintegrasikan hampir semua teknologi dengan mudah dan menerapkan topologi yang sangat berbeda.Temukan solusinya