τϫʔΫػث͔Βͷ௨Λड͚औͬͨΓ͍Ζ͍ΖͰ͖Δ w :"/( w :FU"OPUIFS/FYU(FOFSBUJPOͷུ ͳΜͷͬͪ͜Ό͆ w /&5$0/'ͰαʔόʔͱΫϥΠΞϯτ͕σʔλͷΓऔΓ Λ͢ΔࡍʹʮͲ͏͍ͬͨσʔλΛΓऔΓ͢Δͷ͔ʁʯΛ هड़͢ΔͨΊͷݴޠ Μʁ /FUXPSLΛ.BOBHFNFOU͢Δ1SPUPDPMʁ 4/.1ʁ
to that of SMIng [RFC3780] and programming languages like C and C++. This C-like syntax was chosen specifically for its readability, since YANG values the time and effort of the readers of models above those of modules writers and YANG tool-chain developers. This section introduces the YANG syntax. 3'$5IF:"/(%BUB.PEFMJOH-BOHVBHF͔ΒҾ༻ The SMIv1 and the SMIv2 are bound to the Simple Network Management Protocol (SNMP) [RFC3411], while the SPPI is bound to the Common Open Policy Service Provisioning (COPS-PR) Protocol [RFC3084]. Even though the languages have common rules, it is hard to use common data definitions with both protocols. It is the purpose of this document to define a common data definition language, named SMIng, that can formally specify data models independent of specific protocols and applications. The appendix of this document defines a core module that supplies common SMIng definitions. 3'$4.*OH/FYU(FOFSBUJPO4USVDUVSFPG.BOBHFNFOU*OGPSNBUJPO͔ΒҾ༻
HFUHFUDPOpHFEJUDPOpHͳͲͷ/&5$0/'ͷجຊΦϖ Ϩʔγϣϯ ޙड़ :"/(ϞσϧͰఆٛ͞Εͨ31$ͷൃߦ w ΫϥΠΞϯτ͔ΒૹΒΕΔϝοηʔδͷ΄ͱΜͲ͜Ε w SQDSFQMZ w αʔόʔ͔ΒΫϥΠΞϯτૹΒΕΔ31$ͷ݁ՌΛද͢ w 31$͕ޭ͔ͨ͠Τϥʔ͕͋ͬͨ߹ͦͷ༰ΛؚΉ w OPUJpDBUJPO w ඇಉظͰΓऔΓ͞ΕΔ௨ϝοηʔδ w ߪಡͨ͠௨͕ൃੜͨ࣌͠ʹૹΒΕΔ
ޙड़͢Δ FEJUDPOpHͷλʔήοτʹSVOOJOHΛࢦఆͰ͖Δ w $BOEJEBUF$POpHVSBUJPO$BQBCJMJUZ w VSOJFUGQBSBNTOFUDPOGDBQBCJMJUZDBOEJEBUF w σόΠε͕ީิ $BOEJEBUF ͷઃఆΛ࣋ͭ͜ͱ͕Ͱ͖Δػೳ w DPNNJUΦϖϨʔγϣϯͱEJTDBSEDIBOHFTΦϖϨʔγϣϯ͕Մೳ w $POpSNFE$PNNJU$BQBCJMJUZ w VSOJFUGQBSBNTOFUDPOGDBQBCJMJUZDPOpSNFEDPNNJU w ީิ $BOEJEBUF ͷઃఆΛө $PNNJU ͢Δલʹ֬ೝखॱΛ౿Ή ͜ͱ͕Ͱ͖Δػೳ w 3PMMCBDLPO&SSPS$BQBCJMJUZ w VSOJFUGQBSBNTOFUDPOGDBQBCJMJUZSPMMCBDLPOFSSPS w Τϥʔ͕ൃੜͨ͠ࡍʹϩʔϧόοΫ͢Δ͜ͱ͕Ͱ͖Δػೳ
VSOJFUGQBSBNTOFUDPOGDBQBCJMJUZTUBSUVQ w ىಈ࣌༻ͷઃఆΛ࣋ͭ͜ͱ͕Ͱ͖Δػೳ w 63-$BQBCJMJUZ w VSOJFUGQBSBNTOFUDPOGDBQBCJMJUZVSM TDIFNFIUUQ GUQ w DPQZDPOpH ޙड़ ͰରΛ63-Ͱࢦఆ͢Δ͜ͱ͕Ͱ͖Δػೳ w 91BUI$BQBCJMJUZ w VSOJFUGQBSBNTOFUDPOGDBQBCJMJUZYQBUI w HFUHFUDPOpHͳͲ ޙड़ ͷରͷࢦఆ pMUFS ʹ91BUIදݱΛ༻ ͍Δ͜ͱ͕Ͱ͖Δػೳ
w ࢦఆ͞ΕͨσʔλετΞͷઃఆͷશͯ·ͨҰ෦Λऔಘ w FEJUDPOpH w ࢦఆ͞ΕͨσʔλετΞͷઃఆͷશͯ·ͨҰ෦Λมߋ w DPQZDPOpH w ઃఆΛίϐʔ͢Δ w ઃఆσʔλετΞΛ·͕ͨΔ͜ͱͰ͖Δ w EFMFUFDPOpH w ઃఆΛআ͢Δ w ͨͩ͠Քಇதͷઃఆ SVOOJOHDPOpH আͰ͖ͳ͍
$BOEJEBUF$POpHVSBUJPO$BQBCJMJUZΛ࣋ͭ࣌ʹར༻Մೳ w EJTDBSEDIBOHFT w ީิ $BOEJEBUF ͷઃఆΛഁغ w $BOEJEBUF$POpHVSBUJPO$BQBCJMJUZΛ࣋ͭ࣌ʹར༻Մೳ w DBODFMDPNNJU w ީิ $BOEJEBUF ͷઃఆΛө͢Δલͷ֬ೝͰөΛΩϟ ϯηϧ͢Δ w $POpSNFE$PNNJU$BQBCJMJUZΛ࣋ͭ࣌ʹར༻Մೳ w WBMJEBUF w ީิ $BOEJEBUF ͷઃఆΛݕূ͢Δ w 7BMJEBUF$BQBCJMJUZΛ࣋ͭ࣌ʹར༻Մೳ
3'$ ݄ w جຊతʹಉ͕ͩ݁͡ߏඍົͳมߋ͕͋Δ w ͰΫΦʔτ͞ΕͨจࣈྻͷΤεέʔϓ͕ඍົʹҧ͏ w ΫΦʔτ͞Ε͍ͯͳ͍จࣈྻʹͱΛೖΕΕͳ͍ w ͍͔ͭ͘ͷεςʔτϝϯτͰαϒεςʔτϝϯτ͕Մʹ ͳͬͨΓෆՄʹͳͬͨΓ w ৽͍͠αϒεςʔτϝϯτՃ͞Ε͍ͯͨΓ w ৄࡉ3'$ͷ4VNNBSZPG$IBOHFT GSPN3'$Λࢀর w ͱͰҧ͏࣌໌ه͢ΔΑ͏ʹ͠·͢
:"/(ϞσϧΛཧ͢Δ৫ͷใΛه͢ w DPOUBDUεςʔτϝϯτ w :"/(ϞσϧΛཧ͢Δ৫ͷ͍߹ΘͤઌΛه͢ w EFTDSJQUJPOεςʔτϝϯτ w :"/(Ϟσϧͷઆ໌Λه͢ w SFGFSFODFεςʔτϝϯτ w ࢀরใΛه͢ 3'$ͳͲ w SFWJTJPOεςʔτϝϯτ w վగͨ͠Λه͢
OBNFTDBQFεςʔτϝϯτ w :"/(Ϟσϧͷ໊લۭؒΛهड़͢Δ w ໊લۭؒάϩʔόϧʹҰҙͳ63* 3'$ w ྫ VSOFYBNQMFTZTUFNɺIUUQFYBNQMFKQTZTUFN w QSFpYεςʔτϝϯτ w ଞͷ:"/(Ϟσϧ͕͜ͷ:"/(ϞσϧͷࣝผࢠΛࢀর͢Δ ࡍʹ͚ͭΔ಄ࣙ w ྫ TZT ଞͷ:"/(Ϟσϧ͕͜ͷ:"/(ϞσϧͷࣝผࢠJE Λࢀর͢Δ߹TZTJEͷΑ͏ʹࢀরͰ͖Δ
ཁ͢Δʹ ྫɺBCD w εΩʔϚϊʔυ w εΩʔϚπϦʔΛߏ͢Δͻͱͭͷϊʔυ w ۩ମతʹҎԼͷεςʔτϝϯτ͕εΩʔϚϊʔυͱͳΔ w BDUJPO ͔Β ɺDPOUBJOFSɺMFBGɺMFBGMJTUɺMJTUɺ DIPJDFɺDBTFɺSQDɺJOQVUɺPVUQVUɺOPUJpDBUJPOɺ BOZEBUB ͔Β ɺBOZYNM w εΩʔϚπϦʔ w Ϟδϡʔϧʹఆٛ͞ΕͨεΩʔϚϊʔυͷ֊ߏ
͔Β ɺBOZYNM w σʔλϊʔυ w σʔλπϦʔΛߏ͢Δͻͱͭͷϊʔυ w ۩ମతʹҎԼͷεςʔτϝϯτ͔Βσʔλϊʔυ͕࡞Β ΕΔ w DPOUBJOFSɺMFBGɺMFBGMJTUɺMJTUɺBOZEBUB ͔Β ɺ BOZYNM w σʔλπϦʔ w /&5$0/'ͰΓऔΓ͞ΕΔ֊Խ͞Εͨσʔλදݱ
w ͦΕҎ֎ͷσʔλఆٛεςʔτϝϯτ࠷ऴతʹ্هͷ εςʔτϝϯτʹల։͞Ε·͢ w ͜ΕҎ߱ҎԼͷΑ͏ʹઆ໌ΛਐΊ·͢ w σʔλπϦʔΛߏ͢Δ্هͷεςʔτϝϯτͷઆ໌ w ্هεςʔτϝϯτͷఆٛͰ༻͍Δαϒεςʔτϝϯτͷ આ໌ ܕɺ੍ɺઃఆͷͨΊͷϊʔυ͔൱͔ɺ w ্هͷεςʔτϝϯτҎ֎ͷσʔλఆٛεςʔτϝϯτͷ આ໌ DIPJDFɺDBTFɺBVHNFOUɺVTFT w ͦͷଞ SQDɺBDUJPO ͔Β ɺOPUJpDBUJPOɺ
w ࠐܕͱͯ͠ҎԼͷݸ͕ఆٛ͞Ε͍ͯΔ w CJOBSZόΠφϦσʔλΛද͢ܕ w CJUTϏοτ͋Δ͍ϑϥάͷηοτΛද͢ܕ w CPPMFBOਅِ USVF͔GBMTF Λද͢ܕ w EFDJNBMCJUͷූ߸ਐ w FNQUZΛ࣋ͨͳ͍MFBGΛද͢ w FOVNFSBUJPOྻڍܕ w JEFOUJUZSFGࣝผࢠͷࢀর w JOTUBODFJEFOUJpFSσʔλπϦʔϊʔυͷࢀর w ଓ͘ʜ
TUSJOHจࣈྻܕ w VJOUɺVJOUɺVJOUɺVJOU֤Ϗοτ෯ͷූ߸ແ͠ ܕ w ੜܕࠐܕଞͷੜܕ͔ΒUZQFEFGεςʔτϝϯτΛ ༻͍ͯఆٛ͢Δ͜ͱ͕Ͱ͖Δ ৄࡉޙड़ w UZQFεςʔτϝϯτͦͷܕʹԠͯ͡ิ͢ΔͨΊͷαϒε ςʔτϝϯτΛࢦఆ͢Δ߹͕͋Δ ৄࡉޙड़
QBUUFSOΛࢦఆ͢Δ߹NPEJpFSαϒεςʔτϝϯτʹҾ JOWFSUNBUDIͰҙຯΛసͤ͞Δ͜ͱ͕Ͱ͖Δ ͔Β w ӈهͷྫͰ w จࣈྻͷ͕͞จࣈҎ্ w ΞϧϑΝϕοτ͔@Ͱ࢝·Γ จࣈҎ্ͷΞϧϑΝϕοτ ͔@͔ࣈ͔͔͕ଓ͖ w େจࣈ͔খจࣈͷYNMͰ ࢝·Βͳ͍ w จࣈྻΛද͢ UZQFTUSJOH\ MFOHUINBY QBUUFSO<B[";@><B[";a@> QBUUFSO<Y9><N.><M-> \ NPEJpFSJOWFSUNBUDI ^ ^
w ·ͨEFDJNBMࠐܕ͔ͦͷੜܕͷ࣌ʹখҎԼͷܻ GSBDUJPOEJHJUT Λࢦఆ͢Δ͜ͱ͕Ͱ͖Δ w ӈهͷྫͰ w খҎԼܻͰ w ͕ w ͔Β·Ͱ͔ w ͔ w Ҏ্͔ w ͷਐΛද͢ UZQFEFDJNBM\ GSBDUJPOEJHJUT SBOHFccNBY ^
w ͜ͷΑ͏ͳDPOUBJOFSϊʔυͷ߹QSFTFODFεςʔτϝϯτ Λఆٛ͢Δ͜ͱͰۭͰ͋ͬͯαʔό͕আ͠ͳ͍Α͏ʹࢦ ఆ͢Δ͜ͱ͕Ͱ͖Δ w QSFTFODFεςʔτϝϯτͷҾʹͦͷઆ໌Λ͢ w QSFTFODFεςʔτϝϯτDPOUBJOFSεςʔτϝϯτͷΈ͕ ࣋ͭ͜ͱ͕Ͱ͖Δ
IUUQTUPPMTJFUGPSHIUNMSGD w ESBGUJFUGOFUDPOGSGDCJT4VCTDSJCJOHUP&WFOU/PUJpDBUJPOT w IUUQTUPPMTJFUGPSHIUNMESBGUJFUGOFUDPOGSGDCJT w 3'$/&5$0/'&WFOU/PUJpDBUJPOT w IUUQTUPPMTJFUGPSHIUNMSGD w 3'$5IF:"/(%BUB.PEFMJOH-BOHVBHF w IUUQTUPPMTJFUGPSHIUNMSGD w 3'$:"/("%BUB.PEFMJOH-BOHVBHFGPSUIF/FUXPSL$POpHVSBUJPO1SPUPDPM /&5$0/' w IUUQTUPPMTJFUGPSHIUNMSGD w 3'$$PNNPO:"/(%BUB5ZQFT w IUUQTUPPMTJFUGPSHIUNMSGD w 3'$":"/(%BUB.PEFMGPS*OUFSGBDF.BOBHFNFOU w IUUQTUPPMTJFUGPSHIUNMSGD w 3'$":"/(%BUB.PEFMGPS*1.BOBHFNFOU w IUUQTUPPMTJFUGPSHIUNMSGD w 3'$":"/(%BUB.PEFMGPS3PVUJOH.BOBHFNFOU w IUUQTUPPMTJFUGPSHIUNMSGD w ESBGUJFUGOFUNPESGDCJT(VJEFMJOFTGPS"VUIPSTBOE3FWJFXFSTPG:"/(%BUB.PEFM%PDVNFOUT w IUUQTUPPMTJFUGPSHIUNMESBGUJFUGOFUNPESGDCJT