I saw the post relavant to "Changing the POX component without restarting POX controller" and it was very useful to me also..
I am also trying to change the functions on run time and I followed the solution that was given by Murphy ./pox.py forwarding.l2_multi openflow.discovery py This will load up l2_multi and then give a Python interpreter. You can swap the functions from the interpreter... POX> import pox.forwarding.l2_multi as l2m POX> shortest = l2m._get_path POX> import ext.longestpath POX> l2m._get_path = ext.longestpath._get_path You can switch back to shortest again by doing: POX> l2m._get_path = shortest After giving above commands, and after waiting for some to flow tables to be get clear, when I try to ping between hosts, it fails.. In the POX terminal it gives the message as "WARNING:forwarding.l2_multi:Can't get from 96:bb:06:61:71:8d to ae:b8:16:4d:a3:6b" The Solution has mentioned about "send a flow_mod to each connection to delete them (iterate over core.openflow.connections)", but I am not sure about how to do this.. Please be kind enough to show me where I am going wrong and how to correct this error..
