¹«º£²Ê´¬¡¤6600(ÖйúÓÎ)¹Ù·½ÍøÕ¾

µã»÷ÏÂÔØ¡¶ÍòÕ×Ô°ÇøÒÔÌ«²Ê¹âÑо¿±¨¸æ¡·£¬½âËøÍòÕ×Ô°ÇøÍøÂ罨ÉèÖ¸ÄÏ
Á¢¼´ÏÂÔØ
ÎÞ¸Ð×¼Èë ÈËÎïͳ¹Ü Ø­ RG-SAM+5.X ÐÂÒ»´ú¸ßУAIÈÏ֤ƽ̨·¢²¼
Ô¤Ô¼Ö±²¥
²úÆ·
< ·µ»ØÖ÷²Ëµ¥
²úÆ·ÖÐÐÄ
²úÆ·
ºÏ×÷»ï°é
·µ»ØÖ÷²Ëµ¥
Ñ¡ÔñÇøÓò/ÓïÑÔ

³©Ì¸Êý¾ÝÖÐÐÄÍøÂçÔËά×Ô¶¯»¯

¡¾ÍøÂçÔËά×Ô¶¯»¯¡¿OpenConfigÏÖÒѳÉÎªÍøÂç×Ô¶¯»¯¼¼ÊõµÄ·¢Õ¹Ç÷ÊÆ£¬¹«º£²Ê´¬¡¤6600µÄÊý¾ÝÖÐÐĽ»»»»úÖ§³Ö Netconf YANG ºÍ OpenConfig YANG£¬¿É°ïÖúÆóҵʵÏÖÊý¾ÝÖÐÐÄÖÇÄÜÔËά¡£

  • ·¢²¼Ê±¼ä£º2018-04-19

  • µã»÷Á¿£º

  • µãÔÞ£º

·ÖÏíÖÁ

ÎÒÏëÆÀÂÛ

Ê×ÏÈ£¬ÈÃÎÒÃǼÙÏëÒ»¸ö³¡¾°£º

ÓÉÓÚÒµÎñ·¢Éú±ä¸ü£¬ÐèҪΪһ¸ö POD ÀïÃæµÄ¼¸Ê®Ì¨½»»»»úÐÞ¸Ä QoS ÅäÖá£×÷ÎªÍøÂçÔËάÈËÔ±£¬Ó¦¸ÃÔõÑù´¦ÀíÕâÏ×÷ÄØ£¿

Èç¹ûÐèÒª±ä¸üµÄ¶ÔÏóÊÇÕû¸öÊý¾ÝÖÐÐŲ̀ÉõÖÁ¼¸Ç§Ì¨½»»»»ú£¬ÓÖ¸ÃÔõÑù´¦ÀíÕâÏ×÷ÄØ£¿

µ±Ï£¬»¥ÁªÍøÐÐÒµÒѾ­ÆÕ±é²ÉÓà DevOps µÄÌåϵÁ÷³Ì¡£¿¿ÈËÁ¦È¥Ò»Ì¨É豸һ̨É豸µÄ¸ü¸ÄÅäÖã¬ÒѾ­²»ÔÙÊÇÕýÈ·µÄ˼ά·½Ê½¡£Ô­Òò²»½ö½öÊÇÀË·Ñʱ¼ä —— ÒªÖªµÀ£¬ÈËÈç¹ûÒª³¤Ê±¼ä±£³Ö×¢ÒâÁ¦¼¯ÖУ¬´óÄÔÐèÒªºÄ·Ñ´óÁ¿µÄÄÜÁ¿£¬ºÜÄѱ£Ö¤²»³öÏÖÒÅ©»òÕß´íÎó¡£¶ø»úÆ÷È´²»»á¡£

Òò´Ë£¬ÕýÈ·µÄ·½·¨ÊÇÀûÓà DevOps µÄÁ÷³Ì£¬ÈûúÆ÷À´Íê³ÉÕâÏ×÷¡£ÀýÈç²ÉÓûùÓÚ Python µÄ SSH ¿â Paramiko »ò Netmiko£¬ÒÔ¼° Ansible »ò SaltStack µÈ×Ô¶¯»¯¹¤¾ß±àдÔËά½Å±¾¡£

Netmiko ¿âºÍ Ansible µÈÔËά¹¤¾ßËäÈ»¿ÉÒÔͨ¹ý³ÌÐò»¯µÄ½Å±¾¶ÔÍøÂçÉ豸ʵÏÖÅúÁ¿¹ÜÀí£¬µ«ÈÔÈ»ÐèÒªÔËά¹¤³Ìʦ¶ÔÍøÂçÉ豸µÄ CLI ºÜÊìϤ£¬Ô¤ÏÈÔڽű¾Öн¨Á¢ÐèÒª±»Ö´ÐÐµÄ Command ÁÐ±í¡£

 

CLI

CLI ×î´óµÄÎÊÌâ¾ÍÊÇÔÚ²»Í¬³§É̵ÄÉ豸֮¼ä£¬ÉõÖÁÔÚ²»Í¬°æ±¾Ö®¼ä´æÔڽϴó²îÒì¡£±ÈÈçÔÚij C ³§É̽»»»»úÉÏÅäÖñßÔµ¶Ë¿Ú£¬²»Í¬µÄ OS °æ±¾ÃüÁî²¢²»Ïàͬ£º

 

 

¶ø¶ÔÓÚÁíһЩ³§ÉÌ£¬ÅäÖÃÃüÁîÔò²îÒì¸ü´ó¡£ÀýÈçÔÚij E Æ·ÅÆ ½»»»»úÉÏÅäÖñßÔµ¶Ë¿ÚµÄÃüÁîΪ£º

 

 

ÕâÒâζ×Å£ºÈç¹ûÉ豸°æ±¾Éý¼¶£¬¾Í¿ÉÄÜÐèÒª¸ü¸ÄÔËά½Å±¾µÄ´úÂ롣ΪÁ˱ÜÃâ³§Ḛ́󶨣¬ÍøÂçÄÚͨ³£Ò²»áͬʱ´æÔÚ¶à¸ö³§É̵ÄÉ豸£¬ÏàÓ¦µØ£¬Ò²¿ÉÄÜÐèҪ׼±¸¶àÖÖÔËά½Å±¾»òÕßÈÃÔËά½Å±¾±äµÃºÜ¸´ÔÓ —— ÏÈÅжÏÉ豸ÐͺźͰ汾ºÅ£¬ÔÙÔËÐÐÏàÓ¦µÄ Command-list¡£

ËùÒÔ CLI ²¢²»ÊʺÏÓÃÀ´×÷ΪһÖÖ API¡£ËäÈ»²ÉÓÃ×Ô¶¯»¯¹¤¾ß´¦Àí Commands ¿ÉÒÔ½ÚÊ¡ÍøÂçÔËάÈËÔ±µÄ¹¤×÷Á¿£¬µ«ÊǼ¼ÊõÃż÷ºÍά»¤³É±¾¶¼±È½Ï¸ß¡£SNMP ËÆºõÊÇÒ»ÖÖ¸üºÃµÄÑ¡Ôñ¡£

 

SNMP

¡ø SNMP Overview

 

SNMP µÄÀúÊ·ºÜÓÆ¾Ã£¬µÚ 1 ¸öÓëÖ®Ïà¹ØµÄ RFC 1065 ·¢²¼ÓÚ 1988 Ä꣬¾à½ñÒÑÓÐ 30 Äê¡£ÔÚ SNMP ¼Ü¹¹ÖУ¬Ò»¸öÍøÂçÉ豸ÒÔÊØ»¤½ø³ÌµÄ·½Ê½ÔËÐÐ SNMP Agent£¬¶ø NMS£¨ÍøÂç¹ÜÀíϵͳ£©ºÍÍøÂçÔËάÈËÔ±ËùʹÓõĸ÷ÖÖ SNMP ¹ÜÀí¹¤¾ßÔò³ÆÎª SNMP Manager¡£SNMP Agent Äܹ»ÏìÓ¦À´×Ô SNMP Manager µÄ¸÷ÖÖÇëÇóÐÅÏ¢¡£

SNMP Agent »áά»¤Ò»¸ö MIB£¨¹ÜÀíÐÅÏ¢¿â£©£¬ÀïÃæ±£´æ×Å´óÁ¿µÄ OID £¨¶ÔÏó±êʶ·û£©¡£Ò»¸ö OID ÊÇÒ»¶ÔΨһµÄ Key-Value£¬SNMP Manager Ïò SNMP Agent ²éѯ»òÐÞ¸ÄÈô¸É Key Ëù¶ÔÓ¦µÄ Value£¬¾Í¿ÉÒÔʵÏÖÐÅÏ¢²É¼¯»òÕßÍøÂçÉ豸µÄÅäÖÃÐ޸ġ£

 

¡ø MIB-Example

 

ÉÏͼÊÇÒ»¸ö MIB ʾÀý£¬Çë×¢Òâ±ê»ÆÉ«µÄ²¿·Ö¡£OID 1.3.6.1.2.1.2.2.1.5 ÓÃÀ´ÒÔ bps Ϊµ¥Î»ÆÀ¹À½Ó¿ÚÁ÷Á¿£¬ËüÊôÓÚ RFC 1213 ±ê×¼ MIB£¬Ãû³ÆÎª ifSpeed£¬Ö»¶Á¡£ÒòΪÕâ¸ö MIB ²¢²»ÊÇÎÒ´ÓÕýÔÚÔËÐеÄÉ豸ÉÏÈ¡ÏÂÀ´µÄ£¬ËùÒÔµ±Ç°µÄ Value Ϊ¿Õ¡£

ÐèҪעÒâµÄÊÇ£¬SNMP Manager ²àµÄ MIB ²¢²»ÊDZØÐèµÄ¡£Èç¹ûʹÓÃÊý×Ö OID 1.3.6.1.2.1.2.2.1.5£¬SNMP Manager ¿ÉÒÔÖ±½Ó´Ó SNMP Agent get ½Ó¿ÚÁ÷Á¿´ø¿í£¬¶ø²»ÐèÒª°²×°ÍêÕûµÄ MIB¡£

ÏÖÔÚ SNMP ÔÚÍøÂç¼à¿ØÁìÓòÒѾ­±»¹ã·ºÊ¹Óã¬ÀûÓà Zabbix¡¢Nagios¡¢Cacti µÈ¿ªÔ´µÄ SNMP ¹ÜÀí¹¤¾ß²É¼¯ÍøÂçÉ豸½Ó¿ÚÁ÷Á¿´ø¿íºÍÆäËûÉ豸ÐÅÏ¢£¬Í¬Ê±Ò²ÓдóÁ¿µÄ»ùÓÚ Python µÄ SNMP ¿âÓÃÀ´ÊµÏÖÔËά¿ª·¢£¬ÀýÈç PySNMP¡¢ EasySNMP¡¢ Net-SNMPµÈµÈ£¬²¢ÇÒËüÃǶ¼¿ÉÒÔ¼¯³Éµ½ Ansible ºÍ SaltStack µÈ×Ô¶¯»¯ÔËά¹¤¾ßÉÏ¡£

¿´ÉÏÈ¥»¹²»´í£¬µ«Êµ¼ÊÉÏ SNMP ÈÔÈ»²»ÊÇÒ»¸öºÏÊ浀 API£¬ÒòΪËü´æÔÚ¼¸¸öÎÊÌ⣺

¡ðÌ«¹ÅÀÏ£¬²¢·¢ÐÔÄܲ»ºÃ

¡ð»ùÓÚ UDP ЭÒé´«Ê䣬±È½Ï²»¿É¿¿¡£ËäÈ»ÔÚÓ¦ÓòãÓÐ Response »úÖÆ±£Ö¤¶ª°üÖ®ºóµÄÖØ¸´ get/ set£¬µ«´ú¼Û¾ÍÊÇÐÔÄܺÍÔËÐÐʱ¼ä¶¼Êܵ½Ó°Ïì

¡ðÖÂÃüµÄÎÊÌâÊÇ£¬¸÷³§É̶¼´óÁ¿µÄʹÓÃ˽ÓÐ MIB£¬È´²»´æÔÚÒ»¸ö¿ÉÒÔ×Ô¶¯·¢ÏÖÍøÂçÉ豸µ±Ç°Ëù²ÉÓÃµÄ MIB µÄ»úÖÆ¡£ÍøÂçÔËάÈËÔ±±ØÐë·Ö±ðÏòÉ豸³§ÉÌË÷È¡ÍøÂçÉ豸µÄ MIB£¬ºÄ·Ñ´óÁ¿µÄʱ¼äÕûÀí×Ô¼ºÐèÒªµÄ OID£¬ÔÙÊÖ¹¤µ¼Èëµ½×Ô¶¯»¯ÔËάƽ̨»òÕ߽ű¾µ±ÖÐ

ËùÒÔ SNMP ÈÔȻֻÊʺÏÓÃÀ´×öÐÅÏ¢²É¼¯£¬Ìṩ¸æ¾¯ºÍ¿ÉÊÓ»¯±¨±í£¬µ«×Ô¶¯»¯ÔËάµÄ API ÔòÐèÒª¿¼ÂÇÆäËûµÄÑ¡Ïî¡£Õ¾ÔÚÍøÂçÔËάÈËÔ±µÄ½Ç¶È£¬Õâ¸ö API Ó¦¸ÃÂú×ãÒÔÏÂÒªÇó£º

¡ðÈÝÒ×ʹÓà —— Usability ÊÇËùÓвúÆ·µÄºËÐļÛÖµ

¡ðÐèÒªÄܹ»ÇåÎúµØÇø·Ö“ÅäÖÃÊý¾Ý”£¬“É豸ÔËÐÐ״̬Êý¾Ý”ºÍ“ͳ¼ÆÊý¾Ý”

¡ðÐèÒªÄܹ»·Ö±ð´Ó¸÷¸öÍøÂçÉ豸»ñÈ¡ÉÏÊö 3 ÖÖÊý¾Ý£¬²¢ÇÒ¿ÉÒÔ·½±ãµØ¶Ô±È²»Í¬É豸µÄÊý¾Ý

¡ð¿ÉÒÔÈÃÍøÂçÔËάÈËԱͳһµØ¹ÜÀíÕû¸öÍøÂçµÄËùÓÐÉ豸£¬¶ø²»ÊÇһ̨һ̨µÄµ¥¶À¹ÜÀí

¡ð¶Ô²»Í¬³§É̵ÄÉ豸¶¼Äܹ»Ê¹ÓÃͬһÖÖÅäÖ÷½·¨

¡ðÅäÖñä¸ü¶ÔÍøÂçÒµÎñµÄÓ°ÏìÒª¾¡¿ÉÄܵÄС

¡ðÄܹ»Ìṩһ¸ö±ê×¼»¯µÄ£¬¶ÔÉ豸 Pulling ºÍ Pushing ÅäÖÃÎļþµÄÁ÷³Ì£¬ÒÔÂú×ã¶ÔÉ豸ÅäÖõı¸·ÝºÍ»Ö¸´µÄÒµÎñÐèÇó

¡ðÄܹ»ºÜ·½±ãµØ£¬³ÖÐøµØ£¬¼ì²éÉ豸ÅäÖÃÎļþµÄÒ»ÖÂÐÔ

¡ðÄܹ»Ìṩ»ùÓÚÎı¾µÄÅäÖ÷½Ê½£¬²¢ÇÒ²»»áµ¼ÖÂÅäÖõÄÂÒÐò£¬ÀýÈç²»ÄܽÁÂÒ ACL ¹æÔòµÄ˳Ðò

Äܹ»Âú×ãÕâЩҪÇóµÄÍøÂçÉ豸µÄ±±Ïò API ½Ó¿Ú¾ÍÊÇ Netconf¡£

 

Netconf

Netconf ÊÇ IETF ·¢²¼µÄ±ê׼ЭÒ飬ËüµÄÈ«³ÆÊÇ Network Configuration Protocal¡£´ÓÃû×־ͿÉÒÔ¿´³öÀ´£¬Netconf µÄ×÷ÓÃÊÇ»ùÓÚÍøÂçÀ´°²×°¡¢²Ù×÷ºÍɾ³ýÉ豸µÄÅäÖá£ÔÚ Netconf µÄ¼Ü¹¹ÖУ¬ÍøÂçÉ豸³äµ± Netconf Server µÄ½ÇÉ«£¬¶øÔËάÈËÔ±µÄÕâÒ»²àÔòÊÇ Netconf Client¡£´ËÍ⣬ºÍ OSI ±ê׼ģÐÍÒ»Ñù£¬Netconf Ò²ÊÇ·Ö²ã½á¹¹¡£

¡ø Netconf 4 Layers

 

ËüÓÐ 4 ¸ö²ã´Î£¬´Óϵ½ÉÏÒÀ´ÎΪ£º

• °²È«´«Êä²ã

°²È«´«Êä²ãÔÚ Netconf Client ºÍ Netconf Server Ö®¼äÌṩ°²È«µÄ¶Ëµ½¶ËÁ¬½Ó¡£Óë SNMP ²ÉÓ÷ÇÃæÏòÁ¬½ÓµÄ UDP ЭÒ鲻ͬ£¬Netconf ²ÉÓÃÃæÏòÁ¬½ÓµÄ TCP ЭÒ飬ͨ³£ÊÇ SSH ЭÒ飬±£Ö¤Á¬½ÓµÄ¿É¿¿ÐԺͰ²È«ÐÔ¡£

• ÏûÏ¢²ã

ÏûÏ¢²ãÒ²³ÆÎª RPC£¨Ô¶³Ì¹ý³Ìµ÷Ó㩲ã¡£Netconf Server£¨ÍøÂçÉ豸£©ÉÏÃæ²¿ÊðÁË Netconf Ó¦Óã¬Netconf Client ÐèÒªµ÷Óà Server ÉϵÄÓ¦ÓÃËùÌṩµÄº¯Êý/·½·¨£¬µ«ÓÉÓÚ Client ºÍ Server ²»ÔÚͬһ¸öÄÚ´æ¿Õ¼ä£¬ÎÞ·¨Ö±½Óµ÷Óã¬ËùÒÔÐèҪͨ¹ýÍøÂçÀ´±í´ïµ÷ÓõÄÓïÒ壬²¢´«´ïµ÷ÓõÄÊý¾Ý¡£Õâ¸ö¹ý³Ì£¬³ÆÎª RPC¡£ËüÌṩÁËÒ»¸ö¼òµ¥µÄ£¬Ó밲ȫ´«Êä²ãÎ޹صĻúÖÆÀ´·â×°²Ù×÷²ãºÍÄÚÈݲãµÄÊý¾Ý£º

¡ðRPC µ÷Ó㺠<rpc> ÔªËØËù·â×°µÄÏûÏ¢

¡ðRPC ½á¹û£º <rpc-reply> ÔªËØËù·â×°µÄÏûÏ¢

¡ðʼþ֪ͨ£º <notification> ÔªËØËù·â×°µÄÏûÏ¢

• ²Ù×÷²ã

²Ù×÷²ã¶¨ÒåÁËÈçͼËùʾµÄ 9 ÖÖ»ù´¡²Ù×÷¼¯£¬ÆäÖУº

    <get>¡¢ <get-config> ÓÃÀ´¶ÔÉ豸½øÐÐȡֵ²Ù×÷

    <edit-config>¡¢ <copy-config>¡¢ <delete-config> ÓÃÓÚÅäÖÃÉ豸²ÎÊý

    <lock> ºÍ <unlock> ÊÇÔÚ¶ÔÉ豸½øÐвÙ×÷ʱ£¬Îª·ÀÖ¹²¢·¢²úÉú»ìÂÒµÄËøÐÐΪ

    <close-session> ºÍ <kill-session> ÓÃÓÚ½áÊøÒ»¸ö»á»°²Ù×÷

• ÄÚÈݲã

¹ËÃû˼Ò壬ÄÚÈݲã¾ÍÊÇÓÃÀ´±í´ïÅäÖÃÊý¾ÝºÍ״̬Êý¾Ý£¬ÍøÂçÔËάÈËÔ±Ö»ÐèÒª¹Ø×¢Êý¾Ý±¾Éí£¬¶ø²»ÐèҪȥ¹Ø×¢É豸µÄÏà¹ØÃüÁî¡£»ù´¡ÍøÂçÉ豸ÔÚÄÚÈݲãËù²ÉÓõÄÊý¾Ý¸ñʽͨ³£ÊÇ XML£¬µ«Ò²Óг§É̵ÄÊý¾Ý¸ñʽ²ÉÓÃÁË JSON¡£

ËäÈ»ÍøÂçÔËάÈËÔ±²»ÔÙÐèÒª¹Ø×¢É豸µÄÏà¹ØÃüÁîÁË£¬µ«ÈÔÈ»ÎÞ·¨Ö±½ÓʹÓà Netconf ÅäÖÃÉ豸£¬»¹ÐèÒª¿¼ÂÇÅäÖýṹ¡£

ʲô½Ð“ÅäÖýṹ”ÄØ£¿

¼ÙÈçÎÒÃÇÏÖÔÚÒª½«½»»»»úµÄ 10# ¶Ë¿Ú»®Èë VLAN 20¡£¹«º£²Ê´¬¡¤6600½»»»»úÐèÒªÔÚÎïÀí¶Ë¿ÚģʽÏÂÅäÖãº

 

 

¶øÄ³ H Æ·ÅÆ½»»»»úÈ´ÐèÒªÔÚ VLAN Âß¼­¶Ë¿ÚģʽÏÂÅäÖãº

 

 

´ÓÉÏÃæÁ½¸öÅäÖÃʾÀý¿ÉÒÔ·¢ÏÖ¹«º£²Ê´¬¡¤6600½»»»»úºÍ H Æ·ÅÆ½»»»»úµÄÅäÖýṹÓÐÃ÷ÏÔ²îÒ죬ËùÒÔÎÞ·¨Ö±½ÓʹÓà XML »òÕß JSON ÐÞ¸ÄËüÃǵÄÉ豸ÅäÖá£

ΪÁ˽â¾öÅäÖýṹµÄÎÊÌ⣬ÐèÒª½« XML ºÍ JSON Êý¾Ý¸ñʽ³éÏó³ÉÒ»¸öͳһµÄ±ê×¼µÄÄ£ÐÍ£¬Õâ¾ÍÊÇ YANG¡£YANG µÄÈ«³ÆÊÇ Yet Another Next Generation£¬Ã»ÓÐÇ¡µ±µÄÖÐÎÄÀ´·­ÒëËü¡£Í¨Ë׵Ľ²£¬YANG ÊDZí´ï Netconf Ëù²Ù×÷µÄÅäÖÃÊý¾ÝºÍ״̬Êý¾ÝµÄÄ£°å£¬ËüÃèÊöʲô²ÅÊÇ·ûºÏÉ豸ÆÚÍûµÄÊý¾Ý¡£ÓÐÁË YANG Model£¬ÅäÖýṹ¾Í½»¸øËüÈ¥´¦Àí£¬ÍøÂçÔËάÈËÔ±¾ÍÖ»ÐèÒª×öÒ»¸öÍêÐÎÌî¿Õ¼´¿É¡£

Ìî¿ÕµÄÌâÄ¿´ó¸ÅÊÇÕâÑù×ӵģº

 

 

Ìî¿ÕÌâµÄ´ð°¸´ó¸ÅÊÇÕâÑù×ӵģº

 

 

Õâ¸ö¹ý³ÌÔÚÂß¼­ÉÏ£¬ÓëÏò SNMP µÄ OID Ìî³ä/¶ÁÈ¡ Value ²î²»¶à¡£

Netconf ºÍ YANG Model µÄ³öÏÖ£¬ÎªÍøÂç×Ô¶¯»¯´øÀ´Á˼«´óµÄ±ãÀû¡£ÅäºÏ×Ô¶¯»¯µÄ³ÌÐò£¬¿ÉÒÔʵÏÖ¶¯Ì¬ÏòÍøÂçÉ豸Ï·¢ÅäÖ㬽«Êý¾ÝÃæºÍ¿ØÖÆÃæ·ÖÀ룬×é³ÉÈí¼þ¶¨ÒåµÄÍøÂç¡£ÊÂʵÉÏ£¬Netconf Ò²ÊÇ OpenDayLight µÈ¿ªÔ´ SDN Controller Ëù¹ã·ºÊ¹ÓõÄÄÏÏò½Ó¿ÚÖ®Ò»¡£ ´ËÍ⣬Ansible Ò²¼¯³ÉÁË Netconf µÄ Module£¬²¢ÇÒ¿ÉÒÔͨ¹ý Python À´À©Õ¹ ncclient ºÍ nxpy µÈ¿â£¬ÊµÏÖ¹¦ÄÜÀ©Õ¹¡£

µ« Netconf ¾ÍÊÇÎÒÃÇÔÚѰÕÒµÄÀíÏëµÄ API Âð£¿

Õ¾ÔÚÍøÂçÔËάÕߵĽǶÈ£¬´ð°¸È´ÊÇ·ñ¶¨µÄ¡£

Ô­ÒòÔÚÓںܶ೧ÉÌËäȻ֧³Ö Netconf£¬µ«ÓÐһЩ Key-Value È´´æÔÚ²îÒì¡£±ÈÈçΪÁ˱í´ï“¶Ë¿Ú”£¬ÓÐЩ³§ÉÌÓà intf ×÷Ϊ Key£¬µ«ÁíÍâһЩ³§ÉÌÈ´Óà interface ×÷Ϊ Key¡£ÁíÒ»¸öÀý×Ó¾ÍÊÇ Uptime£¬É豸ÔËÐÐʱ¼ä£¬¸÷¼Ò³§É̵ÄÉ豸·µ»ØµÄʱ¼ä¸ñʽ¸üÊÇÎ廨°ËÃÅ¡£ÕâÎªÍøÂçÔËάÈËÔ±´¦ÀíÊý¾ÝµÄ¹¤×÷Ôì³ÉÁ˺ܴóµÄÂé·³£¬²»µÃ²»ºÄ·Ñ´óÁ¿µÄʱ¼äºÍ¾«Á¦È¥ÔĶÁÉ豸³§ÉÌµÄ Netconf Îĵµ£¬È¥±àд´óÁ¿µÄÕýÔò±í´ïʽ¡£

»¹ÓУ¬ËäÈ»Ö÷Á÷µÄ SDN Controller µÄÄÏÏò½Ó¿Ú¶¼Ö§³Ö Netconf£¬µ«ÊÇÔÚʵ¼Ê²¿Êðʱ£¬È´ÎÞ·¨Óõ¥Ò»µÄ Controller È¥¿ØÖƶ೧É̵ÄÍøÂçÉ豸¡£Í¨³£¶¼ÊǸ÷¸ö³§ÉÌʹÓÃ×Ô¼ºµÄ SDN Controller ¿ØÖÆ×Ô¼ºµÄÉ豸£¬È»ºóÔÙÓà REST API ÓëÓû§µÄ SDN Controller ¶Ô½Ó¡£

¡ø ¶à¿ØÖÆÆ÷¼Ü¹¹

 

ÉÏÎÄËùÌáµ½µÄÍøÂçÔËάÈËÔ±Ëù¹ØÐÄµÄ 9 ´óÎÊÌ⣬Netconf ¼¸ºõ¶¼ÄÜÂú×㣬µ«¾àÀëÍêÈ«Âú×㻹ÓÐһЩ²î¾à¡£

ÓÐÒ»¸ö½â¾ö°ì·¨£¬¾ÍÊÇÀûÓà NAPALM¡£

 

NAPALM

NAPALM ÊÇÒ»¸ö Python ¿â£¬ËüµÄÈ«³ÆÊÇ Network Automation and Programmability Abstraction Layer with Multivendor support£¬¶à³§ÉÌÖ§³ÖµÄÍøÂç×Ô¶¯»¯ºÍ¿É±à³Ì³éÏó²ã¡£

Ŀǰ Ansible ¼¯³ÉÁË 3 ¸ö NAPALM Ä£¿é£¬·Ö±ðÊÇ£º

¡ðnapalm_parse_yang£ºÓÃÓÚ´ÓÉ豸»òÎļþÖнâÎöÅäÖÃ/״̬Êý¾Ý

¡ðnapalm_diff_yang£ºÓÃÓÚ±È½Ï 2 ¸ö YANG ¶ÔÏóµÄ²îÒì

¡ðnapalm_translate_yang£ºÓÃÓÚ½« YANG ¶ÔÏóתÒë³ÉÉ豸ԭʼµÄÅäÖÃ

´ÓÉ豸ȡ³öԭʼÅäÖÃÊý¾Ý/״̬Êý¾ÝÖ®ºó£¬¿ÉÒÔʹÓà NAPALM ½«Æä·­Òë³É±ê×¼¸ñʽµÄ NAPALM Êý¾Ý¡£·´Ö®£¬Ò²¿ÉÒÔ½«±ê×¼¸ñʽµÄ NAPALM Êý¾Ý·­Òë³ÉÉ豸ԭʼÅäÖÃÊý¾Ý£¬²¢ Push µ½ÍøÂçÉ豸ÀïÃæ£¬ÒÔÐÞ¸ÄÉ豸µÄÅäÖÃÎļþ¡£

¡ø Netconf & NAPALM

 

¶Áµ½ÕâÀҲÐíÄúÒѾ­²Âµ½ÎÒ½«ÒªËµÊ²Ã´ÁË……

ÊǵÄ£¬NAPALM »¹ÊDz»Äܳ¹µ×½â¾öÍøÂç×Ô¶¯»¯ËùÃæÁÙµÄÎÊÌâ¡£

ÒòΪ¸÷³§ÉÌ Netconf µÄÊý¾Ý±í´ï´æÔںܶà²îÒ죬ËùÒÔ NAPALM ±ØÐëÒªÒÀÀµµÚÈý·½µÄ Module À´Íê³ÉԭʼÊý¾ÝµÄ½âÎöºÍ·­Òë¡£Èç¹ûÒª½âÎö³§ÉÌ A µÄij¸ö OS ϵͳµÄÅäÖ㬾ÍÐèÒªÒ»¸ö OSA_Module£»Èç¹ûÒª½âÎö³§ÉÌ B µÄij¸ö OS ϵͳµÄÅäÖã¬ÔòÐèÒª OSB_Module¡£ËùÒÔĿǰ NAPALM Ö§³ÖµÄ OS ÀàÐÍ»¹±È½ÏÉÙ£¬½öÏÞÓÚij¼¸¸ö¹úÍâÆ·ÅÆ³§ÉÌµÄ OS ϵͳ¡£

¼´Ê¹ÊÇÕ⼸¸ö¹úÍâÆ·ÅÆ³§ÉÌ£¬NAPALM ĿǰҲÎÞ·¨ÊµÏÖÍêÕûµÄ¹¦Äܼ¯¡£ËùÒÔ Google µÈÍøÂçÉ豸µÄ´óÓû§Ò»Ö±ÔÚÖÂÁ¦ÓÚÍÆ¹ãÒ»¸öÄܹ»Ìæ´ú Netconf µÄ±ê×¼»¯½Ó¿Ú£º OpenConfig¡£

 

OpenConfig

IETF ÒѾ­Îª Netconf ºÍ YANG Model ·¢²¼Á˺ܶà RFC£¬´Ó 2006 ÄêµÄ Netconf RFC 4741£¬2010 ÄêµÄ YANG Model RFC 6020£¬µ½ÏÖÔÚÒѾ­³¬¹ý 10 Äê¡£¶ø×îеÄÒ»¸ö RFC ÔÚʲôʱºòÄØ£¿¾ÍÔÚ¼¸Ìì֮ǰµÄ 2018 Äê 4 Ô 3 ÈÕ£¬3 ¼ÒÉ豸³§ÉÌÁªºÏÌá½»ÁËÒ»¸ö OSPF YANG Model µÄ²Ý°¸ —— ±ê×¼»¯µÄ½øÕ¹Ì«ÂýÁË¡£

Ò²Ðí£¬Õâ¾ÍÊÇÎÊÌâËùÔÚ —— Netconf ±ê×¼ÊÇÓÉÍøÂçÉ豸³§ÉÌÍÆ¶¯µÄ£¬ÄÚºÄÌ«´ó¡£¸÷¸öÉ豸³§É̶¼Ï£ÍûÔÚÈí¼þ¶¨ÒåÍøÂçµÄʱ´ú¼ÌÐø±£³ÖÓ²¼þÉ豸µÄÖØÒªÐÔ£¬²¢ÇÒÄܹ»ÌåÏÖ×Ô¼º¹«Ë¾²úÆ·µÄ²îÒ컯ÓÅÊÆ¡£

µ«ÊÇ´ÓÍøÂçÔËάÕߵĽǶȿ¼ÂÇ£¬ÕâÏÔÈ»²»ºÏÀí£¬ÒòΪÉ豸³§ÉÌËùÍÆ¶¯µÄ Netconf ±ê×¼²¢²»ÊÇËûÃÇÕæÕýÏëÒªµÄ¡£ËùÒÔ Google£¬AT&T£¬British Telecom£¬Facebook£¬Apple£¬Microsoft µÈ»¥ÁªÍø·þÎñÌṩÉ̳ÉÁ¢ÁË OpenConfig ¹¤×÷×飬ϣÍûÌṩһ¸öÖÐÁ¢ÓÚÉ豸³§É̵ıê×¼ API¡£Ä¿Ç°¹úÄÚµÄÌÚѶ¡¢°Ù¶ÈºÍ°¢ÀïµÈ»¥ÁªÍø·þÎñÌṩÉÌÒ²ÒѾ­¼ÓÈëÁË OpenConfig ¹¤×÷×é¡£

OpenConfig ÑØÓÃÁË Netconf µÄЭÒé¿ò¼Ü£¬µ«ÊÇËü²»Ì«¹Ø×¢µ×²ãµÄÊý¾Ý´«Ê䣬¶øÊǸü¹Ø×¢ÉϲãµÄÊý¾Ý±í´ïºÍÊý¾Ý½¨Ä£¡£ÕâÒâζ×Å£º²»¹ÜÊÇ A ³§»¹ÊÇ B ³§£¬ËùÓеÄÊý¾Ý¶¼±ØÐë·ûºÏ OpenConfig YANG Model£¬²¢ÇÒ Key-Value ¶¼±ØÐëÊÇ OpenConfig Ëù¹æ¶¨µÄ±ê×¼¸ñʽ£¡

OpenConfig µÄÁíÍâÒ»¸öºËÐÄÒªµãÊÇ£ºËäÈ»ÍøÂçÉ豸¿ÉÄÜÖ§³Ö·á¸»µÄ¹¦ÄÜÌØÐÔ£¬ÉõÖÁÊÇÉ豸³§ÉÌ˽ÓеŦÄÜÌØÐÔ£¬µ«ÊÇ OpenConfig Ö»¹ØÐÄÓ뻥ÁªÍøÐÐÒµÓû§Í¨ÓõÄÔËά¹¤×÷ºÍÍøÂçÉè¼Æ¹¤×÷Ïà¹ØµÄ¹¦ÄÜ£¬ÀýÈç BGP¡¢OpenFlow¡¢Telemetry µÈµÈ¡£OpenConfig ²»»áΪÉ豸³§É̵Ä˽ÓÐÌØÐÔ¶¨Òå YANG Model£¬Ò²²»»áΪÉ豸³§ÉÌËùÌØÓÐµÄ Key-Value ×ö¶¨Ò壬ËùÒÔ²»»á³öÏÖ²»¼æÈݵÄÇé¿ö¡£

µ«·´¹ýÀ´½²£¬OpenConfig Ò²²»»áΪÁ˼æÈÝijЩÉ豸³§É̶øÈà YANG Model ¹ýÓÚ¼òµ¥£¬ËùÒÔÉ豸³§ÉÌÐèÒªÈÃ×Ô¼ºµÄ¹¦ÄÜÂú×ã OpenConfig YANG Model µÄÒªÇ󣬾߱¸ Model Ëù¶¨ÒåµÄËùÓÐµÄ Key£¬²¢ÇÒÄܹ»ÎªËùÓÐµÄ Key Ìṩ¶ÔÓ¦µÄ Value¡£

ÔÚ Key-Value ¸ñʽ¹Ì¶¨Ö®ºó£¬ÍøÂçÔËάÈËÔ±¶ÔÊý¾ÝµÄ½âÎö¹¤×÷¾Í·Ç³£·½±ãÁË¡£Ö»ÒªÍøÂçÉ豸֧³Ö±ê×¼µÄ OpenConfig YANG£¬NAPALM ¾Í¿ÉÒÔ¶ÔԭʼÊý¾Ý½øÐнâÎö£¬²»ÔÙÒÀÀµµÚÈý·½ Module ¾Í¿ÉÒÔ¹ÜÀí¶à³§É̶à OS µÄÍøÂ磬½ø¶øÊµÏÖÕæÕýµÄÍøÂç×Ô¶¯»¯¡£

¡ø OpenConfig & NAPALM

 

ʹÓà OpenConfig µÄÁíÒ»¸öºÃ´¦¾ÍÊÇ¿ÉÒÔ¼ò»¯ SDN ÍøÂç¼Ü¹¹£¬Óû§Ê¹ÓÃÒ»¸ö¿ØÖÆÆ÷¼¯Èº¾Í¿ÉÒÔͬʱ¿ØÖƶà¸ö³§É̵ÄÍøÂçÉ豸£¬²»ÔÙÐèҪʹÓÃÉ豸³§É̵ÄÉÌÓÿØÖÆÆ÷×öÖмÌ¡£

¡ø µ¥¿ØÖÆÆ÷¼Ü¹¹

 

OpenConfig ¹¤×÷×éÔÚ 2015 ÄêÒѾ­Ïò IETF Ìá½»ÁË 2 ¸ö YANG ±ê×¼²Ý°¸£¬ËäȻĿǰ»¹Ã»Óбê×¼µÄ RFC ·¢²¼£¬µ«ÊÇËüÏÖÒѳÉÎªÍøÂç×Ô¶¯»¯¼¼ÊõµÄ·¢Õ¹Ç÷ÊÆ£¬Òò´Ë¸÷´óÍøÂçÉ豸³§É̶¼¿ªÊ¼ÁË OpenConfig µÄ¿ª·¢¹¤×÷¡£¹«º£²Ê´¬¡¤6600µÄÊý¾ÝÖÐÐĽ»»»»úÖ§³Ö Netconf YANG ºÍ OpenConfig YANG£¬Ä¿Ç°ÕýÔÚ¹úÄÚÅäºÏ¹«ÓÐÔÆÌṩÉ̽øÐбê×¼»¯ SDN µÄ²âÊÔ¹¤×÷¡£

 

±¾ÆÚ×÷Õߣº³Â³Ì

¹«º£²Ê´¬¡¤6600ÍøÂ绥ÁªÍøÏµÍ³²¿ÐÐÒµ×Éѯ

 

ÍùÆÚ¾«²Ê»Ø¹Ë 

¡ñ¡¾µÚÒ»ÆÚ¡¿Ç³Ì¸ÎïÁªÍø¼¼Êõ֮ͨÐÅЭÒéµÄ·×Õù

¡ñ¡¾µÚ¶þÆÚ¡¿ÈçºÎͨ¹ýÍøÂçÒ£²â£¨Network Telemetry£©¼¼ÊõʵÏÖ¾«Ï¸»¯ÍøÂçÔËά£¿

µãÔÞ

¸ü¶à¼¼Êõ²©ÎÄ

ÈκÎÐèÒª£¬ÇëÁªÏµÎÒÃÇ

·µ»Ø¶¥²¿

ÊÕÆð
ÎĵµAIÖúÊÖ
ÎĵµÆÀ¼Û
¸Ã×ÊÁÏÊÇ·ñ½â¾öÁËÄúµÄÎÊÌ⣿
Äú¶Ôµ±Ç°Ò³ÃæµÄÂúÒâ¶ÈÈçºÎ£¿
²»Õ¦µÎ
·Ç³£ºÃ
ÄúÂúÒâµÄÔ­ÒòÊÇ£¨¶àÑ¡£©£¿
Äú¶ÔÎĵµÊÇ·ñ»¹ÓÐÆäËüµÄÎÊÌâ»ò½¨Ò飿
Ϊ¾¡¿ì½â¾öÎÊÌ⣬ÇëÄúÁôÏÂÁªÏµ·½Ê½Òﱋȯ¸´
ÓÊÏä
ÊÖ»úºÅ
¸ÐлÄúµÄ·´À¡£¡
ÇëÑ¡Ôñ·þÎñÏîÄ¿
¹Ø±Õ×Éѯҳ
ÊÛǰ×Éѯ ÊÛǰ×Éѯ
ÊÛǰ×Éѯ
ÊÛºó·þÎñ ÊÛºó·þÎñ
ÊÛºó·þÎñ
Òâ¼û·´À¡ Òâ¼û·´À¡
Òâ¼û·´À¡
¸ü¶àÁªÏµ·½Ê½
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿