openbox lab initialized
This commit is contained in:
68
openflow/openflow_flow-test.py
Normal file
68
openflow/openflow_flow-test.py
Normal file
@ -0,0 +1,68 @@
|
||||
import httplib
|
||||
import json
|
||||
|
||||
class StaticFlowPusher(object):
|
||||
def __init__(self, server):
|
||||
self.server = server
|
||||
|
||||
|
||||
def get(self, data):
|
||||
ret = self.rest_call({}, 'GET')
|
||||
return json.loads(ret[2])
|
||||
|
||||
def set(self, data):
|
||||
ret = self.rest_call(data, 'POST')
|
||||
return ret[0] == 200
|
||||
|
||||
def remove(self, objtype, data):
|
||||
ret = self.rest_call(data, 'DELETE')
|
||||
return ret[0] == 200
|
||||
|
||||
def rest_call(self, data, action):
|
||||
path = '/wm/staticflowpusher/json'
|
||||
headers = {
|
||||
'Content-type': 'application/json',
|
||||
'Accept': 'application/json',
|
||||
}
|
||||
body = json.dumps(data)
|
||||
conn = httplib.HTTPConnection(self.server, 8080)
|
||||
conn.request(action, path, body, headers)
|
||||
response = conn.getresponse()
|
||||
ret = (response.status, response.reason, response.read())
|
||||
print ret
|
||||
conn.close()
|
||||
return ret
|
||||
|
||||
|
||||
pusher = StaticFlowPusher('127.0.0.1')
|
||||
|
||||
flowbe0 = {
|
||||
'switch':"01:00:00:00:00:00:00:00",
|
||||
"table":"0",
|
||||
"name":"flow-0",
|
||||
"cookie":"60",
|
||||
"priority":"1",
|
||||
"active":"true",
|
||||
"eth_type":"0x800", #type
|
||||
"in_port":"1", #inport
|
||||
"ipv4_src":"192.168.2.111", #sip
|
||||
"ipv4_dst":"192.168.2.119", #dip
|
||||
"actions":"output=2" # 执行动作,输出端口为 2
|
||||
}
|
||||
flowbe1 = {
|
||||
'switch':"01:00:00:00:00:00:00:00",
|
||||
"table":"0",
|
||||
"name":"flow-1",
|
||||
"cookie":"61",
|
||||
"priority":"1",
|
||||
"active":"true",
|
||||
"eth_type":"0x800", #type
|
||||
"in_port":"3", #inport
|
||||
"ipv4_src":"192.168.2.119", #sip
|
||||
"ipv4_dst":"192.168.2.111", #dip
|
||||
"actions":"output=2" # 执行动作,输出端口为 2
|
||||
}
|
||||
pusher.set(flow0)
|
||||
pusher.set(flow1)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user