Ä¿¡¡Â¼
1.4.3 ÉèÖÃOpenFlow¶à¿ØÖÆÆ÷ģʽ
1.4.4 ÉèÖÃOpenFlowËÍ¿ØÖÆÆ÷±¨ÎĵÄvlan±êÇ©
1.4.5 ÉèÖÃOpenFlow±¨ÎÄ´¦Öóͷ£Ä£Ê½
OpenFlowÊÇSDN(Software Defined Network£¬£¬£¬£¬£¬Èí¼þ½çËµÍøÂç)¼Ü¹¹Öнç˵µÄÒ»¸ö¿ØÖÆÆ÷Óëת·¢²ãÖ®¼äµÄÍøÂç´«ÊäÐÒé¡£¡£¡£¡£¡£¡£¡£OpenFlowÔÊÐí¿ØÖÆÆ÷Ö±½Ó»á¼ûºÍ²Ù×÷ÍøÂç×°±¸µÄת·¢Ã棬£¬£¬£¬£¬ÕâЩװ±¸¿ÉÄÜÊÇÎïÀíÉϵ쬣¬£¬£¬£¬Ò²¿ÉÄÜÊÇÐéÄâµÄ¡£¡£¡£¡£¡£¡£¡£
OpenFlowͨ¹ý±ê×¼µÄͨѶÐÒ齫װ±¸µÄ¿ØÖÆÃæºÍת·¢ÃæÏàÊèÉ¢£¬£¬£¬£¬£¬ÈÃÍøÂç×°±¸×¨×¢ÓÚת¿¯ÐÐΪ£¬£¬£¬£¬£¬¶øÕûÍøµÄ¿ØÖÆÐÐΪ¼¯ÖÐÔÚһ̨¿ØÖÆÆ÷ÉÏ¡£¡£¡£¡£¡£¡£¡£×°±¸Óë¿ØÖÆÆ÷½¨ÉèOpenFlowÅþÁ¬£¬£¬£¬£¬£¬ÓÉ¿ØÖÆÆ÷ÌìÉúת·¢¹æÔò²¢Í¨¹ýOpenFlowÅþÁ¬ÒÔÁ÷±íµÄÐÎʽÏ·¢¸øÍøÂç×°±¸£¬£¬£¬£¬£¬´Ó¶øÊµÏÖÍøÂç¿ØÖÆÃæµÄ¼¯ÖÐÖÎÀí£¬£¬£¬£¬£¬½µµÍά»¤ÖÎÀí±¾Ç®¡£¡£¡£¡£¡£¡£¡£
l Á÷±í
Á÷±íÊÇ×°±¸¾ÙÐÐת·¢Õ½ÂÔ¿ØÖƵĽ¹µãÊý¾Ý½á¹¹£¬£¬£¬£¬£¬×°±¸Æ¾Ö¤Á÷±íÀ´¾öÒé¶Ô½øÈë×°±¸µÄÍøÂçÁ÷Á¿½ÓÄɶÔÓ¦µÄÐÐΪ¡£¡£¡£¡£¡£¡£¡£
һ̨װ±¸¿ÉÒÔ°üÀ¨Ò»¸ö»òÕß¶à¸öÁ÷±í£¬£¬£¬£¬£¬Ä¿½ñ×°±¸Ö»Ö§³ÖÒ»¸öÁ÷±í¡£¡£¡£¡£¡£¡£¡£Ò»¸öÁ÷±íÓɶà¸öÁ÷±íÏî×é³É¡£¡£¡£¡£¡£¡£¡£
ÔÚOpenFlowÐÒéÖУ¬£¬£¬£¬£¬Á÷±íÏîÓÉÈý¸ö²¿·Ö×é³É£ºheader¡¢counter¡¢action¡£¡£¡£¡£¡£¡£¡£
header£º½ç˵ÁËÁ÷±íÏîµÄË÷Òý£¬£¬£¬£¬£¬Í¨³£Óɱ¨Îĵĸ÷¸ö×Ö¶Î×é³É£¬£¬£¬£¬£¬ºÃ±ÈÔ´MACµØµã¡¢Ä¿µÄMACµØµã¡¢ÒÔÌ«ÍøÐÒéÀàÐÍÓò¡¢Ô´IP¡¢Ä¿µÄIP¡¢IPÐÒéÀàÐÍÓò¡¢Ô´¶Ë¿Ú¡¢Ä¿µÄ¶Ë¿ÚµÈ¸÷¸ö×ֶΣ¬£¬£¬£¬£¬ÓÃÓÚÆ¥Å䱨ÎÄ,±¨ÎÄÖÀÖÐÁ÷±íÏîµÄHeader×Ö¶Î,ÔòÅú×¢±¨ÎÄÆ¥Åäµ½¸ÃÁ÷±íÏî¡£¡£¡£¡£¡£¡£¡£
counter£ºÍ³¼Æ¼ÆÊý.ÓÃÓÚͳ¼ÆÓм¸¶à¸ö±¨ÎĺÍ×Ö½ÚÆ¥Åäµ½¸ÃÁ÷±íÏî¡£¡£¡£¡£¡£¡£¡£
action£º±¨ÎÄÆ¥ÅäºóµÄÐж¯£¬£¬£¬£¬£¬ÓÃÓÚ½ç˵¶ÔÆ¥Åäµ½Á÷±íÏîµÄ±¨ÎĵÄת¿¯ÐÐΪ£¬£¬£¬£¬£¬ÈçÑïÆú¡¢¹ã²¥¡¢×ª·¢µÈ¡£¡£¡£¡£¡£¡£¡£
l ÐÂÎÅ
OpenFlowÐÒéÖ§³ÖÈýÖÖÐÂÎÅÀàÐÍ£ºcontroller-to-switch£¬£¬£¬£¬£¬asynchronousºÍsymmetric£¬£¬£¬£¬£¬Ã¿Ò»ÀàÐÂÎÅÓÖÓжà¸ö×ÓÐÂÎÅÀàÐÍ¡£¡£¡£¡£¡£¡£¡£¸÷ÐÂÎŵļòÆÓÐÎòÈçÏ£º
controller-to-switch£ºÓÉ¿ØÖÆÆ÷Ìᳫ£¬£¬£¬£¬£¬ÓÃÀ´ÖÎÀíÒÔ¼°»ñÈ¡ÍøÂç×°±¸×´Ì¬¡£¡£¡£¡£¡£¡£¡£ÐÂÎÅ×ÓÀàÐÍ˵Ã÷¼û±í1-1¡£¡£¡£¡£¡£¡£¡£
asynchronous£ºÓÉÍøÂç×°±¸Ìᳫ£¬£¬£¬£¬£¬ÓÃÀ´½«ÍøÂçÊÂÎñ»òÍøÂç×°±¸×´Ì¬×ª±ä£¨×î³£¼ûµÄÊÇÍøÂç½Ó¿ÚµÄlink up/downת±ä£©¸üе½¿ØÖÆÆ÷¡£¡£¡£¡£¡£¡£¡£×ÓÐÂÎÅÀàÐÍ˵Ã÷¼û±í1-2¡£¡£¡£¡£¡£¡£¡£
symmetric£º¿ÉÓÉ×°±¸»ò¿ØÖÆÆ÷ÈÎÒ»¶ËÌᳫ£¬£¬£¬£¬£¬Ö÷ÒªÓÃÓÚÐÒé³õʼµÄÎÕÊÖÒÔ¼°ÅþÁ¬×´Ì¬Ì½²â¡£¡£¡£¡£¡£¡£¡£×ÓÐÂÎÅÀàÐÍ˵Ã÷¼û±í1-3¡£¡£¡£¡£¡£¡£¡£
±í1-1
controller-to-switchÐÂÎÅ×ÓÀàÐÍ˵Ã÷±í
|
×ÓÀàÐÍ |
ÐÎò |
|
Features |
ÓÃÓÚ¿ØÖÆÆ÷·¢ËÍFeaturesÇëÇóÀ´Ïàʶװ±¸µÄÄÜÁ¦£¬£¬£¬£¬£¬×°±¸Ó¦´ð |
|
Configuration |
ÓÃÓÚ¿ØÖÆÆ÷ÅÌÎÊ×°±¸µÄÉèÖ㬣¬£¬£¬£¬×°±¸ÔÚÊÕµ½ÅÌÎÊʱӦ´ð |
|
Modify-State |
ÓÃÓÚÖÎÀí×°±¸µÄ״̬,ÈçÁ÷±íÏîºÍ¶Ë¿Ú״̬£¬£¬£¬£¬£¬¸ÃÐÂÎÅÖ÷ÒªÓÃÓÚÔöÌí¡¢É¾³ý¡¢ÐÞ¸Ä×°±¸ÄÚµÄÁ÷±í±íÏî¡¢×é±í±íÏîºÍ×°±¸¶Ë¿ÚÊôÐÔ |
|
Multipart |
ÓÃÓÚ¿ØÖÆÆ÷ÇëÇó×°±¸¸÷·½ÃæÐÅÏ¢£¬£¬£¬£¬£¬ÈçÄ¿½ñÉèÖá¢Í³¼ÆÐÅÏ¢ |
|
Packet-Out |
ÓÃÓÚ¿ØÖÆÆ÷Ïò×°±¸·¢Ëͱ¨ÎÄ |
|
Barrier |
ÓÃÓÚÈ·ÈÏBarrierÐÂÎÅ֮ǰµÄÐж¯ÊÇ·ñÀֳɡ£¡£¡£¡£¡£¡£¡£¿£¿£¿£¿£¿£¿£¿£¿ØÖÆÆ÷·¢ËÍBarrierÇëÇóÐÂÎÅ,µ±×°±¸È·ÈÏ֮ǰµÄÐж¯¶¼ÒÑÀÖ³Éʱ»ØÓ¦´ðBrarrierÓ¦´ðÐÂÎÅ |
|
Role-Request |
ÓÃÓÚ×°±¸ÇëÇó¿ØÖÆÆ÷µÄ½ÇÉ« |
|
Asynchronous-Configuration |
¿ØÖÆÆ÷ʹÓøÃÐÂÎÅÉèÖÃÒì²½ÐÂÎŹýÂËÆ÷,ÓÃÓÚÎüÊÕֻϣÍûÎüÊÕµ½µÄÒì²½ÐÂÎű¨ÎÄ,»òÏò×°±¸ÅÌÎʸùýÂËÆ÷ |
±í1-2
asynchronousÐÂÎÅ×ÓÀàÐÍ˵Ã÷±í
|
×ÓÀàÐÍ |
ÐÎò |
|
Packet-in |
ÓÃÓÚ×°±¸·¢Ëͱ¨Îĵ½¿ØÖÆÆ÷ |
|
Flow-Removed |
ͨ¸æ¿ØÖÆÆ÷½«Ä³¸öÁ÷±íÏî´ÓÁ÷±íÖÐÒÆ³ý |
|
Port-Status |
ͨ¸æ¿ØÖÆÆ÷×°±¸¶Ë¿Ú״̬»òÉèÖñ¬·¢¸Ä±ä |
|
Error |
ͨ¸æ¿ØÖÆÆ÷×°±¸³öµÄÎÊÌâ»ò¹ýʧ |
±í1-3
symmetricÐÂÎÅ×ÓÀàÐÍ˵Ã÷±í
|
×ÓÀàÐÍ |
ÐÎò |
|
Hello |
½¨ÉèOpenFlowÅþÁ¬Ê±×°±¸ºÍ¿ØÖÆÆ÷·¢ËÍHello½»»¥ |
|
Echo |
±£»£»£»£»£»£»£»îÐÂÎÅ,¿ØÖÆÆ÷ºÍ×°±¸¶¼»á·¢ËÍEcho request/replyÐÂÎÅ |
|
Experimenter |
ΪδÀ´Ð¼ÓÈëµÄÌØÕ÷Ô¤ÁôµÄÐÂÎÅ |
±í1-4 ¿ØÖÆÆ÷½Çɫ˵Ã÷±í
½ÇÉ«
|
ȨÏÞ
|
Master
|
¸Ã½ÇÉ«µÄ¿ØÖÆÆ÷ÓµÓпØÖÆ×°±¸µÄËùÓÐȨÏÞ£¬£¬£¬£¬£¬¿ÉÒÔÏ·¢Á÷±í\ÅÌÎÊͳ¼ÆÐÅÏ¢,ÎüÊÕ×°±¸Éϱ¨µÄ״̬ÐÅÏ¢¡£¡£¡£¡£¡£¡£¡£ÔÚ¿ØÖÆÆ÷¼¯Èº°²ÅÅʱ,Ö»ÄÜÓÐһ̨¿ØÖÆÆ÷ÊÇMaster
|
Equal
|
¸Ã½ÇÉ«¿ØÖÆÆ÷ͬÑùÓµÓÐËùÓÐȨÏÞ,Ïà±ÈÓÚMaster½ÇÉ«£¬£¬£¬£¬£¬¼¯ÈºÊ±¿ÉÓжà¸ö¿ØÖÆÆ÷´¦ÓÚEqual
|
Slave
|
¸Ã½ÇÉ«¿ØÖÆÆ÷Óв¿·ÖȨÏÞ,²¿·ÖȨÏÞ±»ÏÞÖÆ£¬£¬£¬£¬£¬Èç²»¿ÉÏ·¢Á÷±íÏî¡¢group±íÏî¡¢Meter±íÏî¡£¡£¡£¡£¡£¡£¡£²»ÔÊÐíÐÞ¶©×°±¸ÉèÖᢲ»ÔÊÐí¾ÙÐÐPacket
Out²Ù×÷
|
OpenFlowʵÏÖÁËÍøÂç¿ØÖÆÃæµÄ¼¯ÖÐÖÎÀí£¬£¬£¬£¬£¬Ê¹µÃÕû¸öÍøÂçÄܹ»ÈÝÒ×£¨Ïà¹ØÓÚÏÖÓÐÍøÂç״̬¶øÑÔ£©µØÊµÏÖ¼¯ÖÐÖÎÀí£¬£¬£¬£¬£¬½ø¶ø¼ò»¯ÁËά»¤ÖÎÀí±¾Ç®¡£¡£¡£¡£¡£¡£¡£
¿ØÖÆÆ÷ÏòÍøÂç×°±¸·¢ËÍÁ÷±íÐÅÏ¢£¬£¬£¬£¬£¬ÓÃÓÚ¿ØÖÆÍøÂçÊý¾Ý°üµÄת·¢·½·¨ÒÔ¼°Ò»Ð©ÉèÖòÎÊý¡£¡£¡£¡£¡£¡£¡£¶øÍøÂç×°±¸»áÔÚÁ´Â·ÖÐÖ¹»ò·ºÆðδָ¶¨×ª¿¯ÐÐΪµÄÊý¾Ý°üʱ£¬£¬£¬£¬£¬·¢ËÍÐÂÎÅ֪ͨ¿ØÖÆÆ÷¡£¡£¡£¡£¡£¡£¡£½ø¶øÐγɶþÕߵĻ¥¶¯£¬£¬£¬£¬£¬×îÖÕ¿ØÖÆÕû¸öÍøÂçµÄ´«ÊäÐÐΪ¡£¡£¡£¡£¡£¡£¡£
¿ØÖÆÆ÷ºÍÍøÂç×°±¸Ö®¼ä×îÏÈʱÐèÒªÍê³ÉÏ໥·¢Ã÷µÄÀú³Ì£¬£¬£¬£¬£¬ÆäÏêϸµÄÐÐΪÈçÏÂͼ1-1Ëùʾ£º
ͼ1-1 ¿ØÖÆÆ÷ºÍÍøÂç×°±¸½»»¥ÔÀíͼ

¿ØÖÆÆ÷ºÍÍøÂç×°±¸Ï໥·¢ËÍOpenFlow½ç˵µÄHello±¨ÎľÙÐÐÎÕÊÖ¡£¡£¡£¡£¡£¡£¡£ÎÕÊÖÀֳɺ󣬣¬£¬£¬£¬¿ØÖÆÆ÷½«ÇëÇó×°±¸µÄÏêϸÐÅÏ¢ÀýÈç×°±¸µÄ¶Ë¿ÚÊýÄ¿¡¢¸÷¶Ë¿ÚµÄÄÜÁ¦µÈ£¨Èçͼ1-1ÖеÄFeature Request/Reply£©£¬£¬£¬£¬£¬Ëæºó¿ØÖÆÆ÷½«Ï·¢Óû§ÉèÖõ½ÏêϸµÄÍøÂç×°±¸ÉÏ(Èçͼ1-1ÖеÄSet Config)¡£¡£¡£¡£¡£¡£¡£µ±ÅþÁ¬½¨Éèºó£¬£¬£¬£¬£¬¿ØÖÆÆ÷½ç˵¸÷¸öÁ÷ÒÔ¼°Æ¥ÅäÁ÷µÄ´¦Öóͷ£·½·¨²¢Í¨¹ýÁ÷±íÏ·¢µ½×°±¸¡£¡£¡£¡£¡£¡£¡£Ã¿¸öÊý¾Ý°üÔÚ½øÈë×°±¸ºó½«Æ¾Ö¤¿ØÖÆÆ÷Ô¤ÏÈÉ趨µÄÁ÷±í¹æÔòÆ¥ÅäÁ÷±í²¢Ö´ÐжÔÓ¦µÄÐж¯£¨Ðж¯°üÀ¨£º×ª·¢¡¢ÑïÆú¡¢Ð޸ı¨ÎÄÄÚÈÝ£©£¬£¬£¬£¬£¬Í¬Ê±¶ÔÓ¦µÄ¼ÆÊýÆ÷½«¸üУ»£»£»£»£»£»£»ÈôÊÇûÄÜÕÒµ½Æ¥ÅäµÄ±íÏ£¬£¬£¬£¬Ôòת·¢¸ø¿ØÖÆÆ÷¡£¡£¡£¡£¡£¡£¡£
ÍøÂç×°±¸»áÔÚÍâµØÎ¬»¤¿ØÖÆÆ÷Ï·¢µÄÁ÷±í£¬£¬£¬£¬£¬ÈôÊÇҪת·¢µÄÊý¾Ý°üÔÚÁ÷±íÖÐÒÑÓнç˵£¬£¬£¬£¬£¬ÔòÖ±½ÓÔÚÍøÂç×°±¸ÉÏÍê³Éת¿¯ÐÐΪ£»£»£»£»£»£»£»ÈôÔÚÁ÷±íÖÐδÄܲéÕÒµ½£¬£¬£¬£¬£¬ÔòÊý¾Ý°ü¾Í»á±»·¢Ë͵½¿ØÖÆÆ÷¾ÙÐд«Êä·¾¶¼òÖ±ÈÏ£¨¿ÉÒÔÃ÷ȷΪ¾ÙÐпØÖÆÃæÆÊÎö£¬£¬£¬£¬£¬½ø¶øÌìÉúÁ÷±í£©£¬£¬£¬£¬£¬ÔÙÆ¾Ö¤¿ØÖÆÆ÷Ï·¢µÄÁ÷±í¾ÙÐÐת·¢¡£¡£¡£¡£¡£¡£¡£
l OpenFlow Switch SpecicationVersion 1.0.0
l OpenFlow Switch SpecicationVersion 1.3.0
l Á÷±íÏÞÖÆ£º²»Ö§³Ö¶à¸öÁ÷±í,Ö»Ö§³ÖTable 0Á÷±í¡£¡£¡£¡£¡£¡£¡£
l ÅþÁ¬¿ØÖÆÆ÷ÊýÄ¿ÏÞÖÆ£º×î¶àÖ»Ö§³ÖÅþÁ¬3̨¿ØÖÆÆ÷¡£¡£¡£¡£¡£¡£¡£
(1)
ÉèÖÃOpenFlow
(2)
£¨¿ÉÑ¡£¡£¡£¡£¡£¡£¡£©ÉèÖÃOpenFlow¶à¿ØÖÆÆ÷ģʽ
(3)
£¨¿ÉÑ¡£¡£¡£¡£¡£¡£¡£©ÉèÖÃOpenFlowËÍ¿ØÖÆÆ÷±¨ÎĵÄvlan±êÇ©
(4)
£¨¿ÉÑ¡£¡£¡£¡£¡£¡£¡£©ÉèÖÃOpenFlow±¨ÎÄ´¦Öóͷ£Ä£Ê½
(5)
£¨¿ÉÑ¡£¡£¡£¡£¡£¡£¡£©ÉèÖÃOpenFlowÔ´IP
OpenFlowÊÇÒ»ÖÖÍøÂç´«ÊäÐÒ飬£¬£¬£¬£¬ÔËÐÐÔÚÇå¾²´«Êä²ãÐÒé(TLS)»òÎÞ±£»£»£»£»£»£»£»¤TCPÅþÁ¬Ö®ÉÏ£¬£¬£¬£¬£¬½ç˵ÁË¿ØÖÆÆ÷ÓëÍøÂç×°±¸Ö®¼äµÄ½»»¥ÐÐΪ¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃ×°±¸ÎªOpenFlowת·¢Ä£Ê½£¬£¬£¬£¬£¬µ±×°±¸¿ªÆôOpenFlow¹¦Ð§Ê±£¬£¬£¬£¬£¬¶Ô±¨ÎĵÄת·¢¿ØÖÆÕ½ÂÔÓÉ¿ØÖÆÆ÷ÌìÉú²¢Ï·¢¡£¡£¡£¡£¡£¡£¡£
l µ±ÒªÇл»¿ØÖÆÆ÷µÄµØµãʱ£¬£¬£¬£¬£¬Ó¦ÏȹرÕOpenFlow¹¦Ð§£¬£¬£¬£¬£¬ÔÙ¿ªÆôOpenFlow¹¦Ð§¡£¡£¡£¡£¡£¡£¡£
l ¿ªÆôOpenFlow¹¦Ð§Ê±£¬£¬£¬£¬£¬ÐèÒª½«×°±¸×Ô¼ºµÄLLDP¹¦Ð§¹Ø±Õ£¬£¬£¬£¬£¬²»È»¿ØÖÆÆ÷Ï·¢µÄLLDP±¨ÎÄÎÞ·¨·¢³ö¡£¡£¡£¡£¡£¡£¡£
(1) ½øÈëÌØÈ¨Ä£Ê½¡£¡£¡£¡£¡£¡£¡£
enable
(2) ½øÈëÈ«¾ÖÉèÖÃģʽ¡£¡£¡£¡£¡£¡£¡£
configure terminal
(3) ¿ªÆôOpenFlow¹¦Ð§¡£¡£¡£¡£¡£¡£¡£
of controller-ip ipv4-address [ port
port-number ] [ aux ] interface interface-type interface-number
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬OpenFlow¹¦Ð§´¦ÓڹرÕ״̬¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃ×°±¸¶à¿ØÖÆÆ÷ģʽ£¬£¬£¬£¬£¬¿ÉÒÔͬʱÅþÁ¬¶à¸ö¿ØÖÆÆ÷¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃ×°±¸¶à¿ØÖÆÆ÷ģʽʱ£¬£¬£¬£¬£¬ÐèÒªÏȹرÕOpenFlow¹¦Ð§£¬£¬£¬£¬£¬ÔÙÉèÖÃΪ¶à¿ØÖÆÆ÷ģʽ£¬£¬£¬£¬£¬ÔÙ¿ªÆôOpenFlow¹¦Ð§ºó²ÅÉúЧ¡£¡£¡£¡£¡£¡£¡£
(1) ½øÈëÌØÈ¨Ä£Ê½¡£¡£¡£¡£¡£¡£¡£
enable
(2) ½øÈëÈ«¾ÖÉèÖÃģʽ¡£¡£¡£¡£¡£¡£¡£
configure terminal
(3) ÉèÖÃOpenFlow×°±¸ÅþÁ¬¿ØÖÆÆ÷ģʽ¡£¡£¡£¡£¡£¡£¡£
of mode { single | multiple }
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬OpenFlow×°±¸´¦ÓÚ¶à¿ØÖÆÆ÷ģʽ¡£¡£¡£¡£¡£¡£¡£
(4) £¨¿ÉÑ¡£¡£¡£¡£¡£¡£¡£©ÉèÖÃOpenFlowÖØÁ¬¿ØÖÆÆ÷µÄʱ¼ä¾àÀë¡£¡£¡£¡£¡£¡£¡£
of connect-interval interval
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬OpenFlowÖØÁ¬¿ØÖÆÆ÷µÄʱ¼ä¾àÀëΪ6Ãë¡£¡£¡£¡£¡£¡£¡£
(5) £¨¿ÉÑ¡£¡£¡£¡£¡£¡£¡£©ÉèÖÃOpenFlow·¢ËÍecho requestµÄʱ¼ä¾àÀë¡£¡£¡£¡£¡£¡£¡£
of echo-interval interval
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬OpenFlow·¢ËÍecho requestµÄʱ¼ä¾àÀëΪ5Ãë¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃ×°±¸ËÍ¿ØÖÆÆ÷µÄ±¨ÎÄÊÇ·ñЯ´øvlan±êÇ©¡£¡£¡£¡£¡£¡£¡£È±Ê¡ÇéÐÎÏÂ×°±¸ËÍ¿ØÖÆÆ÷µÄ±¨ÎÄЯ´øvlan±êÇ©¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃÍê³ÉºóÁ¬Ã¦ÉúЧ¡£¡£¡£¡£¡£¡£¡£
(1) ½øÈëÌØÈ¨Ä£Ê½¡£¡£¡£¡£¡£¡£¡£
enable
(2) ½øÈëÈ«¾ÖÉèÖÃģʽ¡£¡£¡£¡£¡£¡£¡£
configure terminal
(3) ÉèÖÃOpenFlow×°±¸ËÍ¿ØÖÆÆ÷±¨ÎÄÊÇ·ñЯ´ø±êÇ©¡£¡£¡£¡£¡£¡£¡£
of packet vlantag
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬OpenFlow×°±¸ËÍ¿ØÖÆÆ÷µÄ±¨ÎÄЯ´øvlan±êÇ©¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃ×°±¸ÊÕµ½µÄ±¨ÎÄÊÇ·ñ¾ÙÐвé±í¡£¡£¡£¡£¡£¡£¡£È±Ê¡ÇéÐÎÏ£¬£¬£¬£¬£¬×°±¸ÊÕµ½±¨ÎĺóÏȾÙÐвé±í£¬£¬£¬£¬£¬Æ¾Ö¤ÖÀÖеıíÏî´¦Öóͷ£±¨ÎÄ£¬£¬£¬£¬£¬ÈôÊÇδÖÀÖбíÏîÔò±¨Îı»ÑïÆú¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃÍê³ÉºóÁ¬Ã¦ÉúЧ¡£¡£¡£¡£¡£¡£¡£
(1) ½øÈëÌØÈ¨Ä£Ê½¡£¡£¡£¡£¡£¡£¡£
enable
(2) ½øÈëÈ«¾ÖÉèÖÃģʽ¡£¡£¡£¡£¡£¡£¡£
configure terminal
(3) ÉèÖÃOpenFlow×°±¸ÅþÁ¬¿ØÖÆÆ÷ģʽ¡£¡£¡£¡£¡£¡£¡£
of packet table-lookup
{ enable | disable }
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬×°±¸±¨ÎĵĴ¦Öóͷ£Ä£Ê½Îª²é±íģʽ¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃ×°±¸ÅþÁ¬¿ØÖÆÆ÷ʱµÄÔ´IP¡£¡£¡£¡£¡£¡£¡£Ä¬Èϲ»ÉèÖ㬣¬£¬£¬£¬Ê¹ÓÃÅþÁ¬¶Ë¿ÚµÄIP¡£¡£¡£¡£¡£¡£¡£
ÉèÖÃÍê³ÉºóÁ¬Ã¦ÉúЧ£¬£¬£¬£¬£¬×°±¸ºÍ¿ØÖÆÆ÷»á¶Ï¿ª£¬£¬£¬£¬£¬Ê¹ÓÃÔ´IPÖØÐ¾ÙÐÐÅþÁ¬¡£¡£¡£¡£¡£¡£¡£
(1) ½øÈëÌØÈ¨Ä£Ê½¡£¡£¡£¡£¡£¡£¡£
enable
(2) ½øÈëÈ«¾ÖÉèÖÃģʽ¡£¡£¡£¡£¡£¡£¡£
configure terminal
(3) ÉèÖÃOpenFlowÅþÁ¬¿ØÖÆÆ÷µÄÔ´IP
of source-ip ipv4-address
ȱʡÇéÐÎÏ£¬£¬£¬£¬£¬²»ÉèÖÃÔ´IP£¬£¬£¬£¬£¬Ä¬ÈÏÒÔÅþÅþÁÚ¿ÚµÄIPΪԴIPÅþÁ¬¿ØÖÆÆ÷¡£¡£¡£¡£¡£¡£¡£
¿ÉÒÔͨ¹ýshowÏÂÁîÐÐÉó²é¹¦Ð§ÉèÖúóµÄÔËÐÐÇéÐÎÒÔÑéÖ¤ÉèÖÃЧ¹û¡£¡£¡£¡£¡£¡£¡£
±í1-5 OpenFlow¼àÊÓÓëά»¤
|
×÷ÓÃ |
ÏÂÁî |
|
Éó²éÄ¿½ñOpenFlow×°±¸Óë¿ØÖÆÆ÷ÅþÁ¬ÇéÐÎ |
show of |
|
Éó²éÄ¿½ñOpenFlow×°±¸µÄ¶Ë¿Ú״̬ |
show of port |
|
Éó²éÄ¿½ñOpenFlow×°±¸µÄÁ÷±í |
show of flowtable |
|
Éó²éÄ¿½ñOpenFlow×°±¸µÄ×é±í |
show of group |
|
Éó²éÄ¿½ñOpenFlow×°±¸µÄmeter±í |
show of meter |
|
Éó²éÄ¿½ñOpenFlow×°±¸µÄºÏ²¢Á÷±íÏî |
show of mergedflow |
OpenFlow¿ÉÒÔʵÏÖ½ÓÈë×°±¸ÈÏÖ¤µÄ¼¯ÖÐÖÎÀí¡£¡£¡£¡£¡£¡£¡£ÒÔͼ1-2ΪÀý£¬£¬£¬£¬£¬ÔÚ½ÓÈë½»Á÷×°±¸Éϰ²ÅÅ¿ØÖÆÆ÷Íê³É¶Ô½ÓÈë×°±¸µÄÈÏÖ¤¿ØÖÆ£¬£¬£¬£¬£¬Ê¹µÃÔÏÈÐèÒªÔËÐÐÔÚ½ÓÈëÉè±¹ØÁ¬ÄÈÏÖ¤¹¦Ð§£¨¿ØÖÆÃæ£©ÒÆ½»µ½¿ØÖÆÆ÷ÉÏÍê³É¡£¡£¡£¡£¡£¡£¡£

l ×°±¸¿ªÆôOpenFlow¹¦Ð§£¬£¬£¬£¬£¬Óë¿ØÖÆÆ÷½¨ÉèOpenFlowÖÎÀíͨµÀ¡£¡£¡£¡£¡£¡£¡£
l ÔÚ½ÓÈë×°±¸ÉÏÔËÐÐOpenFlow Client£¬£¬£¬£¬£¬ÊµÏÖÓë¿ØÖÆÆ÷»¥Áª¡£¡£¡£¡£¡£¡£¡£
l ¿ØÖÆÆ÷ÒªÇó½ÓÈë×°±¸½«ÈÏÖ¤±¨ÎÄͨ¹ýOpenFlowÐÒé·¢Ë͵½¿ØÖÆÆ÷ÉÏ¡£¡£¡£¡£¡£¡£¡£
l ÓÉ¿ØÖÆÆ÷Íê³ÉÈÏÖ¤Àú³Ì²¢½«ÈÏ֤Ч¹ûͨ¹ýOpenFlowÐÒéÏ·¢µ½ÏêϸµÄ½ÓÈë×°±¸ÉÏ£¬£¬£¬£¬£¬Íê³ÉÖÕ¶ËÓû§µÄ×¼Èë¿ØÖÆ¡£¡£¡£¡£¡£¡£¡£
# ÉèÖÃ×°±¸¶Ë¿ªÆôOpenFlow¹¦Ð§£¬£¬£¬£¬£¬Ö¸¶¨¿ØÖÆÆ÷µÄIPµØµãΪ172.18.2.36/24£¬£¬£¬£¬£¬¶Ë¿ÚºÅΪ65535£¬£¬£¬£¬£¬Í¬Ê±¹Ø±Õ×°±¸lldp¹¦Ð§¡£¡£¡£¡£¡£¡£¡£
Device> enable
Device# configure terminal
Device(config)# no lldp enable
Device(config)# interface mgmt 0
Device(config-if)# ip address 172.18.2.36 255.255.255.0
Device(config-if)# exit
Device(config)# of controller-ip 172.18.2.35 port 65535 interface mgmt 0
# ÉèÖÃ×°±¸Îªµ¥¿ØÖÆÆ÷ģʽ¡£¡£¡£¡£¡£¡£¡£
Device(config)# of mode single
# ÉèÖÃËÍ¿ØÖÆÆ÷µÄ±¨ÎIJ»Ð¯´øvlan±êÇ©¡£¡£¡£¡£¡£¡£¡£
Device(config)# no of packet vlantag
# ÉèÖÃ×°±¸Îª²é±íģʽ¡£¡£¡£¡£¡£¡£¡£
Device(config)# ofpacket table-lookup enable
# ÉèÖÃ×°±¸µÄOpenFlowÔ´IPΪ192.168.197.25¡£¡£¡£¡£¡£¡£¡£
Device(config)# of source-ip 192.168.197.25
# Éó²éOpenFlowµÄÅþÁ¬×´Ì¬ÐÅÏ¢¡£¡£¡£¡£¡£¡£¡£
Device# show of
[0] Controller ID=0 Info=tcp:172.18.2.35 port=6653 interface Mgmt 0, Main is Connected, Aux is Disabled
# Éó²éOpenFlowµÄ¶Ë¿Ú״̬¡£¡£¡£¡£¡£¡£¡£
Device# show of port
ID¡¡¡¡IFX¡¡¡¡INTERFACE¡¡¡¡¡¡¡¡¡¡¡¡SPEED¡¡¡¡ LINK¡¡¡¡DUPLEX¡¡¡¡ TX_PKT¡¡¡¡¡¡ RX_PKT¡¡¡¡¡¡ CONFIG
1¡¡¡¡ 1¡¡¡¡¡¡GigabitEthernet 0/1¡¡Unknown¡¡ DOWN¡¡¡¡Unknown¡¡¡¡0¡¡¡¡¡¡¡¡¡¡¡¡0¡¡¡¡¡¡¡¡¡¡¡¡NA¡¡
2¡¡¡¡ 2¡¡¡¡¡¡GigabitEthernet 0/2¡¡Unknown¡¡ DOWN¡¡¡¡Unknown¡¡¡¡0¡¡¡¡¡¡¡¡¡¡¡¡0¡¡¡¡¡¡¡¡¡¡¡¡NA¡¡
# Éó²éOpenFlowµÄÁ÷±í״̬¡£¡£¡£¡£¡£¡£¡£
Device# show of flowtable
/***************** openflow flow table[0]---flow number[2] *******************/
{table="0", duration_sec="5222", priority="0", flags ="0x1",idle_timeout="0", hard_timeout="0", cookie="0x0", packet_count="0", byte_count="0". match=oxm{all match} instructions=[apply{acts=[output{port="controller", max_len="3333"}] }] }
xid=472, sync_flag=0x0, ss_index=0x7b6
{table="0", duration_sec="5222", priority="66", flags ="0x1",idle_timeout="0", hard_timeout="0", cookie="0x0", packet_count="0", byte_count="0". match=oxm{eth_dst="00:25:64:c4:54:e4", eth_type="0x800", ipv4_dst="1.1.0.0", ipv4_dst_mask="255.255.240.0"} instructions=[apply{acts=[output{port="controller", max_len="65535"}] }] }
xid=473, sync_flag=0x0, ss_index=0x7b1
/****************************** openflow flow table end ****************************************/
flow total number = 2
# ÉèÖÃ×°±¸Îªµ¥¿ØÖÆÆ÷ģʽ£¬£¬£¬£¬£¬Ö»ÄÜÅþÁ¬Ò»¸ö¿ØÖÆÆ÷£¬£¬£¬£¬£¬Áè¼ÝÒ»¸öʱ»áÓйýʧÌáÐÑ¡£¡£¡£¡£¡£¡£¡£
Device(config)# no of controller-ip
Device(config)# of mode single
Device(config)# of controller-ip 172.18.122.24 interface gigabitEthernet 0/1
Device(config)# of controller-ip 172.18.122.25 interface gigabitEthernet 0/1
Controller Mode is Single, can't connected
# ͨ¹ýshow ofÏÂÁîÉó²éÄ¿½ñģʽΪ²é±íģʽ£¬£¬£¬£¬£¬Ô´IPΪ192.168.197.25¡£¡£¡£¡£¡£¡£¡£
Device# show of
version:openflow1.3, controller[0]:tcp:172.18.105.11 port 6653 interface GigabitEthernet 1/0/7, main is connected, aux is disable, role is master.
Current controller mode : multiple.
Current packet process mode : Lookup all flow.
Datapath id = 897516188948
Source IP = 192.168.197.25
hostname Device
alias exec sv show version
!
no lldp enable
!
of source-ip 192.168.197.25
of controller-ip 172.18.2.35 port 65535 interface Mgmt 0
no of packet vlantag
!
interface Mgmt 0
?ip address 172.18.2.36 255.255.255.0
?gateway 172.18.2.1
l ¿ØÖÆÆ÷IPµØµãÉèÖùýʧ¡£¡£¡£¡£¡£¡£¡£
l ¿ØÖÆÆ÷TCP¶Ë¿ÚºÅÉèÖùýʧ¡£¡£¡£¡£¡£¡£¡£