Thanks Murphy. Definitely helps. Messenger seems to be much more elegant and 
worth the time investment. I am starting with reading pox/messenger/example.py 
and in interactive prompt 'from pox.messenger import *' then reading 
help(Channel) or what not. Wondering if there are other documentations of 
example that I can get quickly up to speed on usage? 

Eric


On Apr 22, 2013, at 9:27 PM, Murphy McCauley <[email protected]> wrote:

> There are any number of ways you might do this.  Two examples...
> 
> One would be to have your POX component just watch the config file to see if 
> it changes.  When it changes, reconfigure.
> 
> POX also contains the messenger subsystem which is infrastructure for 
> communicating with outside applications over JSON, which it can do over TCP 
> or HTTP (further "transports" can be added).  The POXDesk web UI uses this to 
> configure POX logging and switch flow tables "live" without restarting POX.
> 
> Hope that helps.
> 
> -- Murphy
> 
> On Apr 22, 2013, at 9:13 PM, Eric Chou wrote:
> 
>> Hi, apologies if this has been asked before, seems this should've been asked 
>> but I couldn't find it in the pox-dev archive. 
>> 
>> Can somebody point me the direction on how to update the component without 
>> restarting the controller? For example, I wrote a component that redirect 
>> flow traffic to a 'sniffer' port thru several switches. This is the 
>> topology, 
>> http://3.bp.blogspot.com/-BWiv9Kvn_-c/UXQVIT67p0I/AAAAAAAAAOA/8WEdV_TlasY/s1600/Topology_Simulation.png,
>>  h1 <> h2, h3 <> h4, h6 <> h7 all have bi-dir flows installed based on 
>> ports. Then I carbon copy the traffic on h1 to e6 on s1, traffic on h6 to e7 
>> on s2, then both traffic redirects to e11 on s3 that connects to an analysis 
>> host. This is all running fine, the code is here 
>> https://github.com/ericchou-python/PyTapDEMON/blob/master/ext/echou_pytapFinal.py.
>>  
>> 
>> But suppose I have a web frontend that allows user to pick and choose which 
>> source port to start/stop sniff traffic. Currently I take the input and put 
>> that into a text file, the component reads that file and parse it out into 
>> the specific mirror ports/destination. Every time I make a change, I need 
>> to: 
>> 
>> 1. write the updated information to that text file. 
>> 2. restart the pox controller: "./pox.py <myComponent>"
>> 
>> The switch usually registers pretty fast, but there is still a delay. I 
>> wonder if there is a to dynamically write that information somewhere and do 
>> an in-place update without restarting the controller? 
>> 
>> Thanks in advance for your help, :)
>> 
>> Eric
> 

Reply via email to