NETCONF - NETCONF

Image
NETCONF protokollrétegek.

A Network Configuration Protocol ( NETCONF ) az IETF által kifejlesztett és szabványosított hálózatkezelési protokoll . A NETCONF munkacsoportban fejlesztették ki, és 2006 decemberében jelent meg RFC 4741 néven, majd később 2011 júniusában átdolgozták és RFC 6241 néven jelentek meg . A NETCONF protokoll specifikáció egy Internet Standards Track dokumentum.

A NETCONF mechanizmusokat biztosít a hálózati eszközök konfigurációjának telepítésére, kezelésére és törlésére. Műveletei egy egyszerű Remote Procedure Call (RPC) réteg tetején valósulnak meg . A NETCONF protokoll az XML ( Extensible Markup Language ) alapú adatkódolást használja a konfigurációs adatokhoz, valamint a protokollüzenetekhez. A protokoll üzeneteket egy biztonságos szállítási protokoll tetején cserélik.

A NETCONF protokoll fogalmilag négy rétegre osztható:

  1. A Tartalom réteg konfigurációs és értesítési adatokból áll.
  2. A Műveletek réteg meghatározza az alapprotokoll műveletek készletét a konfigurációs adatok lekérésére és szerkesztésére.
  3. Az Üzenetek réteg mechanizmust biztosít a távoli eljáráshívások (RPC) és az értesítések kódolásához.
  4. A Secure Transport réteg biztonságos és megbízható üzenetküldést biztosít az ügyfél és a szerver között.

A NETCONF protokollt néhány nagyobb berendezésgyártó olyan hálózati eszközökben valósította meg, mint az útválasztók és kapcsolók. A NETCONF egyik erőssége az erőteljes konfigurációváltás támogatása, amely számos eszköz tranzakcióit használja.

Történelem

Az IETF az 1980-as évek végén fejlesztette ki az egyszerű hálózatkezelési protokollt (SNMP), és nagyon népszerű hálózatkezelési protokollnak bizonyult . A 21. század elején nyilvánvalóvá vált, hogy az eredetileg szándékoltak ellenére az SNMP-t nem a hálózati berendezések konfigurálására használták, hanem elsősorban a hálózat megfigyelésére . 2002 júniusában az Internet Architecture Board és az IETF hálózatkezelő közösségének legfontosabb tagjai találkoztak a hálózat üzemeltetőivel, hogy megvitassák a helyzetet. A találkozó eredményeit az RFC 3535 dokumentálja . Kiderült, hogy minden hálózatüzemeltető elsősorban más, saját tulajdonú parancssori felületet (CLI) használt az eszközök konfigurálásához. Ennek számos olyan tulajdonsága volt, amelyek az operátoroknak tetszettek, többek között az, hogy szöveges volt, szemben a BER-kódolású SNMP-vel. Ezenkívül számos berendezésgyártó nem biztosította az eszközök teljes konfigurálását az SNMP-n keresztül. Mivel az operátorok általában szkripteket szerettek írni a dobozaik kezelésének elősegítése érdekében, az SNMP CLI-t számos módon hiányosnak találták. Legfőképpen a kimenet kiszámíthatatlan jellege volt. A kimenet tartalma és formázása kiszámíthatatlan módon hajlamos volt a változásokra.

Körülbelül ugyanebben az időben a Juniper Networks XML-alapú hálózatkezelési megközelítést alkalmazott. Ezt eljuttatták az IETF-hez és megosztották a tágabb közösséggel. Ez a két esemény együttesen vezetett az IETF-hez 2003 májusában a NETCONF munkacsoport létrehozásához. Ezt a munkacsoportot egy hálózati konfigurációs protokollon dolgozták ki, amely jobban megfelel a hálózatüzemeltetők és a berendezésgyártók igényeinek. Az alap NETCONF protokoll első verziója RFC 4741 néven jelent meg 2006 decemberében. A következő években számos bővítményt tettek közzé (értesítések az RFC 5277- ben 2008 júliusában, részleges zárak az RFC 5717- ben 2009 decemberében, alapértelmezéssel az RFC 6243- ban júniusban 2011, a rendszer értesítései az RFC 6470- ben 2012 februárjában, a hozzáférés-ellenőrzés az RFC 6536- ban 2012 márciusában). Az alap NETCONF protokoll átdolgozott változata 2011 júniusában RFC 6241 néven jelent meg .

Protokoll rétegek

Tartalom

A NETCONF műveletek tartalma jól formázott XML. A legtöbb tartalom a hálózat kezeléséhez kapcsolódik . Ezt követően a JavaScript Object Notation (JSON) kódolásának támogatását is hozzáadták.

A NETMOD munkacsoport befejezte az "emberbarát" modellezési nyelv meghatározását az operatív adatok, a konfigurációs adatok, az értesítések és a műveletek szemantikájának meghatározására, YANG néven . A YANG-ot az RFC 6020 (1. verzió) és az RFC 7950 (1.1-es verzió) határozza meg, és az RFC 6991-ben található "Közös YANG adattípusok" kísérik .

2010 nyarán a NETMOD munkacsoport át lett bérelve, hogy az alapvető konfigurációs modelleken (rendszer, interfész és útválasztás), valamint az SNMP modellezési nyelvvel való kompatibilitás érdekében dolgozzon .

Tevékenységek

Az alapprotokoll a következő protokollműveleteket határozza meg:

Művelet Leírás
<get> Futtassa a futó konfigurációs és eszközállapot-információkat
<get-config> A megadott konfigurációs adattároló egészének vagy egy részének beolvasása
<edit-config> Szerkesszen egy konfigurációs adattárat tartalom létrehozásával, törlésével, egyesítésével vagy cseréjével
<copy-config> Másoljon egy teljes konfigurációs adattárat egy másik konfigurációs adattárolóba
<delete-config> Töröljön egy konfigurációs adattárolót
<lock> Az eszköz teljes konfigurációs adattárolójának zárolása
<kinyit> Engedje fel a konfigurációs adatraktár zárat, amelyet korábban a <lock> művelettel kaptak
<close-session> Kérje a NETCONF munkamenet kecses befejezését
<gyilkosság> Kényszeríteni a NETCONF munkamenet megszüntetését

A NETCONF alapvető funkcionalitása kibővíthető a NETCONF képességeinek meghatározásával. A megvalósítás által támogatott további protokolltulajdonságok halmaza kommunikálódik a szerver és az ügyfél között a munkamenet-beállítás képességcseréje során. A kötelező protokolltulajdonságok nem szerepelnek a képességcserében, mivel feltételezzük. Az RFC 4741 számos opcionális képességet határoz meg, beleértve: xpath és: validate. Vegye figyelembe, hogy az RFC 6241 elavítja az RFC 4741-et .

Az aszinkron eseményértesítések előfizetésének és fogadásának támogatását az RFC 5277 tartalmazza . Ez a dokumentum meghatározza a <create-subscription> műveletet, amely lehetővé teszi valós idejű és visszajátszott előfizetéseket. Az értesítéseket ezután aszinkron módon küldjük el az <notification> konstrukció segítségével. Meghatározza továbbá: interleave képességet, amely az alap: értesítési képességgel támogatva megkönnyíti más NETCONF műveletek feldolgozását, amíg az előfizetés aktív.

A futó konfiguráció részleges zárolásának támogatását az RFC 5717 határozza meg . Ez lehetővé teszi több munkamenet számára, hogy a futó konfiguráción belül szerkesszék a nem átfedő alfákat. E képesség nélkül az egyetlen elérhető zár a teljes konfigurációra vonatkozik.

A NETCONF protokoll megfigyelésének képességét az RFC 6022 határozza meg . Ez a dokumentum olyan adatmodellt tartalmaz, amely információkat tartalmaz a NETCONF adattárolókról, munkamenetekről, zárolásokról és statisztikákról, amely megkönnyíti a NETCONF szerver kezelését. Meghatározza a NETCONF-ügyfelek számára a NETCONF-kiszolgáló által támogatott adatmodellek felfedezésének módszereit, valamint a <get-schema> műveletet azok lekéréséhez.

üzenetek

A NETCONF üzenetréteg egyszerű, szállítástól független keretezési mechanizmust biztosít a kódoláshoz

  • RPC invokációk (<rpc> üzenetek),
  • RPC eredmények (<rpc-reply> üzenetek), és
  • eseményértesítések (<értesítés> üzenetek).

Minden NETCONF üzenet jól formázott XML dokumentum. Az RPC-eredmény egy RPC-meghíváshoz kapcsolódik egy üzenet-id attribútummal. A NETCONF üzenetek továbbíthatók, azaz az ügyfél több RPC-t is meghívhat anélkül, hogy először meg kellene várnia az RPC eredményüzeneteket. Az RPC üzeneteket az RFC 6241 és az értesítési üzeneteket az RFC 5277 határozza meg .

Szállítás

  • NETCONF protokoll a biztonságos héjon (SSH) keresztül: rfc: 6242
  • NETCONF Protocol over Transport Layer Security (TLS) a Mutual X.509 hitelesítéssel: rfc: 7589

Lásd még

  • YANG
  • Stefan Wallin (2014-10-18). NETCONF oktatóanyag (YouTube). Stockholm: farok-f.
  • Hálózat menedzsment
  • Konfiguráció-menedzsment
  • Hálózatfigyelés
  • XML séma

Hivatkozások