Legjobb válasz
A SIGPIPE a “törött cső” jel, amelyet egy folyamat küld, amikor megpróbál írni egy olyan csőre, amelynek olvasási vége van zárt (vagy amikor megpróbál írni egy olyan foglalatba, amely már nincs nyitva olvasásra), de nem fordítva . Az alapértelmezett művelet a folyamat leállítása.
Ez a viselkedés hasznos a csővezetékekben folyó folyamatok tipikus eseteiben. Ha a következőt futtatja: foo | bar
, akkor soha nem láthatja közvetlenül a foo
kimenetét – ez lesz a bar
és megjelenik a bar
kimenete. Ez azt jelenti, hogy ha például bar
meghal, akkor nincs értelme a foo
folytatásának. Ez történhet vagy azért, mert a bar
nem sikerült, vagy azért, mert már nincs szüksége bemenetre (például, ha a bemenetét ellenőrzi, hogy nincsenek-e hibák, akkor a keresés után leállhat az első).
Képzelje el, mi történne, ha a SIGPIPE nem létezne, és bar
meghalt (akár hiba miatt, akár azért, mert egyszerűen a kilépés mellett döntött ). A foo
továbbra is fut, és az írás megkísérlésekor hibakódot kell kapnia. Lehet, hogy figyelmen kívül hagyja ezt, és folytatja a futtatást, így a felhasználónak nincs egyértelmű jele annak, hogy a bar
esetleges rendellenes állapotának elsődleges végződése bekövetkezett. Amikor a foo
-t megöli a SIGPIPE, a héj ezt felismeri a wait()
függvények egyikével, és kinyomtat egy „Broken pipe” üzenetet, ill. hasonló.
Viszont ha foo
először meghal, ez a szokásos eset; bezárja az írási véget, majd bar
egyszerűen eléri az EOF-et, és normálisan leáll.
Válasz
Az OpenConfig egy iparági szabványos YANG modellek a konfigurációhoz és a felügyelethez, amelyeket natívan támogatnak a hálózati hardver és szoftver platformokon.
A hálózati szolgáltatók számára nagyon költségessé vált automatizált keretrendszerük fenntartása a több szállítós telepítésekhez.
Bár sok szabványos szállítási interfész van, nincs szabványos adatábrázolás (lehet, hogy például az A és a B szállító szabványos interfészeket támogat (például XML, REST, NETCONF …), de az adatkulcs értéke nem azonosak. A vendor-A az interfészkulcsot “intf” -ként, a B-gyártó pedig az interfész kulcsot “interfészként” jelenítheti meg.)
Tehát minden alkalommal, amikor a hálózat-üzemeltető újat ad hozzá / frissít eszközöket a különböző gyártóktól származó telepítések során, frissíteniük kell az automatizált keretrendszerüket és az írófordítót kell átalakítaniuk fic adatábrázolás az ügyfelek adatábrázolásához.
Néhány hálózati szolgáltató, mint például a Google, az AT&T, a BT, a Microsoft … azon dolgozik, hogy ezeket a fordítókat a szállítóhoz tolja. Az üzemeltetők nem törődnek azzal, hogy hogyan szereznek adatokat, de közös ábrázolásra van szükségük adatokra, hogy eszközeik könnyen megértsék és elemezzék az adatokat.
A YANG modellt használják ezen szabványos adatmodellek meghatározására. Megnézhet néhány standard yang modellt @ openconfig / public
A YANG (még egy újabb generáció) egy adatmeghatározási nyelv.