[git] Git Bash colorful
git config --global color.ui auto
Ref :
http://unix.stackexchange.com/questions/44266/how-to-colorize-output-of-git
2013年12月23日 星期一
2013年12月3日 星期二
[openflow][floodlight] Openflow arp with floodlight controller
[openflow][floodlight] Openflow arp with floodlight controller
○ Environment Setting :
01. controller , ovs ( s1, s2, s3, s4 ), host ( h1, h2, h3, h4 )
02. h1 is connected in s1 with port1 , h2 is connected in s2 with port2 , h3 is connected in s3 with port4 , h4 is connected in s4 with port3 ;
03. grey line : data plane (path) , blue line : control plane (path)
04. pink tag : ARP Request(BroardCast) , green tag : ARP Reply
05. Openflow PacketIn [PI] : while openflow switch recieve the packet and doesn't know the packet where to forwarding , s1 send the Openflow PacketIn Message which contain the packet to controller
Openflow PacketOut [PO] : controller send the packet out message to openflow switch, which to notify the openflow switch to send the packet.
Openflow Flow Modify [FlowMod] : controller send the flow modify message to openflow switch and set the flow entry to openflow switch.
○ Scenario: h1 ping h4 in openflow environment
○ Sequance Steps :
01. h1 doesn't konw where is the h4 and send the ARP Request(BroardCast) to s1 port1
02. s1 get the ARP Request, but s1 donen't know where is the h4, s1 send the openflow PacketIn Message which contain the ARP Request to Controller(from control path : blue line)
03. controller donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s1(from control path : blue line)
04. s1 recieve the PacketOut Message which contain the ARP Request(BroardCast) and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
05. s3 recieve the ARP Request from port1, but s3 donen't know where is the h4, s3 send the openflow PacketIn Message which contain ARP Request(BroardCast) to Controller(from control path : blue line)
06. s2 recieve the ARP Request from port1, but s2 donen't know where is the h4, s2 send the openflow PacketIn Message which contain ARP Request(BroardCast) to Controller(from control path : blue line)
07. controller donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s2(from control path : blue line)
08. controller donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s3(from control path : blue line)
09. s2 recieve the PacketOut Message[Step7] which contain the ARP Request(BroardCast) and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
10. s3 recieve the PacketOut Message[Step8] which contain the ARP Request(BroardCast) and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
11. s4 recieve the ARP Request[Step9] from port1, but s4 donen't know where is the h4, s4 send the openflow PacketIn Message which contain ARP Request to Controller(from control path : blue line)
12. s4 recieve the ARP Request[Step10] from port2, but s4 donen't know where is the h4, s4 send the openflow PacketIn Message which contain ARP Request to Controller(from control path : blue line)
13. controller recieve the openflow PAcketIn Message[Setp11] donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s4(from control path : blue line)
14. s4 recieve the PacketOut Message which contain the ARP Request and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
15. h4 recieve the ARP Request from s4 with port3, and found the destination address is itself, h4 send the ARP Reply to s4(the ARP Reply destination is to h1)
16. s3 recieve the ARP Request[Setp14] from port3, but s3 donen't know where is the h4, s4 send the openflow PacketIn Message which contain ARP Request to Controller(from control path : blue line)
17. s4 recieve the ARP Reply[Setp15] from port3, but s4 donen't know where is the h1, s4 send the openflow PacketIn Message which contain ARP Reply to Controller(from control path : blue line)
18. controller recieve the openflow PacketIn Message[Setp17] which contain the ARP Reply, controller has know the h1 is connected in the s1, controller send the openflow Flow Modify Message to s4 and set the flow entry to s4 with [Flow In Port3, Flow Out Port1], controller also send the openflow PacketOut Message which contain ARP Reply Message to s4
19. s4 recieve the openflow Flow Modify Message setting the flow entry to flowtable and recieve the openflow PacketOut Message which contain ARP Reply Message, s4 start forwarding the ARP Reply Message with port1
20. s2 recieve the ARP Reply[Setp19] from port3, but s2 donen't know where is the h1, s2 send the openflow PacketIn Message which contain ARP Reply to Controller(from control path : blue line)
21. controller recieve the openflow PacketIn Message from s2[Setp20] which contain the ARP Reply, controller has known the h1 is connected in the s1, and controller send the openflow Flow Modify Message to s1 and set the flow entry to s1 with [Flow In Port2, Flow Out Port1]
22. controller recieve the openflow PacketIn Message from s2[Setp20] which contain the ARP Reply, controller has known the h1 is connected in the s1, and controller send the openflow Flow Modify Message to s2 and set the flow entry to s2 with [Flow In Port3, Flow Out Port1]
23. s2 recieve the openflow PacketOut Message from controller which contain ARP Reply Message
24. s2 start forwarding the ARP Reply Message from port3 to port1
25. s1 recieve the ARP Reply Message and start forwarding the the ARP Reply Message from port2 to port1
Final : h1 get the arp reply from h4
○ Environment Setting :
01. controller , ovs ( s1, s2, s3, s4 ), host ( h1, h2, h3, h4 )
02. h1 is connected in s1 with port1 , h2 is connected in s2 with port2 , h3 is connected in s3 with port4 , h4 is connected in s4 with port3 ;
03. grey line : data plane (path) , blue line : control plane (path)
04. pink tag : ARP Request(BroardCast) , green tag : ARP Reply
05. Openflow PacketIn [PI] : while openflow switch recieve the packet and doesn't know the packet where to forwarding , s1 send the Openflow PacketIn Message which contain the packet to controller
Openflow PacketOut [PO] : controller send the packet out message to openflow switch, which to notify the openflow switch to send the packet.
Openflow Flow Modify [FlowMod] : controller send the flow modify message to openflow switch and set the flow entry to openflow switch.
○ Scenario: h1 ping h4 in openflow environment
○ Sequance Steps :
01. h1 doesn't konw where is the h4 and send the ARP Request(BroardCast) to s1 port1
02. s1 get the ARP Request, but s1 donen't know where is the h4, s1 send the openflow PacketIn Message which contain the ARP Request to Controller(from control path : blue line)
03. controller donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s1(from control path : blue line)
04. s1 recieve the PacketOut Message which contain the ARP Request(BroardCast) and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
05. s3 recieve the ARP Request from port1, but s3 donen't know where is the h4, s3 send the openflow PacketIn Message which contain ARP Request(BroardCast) to Controller(from control path : blue line)
06. s2 recieve the ARP Request from port1, but s2 donen't know where is the h4, s2 send the openflow PacketIn Message which contain ARP Request(BroardCast) to Controller(from control path : blue line)
07. controller donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s2(from control path : blue line)
08. controller donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s3(from control path : blue line)
09. s2 recieve the PacketOut Message[Step7] which contain the ARP Request(BroardCast) and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
10. s3 recieve the PacketOut Message[Step8] which contain the ARP Request(BroardCast) and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
11. s4 recieve the ARP Request[Step9] from port1, but s4 donen't know where is the h4, s4 send the openflow PacketIn Message which contain ARP Request to Controller(from control path : blue line)
12. s4 recieve the ARP Request[Step10] from port2, but s4 donen't know where is the h4, s4 send the openflow PacketIn Message which contain ARP Request to Controller(from control path : blue line)
13. controller recieve the openflow PAcketIn Message[Setp11] donen't know where is the h4 and send the openflow PacketOut Message which contain the ARP Request(BroardCast) to s4(from control path : blue line)
14. s4 recieve the PacketOut Message which contain the ARP Request and broadcast the ARP Request packet from port2 and port3(not port 1, because the ARP Request packet came from port1)
15. h4 recieve the ARP Request from s4 with port3, and found the destination address is itself, h4 send the ARP Reply to s4(the ARP Reply destination is to h1)
16. s3 recieve the ARP Request[Setp14] from port3, but s3 donen't know where is the h4, s4 send the openflow PacketIn Message which contain ARP Request to Controller(from control path : blue line)
17. s4 recieve the ARP Reply[Setp15] from port3, but s4 donen't know where is the h1, s4 send the openflow PacketIn Message which contain ARP Reply to Controller(from control path : blue line)
18. controller recieve the openflow PacketIn Message[Setp17] which contain the ARP Reply, controller has know the h1 is connected in the s1, controller send the openflow Flow Modify Message to s4 and set the flow entry to s4 with [Flow In Port3, Flow Out Port1], controller also send the openflow PacketOut Message which contain ARP Reply Message to s4
19. s4 recieve the openflow Flow Modify Message setting the flow entry to flowtable and recieve the openflow PacketOut Message which contain ARP Reply Message, s4 start forwarding the ARP Reply Message with port1
20. s2 recieve the ARP Reply[Setp19] from port3, but s2 donen't know where is the h1, s2 send the openflow PacketIn Message which contain ARP Reply to Controller(from control path : blue line)
21. controller recieve the openflow PacketIn Message from s2[Setp20] which contain the ARP Reply, controller has known the h1 is connected in the s1, and controller send the openflow Flow Modify Message to s1 and set the flow entry to s1 with [Flow In Port2, Flow Out Port1]
22. controller recieve the openflow PacketIn Message from s2[Setp20] which contain the ARP Reply, controller has known the h1 is connected in the s1, and controller send the openflow Flow Modify Message to s2 and set the flow entry to s2 with [Flow In Port3, Flow Out Port1]
23. s2 recieve the openflow PacketOut Message from controller which contain ARP Reply Message
24. s2 start forwarding the ARP Reply Message from port3 to port1
25. s1 recieve the ARP Reply Message and start forwarding the the ARP Reply Message from port2 to port1
Final : h1 get the arp reply from h4
[Qt4] QT Creator for windows-based
[Qt4] QT Creator for windows-based
01. Install QT Creator 2.1.0
02. Install QT 4.8.5 SDK
03. Adding System Environment Path : ;C:\Qt\qtcreator-2.1.0\mingw\bin;C:\Qt\4.8.5\bin (Qt5.2.0 : C:\Qt\Qt5.2.0\5.2.0\mingw48_32\bin;C:\Qt\Qt5.2.0\Tools\mingw48_32\bin; )
04. Open QT Creator -> Tools -> Options -> Qt4 ->Add qmake location : c:\qt\4.8.5\qmake\qmake.exe
05. Open QT Creator -> File -> Open File or Project -> select *.pro
01. Install QT Creator 2.1.0
02. Install QT 4.8.5 SDK
03. Adding System Environment Path : ;C:\Qt\qtcreator-2.1.0\mingw\bin;C:\Qt\4.8.5\bin (Qt5.2.0 : C:\Qt\Qt5.2.0\5.2.0\mingw48_32\bin;C:\Qt\Qt5.2.0\Tools\mingw48_32\bin; )
04. Open QT Creator -> Tools -> Options -> Qt4 ->Add qmake location : c:\qt\4.8.5\qmake\qmake.exe
05. Open QT Creator -> File -> Open File or Project -> select *.pro
訂閱:
文章 (Atom)