OpenFlow is supported in PicOS, and user can configure PicOS switches with both legacy network protocol and Openflow, which will provide extreme flexibility in network deployment.

 

Configure ovsdb-server Locally

Check the ovsdb-server state on the switch. By default, the ovsdb-server listens to the local switch, and the ovs-vswitchd can only be configured by the local switch.

admin@XorPlus$ps aux|grep ovs 
root      5174  0.5  0.7  46716  3900 ?        S<l  01:41   0:07 /xorplus/bin/system/tools/xorplus_monitor -c 80 -m 150 xorplus_lcmgr xorplus_sif ovs-vswitchd
root      5205  0.0  0.1   6288   624 ?        Ss   01:42   0:00 ovsdb-server: monitoring pid 5206 (healthy)                                                                                                                                                                                                                                                                                                            
root      5206  0.0  0.4   6432  2124 ?        S    01:42   0:00 /ovs/sbin/ovsdb-server --pidfile --log-file --detach --monitor --remote=punix:/ovs/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Manager,target --private-key=db:hardware_vtep,SSL,private_key --certificate=db:hardware_vtep,SSL,certificate --bootstrap-ca-cert=db:hardware_vtep,SSL,ca_cert /ovs/ovs-vswitchd.conf.db /xorplus/config/vtep.db
root      5208  0.0  1.0  49580  5388 ?        Sl   01:42   0:00 /ovs/sbin/ovs-vswitchd --enable-shared-lcmgr
admin     5219  0.0  0.1   2128   684 ttyS0    S+   02:01   0:00 grep --color=auto ovs

Configure ovs-vswitchd Locally

admin@XorPlus$ovs-vsctl add-br br0 -- set bridge br0 datapath_type=pica8
admin@XorPlus$ovs-vsctl add-port br0 ge-1/1/21 -- set interface ge-1/1/21 type=pica8
admin@XorPlus$ovs-vsctl set-controller br0 tcp:10.10.51.59:6633

Configure ovsdb-server Remotely

Modify the ovsdb-server state on the switch. Configure the ovsdb-server listening switch management-ethernet interface IP 10.10.51.138 and PORT 6640.

admin@XorPlus$ps aux|grep ovs
root      5174  0.6  0.7  46716  3900 ?        S<l  01:41   0:10 /xorplus/bin/system/tools/xorplus_monitor -c 80 -m 150 xorplus_lcmgr xorplus_sif ovs-vswitchd
root      5205  0.0  0.1   6288   624 ?        Ss   01:42   0:00 ovsdb-server: monitoring pid 5206 (healthy)                                                                                                                                                                                                                                                                                                            
root      5206  0.0  0.4   6432  2136 ?        S    01:42   0:00 /ovs/sbin/ovsdb-server --pidfile --log-file --detach --monitor --remote=punix:/ovs/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Manager,target --private-key=db:hardware_vtep,SSL,private_key --certificate=db:hardware_vtep,SSL,certificate --bootstrap-ca-cert=db:hardware_vtep,SSL,ca_cert /ovs/ovs-vswitchd.conf.db /xorplus/config/vtep.db
root      5208  0.3  1.2  75456  6520 ?        Sl   01:42   0:05 /ovs/sbin/ovs-vswitchd --enable-shared-lcmgr
admin     5262  0.0  0.1   2128   684 ttyS0    S+   02:09   0:00 grep --color=auto ovs
admin@XorPlus$
admin@XorPlus$sudo kill -9 5206
admin@XorPlus$
admin@XorPlus$sudo /ovs/sbin/ovsdb-server --pidfile --log-file --detach --monit
or --remote=ptcp:6640:10.10.51.144 --remote=punix:/ovs/var/run/openvswitch/db.s
ock --remote=db:Open_vSwitch,Manager,target --private-key=db:hardware_vtep,SSL,
private_key --certificate=db:hardware_vtep,SSL,certificate --bootstrap-ca-cert=
db:hardware_vtep,SSL,ca_cert /ovs/ovs-vswitchd.conf.db /xorplus/config/vtep.db    
2002-06-25T02:15:31Z|00001|vlog|INFO|opened log file /ovs/var/log/openvswitch/ovsdb-server.log
admin@XorPlus$
admin@XorPlus$ps aux|grep ovs  
root      5174  0.5  0.7  46716  3900 ?        S<l  01:41   0:12 /xorplus/bin/system/tools/xorplus_monitor -c 80 -m 150 xorplus_lcmgr xorplus_sif ovs-vswitchd
root      5208  0.2  1.2  75456  6520 ?        Sl   01:42   0:05 /ovs/sbin/ovs-vswitchd --enable-shared-lcmgr
root      5267  0.0  0.1   6288   628 ?        Ss   02:15   0:00 ovsdb-server: monitoring pid 5268 (healthy)                                                                                                                                                                                                                                                                                                                                            
root      5268  0.5  0.4   6432  2124 ?        S    02:15   0:00 /ovs/sbin/ovsdb-server --pidfile --log-file --detach --monitor --remote=ptcp:6640:10.10.51.144 --remote=punix:/ovs/var/run/openvswitch/db.sock --remote=db:Open_vSwitch,Manager,target --private-key=db:hardware_vtep,SSL,private_key --certificate=db:hardware_vtep,SSL,certificate --bootstrap-ca-cert=db:hardware_vtep,SSL,ca_cert /ovs/ovs-vswitchd.conf.db /xorplus/config/vtep.db
admin     5270  0.0  0.1   2128   684 ttyS0    S+   02:15   0:00 grep --color=auto ovs
admin@XorPlus$

Configure ovs-vswitchd by Remote Server 10.10.50.42

root@dev-42:~# ovs-vsctl --db=tcp:10.10.51.144:6640 add-br br0 -- set bridge br0 datapath_type=pica8
root@dev-42:~# ovs-vsctl --db=tcp:10.10.51.144:6640 add-port br0 ge-1/1/21 -- set interface ge-1/1/21 type=pica8
root@dev-42:~# ovs-vsctl --db=tcp:10.10.51.144:6640 set-controller br0 tcp:10.10.51.59:6633