ͥåȥڥꥹ - SE̼η -

ͥåȥڥꥹȤλкȤǤͥåȥڥꥹȻι
̡ʤΥġ⡢μʤɤξǺܤޤкߥʡԤäƤޤ ͥåȥڥꥹ
кʤ麸κǤܤ֥ͥڡץ꡼ʵɾҡˤǡ
ͥåȥڥꥹȻ˹ʤȡͥåȥ˴ؤμ䵻ѤǤʤɲϤʸϤȤˤĤޤ
ˡλ˹ʤǤȤ뤳ȤǤޤ

ƥꡧ13.ȥ졼Ȳ۲ > 13.5 SDN

ͥåȥβ۲ѤSDNSoftware Defined NetworkˤǤSDNۣǡŪʤ䵻ѤؤΤǤϤʤǰˤʤޤ

SDNSoftware Defined NetworkˤȤϡդ̤꥽եȥSoftwareˤDefineˤǤͥåȥNetworkˤǤʪŪˤȤ줺եȥǼ¸Τǡ۲ѤȹͤƤ⤤Ǥ礦
ͥåȥڥꥹȤܻؤSE

۲ʤ顢VLANʤɤ⤽Ǥ͡

ϤǤ͡SDNϤä˹Ԥޤʬ䤹ǤȡΥͥåȥǤϡåFWʬ֤ʪŪ̡ε֤Ƥޤ
Ƶˤ뵡ѹǡåݡȤVLAN롼ƥ󥰤ǤʤFWǽʬǽʤɤ⼫ͳǤΤǤ

H29AP35ˤǤϡONF Open Networking FoundationˤɸಽʤƤOpenFlowץȥѤSDN Software-Defined NetworkingˤפȤơ֥ͥåȥ浡ǽȥǡžǽŪʬΥȥȸƤФ륽եȥǡǡžǽĥͥåȥνǽȤ륢ƥפȽҤ٤Ƥޤ

SDNɽŪʵѤOpenFlowǤH25ǯNW22ˡOpenFlowν꤬ޤ򻲹ͤˡSDNˤĤƤޤʲϡKǤĴؼͥåȥ۲Ѥ˴ؤƤǤ
ԷĴȤ̤ĤοѤ뤳Ȥʬä
ĤϡХ쥤ȸƤФͥåȥ۲ǡ쥤䣳ͥåȥ˥쥤䣲򥫥ץ벽ơƱƥʥȥͥåȥ°륵д֤³ѥȥͥ뤳Ȥˤäơͥåȥ۲¸롣
⤦Ĥϡå򡤷ϩʤɤδǽ¹Ԥեȥʰʲ, OFCȤˤȡǡžԤեåʰʲ, OFSȤˤʬ, OFSѥåȤηϩOFC椹ʰʲOFȤˤǤ롣OFϡץ벽Ȥ鷺, OFS줾žˤäƼ¸뤳Ȥ顤ۥåץХۥåȸƤФ뤳Ȥ⤢롣
Х쥤ϣϣǼ¸줿ͥåȥϡɤ⥽եȥǤ뤳Ȥ顤ΡSDNϤȸƤФƤ롣

Ĥޤͥåȥ۲ѤǤSDN礭2Ĥޤ
Х쥤
ΰ̣Ȥϼ㴳㤦⤷ޤ󤬡­ޤOpenFlowξ硢OpenFlowεѤΤۥåץХۥåȸޤ¸Υͥåȥ򤽤Τޤ޻ȤOpenFlowβۥåǥȥͥĥΤ򥪡Х쥤ȸƤ֡Х쥤ȤϡֽŤ͹碌פȤ̣ʤΤǡ¸εOpenFlowλȤߤŤ͹碌Ȥ̣Ǥ礦

ۥåץХۥå
ɽOpenFlowǤ嵭ΥХ쥤椹ȡƤOpenFlowεǹۤޤ

ʲϡβˤޤǤܤϸ̤˲⤷ޤ
sdn
ޤξԤӤ⤢ޤΤǡѤޤ
hikaku

ή줫餹ȡOpenFlowȯۤϼήǤ礦ξʳǰäƤޤʲή̤Ȼפޤ
1̵LANWLCˤ뽸򤹤뤳Ȥήˤʤä
2ۥФ۲졢ΥФʣεǽ褦ˤʤä

1̵LANˤWLCˤ뽸
㤤ޤ̵LANϡWLC̵AP̾ΥͥåȥǤĤʤäƤޤ
ǤOpenFlowξϡȥǤOFCȳƥͥåȥϡ̾NWȤ̤ѥ֥³ƤΤǤ
wlc
2ۥФβ۲
ǶǤϡФβ۲ήǤ1ĤΥоˡWebС᡼륵СDNSФʤɡĤΥФܤʣεǽ¸ޤ۲ƤСĹλȤߤñǤĥѹ˹Ԥޤ
줬ͥåȥǤⵯäƤΤǤ
OpenFlowˤꡢĤΥͥåȥˡL2åǤʤL3åεǽ䡢FWϤޤʬ֡LBˤεǽޤơĹǽĥѹν𤵤ΤǤλȤߤΤϼήȻפޤ󤫡
vm


ʹͤޤʲϻμѤǤΤǡޤǤ⻲٤ˡ
DC䥯饦ɻȼԤऱνʥͥåȥ
ĥѹ㳲ڤؤ˽ʥͥåȥۤǤ롣

絬Ϥʥͥåȥ
äVLAN礭VLAN4096Ȥ󤬤뤬줬ʤʤꡢ¼Ūʾ¤ϤޤDCʤɤǡ¿Υ桼ͥåȥۤˤϡŬƤޤ

ץ񤤤ơʣʽǤ롣
ȤСʬ񤱤ޤ٤˱Ǥޤ٤ͥǤޤĹλȤߤǤޤ
⡢ʣ浡Ѱդˡ1Ǥ뤳ȤǽǤ

FWL2,L3LBʤɤĤ˽
ѥåȤ򸫤DropʤɤFWǤޤ̾ǤС줾εʤƤϤޤ󡣤LBʤɤʤ̤ǤեȥǤѤ򤪤Ƽ¸뤳ȤǽǤ

OpenFlowޤ᤿SDNˤꡢ絬ϤʥͥåȥǸ̤ԤǤޤ
Ǥޤޤ⤤ǤͤȯŸӾǤϥ桼ڤΤϤޤޤΤȤǤ礦

ʲ
ϽCiscoΤ٤ʣˤʤ롣ͥåȥ󥸥˥夤ʡ˥ץߥ󥰤μɬס
ȥΥեȤ᡼ϤΤΡOSSΤΤʤɤޤޤǤˡץߥ󥰸줬PythonʥѥˤǤäꡢRubyǤäꡢCǤäꤹ롣ʤΤǡޥ٥ȤäƤ⡢CiscoIOSJuniperJunos㤦褦ˡ񤯿ͤϤ줾ν񤭤㤦ΤѤǤ
ߴ꤬ޤNWǤRFC˽ϤƤƤ⡢٤ʤȤϼˤäưäꤹ롣ƱȤOpenFlowˤơOpenflowץȥλͤ˽򤷤ƤƤ⡢᡼Ȥ˼ΰ㤤Τǡ³ڤɬפǤ
ʤβʤ⤤²ˤ򤦤äƤ뤬ºݤ˹ۤƤߤȹ⤤
ȥȳƥåʪŪNW³ɬפ롣
RFCϤƤ餺ΰ̣ǤΥޥ٥ȤȳɸಽϤƤʤ
ҤȤ줷Ƥ

OpenFlowopenϥץ󥽡Ǥ롣ʸ̤ꡢʥɡˤץʸˤƤ롣OpenFlowSDNγǰ1ĤǤΤǡSDNθդ̤ꡢեȥǤΥͥåȥǤ

ħ
̵LANΥȥWLCˤ̵AP褦ˡOpenFlowΥȥ餬ƥͥåȥޤäơƥͥåȥˡ̤ɬפϤʤOpenFlowȥIPɥ쥹ѤIFʤɡǾ¤ǺѤࡣϤʤǤ
L2åL3åFWLBʤɡʣεǽ򤢤碌Ƥ롣
Υ٥˰¸ʤǡ᡼¸Ρʤˤ󤬤ʤʤ롣ºݤˤϥ᡼䥽եȴ֤θߴ꤬ꡢñǤϤʤȤϤ⤽ȯۤϤȤǤ롣
ץहФΤǡꤿȤͳˤǤ롣ȤСCiscoǤVRFˤäơ롼۲Ǥ롣ϡVRFεǽܤ줿¸Ǥ롣Ǥ⡢Τ褦ʵǽѤ1ĤΥåƱ쥻ȤʣäVRFǤǤ׳ǧˡ롼ƥ󥰥ݥꥷʬʤɤȻפäƤ⡢䤽OSCiscoǤIOSˤбƤʤС¸Ǥʤ
¾ˤϡSTPˤ롼кäOpenFlowǤϡʪŪˤϥ롼פˤʤäƤ⡢̿ϩǤϤ⤽롼פˤʤʤ褦ˤФĴͳˤǤ롣
ºݤΥǡž֥ǡץ졼פȡϩ׻ʤɤ򤹤֥ȥץ졼פʬΥ롣ȥץ졼OFCôǡץ졼OFSô
aa

Ѹ
OpenFlowȥ
OpenFlowå
FlowTable
OpenFlowץȥ
open

ư
H25NW孶2ˤ˴Ťơǧޤ礦
OFǤ, OFSäƤѥåȤΣͣåɥ쥹IPɥ쥹, TCPݡֹʤɤ°ȹ礻ȥեɤȸƤӡΥѥåȤɤΤ褦˽뤫Ƚ˻Ѥ롣ե̤Ϥ줿ѥåȤФ, OFSΥեơ֥ʰʲ, f-TBLȤˤꤹ롣 ϣǤΣϣƣäȣϣƣӤι򡤿ޣ˼ϣƣäȣϣƣӴ֤ʰʲåȤˤθ򴹤Υץȥ򡤣 Protocol ȸƤ֡
zu2

ޣf-ԣ£̤ΰĤΥȥˤϡեμ̾ʰʲ, RuleȤˤݻRuleե, Rule˰פեĥѥåȤФơʰʲ, ActionȤˤ򵭽ҤActionեɡפեΥͤݻStatisticsեɤʤɤ롣RuleAction, OFCꤹ롣


ONFOpen Networking FoundationˤȤơOpenFlowʤȿǤ
ޤäȼϰ㤦⤷ʤOpenDaylightȤȿ⤢ꡢ⤽٥äƤޤϡOpenFlowγǰޤƤޤ
Brocadeʤɤϡ˼缴֤Ƥ뵤ġġ

OpenFLowåȤOpenFlowץȥ̿򤹤롣
ȥϡեȥǤꡢOpenFlowλ͡2012ǯVer1.3)ˤȽ򤷤ƤСɤʤΤǤ⤤ĤޤꡢCiscoHPʤɤΡ᡼٥˰¸ʤ
  ȤϤºݤˤϡ᡼ʤФƤޤ
ȥϥեȥưФΤǡǽդ٤Ǥ뤬̤Υѥ⥳ȥˤʤ롣
ץ󥽡OSS˷ϤǤRyuʥ奦ˤTremaʥȥޡˡäȸŤNOXʤɤޤΥ᡼ϤǤϡNECҤUNIVERGE PF꡼PFCProgrammableFlow ControllerˤNTTǡΡ֥Сͥåȥȥפʤɤޤ

եơ֥FWΤ롼ȹͤФǤ礦˴ؤơH25NW孶2ˤˤƤ줤ˤޤȤƤΤǡɤȤǤ礦
ޣf-ԣ£̤ΰĤΥȥˤϡեμ̾ʰʲ, RuleȤˤݻRuleե, Rule˰פեĥѥåȤФơʰʲ, ActionȤˤ򵭽ҤActionեɡפեΥͤݻStatisticsեɤʤɤ롣RuleAction, OFCꤹ롣
RuleȤѤǤ, Actionڤӥåɽ˼
messe
ʤͥåȥ˻äϣƣӤϺǽɬϣƣä³, OFSΥݡȾʤɤϣƣäΤ롣ϣƣäϡOF Protocol Ȥäƥȥݥİ롣
եФ, f-TBLRuleפ륨ȥ꤬ä, OFSȥ˵Ҥ줿ActionưԤʤä, OFSPacket In åϣƣäΥѥåȤνˡ䤤碌⡼ɤư롣Packet In ϣƣä, Flow ͣåѤf-TBL˽ΥȥϿ, Packet Out åѤƻݡȤΥѥåϣƣӤ˻ؼꤹ롣 f-TBLRuleڤActionƤɽ˼
table

Rule

Action
ɽǡAction˴ؤƤϡForwardDropModifyEnqueueǹͤޤ礦ƤƱǤ
Forwardž
Drop˴
ModifyѥåȤ񤭴롡NATʤ
Enqueue塼롡ͥʤ

Statistics
StatisticsǤϡ̿׾ĤȤǤ롣

ư
Flowơ֥ǤưOpenFlowåޤ⤢С̿ȯ١ȥ䤤碌Packet In)Ƽ⤢ޤ쳵ˤϸʤԤ¿ȴƤޤޤΥåǤARPơ֥MACɥ쥹ơ֥ʤɤξϥͥåȥ³ˤäơٺޤʤΤǡFlowơ֥ϡFW롼Τ褦ˤäƱȤΤǤϤޤ󡣤ޤơ֥ϡ٤λ֤Ĥȡäޤ

ȥλưޤñʤȢȹͤǤ⤤Ǥ礦


ʤȤƤϡHPProcurveʤɤOpenFlowбΥåNECUNIVERGE PF꡼ǤProgrammableFlow SwitchPFSѰդΤ̤Ǥ
۾ưΤǤСʪŪʤΤסLinuxʤɤΥоopenflowΥեȥư롣㤨Сץ󥽡ΡOpen vSwitchפޤ
ȤƤϡOFSñʤȢʤΤǰ²ʤΤʤΤǤޤޤ⤤ΤǤϡOFSεǽǤʤΥåεǽƤ뤫Ǥ
¸SWOSؤƤǤΤ⤢뤫⤷ʤºݡBuffaloΰ²ʥ롼ǤOpenFlowåǤǤ̣ϡͥåȤǸƤߤޤ礦Υ롼Ϥ餯Linux١ưƤΤǡ̾夫եι򤷤ơOpenFlowΥեȥƤޤΤǤ

ư
L2åƱͤˡƥݡȤˤϴŪIPɥ쥹ꤷޤ
5

̡ʲΤ褦ʥͥåȥξ硢
L3åIP򤽤줾Ƥޤ͡
 a
ˤǤ⡢IPפʤ
ʲΤ褦ˤʤ
b
3
Ǥ⡢PC1ϥǥեGWǤ192.168.1.254˥ѥåȤȻפޤ
OFS192.168.1.254IPɥ쥹ƤʤСưʤΤǤϡ
OFCؼ򤦤ơOFS254ΥѥåȤ˱ޤĤޤꡢIPɥ쥹ϳƤƤϤʤΤǤץȤˤäƱޤPCߤ顢IPƤƤ褦˴ޤ
ϡOFSˤäƼ㤦ǽޤΤǡ٤ˤͤ

4

OpenflowϢ̿ϡή̿ȡºݤ̿ޤ͡
ΥץȥȥüʤΤʤΤǤ
ޤOpenflowåOpenflowȥ֤̿˴ؤƲ⤷ޤ
OpenFlowץȥȤޤ̿ϥͥåȾTCPưޤ

ˡºݤ̿ǤOpenFlowüʥץȥȤ̿ƤΤǤϤޤ̾̿ΤޤޤǤͥåȥե֥åǤϳĥǤΥͥåȡDCBData Center BridgingˤȤޤOpenFlowξϡ̾Υե졼बΤޤή롣ĤޤꡢPCTCPΥѥåȤФΤޤž뤷UDPICMPСΤޤž롣

ofp

OpenFlowץȥǤϡåꤵƤޤH25NW孶2ˤǧޤ礦
եФ, f-TBLRuleפ륨ȥ꤬ä, OFSȥ˵Ҥ줿ActionưԤʤä, OFSPacket In åϣƣäΥѥåȤνˡ䤤碌⡼ɤư롣Packet In ϣƣä, Flow ͣåѤf-TBL˽ΥȥϿ, Packet Out åѤƻݡȤΥѥåϣƣӤ˻ؼꤹ롣
ޤβǤϡå㤬ǺܤƤޤ
messe
ǤβϡץǤϤޤʬ䤹񤫤Ƥޤ
aa
sef1

եơ֥ȤϡFWΥ롼򥤥᡼ƤޤOFCOFS˥롼뤬ΤǡOFCPacket In䤤碌ʤƤȤϤʤΤǤϡ
̵LANΥȥǤƱȻפޤ
ǤϤǤǽOFSˤեơ֥϶ǤARPơ֥MACɥ쥹ơ֥뤬ǽ϶ǡ䤤碌ʬ˾äΤƱȹͤƤ館ФǤ礦Τ褦ˡ³ƤƤεξOFCİǤƤޤMACɥ쥹ơ֥ʤɤ̿򤷤ʤٳؽƤޤΤǡPacket InʤɤΥåɬפǤ
sef6
ʤۤɡPacket InåOFCƽˡ䤤碌OFCFlow ModˤOFSΥեơ֥˥ȥɲäΤǤ͡

OFåOFȥȤ³˴ؤơH25NW孶2ˤˤϰʲΤ褦˽Ҥ٤Ƥޤ
ʤͥåȥ˻äOFSϺǽɬOFC³, OFSΥݡȾʤɤOFCΤ롣OFCϡOF Protocol Ȥäƥȥݥİ롣
OpenFlowåˤϥȥIPɥ쥹ꤵޤ˴Ťȥ̿TCPΥͥΩޤǥեȤǤϥݡֹ6633Ȥޤ
³ե˽񤤤Ƥơư³뤳ȤۤȤɤǤ礦
θ塢ȥǤϥå¦ΤΥȥݥİ򤷤ޤʣOFSüɤΤ褦³Ƥ뤫İ뤿ǤLLDP( Link Layer Discovery Protocol )ΥץȥȤȤ¿ʤޤ


ݥ󥵡ɥ

ΥڡΥȥåץ