elifkizilky / SpaceDancers

0 stars 0 forks source link

Assign a flow table size to the switch. #6

Closed bgmrsln closed 12 months ago

elifkizilky commented 1 year ago

I'm not sure whether it is achieved 100% but here is what I have done:

To be sure, we need to do flow removal message as well. In some trials, i got hard timeout which I shouldn't get if flow is removed, sometimes I didn't. So I'm not sure this is 100% done.

elifkizilky commented 1 year ago

This is the links i looked up:

elifkizilky commented 1 year ago

Also, when i tried to update flow table size with 5 to the same switch s1; it stucked on the active: 1. Maybe it does not get updated, idk but it does not seem reasonable.

We are already getting flow removal message but i doubt that it covers the flow eviction what i tried to do.

bgmrsln commented 1 year ago

The weird thing is 10 flow rule that is added with pingall to table size 10, are not removed with hard timeout as shown in pic 1. And a second hard timeout occurs which makes table empty as shown in table stats

image image
elifkizilky commented 1 year ago

We typed sudo mn --controller=remote,ip=127.0.0.1 --mac -i 10.1.1.0/24 --switch=ovsk,protocols=OpenFlow13 --topo=single,4 -x . It opened xterms. In the controller xterm, we typed sudo ovs-vsctl -- --id=@ft create Flow_Table flow_limit=5 overflow_policy=refuse -- set Bridge s1 flow_tables=0=@ft. Then in the mininet, we ping all. It only hard timeouted 4 times (one of them is miss flow rule). That means it worked. The other flows could not get in the table since we used overflow_policy=refuse. Then we changed the flow table size to 10 and same sequence of events happened again according to size 10. That means it worked!!!

We also checked by command sudo ovs-ofctl -O OpenFlow13 dump-tables s1 and it only showed 5 and 10 active rules respectively. Normally, it shows active=1 since only miss rule is in the flow table if there is no packet in.

elifkizilky commented 1 year ago

We can try with only one ping to test if this strange thing occurs or not.

elifkizilky commented 12 months ago

It is important to note that to set the flow table size, first you must run the mininet topology.

elifkizilky commented 12 months ago

We can try with only one ping to test if this strange thing occurs or not.

I tried it:

So this works, we can close the issue.