VPN server is a very useful tool for your network connectivity, although there're many online VPN service around the world, it's slow speed and money cost and you can't sure they won't collect your connection data. That's why sometimes we want to build the VPN server by ourself and this porst introduce a way to setup a VPN server in your FreeBSD server.
Ports information in Floodlight
USACO 1.1
ZNC IRC bouncer
ZNC IRC Bouncer 安裝筆記
Multipath routing with Group table at mininet
OpenFlow link capacity
在Openflow的協定中,有時候會想要知道每條`link`的`capacity`,然後就可以藉由當前的rate來判斷這個Link是否壅塞。 本文嘗試使用 `Floodlight` Controller 作為範例來展示如何使用透過預設的 API 來取得每個 Port 的資訊,並且從中計算出當前這條 Link 是否屬於壅塞或是閒置。 這類型的機制與資訊對於想要完成 Traffic Engineering 的開發者來說非常重要,畢竟這是其中一種可以幫每條連線加上權重的一種方式
Floodlight LLDP problem
問題描述:
- 從floodlight去觀察,會發現有Link的
{source,dest}
都是相同的dpid
但是不同的port
想法思路:
從該link的結果可以先猜測應該是LLDP從
port 2
送出去後不知道為什麼從port 3
給接收到了.那我想到的時候,中間兩個switch使用
傳統的learning switch
把這個LLDP
給一路廣播下去,使得LLDP繞了回來,我覺得可能是後面兩個switch還沒有連上controller的時候會把自己運作成傳統的switch,因此我就詢問對方的網路環境.- 在確認對方網路並非是mininet的後,就請對方先把
ovs
給設定成secure mode
,在這種mode下,若是沒有跟controller連線,ovs就不會有任何的行為. - 最後對方表示一切都正常了,所以發生原因應該就是中間的switch尚未變成openflow swtich前會把LLDP給透過傳統的方式給轉發下去,導致LLDP繞了回去.
Config Qos on Ovs with Floodlight
這邊簡單紀錄一下一種QoS的使用方法,實驗流程如下
Step
- Create two different QOS queue on the openvswitch with different limitation.
- Use the Restful API to add a flow entry with the action
enqueue
. - Chagne the flow action when you want to change the QoS behavoir.
Detail
- Create topology
sudo mn --mac --controller=remote
Adding two queues q0(limited 800M) and q1(limited 50M) on s1-eth1
1
2
3
4ovs-vsctl -- set port s1-eth1 [email protected] -- [email protected] create qos type=linux-htb \
[email protected],[email protected] -- [email protected] create queue other-config:min-rate=200000000 \
other-config:max-rate=800000000 -- [email protected] create queue other-config:min-rate=50000 \
other-config:max-rate=50000000Adding flow entry using q0 and forwarding packet from port2 to port1.
1
curl -d '{"switch": "00:00:00:00:00:00:00:01", "name":"flow-mod-1", "cookie":"0", "priority":"32768","ingress-port":"2","active":"true", "actions":"enqueue=1:0"}' http://127.0.0.1:8080/wm/staticflowentrypusher/json
Type “iperf h2 h1” in mininet
1
2
3mininet> iperf h2 h1
*** Iperf: testing TCP bandwidth between h2 and h1
*** Results: ['745 Mbits/sec', '746 Mbits/sec']Modify the flow entry with different queue.
1
curl -d '{"switch": "00:00:00:00:00:00:00:01", "name":"flow-mod-1", "cookie":"0", "priority":"32768","ingress-port":"2","active":"true", "actions":"enqueue=1:1"}' http://127.0.0.1:8080/wm/staticflowentrypusher/json
Type “iperf h2 h1” in mininet
1
2
3mininet> iperf h2 h1
*** Iperf: testing TCP bandwidth between h2 and h1
*** Results: ['50.2 Mbits/sec', '50.6 Mbits/sec']
2014 運動記錄
##2014##
- 游泳
- 1/7 1500m
- 1/9 2000m
- 1/14 1500m
- 1/18 1500m
- 1/22 1500m
- 2/7 1500m
- 2/16 2000m
- 2/17 1500m
- 2/25 1500m
- 2/28 1000m
- 3/7 1500m
- 3/18 1500m
- 3/21 1500m
- 5/2 1500m
- 5/6 1500m
- 5/13 1500m
- 5/18 2000m
- 5/20 1500m
- 跑步
- 3/3 2000m
- 3/5 2000m
- 3/11 1200m
- 3/15 2000m
- 3/16 2000m
- 3/19 2000m
- 3/22 2700m
- 5/3 2100m
Sublime Text 3 + cscope (windows)
This post shows a way to install the cscope into your sublime text3 and then you can use the cscope for your existing programming project.