[nox-dev] What is the possible cause of error: type=3, code=3 and type=3, code=1

2010-09-21 Thread Guanyao Huang
Hi
When setting up a flow entry (I am using mininet and NOX from HOTI
tutorial), it says:

00065|openflow-event|ERR:received Openflow error packet from
dpid=000c: type=3, code=1, 80 bytes of data
00324|openflow-event|ERR:received Openflow error packet from
dpid=0013: type=3, code=3, 80 bytes of data
00325|openflow-event|ERR:received Openflow error packet from
dpid=000c: type=3, code=3, 80 bytes of data
00326|openflow-event|ERR:received Openflow error packet from
dpid=000e: type=3, code=3, 88 bytes of data

I am very confused. I never set CHECK_OVERLAP flag. Also, when will a flow
entry become emergency? I didnt set it. Will it be set when a previous
flow_mod fail?

Is there any general/common reason for these two errors?

Thanks.
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] How can I resolve: make[9]: *** No rule to make target `meta.json', needed by `all-am'. Stop.

2010-09-20 Thread Guanyao Huang
The problem is solved. I named the file as meta.jason. That was the
problem.
Thank you Kyriakos.

On Sun, Sep 19, 2010 at 11:26 PM, Guanyao Huang  wrote:

> Hello
>
> Sorry to bother others. I am using the latest NOX module from:
>
> http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/ProductionSetup/NOXDestinyTransition
>
> I met a problem when compiling spanning_tree module. I guess it is a common
> problem. I changed configure.ac.in and nox.json. I also changed the
> meta.json file in the spanning_tree directory. I run ./boot.sh and
> ./configure. However, make is not successful. It shows:
>
> Making all in spanning_tree
> make[8]: Entering directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make  all-am
> make[9]: Entering directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make[9]: *** No rule to make target `meta.json', needed by `all-am'.  Stop.
> make[9]: Leaving directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make[8]: *** [all] Error 2
> make[8]: Leaving directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make[7]: *** [all-recursive] Error 1
> make[7]: Leaving directory `/home/mininet/nox/src/nox/netapps'
> make[6]: *** [all] Error 2
> make[6]: Leaving directory `/home/mininet/nox/src/nox/netapps'
> make[5]: *** [all-recursive] Error 1
> make[5]: Leaving directory `/home/mininet/nox/src/nox'
> make[4]: *** [all] Error 2
> make[4]: Leaving directory `/home/mininet/nox/src/nox'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory `/home/mininet/nox/src'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/mininet/nox/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/mininet/nox'
> make: *** [all] Error 2
>
> Did I miss something? Thank you.
>
>
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] How can I resolve: make[9]: *** No rule to make target `meta.json', needed by `all-am'. Stop.

2010-09-19 Thread Guanyao Huang
The link for spanning_tree module:
http://www.mail-archive.com/nox-dev@noxrepo.org/msg00167.html
http://www.openflowswitch.org/wk/index.php/Basic_Spanning_Tree
I plan to use spanning_tree so that routing module can be used for a network
of loops.
Thanks.

On Sun, Sep 19, 2010 at 11:26 PM, Guanyao Huang  wrote:

> Hello
>
> Sorry to bother others. I am using the latest NOX module from:
>
> http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/ProductionSetup/NOXDestinyTransition
>
> I met a problem when compiling spanning_tree module. I guess it is a common
> problem. I changed configure.ac.in and nox.json. I also changed the
> meta.json file in the spanning_tree directory. I run ./boot.sh and
> ./configure. However, make is not successful. It shows:
>
> Making all in spanning_tree
> make[8]: Entering directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make  all-am
> make[9]: Entering directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make[9]: *** No rule to make target `meta.json', needed by `all-am'.  Stop.
> make[9]: Leaving directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make[8]: *** [all] Error 2
> make[8]: Leaving directory
> `/home/mininet/nox/src/nox/netapps/spanning_tree'
> make[7]: *** [all-recursive] Error 1
> make[7]: Leaving directory `/home/mininet/nox/src/nox/netapps'
> make[6]: *** [all] Error 2
> make[6]: Leaving directory `/home/mininet/nox/src/nox/netapps'
> make[5]: *** [all-recursive] Error 1
> make[5]: Leaving directory `/home/mininet/nox/src/nox'
> make[4]: *** [all] Error 2
> make[4]: Leaving directory `/home/mininet/nox/src/nox'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory `/home/mininet/nox/src'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/home/mininet/nox/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/mininet/nox'
> make: *** [all] Error 2
>
> Did I miss something? Thank you.
>
>
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] How can I resolve: make[9]: *** No rule to make target `meta.json', needed by `all-am'. Stop.

2010-09-19 Thread Guanyao Huang
Hello

Sorry to bother others. I am using the latest NOX module from:
http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/ProductionSetup/NOXDestinyTransition

I met a problem when compiling spanning_tree module. I guess it is a common
problem. I changed configure.ac.in and nox.json. I also changed the
meta.json file in the spanning_tree directory. I run ./boot.sh and
./configure. However, make is not successful. It shows:

Making all in spanning_tree
make[8]: Entering directory
`/home/mininet/nox/src/nox/netapps/spanning_tree'
make  all-am
make[9]: Entering directory
`/home/mininet/nox/src/nox/netapps/spanning_tree'
make[9]: *** No rule to make target `meta.json', needed by `all-am'.  Stop.
make[9]: Leaving directory `/home/mininet/nox/src/nox/netapps/spanning_tree'
make[8]: *** [all] Error 2
make[8]: Leaving directory `/home/mininet/nox/src/nox/netapps/spanning_tree'
make[7]: *** [all-recursive] Error 1
make[7]: Leaving directory `/home/mininet/nox/src/nox/netapps'
make[6]: *** [all] Error 2
make[6]: Leaving directory `/home/mininet/nox/src/nox/netapps'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/home/mininet/nox/src/nox'
make[4]: *** [all] Error 2
make[4]: Leaving directory `/home/mininet/nox/src/nox'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/mininet/nox/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/mininet/nox/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/mininet/nox'
make: *** [all] Error 2

Did I miss something? Thank you.
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] How can I introduce new NOX module

2010-09-15 Thread Guanyao Huang
Right
xxx is abbreviation.
It is not there in src directory.
I am using the NOX module from http://openflow.org/wk/index.php/GEC8Tutorial,
to test and run on virtual machine.
If I recover by "git clone git://noxrepo.org/nox", will there be any version
conflict?
Thanks.


On Wed, Sep 15, 2010 at 11:33 AM, kk yap  wrote:

> Hi Guanyao,
>
> You are suppose to have Make.vars in the src directory.  Is it there?
> I am curious how xxx/Make.vars got there.
>
> Regards
> KK
>
> On 15 September 2010 11:24, Guanyao Huang  wrote:
> > You are right. I forgot to rerun boot.sh and configure.
> > But it is not successful. It says:
> > automake: can not open < /Make.vars: no such file or directory
> > autoreconf: automake failed with exit status: 1
> >
> > On Wed, Sep 15, 2010 at 11:10 AM, Martin Casado 
> wrote:
> >>
> >> Did you rerun boot.sh?
> >>
> >> Hello
> >> Sorry to bother others.
> >> http://noxrepo.org/wp/ seems outdated.
> >>
> >> I have a new module and I want to compile it. I remember the only files
> I
> >> need to change are: configure.ac.in, nox.xml and meta.xml inside my
> module
> >> folder. However, it is not working. When make, it ignores my module. It
> >> never gets compiled.
> >>
> >> Did I miss anything?
> >>
> >> Thank you.
> >>
> >> ___
> >> nox-dev mailing list
> >> nox-dev@noxrepo.org
> >> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
> >>
> >
> >
> > ___
> > nox-dev mailing list
> > nox-dev@noxrepo.org
> > http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
> >
> >
>
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] How can I introduce new NOX module

2010-09-15 Thread Guanyao Huang
You are right. I forgot to rerun boot.sh and configure.
But it is not successful. It says:
automake: can not open < /Make.vars: no such file or directory
autoreconf: automake failed with exit status: 1

On Wed, Sep 15, 2010 at 11:10 AM, Martin Casado  wrote:

> Did you rerun boot.sh?
>
>   Hello
> Sorry to bother others.
> http://noxrepo.org/wp/ seems outdated.
>
> I have a new module and I want to compile it. I remember the only files I
> need to change are: configure.ac.in, nox.xml and meta.xml inside my module
> folder. However, it is not working. When make, it ignores my module. It
> never gets compiled.
>
> Did I miss anything?
>
> Thank you.
>
>
> ___
> nox-dev mailing 
> listnox-...@noxrepo.orghttp://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>
>
>
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] How can I introduce new NOX module

2010-09-15 Thread Guanyao Huang
Hello
Sorry to bother others.
http://noxrepo.org/wp/ seems outdated.

I have a new module and I want to compile it. I remember the only files I
need to change are: configure.ac.in, nox.xml and meta.xml inside my module
folder. However, it is not working. When make, it ignores my module. It
never gets compiled.

Did I miss anything?

Thank you.
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] I met a basic problem when testing virtual environment

2010-06-21 Thread Guanyao Huang
Hello
Sorry to bother others.
I am testing my software openflow according to
http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/Virtual
I also run ./nox_core -i ptcp:6633 routing
After run vms-start.py -u 2hosts-2ofsw.vms.xml, 4 windows pop up for 2
hosts and 2 switches. Everything seems OK.
However, on the controller window, it keeps saying:
|nox|WARN:stream: closing connection due to timeout after 5 seconds in
receiving features reply state

The virtual hosts fail to ping each other.

Do you have any idea what does that message mean? Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Cant run virtual machine for the simple example in the tutorial

2010-06-08 Thread Guanyao Huang
It works. Thank you.

On Tue, Jun 8, 2010 at 1:09 PM, kk yap  wrote:
> As mentioned, the list is ordered.  So, I swapped ip and xterm in the
> host definition, and it works now.  Attached is the updated file.
>
> Regards
> KK
>
> On 8 June 2010 13:02, Guanyao Huang  wrote:
>> Here is my script. Thank you.
>>
>> On Tue, Jun 8, 2010 at 12:32 PM, kk yap  wrote:
>>> Hi,
>>>
>>> The actual declaration is ordered in xml.  xterm should work.  Do send
>>> me your " 2hosts-2ofsw.vms.xml".
>>>
>>> Regards
>>> KK
>>>
>>> On 8 June 2010 12:10, Guanyao Huang  wrote:
>>>> Hi, this is the error:
>>>>
>>>> gyhu...@leo:~/OpenFlowExample$ xmlstarlet val -e -s
>>>> ../openflowvms/xsd/vms.xsd 2hosts-2ofsw.vms.xml
>>>> 2hosts-2ofsw.vms.xml:14: element xterm: Schemas validity error :
>>>> Element 'xterm': This element is not expected. Expected is ( screenrc
>>>> ).
>>>> 2hosts-2ofsw.vms.xml:18: element xterm: Schemas validity error :
>>>> Element 'xterm': This element is not expected. Expected is ( screenrc
>>>> ).
>>>> 2hosts-2ofsw.vms.xml - invalid
>>>>
>>>> So, I changed to screenrc. Sorry I am not familiar with this.
>>>>
>>>> On Tue, Jun 8, 2010 at 12:00 PM, Kyriakos Zarifis  
>>>> wrote:
>>>>> Hi,
>>>>>
>>>>>>
>>>>>> My script for the 2-host-2-switch case is the same as in the link
>>>>>> above, but I changed the  tag to  tag as suggested by
>>>>>> the xmlstarlet command.
>>>>>
>>>>> I'm not sure about this, maybe it's a recent change, but last time I tried
>>>>> it  worked for me. Did you try that?
>>>>
>>>> ___
>>>> nox-dev mailing list
>>>> nox-dev@noxrepo.org
>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>
>>>
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Cant run virtual machine for the simple example in the tutorial

2010-06-08 Thread Guanyao Huang
Here is my script. Thank you.

On Tue, Jun 8, 2010 at 12:32 PM, kk yap  wrote:
> Hi,
>
> The actual declaration is ordered in xml.  xterm should work.  Do send
> me your " 2hosts-2ofsw.vms.xml".
>
> Regards
> KK
>
> On 8 June 2010 12:10, Guanyao Huang  wrote:
>> Hi, this is the error:
>>
>> gyhu...@leo:~/OpenFlowExample$ xmlstarlet val -e -s
>> ../openflowvms/xsd/vms.xsd 2hosts-2ofsw.vms.xml
>> 2hosts-2ofsw.vms.xml:14: element xterm: Schemas validity error :
>> Element 'xterm': This element is not expected. Expected is ( screenrc
>> ).
>> 2hosts-2ofsw.vms.xml:18: element xterm: Schemas validity error :
>> Element 'xterm': This element is not expected. Expected is ( screenrc
>> ).
>> 2hosts-2ofsw.vms.xml - invalid
>>
>> So, I changed to screenrc. Sorry I am not familiar with this.
>>
>> On Tue, Jun 8, 2010 at 12:00 PM, Kyriakos Zarifis  
>> wrote:
>>> Hi,
>>>
>>>>
>>>> My script for the 2-host-2-switch case is the same as in the link
>>>> above, but I changed the  tag to  tag as suggested by
>>>> the xmlstarlet command.
>>>
>>> I'm not sure about this, maybe it's a recent change, but last time I tried
>>> it  worked for me. Did you try that?
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

  48

  
   
  true 
  

  
  true 
  

  
192.168.100.1
true
  
  
192.168.100.2
true
  

  
   
  

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Cant run virtual machine for the simple example in the tutorial

2010-06-08 Thread Guanyao Huang
Hi, this is the error:

gyhu...@leo:~/OpenFlowExample$ xmlstarlet val -e -s
../openflowvms/xsd/vms.xsd 2hosts-2ofsw.vms.xml
2hosts-2ofsw.vms.xml:14: element xterm: Schemas validity error :
Element 'xterm': This element is not expected. Expected is ( screenrc
).
2hosts-2ofsw.vms.xml:18: element xterm: Schemas validity error :
Element 'xterm': This element is not expected. Expected is ( screenrc
).
2hosts-2ofsw.vms.xml - invalid

So, I changed to screenrc. Sorry I am not familiar with this.

On Tue, Jun 8, 2010 at 12:00 PM, Kyriakos Zarifis  wrote:
> Hi,
>
>>
>> My script for the 2-host-2-switch case is the same as in the link
>> above, but I changed the  tag to  tag as suggested by
>> the xmlstarlet command.
>
> I'm not sure about this, maybe it's a recent change, but last time I tried
> it  worked for me. Did you try that?

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Cant run virtual machine for the simple example in the tutorial

2010-06-08 Thread Guanyao Huang
Hi
Sorry to bother others.
I am playing with software openflow following tutorial:
http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/Virtual
I assume that I will see five virtual screen for the example of
2-host-2-switch. But, screen -ls shows there is only one called
ofswslirp. Others are not successful.
If I directly vms-start the script for 2-host-1-switch, then:
gyhu...@leo:~/OpenFlowExample$ screen -ls
There are screens on:
23903.host2 (06/08/2010 10:58:53 AM)(Detached)
23899.host1 (06/08/2010 10:58:53 AM)(Detached)
23892.of1   (06/08/2010 10:58:52 AM)(Detached)
23888.ofswslirp (06/08/2010 10:58:52 AM)(Detached)
4 Sockets in /var/run/screen/S-gyhuang.

This is correct.

My script for the 2-host-2-switch case is the same as in the link
above, but I changed the  tag to  tag as suggested by
the xmlstarlet command.

Any comments on why I can not get virtual screen for the 2-host-2-switch case?

Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Some problem with nox compiling, err or: forward declaration of ‘struct vigil: :Kernel’

2010-05-24 Thread Guanyao Huang
Sorry. I dont quite understand. I am already compiling under
./nox/build. build is a new directory. It is not source tree, right? I
am following instructions from the webpage. First I mkdir build, then
I go into it, ../configure, and then I make in it.

On Mon, May 24, 2010 at 8:16 AM, Martin Casado  wrote:
> Yeah, this seems to happen when you compile in the source tree.  Try using a
> remote build tree from a clean source tree and see if that works.
>
>> Hi,
>> Sorry to bother others. I am compiling OpenFlow v1.0. compatible NOX,
>> following steps on:
>>
>> http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/LabSetup#4_Controller_Setup
>> I never met following errors before but now they pop up. It seems
>> everything is clean. I just download, configure, and make it. I didnt
>> modify anything.
>>
>> ../../../../../src/nox/netapps/authenticator/authenticator_event.cc:
>> In member function ‘vigil::Disposition
>> vigil::applications::Authenticator::handle_bootstrap(const
>> vigil::Event&)’:
>> ../../../../../src/nox/netapps/authenticator/authenticator_event.cc:40:
>> error: invalid use of incomplete type ‘struct vigil::Kernel’
>> ../../../../../src/nox/component.hh:49: error: forward declaration of
>> ‘struct vigil::Kernel’
>> ../../../../../src/nox/netapps/authenticator/authenticator_event.cc:40:
>> error: ‘INSTALLED’ was not declared in this scope
>> ../../../../../src/nox/netapps/authenticator/authenticator_event.cc:41:
>> error: invalid use of incomplete type ‘struct vigil::Kernel’
>> ../../../../../src/nox/component.hh:49: error: forward declaration of
>> ‘struct vigil::Kernel’
>> make[9]: *** [authenticator_la-authenticator_event.lo] Error 1
>>
>> I saw someone else encountered this error in this email list, but he
>> got no reply.
>>
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Some problem with nox compiling, err or: forward declaration of ‘struct vigil: :Kernel’

2010-05-23 Thread Guanyao Huang
Hi,
Sorry to bother others. I am compiling OpenFlow v1.0. compatible NOX,
following steps on:
http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/LabSetup#4_Controller_Setup
I never met following errors before but now they pop up. It seems
everything is clean. I just download, configure, and make it. I didnt
modify anything.

../../../../../src/nox/netapps/authenticator/authenticator_event.cc:
In member function ‘vigil::Disposition
vigil::applications::Authenticator::handle_bootstrap(const
vigil::Event&)’:
../../../../../src/nox/netapps/authenticator/authenticator_event.cc:40:
error: invalid use of incomplete type ‘struct vigil::Kernel’
../../../../../src/nox/component.hh:49: error: forward declaration of
‘struct vigil::Kernel’
../../../../../src/nox/netapps/authenticator/authenticator_event.cc:40:
error: ‘INSTALLED’ was not declared in this scope
../../../../../src/nox/netapps/authenticator/authenticator_event.cc:41:
error: invalid use of incomplete type ‘struct vigil::Kernel’
../../../../../src/nox/component.hh:49: error: forward declaration of
‘struct vigil::Kernel’
make[9]: *** [authenticator_la-authenticator_event.lo] Error 1

I saw someone else encountered this error in this email list, but he
got no reply.

Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] is this a known bug in storage module

2010-05-06 Thread Guanyao Huang
Hi
Sorry to bother others. My program has serious problem. Here is the
dump under gdb. I am wondering has anyone seen something similar
before. Maybe this is known bug? Any suggestion would be helpful.

*** glibc detected ***
/home/sraza/noxcore/build/src/.libs/lt-nox_core: malloc(): memory
corruption: 0x7f3010a27a00 ***
=== Backtrace: =
/lib64/libc.so.6[0x36f947b5df]
/lib64/libc.so.6(__libc_malloc+0x98)[0x36f947ce18]
/usr/lib64/libstdc++.so.6(_Znwm+0x1d)[0x37078c41bd]
nox/netapps/storage/storage-common.so(_ZNSt3tr110_HashtableISsSt4pairIKSsN5boost7variantIlSsdN5vigil12applications7storage4GUIDENS3_6detail7variant5void_ESB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_EEESaISD_ESt10_Select1stISD_ESt8equal_toISsENS_4hashISsEENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EE19_M_allocate_bucketsEm+0x33)[0x7f3007a050f3]
nox/netapps/storage/storage-common.so(_ZNSt3tr110_HashtableISsSt4pairIKSsN5boost7variantIlSsdN5vigil12applications7storage4GUIDENS3_6detail7variant5void_ESB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_EEESaISD_ESt10_Select1stISD_ESt8equal_toISsENS_4hashISsEENS_8__detail18_Mod_range_hashingENSL_20_Default_ranged_hashENSL_20_Prime_rehash_policyELb0ELb0ELb1EEC2ERKSP_+0x40)[0x7f3007a055a0]
nox/netapps/storage/storage-backend.so(_ZN5boost4bindINS_8functionIFvRKN5vigil12applications7storage6ResultERKNS4_7ContextERKNS2_8hash_mapISsNS_7variantIlSsdNS4_4GUIDENS_6detail7variant5void_ESG_SG_SG_SG_SG_SG_SG_SG_SG_SG_SG_SG_SG_SG_SG_EENSt3tr14hashISsEESt8equal_toISsESaISt4pairIKSsSH_EEENS_3argILi1EEES8_SR_EENS_3_bi6bind_tINSY_11unspecifiedET_NSY_9list_av_3IT0_T1_T2_E4typeEEES11_S13_S14_S15_+0x13d)[0x7f30073d0c8d]
nox/netapps/storage/storage-backend.so(_ZN5vigil12applications7storage17Async_DHT_storage3getERKSsRKNS_8hash_mapISsN5boost7variantIlSsdNS1_4GUIDENS6_6detail7variant5void_ESB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_SB_EENSt3tr14hashISsEESt8equal_toISsESaISt4pairIS3_SC_RKNS6_8functionIFvRKNS1_6ResultERKNS1_7ContextESN_EEE+0x194)[0x7f30073c2ff4]
nox/netapps/bindings_storage/.libs/bindings_storage.so(_ZN5vigil12applications16Bindings_Storage17run_get_links_fsmERKN5boost10shared_ptrINS0_12Get_Links_OpEEENS0_13GetLinksStateE+0xf7)[0x7f3006ac2b57]
nox/netapps/bindings_storage/.libs/bindings_storage.so(_ZN5vigil12applications16Bindings_Storage13get_all_linksERKN5boost8functionIFvRNSt7__debug4listINS0_4LinkESaIS6_EE+0xc8)[0x7f3006ac3b08]
./nox/netapps/bindings_storage/_pybindings_storage.so(_ZN5vigil12applications22Bindings_Storage_Proxy18get_links_dispatchEN5boost8functionIFvRNS3_IFvRNSt7__debug4listINS0_4LinkESaIS6_EP7_object+0x393)[0x7f3006854263]
./nox/netapps/bindings_storage/_pybindings_storage.so(_ZN5vigil12applications22Bindings_Storage_Proxy13get_all_linksEP7_object+0x44)[0x7f30068547b4]
./nox/netapps/bindings_storage/_pybindings_storage.so[0x7f3006863e14]
/usr/lib64/libpython2.5.so.1.0(PyObject_Call+0x13)[0x371143d173]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalFrameEx+0x4117)[0x37114bcca7]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalCodeEx+0x70d)[0x37114bfa7d]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalFrameEx+0x58cc)[0x37114be45c]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalFrameEx+0x6356)[0x37114beee6]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalCodeEx+0x70d)[0x37114bfa7d]
/usr/lib64/libpython2.5.so.1.0[0x371145b9c7]
/usr/lib64/libpython2.5.so.1.0(PyObject_Call+0x13)[0x371143d173]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalFrameEx+0x4117)[0x37114bcca7]
/usr/lib64/libpython2.5.so.1.0(PyEval_EvalCodeEx+0x70d)[0x37114bfa7d]
/usr/lib64/libpython2.5.so.1.0[0x371145ba32]
/usr/lib64/libpython2.5.so.1.0(PyObject_Call+0x13)[0x371143d173]
/usr/lib64/libpython2.5.so.1.0[0x37114443b0]
/usr/lib64/libpython2.5.so.1.0(PyObject_Call+0x13)[0x371143d173]
/usr/lib64/libpython2.5.so.1.0[0x3711444ffb]
/usr/lib64/libpython2.5.so.1.0(PyObject_Call+0x13)[0x371143d173]
/usr/lib64/libpython2.5.so.1.0(PyEval_CallObjectWithKeywords+0x71)[0x37114b7fc1]
nox/coreapps/pyrt/pyrt.so(_ZN5vigil20call_python_functionIN5boost13intrusive_ptrI7_objectvS4_T_+0x2b)[0x7f301508517b]
./nox/coreapps/pyrt/_oxidereactor.so(_ZN5boost6detail8function26void_function_obj_invoker0INS_3_bi6bind_tIvPFvNS_13intrusive_ptrI7_objectEES7_ENS3_5list2INS3_5valueIS7_EESC_vE6invokeERNS1_15function_bufferE+0x49)[0x7f300928cd99]
/home/sraza/noxcore/build/src/builtin/.libs/libbuiltin.so.0(_ZNK5boost9function0IvEclEv+0x2e)[0x7f3015df921e]
/home/sraza/noxcore/build/src/lib/.libs/libnoxcore.so.0(_ZN5vigil16Timer_dispatcher4pollEv+0x4fa)[0x7f3015b5573a]
/home/sraza/noxcore/build/src/lib/.libs/libnoxcore.so.0[0x7f3015b3501f]
/home/sraza/noxcore/build/src/lib/.libs/libnoxcore.so.0[0x7f3015b356d4]
/home/sraza/noxcore/build/src/lib/.libs/libnoxcore.so.0(_ZN5vigil14Poll_loop_impl3runEv+0xc8)[0x7f3015b35f48]
/home/sraza/noxcore/build/src/.libs/lt-nox_core(main+0x1f73)[0x4111f3]
/lib64/libc.so.6(__libc_start_main+0xfa)[0x36f941e32a]
/home/sraza/noxcore/build/src/.libs/lt-nox_core(_ZNSt8ios_base

[nox-dev] Fail to receive flow-expire message occasionally.

2010-04-28 Thread Guanyao Huang
Hi
Sorry to bother others. I have a general question about flow-expire message.
I want to know if there is any situation that a switch doesnt send
flow-expire message even a flow expires, or, is there any chance the
controller receives flow-expire message but drops it because it is out of
buffer? Also I have questions about the first packet of a flow.

My NOX controller fails to receive flow expire message from some flows of
some switch. I havent checked the tcpdump files yet, because the traffic
volume is not small. The module maintains every new flow and delete it once
it expire. But it turns out that some flows continue being remained after
there is no traffic.

My NOX periodically queries flow size of all the flows maintained. I find
out that all the left flows in the NOX have size 1, this shows that their
sizes are not updated since they have arrived.

*I want to know whether the first packet will update the counter in the
first switch after this packet is sent back from controller? From document
this packet is sent to the outport directly, but it turns out that it will
still update the counter, at least I see this is the case for many flows.
But, if the packet is received (from controller) by the first switch before
the rule is established, what will happen? I guess in this case the counter
is still 0. *

*If a counter is 0, will the flow-expire message be sent back to the
controller? *

Any suggestions will be helpful. Thank you.
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need to the error type of send_openflow_command()

2010-04-07 Thread Guanyao Huang
Hi
Thank you for your reply.
I actually avoided the problem by using some other codes, but I still
donot understand what was going on behind it. I checked the code but
feel stuck at some points. I mean, since send_openflow_command is
commonly used, maybe it is better to specifically document possible
errors.
Do you mean to check the datapath_leave_event between switch and
controller, which possibly contains reasons why the switch leaves? I
am sure the leaving datapath (f7:ca:e4:00:00:64) is a valid datapath.
Why will it leave if we send some commands to any invalid datapathid?
Thanks.

On Mon, Apr 5, 2010 at 4:12 AM, kk yap  wrote:
> Hi Guanyao,,
>
> Did you check for datapath_leave_event and make sure that you do not
> send commands to invalid datapathid?  Seems like that is the problem.
>
> Regards
> KK
>
> On 4 April 2010 21:41, Guanyao Huang  wrote:
>> Hi
>> Sorry to bother others. My program breaks with datapath leaves the
>> network (HP switch). There are some errors returned by the
>> send_openflow_command, which I dont understand. Is there any document
>> on the meaning of the error?
>>
>>
>> 00079|openflow|WARN:stream: send error: Broken pipe
>> 00080|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
>> f7cae464 : error 32
>> 00081|openflow|WARN:stream: send error: Bad file descriptor
>> 00082|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
>> f7cae464 : error 9
>> 00083|openflow|WARN:stream: send error: Bad file descriptor
>> not successfully opf command: routingMR::send_stats_request()
>> 00084|openflow|WARN:stream: send error: Bad file descriptor
>> not successfully opf command: routingMR::send_stats_request()
>> 00085|openflow|WARN:stream: send error: Bad file descriptor
>> 00086|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
>> f7cae464 : error 9
>> 00087|openflow|WARN:stream: send error: Bad file descriptor
>> 00088|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
>> f7cae464 : error 9
>> 00089|openflow|WARN:stream: send error: Bad file descriptor
>> 00090|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
>> f7cae464 : error 9
>> 00091|openflow|WARN:stream: receive error: Bad file descriptor
>> 00092|nox|WARN:stream: disconnected (Bad file descriptor)
>> Datapath leave, f7:ca:e4:00:00:64
>>
>>
>> In the output above, what are the meaning of error 9 and 32. The
>> source code is simply as:
>>
>> int ofc_ret = send_openflow_command(curr_dpid, &ofm->header, true);
>>        if(ofc_ret) {
>>            VLOG_ERR(lg, "OpenFlowMR::install_flow: flow-mod command to dpid
>> %s : error %d", curr_dpid.string().c_str(), ofc_ret);
>>        }
>>
>> Many thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Need to the error type of send_openflow_command()

2010-04-04 Thread Guanyao Huang
Hi
Sorry to bother others. My program breaks with datapath leaves the
network (HP switch). There are some errors returned by the
send_openflow_command, which I dont understand. Is there any document
on the meaning of the error?


00079|openflow|WARN:stream: send error: Broken pipe
00080|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
f7cae464 : error 32
00081|openflow|WARN:stream: send error: Bad file descriptor
00082|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
f7cae464 : error 9
00083|openflow|WARN:stream: send error: Bad file descriptor
not successfully opf command: routingMR::send_stats_request()
00084|openflow|WARN:stream: send error: Bad file descriptor
not successfully opf command: routingMR::send_stats_request()
00085|openflow|WARN:stream: send error: Bad file descriptor
00086|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
f7cae464 : error 9
00087|openflow|WARN:stream: send error: Bad file descriptor
00088|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
f7cae464 : error 9
00089|openflow|WARN:stream: send error: Bad file descriptor
00090|routingMR|ERR:OpenFlowMR::install_flow: flow-mod command to dpid
f7cae464 : error 9
00091|openflow|WARN:stream: receive error: Bad file descriptor
00092|nox|WARN:stream: disconnected (Bad file descriptor)
Datapath leave, f7:ca:e4:00:00:64


In the output above, what are the meaning of error 9 and 32. The
source code is simply as:

int ofc_ret = send_openflow_command(curr_dpid, &ofm->header, true);
if(ofc_ret) {
VLOG_ERR(lg, "OpenFlowMR::install_flow: flow-mod command to dpid
%s : error %d", curr_dpid.string().c_str(), ofc_ret);
}

Many thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] What will happen when OFPBAC_BAD_OUT_PORT occurs

2010-03-26 Thread Guanyao Huang
Sorry about the misunderstanding. I have solved my problem.

I was trying to understand how to use OFPP_IN_PORT. In my program I
need to to set one host as DPI box, but this host itself will send
packets to the network. So, his packets need to copied and send back
through the same port. I wanted to know whether OFPP_IN_PORT can be
used as flow modification command to setup a rule such that packets
can be sent back. Now I find that it is very simple, just setting
ofp_action_output::port to OFPP_IN_PORT is enough.

Thank you for your kindly help.


On Fri, Mar 26, 2010 at 12:54 PM, Rob Sherwood
 wrote:
> I think you're confusing OFPP_INPORT which is a constant used to send
> packets out the port they came in on with ofp_match->in_port which is
> the way you would match which port an incoming packet came from.  You
> would use openflow_send_command() to send a flow_mod message that had
> the ofp_match structure set to specify the in_port to match on.
>
> Does that help?
>
>
> Also, including the list helps archive some of these answers, so is
> there a reason you did not include the list?
>
> - Rob
> .
>
>
>
> On Fri, Mar 26, 2010 at 9:21 AM, Guanyao Huang  wrote:
>> Hi, sorry to bother you again.
>> When using OFPP_INPORT, can I use it to setup a flow-table rule via
>> openflow_send_command, or, I can only use it by openflow_send_packet.
>>
>> My question is, can one rule in switch use OFPP_INPORT to match
>> certain packets to OUTPUT to the inport?
>>
>> Thanks.
>>
>> On Thu, Mar 4, 2010 at 3:50 PM, Rob Sherwood  
>> wrote:
>>> The more likely explanation is that you tried to sent to output:$port
>>> with where $port == $inport.   To prevent loops, OpenFlow makes you
>>> explicitly use the action output:OFPP_INPORT if you want to send back
>>> out the port a packet came in on.
>>>
>>> Does that help?
>>>
>>> - Rob
>>> .
>>>
>>>
>>>
>>> On Thu, Mar 4, 2010 at 11:24 AM, Guanyao Huang  wrote:
>>>> Hello
>>>> My program shows error of type2 code4. From specification it means
>>>> OFPBAC_BAD_OUT_PORT error.
>>>> I want to know if one simple case is the possible reason.
>>>> Suppose the switch already has one entry for the flow, but now I
>>>> OFPFC_ADD a new entry with different port. Will this lead to the error
>>>> above? Or, the switch will simply delete the existing entry and insert
>>>> the new one. It seems my calculated path will not have a bad port
>>>> which leads to nowhere.
>>>> Thanks.
>>>>
>>>> ___
>>>> nox-dev mailing list
>>>> nox-dev@noxrepo.org
>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>
>>>
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A question regarding Authenticator module

2010-03-12 Thread Guanyao Huang
Sorry.
I dont quite follow your reply below.
Do you mean I just enable AUTH_WITH_ROUTING then the existing routing
module will work? I canot find this AUTH_WITH_ROUTING
What do you mean by "which depends on the routing_module library,
 NOT the sprouting.hh/sprouting.cc component"??

> Finally, in regard to the presence of multiple locations for a given mac
> address.  We found the need for this in certain topologies where a host was
> effectively connected to two distinct openflow ports in the network,
> sending/receiving packets on both using the same mac address.  If this
> doesn't happen in your topologies, and the AUTH_WITH_ROUTING ifdef is
> enabled in authenticator.hh (which depends on the routing_module library,
> NOT the sprouting.hh/sprouting.cc component) then you should not be seeing
> multiple locations, or they should be timing out.
> Feel free to resend any questions I missed.
> Natasha
>>
>> On Fri, Mar 12, 2010 at 1:40 PM, Srini Seetharaman
>>  wrote:
>> > Just to add to Guanyao's observations: I wanted to mention that the
>> > host having two bindings is something we run across often in our
>> > Stanford setup. However, we notice it only when the topology is
>> > changed during runtime.
>> >
>> > Srini.
>> >
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A question regarding Authenticator module

2010-03-12 Thread Guanyao Huang
I think some document of authenticator module is very necessary.
The newest version of authenticator module seems changed a lot, but
the code for routing module remains the same.
For example, why there are many events defined in host_event.hh, why
there are many entries, bindings defined in authenticator.hh.
Normally, given a mac address, or, IP address, what is the API used to
get its datapath?
Without such things, I feel easily get lost in the code.
I guess many people are developing their own module based on flow_in
event. It would be nice if they know how this flow_in event was
generated.

On Fri, Mar 12, 2010 at 1:40 PM, Srini Seetharaman
 wrote:
> Just to add to Guanyao's observations: I wanted to mention that the
> host having two bindings is something we run across often in our
> Stanford setup. However, we notice it only when the topology is
> changed during runtime.
>
> Srini.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A question regarding Authenticator module

2010-03-11 Thread Guanyao Huang
c.
> In the case you describe, both inports get recorded, and based on
> information from link discovery, authenticator can tell which inport is most
> "accurate" (takes the one most upstream).  But again, not sure which version
> of nox you're using.
> 2.   That is not expected behavior and likely just depends on what
> information that authenticator/routing modules have discovered so far.
> Natasha
> On Wed, Mar 3, 2010 at 2:51 PM, Guanyao Huang  wrote:
>>
>> Sorry to bother you again.
>> I have two issues regarding both authenticator module and routing
>> module. Please look at the code in sprouting.cc, set_route() function.
>>
>> 1, The inport is from fi.src_location.location->dpport. Can you
>> explain the structure of the location variable? How it maintains both
>> datapathid and port number?
>>
>> My actual concern is:
>> Sometimes, packets will get broadcasted before a route is calculated.
>> When a broadcasted packet hit another switch, the inport also changed.
>> I understand route.id.src is the real ingress switch, so, the whole
>> procedure is to find a route from the src datapath, not current
>> datapath. But sometimes, because of this, it consistently show "Packet
>> not on route" and freezes there. I guess this is because the
>> controller is always processing at this "Packet not on route" but not
>> continue.
>>
>> 2, Sometimes the egress datapath read from the authenticator module is
>> not the closest one to the dst mac. This makes the flow sent to
>> different datapath other than the correct one. Is this a known bug or
>> is this not important?  Our experiment shows this sometimes matters.
>>
>> Thanks.
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] What will nox do with [Malformed packet]

2010-03-11 Thread Guanyao Huang
I think malformed tcp packets are dropped by authenticator module, but
udp packets will still generate flow_in event.

I run routing and spanning_tree module. I did a simple test to
tcpreplay the truncated packets. All of them generated packet_in
event, which are captured by the control channel.
I added a simple line to sprouting.cc, function set_route():
if(fi.flow.nw_proto==ip_::proto::TCP)
VLOG_DBG(lg, "Broadcasting %"PRIx64" %s",
 fi.datapath_id.as_host(), os.str().c_str());
This let TCP packets be printed out if they are broadcasted (which is
true since there is no path for them in my case).
Then, I find that no TCP truncated packets printed out. If I delete
the if() judgement, this line is printed out.

This shows that malformed tcp packets will not generate flow_in event.
But truncated ICMP and UDP packets donot have such problem.

Thanks.


On Thu, Mar 11, 2010 at 1:37 PM, Martin Casado  wrote:
> I'm not exactly sure what you're doing.  If the openflow headers have become
> corrupted, then the openflow stack will drop the packets without generating
> events.
>
>> Hi
>> Sorry to bother others.
>> My program needs to tcpreplay some packets between switches. Since the
>> trace is from raw IP, I converted them to ethernet packets. However,
>> some of the original packets are truncated, and I found these packets
>> are forwarded but missed.
>> If I tcpreplay them and tcpdump the interface, I saw these packets
>> become [Malformed packet]. My module even didnt capture a flow_in
>> event for these packets.
>> So, I am wondering, where are these packets actually dropped? Are they
>> dropped by IP stack or are they dropped by authenticator module? Our
>> control in nox is above or below IP stack??
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] What will nox do with [Malformed packet]

2010-03-11 Thread Guanyao Huang
Hi
Sorry to bother others.
My program needs to tcpreplay some packets between switches. Since the
trace is from raw IP, I converted them to ethernet packets. However,
some of the original packets are truncated, and I found these packets
are forwarded but missed.
If I tcpreplay them and tcpdump the interface, I saw these packets
become [Malformed packet]. My module even didnt capture a flow_in
event for these packets.
So, I am wondering, where are these packets actually dropped? Are they
dropped by IP stack or are they dropped by authenticator module? Our
control in nox is above or below IP stack??
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] aggregate flow statistics always return 0

2010-03-09 Thread Guanyao Huang
dump-aggregate command means you want to aggregate some field, right?
For example suppose there are 4 flows, two of them have the same dst
IP. Then, dump-aggregate dst_IP will return 2 flows.
Instead, dump-flows is to show all the flows.
So, my question was, does dump-aggregate work properly for all the fields?

On Tue, Mar 9, 2010 at 5:58 PM, Yu-Chieh Chou  wrote:
> Sorry, I did not explain very clearly. I use the command "dpctl
> dump-aggregate" on OpenFlow switch works correctly.
>
> But the aggregate value on NOX component monitor always get zero.
>
>
>
> 2010/3/10 Guanyao Huang 
>>
>> What do you mean by "dpctl dump-aggregate works correctly". My
>> experience is that for some fields it works correctly, for some fields
>> not.
>>
>> On Tue, Mar 9, 2010 at 12:35 AM, Yu-Chieh Chou  wrote:
>> > Hi all, I also use NOX Virtual Test Environment.
>> >
>> > And the aggregate value returns from switch is always zero.
>> >
>> > The dpctl dump-aggregate works correctly.
>> >
>> > Have someone solve this problem?
>> >
>> > Thanks.
>> >
>> > 2010/2/4 Rodrigo Braga 
>> >>
>> >> Hi Guanyao, I have tested dpctl on switch openflow and it show me the
>> >> stats about aggregating flows perfectly.
>> >>
>> >> I used the secchan, dpctl e openflow_mod.ko available in NOX Virtual
>> >> Test
>> >> Environment setup.
>> >>
>> >> But the monitor component continue showing all values with zero :(
>> >>
>> >>
>> >> On Tue, Feb 2, 2010 at 11:32 PM, Guanyao Huang 
>> >> wrote:
>> >>>
>> >>> I guess it depends on whether dpctl dump-aggregate works correctly.
>> >>> My problem with it is that sometimes it can not aggregate flows
>> >>> according to the specified wildcard. I guess this depends on
>> >>> configuration of switches.
>> >>>
>> >>> On Tue, Feb 2, 2010 at 5:57 PM, Rodrigo Braga 
>> >>> wrote:
>> >>> > I have the same problem, did someone solve this problem ??
>> >>> >
>> >>> > My nox version is 0.8
>> >>> >
>> >>> > compiled to openflow 0x97
>> >>> >
>> >>> > thanks
>> >>> >
>> >>> >
>> >>> > On Fri, Jan 15, 2010 at 3:36 AM, MinChi Tseng 
>> >>> > wrote:
>> >>> >>
>> >>> >> I am using monitor component in NOX.
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >>  nox-0.6.0/src/noxcoreapps/examples/monitor.py =
>> >>> >>
>> >>> >> def aggregate_timer(self, dpid):
>> >>> >>
>> >>> >>   flow = ofp_match()
>> >>> >>
>> >>> >>   flow.wildcards = 0x
>> >>> >>
>> >>> >>   self.ctxt.send_aggregate_stats_request(dpid, flow,  0xff)
>> >>> >>
>> >>> >>   self.post_callback(MONITOR_TABLE_PERIOD, lambda :
>> >>> >> self.aggregate_timer(dpid))
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> Thanks,
>> >>> >>
>> >>> >> MinChi
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> Can you paste the code which is doing the query?
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> > No, the OF is get via NOX Virtual Test Environment setup
>> >>> >> > instruction.
>> >>> >>
>> >>> >> > http://noxrepo.org/manual/vm_environment.html
>> >>> >>
>> >>> >> >
>> >>> >>
>> >>> >> > wget http://noxrepo.org/openflow_mod.ko
>> >>> >>
>> >>> >> > wget http://noxrepo.org/dpctl
>> >>> >>
>> >>> >> > wget http://noxrepo.org/secchan
>> >>> >>
>> >>> >> >
>> >>> >>
>> >>> >> >
>> >>> >>
>> >>> >> > MinChi
>> >>> >>
>> >>> >> >
>> >>> &g

Re: [nox-dev] aggregate flow statistics always return 0

2010-03-09 Thread Guanyao Huang
What do you mean by "dpctl dump-aggregate works correctly". My
experience is that for some fields it works correctly, for some fields
not.

On Tue, Mar 9, 2010 at 12:35 AM, Yu-Chieh Chou  wrote:
> Hi all, I also use NOX Virtual Test Environment.
>
> And the aggregate value returns from switch is always zero.
>
> The dpctl dump-aggregate works correctly.
>
> Have someone solve this problem?
>
> Thanks.
>
> 2010/2/4 Rodrigo Braga 
>>
>> Hi Guanyao, I have tested dpctl on switch openflow and it show me the
>> stats about aggregating flows perfectly.
>>
>> I used the secchan, dpctl e openflow_mod.ko available in NOX Virtual Test
>> Environment setup.
>>
>> But the monitor component continue showing all values with zero :(
>>
>>
>> On Tue, Feb 2, 2010 at 11:32 PM, Guanyao Huang 
>> wrote:
>>>
>>> I guess it depends on whether dpctl dump-aggregate works correctly.
>>> My problem with it is that sometimes it can not aggregate flows
>>> according to the specified wildcard. I guess this depends on
>>> configuration of switches.
>>>
>>> On Tue, Feb 2, 2010 at 5:57 PM, Rodrigo Braga 
>>> wrote:
>>> > I have the same problem, did someone solve this problem ??
>>> >
>>> > My nox version is 0.8
>>> >
>>> > compiled to openflow 0x97
>>> >
>>> > thanks
>>> >
>>> >
>>> > On Fri, Jan 15, 2010 at 3:36 AM, MinChi Tseng 
>>> > wrote:
>>> >>
>>> >> I am using monitor component in NOX.
>>> >>
>>> >>
>>> >>
>>> >>  nox-0.6.0/src/noxcoreapps/examples/monitor.py =
>>> >>
>>> >> def aggregate_timer(self, dpid):
>>> >>
>>> >>   flow = ofp_match()
>>> >>
>>> >>   flow.wildcards = 0x
>>> >>
>>> >>   self.ctxt.send_aggregate_stats_request(dpid, flow,  0xff)
>>> >>
>>> >>   self.post_callback(MONITOR_TABLE_PERIOD, lambda :
>>> >> self.aggregate_timer(dpid))
>>> >>
>>> >>
>>> >>
>>> >> Thanks,
>>> >>
>>> >> MinChi
>>> >>
>>> >>
>>> >>
>>> >> Can you paste the code which is doing the query?
>>> >>
>>> >>
>>> >>
>>> >> > No, the OF is get via NOX Virtual Test Environment setup
>>> >> > instruction.
>>> >>
>>> >> > http://noxrepo.org/manual/vm_environment.html
>>> >>
>>> >> >
>>> >>
>>> >> > wget http://noxrepo.org/openflow_mod.ko
>>> >>
>>> >> > wget http://noxrepo.org/dpctl
>>> >>
>>> >> > wget http://noxrepo.org/secchan
>>> >>
>>> >> >
>>> >>
>>> >> >
>>> >>
>>> >> > MinChi
>>> >>
>>> >> >
>>> >>
>>> >> > -Original Message-
>>> >>
>>> >> > From: Martin Casado [mailto:cas...@nicira.com]
>>> >>
>>> >> > Sent: Friday, January 15, 2010 2:34 PM
>>> >>
>>> >> > To: MinChi Tseng
>>> >>
>>> >> > Cc: nox-dev@noxrepo.org
>>> >>
>>> >> > Subject: Re: [nox-dev] aggregate flow statistics always return 0
>>> >>
>>> >> >
>>> >>
>>> >> > Are you using the OF reference code from Stanford?
>>> >>
>>> >> >
>>> >>
>>> >> >
>>> >>
>>> >> >> Hi all,
>>> >>
>>> >> >>
>>> >>
>>> >> >> I am using NOX Virtual Test Environment
>>> >>
>>> >> >>
>>> >>
>>> >> >> The topology is one OpenFlow switch and two hosts.
>>> >>
>>> >> >>
>>> >>
>>> >> >> Host 1 and host2 continually ping each other.
>>> >>
>>> >> >>
>>> >>
>>> >> >> In monitor component, the aggregate statistics always show 0.
>>> >>
>>> >> >>
>>> >>
>>> >> &

Re: [nox-dev] What will happen when OFPBAC_BAD_OUT_PORT occurs

2010-03-04 Thread Guanyao Huang
Thanks for your help. This is the most possible reason, but I still
need to figure out when this occurs..

On Fri, Mar 5, 2010 at 3:50 AM, Rob Sherwood  wrote:
> The more likely explanation is that you tried to sent to output:$port
> with where $port == $inport.   To prevent loops, OpenFlow makes you
> explicitly use the action output:OFPP_INPORT if you want to send back
> out the port a packet came in on.
>
> Does that help?
>
> - Rob
> .
>
>
>
> On Thu, Mar 4, 2010 at 11:24 AM, Guanyao Huang  wrote:
>> Hello
>> My program shows error of type2 code4. From specification it means
>> OFPBAC_BAD_OUT_PORT error.
>> I want to know if one simple case is the possible reason.
>> Suppose the switch already has one entry for the flow, but now I
>> OFPFC_ADD a new entry with different port. Will this lead to the error
>> above? Or, the switch will simply delete the existing entry and insert
>> the new one. It seems my calculated path will not have a bad port
>> which leads to nowhere.
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] What will happen when OFPBAC_BAD_OUT_PORT occurs

2010-03-04 Thread Guanyao Huang
Seems the only explanation is "when you add a flow which forwards
packets to a non-existing port"
I find it from: http://www.openflowswitch.org/wk/index.php/OpenFlow_v1.0.
The flow_mod below seems will not lead to my error.

On Fri, Mar 5, 2010 at 3:24 AM, Guanyao Huang  wrote:
> Hello
> My program shows error of type2 code4. From specification it means
> OFPBAC_BAD_OUT_PORT error.
> I want to know if one simple case is the possible reason.
> Suppose the switch already has one entry for the flow, but now I
> OFPFC_ADD a new entry with different port. Will this lead to the error
> above? Or, the switch will simply delete the existing entry and insert
> the new one. It seems my calculated path will not have a bad port
> which leads to nowhere.
> Thanks.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] What will happen when OFPBAC_BAD_OUT_PORT occurs

2010-03-04 Thread Guanyao Huang
Hello
My program shows error of type2 code4. From specification it means
OFPBAC_BAD_OUT_PORT error.
I want to know if one simple case is the possible reason.
Suppose the switch already has one entry for the flow, but now I
OFPFC_ADD a new entry with different port. Will this lead to the error
above? Or, the switch will simply delete the existing entry and insert
the new one. It seems my calculated path will not have a bad port
which leads to nowhere.
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A question regarding Authenticator module

2010-03-03 Thread Guanyao Huang
Sorry to bother you again.
I have two issues regarding both authenticator module and routing
module. Please look at the code in sprouting.cc, set_route() function.

1, The inport is from fi.src_location.location->dpport. Can you
explain the structure of the location variable? How it maintains both
datapathid and port number?

My actual concern is:
Sometimes, packets will get broadcasted before a route is calculated.
When a broadcasted packet hit another switch, the inport also changed.
I understand route.id.src is the real ingress switch, so, the whole
procedure is to find a route from the src datapath, not current
datapath. But sometimes, because of this, it consistently show "Packet
not on route" and freezes there. I guess this is because the
controller is always processing at this "Packet not on route" but not
continue.

2, Sometimes the egress datapath read from the authenticator module is
not the closest one to the dst mac. This makes the flow sent to
different datapath other than the correct one. Is this a known bug or
is this not important?  Our experiment shows this sometimes matters.

Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] My datapath leaves again (HP network)

2010-03-01 Thread Guanyao Huang
I now use smaller traces and no such problem again. I think it is
because of heavy load. ...
Thanks.

On Mon, Mar 1, 2010 at 10:12 PM, Martin Casado  wrote:
> Actually nevermind, I don't think the HP switch support inband control so
> you must be using out of band.
>
> Another option is to turn off the echo timer in Nox ...
>
>
>> Sorry, my English is poor, what do you mean by "out of band control"? :)
>>
>> On Mon, Mar 1, 2010 at 10:07 PM, Martin Casado  wrote:
>>
>>>
>>> I wonder if this is a problem with lost echo requests under load ...
>>>
>>> Can you set up your environment to use out of band control?
>>>
>>>
>>>>
>>>> My program runs about 15 mins, it processes some traces. Datapath
>>>> leaves at around 12 mins.
>>>> Current CPU load is around 30%, and hit 35% occasionally.
>>>>
>>>> On Mon, Mar 1, 2010 at 9:59 PM, kk yap  wrote:
>>>>
>>>>
>>>>>
>>>>> Just to be blunt.  What is the CPU load of your HP?
>>>>>
>>>>> Regards
>>>>> KK
>>>>>
>>>>> On 1 March 2010 21:42, Guanyao Huang  wrote:
>>>>>
>>>>>
>>>>>>
>>>>>> Which part defines the time interval for this echo request? I guess
>>>>>> enlarger it will temporarily handle my problem.
>>>>>>
>>>>>> On Mon, Mar 1, 2010 at 9:38 PM, kk yap  wrote:
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> Hi Guanyao,
>>>>>>>
>>>>>>> NOX periodic checks if the switch is still alive by sending an echo
>>>>>>> request.  Basically, your switch did not reply.  You should look at
>>>>>>> the tcpdump to see if you can find the echo reply.  If yes, bug
>>>>>>> people
>>>>>>> in this list.  If no, debug your switch.
>>>>>>>
>>>>>>> Regards
>>>>>>> KK
>>>>>>>
>>>>>>> On 1 March 2010 21:34, Guanyao Huang  wrote:
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Hi
>>>>>>>> Sorry to bother others.
>>>>>>>> In my program the datapath leaves network again. This time it seems
>>>>>>>> a
>>>>>>>> little different:
>>>>>>>>
>>>>>>>> 00341|openflow|WARN:stream: no response to inactivity probe after 15
>>>>>>>> seconds, disconnecting
>>>>>>>> 00342|nox|WARN:stream: disconnected (Protocol error)
>>>>>>>> Datapath leave, f7:ca:e4:00:01:90
>>>>>>>> 00343|bindings_storage|ERR:NDB error on get_locnames_cb (ok if
>>>>>>>> transient): Can't find specified row
>>>>>>>> 00344|openflow|WARN:stream: no response to inactivity probe after 15
>>>>>>>> seconds, disconnecting
>>>>>>>> 00345|nox|WARN:stream: disconnected (Protocol error)
>>>>>>>> Datapath leave, f7:ca:e4:00:01:2c
>>>>>>>> 00346|openflow|WARN:stream: no response to inactivity probe after 15
>>>>>>>> seconds, disconnecting
>>>>>>>> 00347|nox|WARN:stream: disconnected (Protocol error)
>>>>>>>> Datapath leave, f7:ca:e4:00:00:c8
>>>>>>>>
>>>>>>>>
>>>>>>>> I am wondering what is this 15 second probe.
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>> ___
>>>>>>>> nox-dev mailing list
>>>>>>>> nox-dev@noxrepo.org
>>>>>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>
>>>> ___
>>>> nox-dev mailing list
>>>> nox-dev@noxrepo.org
>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>
>>>>
>>>
>>>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] My datapath leaves again (HP network)

2010-03-01 Thread Guanyao Huang
My program runs about 15 mins, it processes some traces. Datapath
leaves at around 12 mins.
Current CPU load is around 30%, and hit 35% occasionally.

On Mon, Mar 1, 2010 at 9:59 PM, kk yap  wrote:
> Just to be blunt.  What is the CPU load of your HP?
>
> Regards
> KK
>
> On 1 March 2010 21:42, Guanyao Huang  wrote:
>> Which part defines the time interval for this echo request? I guess
>> enlarger it will temporarily handle my problem.
>>
>> On Mon, Mar 1, 2010 at 9:38 PM, kk yap  wrote:
>>> Hi Guanyao,
>>>
>>> NOX periodic checks if the switch is still alive by sending an echo
>>> request.  Basically, your switch did not reply.  You should look at
>>> the tcpdump to see if you can find the echo reply.  If yes, bug people
>>> in this list.  If no, debug your switch.
>>>
>>> Regards
>>> KK
>>>
>>> On 1 March 2010 21:34, Guanyao Huang  wrote:
>>>> Hi
>>>> Sorry to bother others.
>>>> In my program the datapath leaves network again. This time it seems a
>>>> little different:
>>>>
>>>> 00341|openflow|WARN:stream: no response to inactivity probe after 15
>>>> seconds, disconnecting
>>>> 00342|nox|WARN:stream: disconnected (Protocol error)
>>>> Datapath leave, f7:ca:e4:00:01:90
>>>> 00343|bindings_storage|ERR:NDB error on get_locnames_cb (ok if
>>>> transient): Can't find specified row
>>>> 00344|openflow|WARN:stream: no response to inactivity probe after 15
>>>> seconds, disconnecting
>>>> 00345|nox|WARN:stream: disconnected (Protocol error)
>>>> Datapath leave, f7:ca:e4:00:01:2c
>>>> 00346|openflow|WARN:stream: no response to inactivity probe after 15
>>>> seconds, disconnecting
>>>> 00347|nox|WARN:stream: disconnected (Protocol error)
>>>> Datapath leave, f7:ca:e4:00:00:c8
>>>>
>>>>
>>>> I am wondering what is this 15 second probe.
>>>>
>>>> Thanks.
>>>>
>>>> ___
>>>> nox-dev mailing list
>>>> nox-dev@noxrepo.org
>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>
>>>
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] My datapath leaves again (HP network)

2010-03-01 Thread Guanyao Huang
Which part defines the time interval for this echo request? I guess
enlarger it will temporarily handle my problem.

On Mon, Mar 1, 2010 at 9:38 PM, kk yap  wrote:
> Hi Guanyao,
>
> NOX periodic checks if the switch is still alive by sending an echo
> request.  Basically, your switch did not reply.  You should look at
> the tcpdump to see if you can find the echo reply.  If yes, bug people
> in this list.  If no, debug your switch.
>
> Regards
> KK
>
> On 1 March 2010 21:34, Guanyao Huang  wrote:
>> Hi
>> Sorry to bother others.
>> In my program the datapath leaves network again. This time it seems a
>> little different:
>>
>> 00341|openflow|WARN:stream: no response to inactivity probe after 15
>> seconds, disconnecting
>> 00342|nox|WARN:stream: disconnected (Protocol error)
>> Datapath leave, f7:ca:e4:00:01:90
>> 00343|bindings_storage|ERR:NDB error on get_locnames_cb (ok if
>> transient): Can't find specified row
>> 00344|openflow|WARN:stream: no response to inactivity probe after 15
>> seconds, disconnecting
>> 00345|nox|WARN:stream: disconnected (Protocol error)
>> Datapath leave, f7:ca:e4:00:01:2c
>> 00346|openflow|WARN:stream: no response to inactivity probe after 15
>> seconds, disconnecting
>> 00347|nox|WARN:stream: disconnected (Protocol error)
>> Datapath leave, f7:ca:e4:00:00:c8
>>
>>
>> I am wondering what is this 15 second probe.
>>
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] My datapath leaves again (HP network)

2010-03-01 Thread Guanyao Huang
Hi
Sorry to bother others.
In my program the datapath leaves network again. This time it seems a
little different:

00341|openflow|WARN:stream: no response to inactivity probe after 15
seconds, disconnecting
00342|nox|WARN:stream: disconnected (Protocol error)
Datapath leave, f7:ca:e4:00:01:90
00343|bindings_storage|ERR:NDB error on get_locnames_cb (ok if
transient): Can't find specified row
00344|openflow|WARN:stream: no response to inactivity probe after 15
seconds, disconnecting
00345|nox|WARN:stream: disconnected (Protocol error)
Datapath leave, f7:ca:e4:00:01:2c
00346|openflow|WARN:stream: no response to inactivity probe after 15
seconds, disconnecting
00347|nox|WARN:stream: disconnected (Protocol error)
Datapath leave, f7:ca:e4:00:00:c8


I am wondering what is this 15 second probe.

Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A quick question about topology module

2010-02-26 Thread Guanyao Huang
My bad. My code was wrong. Everything is maintained. Thanks.

On Fri, Feb 26, 2010 at 12:34 PM, kk yap  wrote:
> Hi Guanyao,
>
> Can you elaborate?  struct DpInfo is paired with a datapathid using a
> hash_map and contained the destination datapathid using another
> hash_map.  Finally that points to LinkSet that is a lis to src and dst
> ports.  That information is preserved from what I can see.
>
> Regards
> KK
>
>
> On 26 February 2010 12:13, Guanyao Huang  wrote:
>> Hi
>> I find that the topology module doesnt support the case where there
>> are two links between two switches. But Discovery module support this
>> situation. Is there a particular reason for this?
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] A quick question about topology module

2010-02-26 Thread Guanyao Huang
Hi
I find that the topology module doesnt support the case where there
are two links between two switches. But Discovery module support this
situation. Is there a particular reason for this?
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] When will datapath leave network?

2010-02-19 Thread Guanyao Huang
The error messsages below are for the HP virtual switches. The NEC
switch does leave the network, but shows flow table is full.

On Fri, Feb 19, 2010 at 5:17 PM, Guanyao Huang  wrote:
> Hello
> I am running on a topology of 9 switches. It uses both HP switch and
> NEC switch. What is the meaning of the following error? Is it the
> controller connection breaking out?
>
> When this occurs, I remember the number of entries is less than 1500,
> actually around 800 for HP. What are the possible reasons forcing HP
> switches to leave? The CPU of controller? Is there any limit on the
> number of entries per virtual switch (per vlan)?
>
> 00265|openflow|WARN:stream: send error: Broken pipe
> 00266|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with
> 32:Broken pipe.
> 00267|openflow|WARN:stream: send error: Bad file descriptor
> 00268|routingMR|ERR:Send packet to dp:f7cae400012c failed with 9:Bad
> file descriptor.
> 00269|openflow|WARN:stream: receive error: Bad file descriptor
> 00270|nox|WARN:stream: disconnected (Bad file descriptor)
> Datapath leave, f7:ca:e4:00:01:2c
> 00271|nox|ERR:no datapath with id f7cae400012c registered at nox
> 00272|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with 3:No
> such process.
> 00273|nox|ERR:no datapath with id f7cae400012c registered at nox
> 00274|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with 3:No
> such process.
>
> =
> On the NEC switch, it also occasionally shows error type 3 code 0,
> meaning the flow table is full, but it seems to me not full, around
> 1000 or less. Is there a limit on the number of entries per virtual
> switch (not physical switch)?
>
> Thanks.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] When will datapath leave network?

2010-02-19 Thread Guanyao Huang
Hello
I am running on a topology of 9 switches. It uses both HP switch and
NEC switch. What is the meaning of the following error? Is it the
controller connection breaking out?

When this occurs, I remember the number of entries is less than 1500,
actually around 800 for HP. What are the possible reasons forcing HP
switches to leave? The CPU of controller? Is there any limit on the
number of entries per virtual switch (per vlan)?

00265|openflow|WARN:stream: send error: Broken pipe
00266|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with
32:Broken pipe.
00267|openflow|WARN:stream: send error: Bad file descriptor
00268|routingMR|ERR:Send packet to dp:f7cae400012c failed with 9:Bad
file descriptor.
00269|openflow|WARN:stream: receive error: Bad file descriptor
00270|nox|WARN:stream: disconnected (Bad file descriptor)
Datapath leave, f7:ca:e4:00:01:2c
00271|nox|ERR:no datapath with id f7cae400012c registered at nox
00272|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with 3:No
such process.
00273|nox|ERR:no datapath with id f7cae400012c registered at nox
00274|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with 3:No
such process.

=
On the NEC switch, it also occasionally shows error type 3 code 0,
meaning the flow table is full, but it seems to me not full, around
1000 or less. Is there a limit on the number of entries per virtual
switch (not physical switch)?

Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Inquiry a race condition of openflow switches

2010-02-08 Thread Guanyao Huang
Right. I understand. We want to flow_cmd B and C before sending back
first packet.
Thanks.

On Mon, Feb 8, 2010 at 8:19 PM, kk yap  wrote:
> Hi Guanyao,
>
> I do not understand
>
> "I think to guarantee flow_mod be set up for every switch, it is better
> to install in the initial order, that means, the first switch"
>
> In that case, the second packet-in will still occur.  Wouldn't it?
> Imagine route A-B-C, and we send the flow_mod to A first.  Then B
> will/might see the packet-in.
>
> My suggestion for the guarantee is to send to B and C with a barrier
> function it.  Once both barrier function returns, we install A.  That
> way, we are sure B and C has the entries before sending the flow_mod
> to A.
>
> Hope I am clear.
>
> Regards
> KK
>
> On 8 February 2010 19:39, Guanyao Huang  wrote:
>> I heard this from my supervisor. I also think this is not resolved,
>> because it seems hard to resolve this.
>> I think to guarantee flow_mod be set up for every switch, it is better
>> to install in the initial order, that means, the first switch
>> installed first, because the packet will hit in this order.
>> I think this is unresolved, because I occasionally saw this happens. I
>> guess the only thing we can do is to handle new flow_in event.
>>
>> On Mon, Feb 8, 2010 at 7:10 PM, kk yap  wrote:
>>> Hi Guanyao,
>>>
>>> From what I know this is not resolved.  Do you recall where you heard
>>> that this is resolved in NOX 0.5?
>>>
>>> I put in a component in NOX 0.6 (not available publicly) to install
>>> the route/tree in reverse order, i.e., destination first.  This is not
>>> foolproof either, since there is no guarantees on the flow_mod will
>>> reach the switch in that order.  Just does better than the current
>>> order of installation.
>>>
>>> There exists a solution that totally removes the problem, but it adds
>>> an RTT delay.  Basically you can (in theory) do a barrier function for
>>> each flow_mod and wait for all the replies before putting the flow_mod
>>> to the source switch.
>>>
>>> Regards
>>> KK
>>>
>>> On 8 February 2010 14:33, Guanyao Huang  wrote:
>>>> Hi
>>>> Sorry to bother others.
>>>> In order to establish packet forwarding between switches, the rule
>>>> should be sent to switch before the first packet is sent back. The
>>>> race condition is the packet is sent back and even forwarded by the
>>>> first switch, but it doesnt find a rule in the second switch although
>>>> openflow command is already sent. I was told that conditions like this
>>>> were resolved after nox 0.5. My version is 0.5.0-full-beta, but I
>>>> still find this happens occasionally. Is there any other requirement
>>>> on the version? Also, how did you gaurrantee these conditions are
>>>> resolved. Did you try to control the delay of the packets on wire?
>>>> Thanks.
>>>>
>>>> ___
>>>> nox-dev mailing list
>>>> nox-dev@noxrepo.org
>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>
>>>
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Inquiry a race condition of openflow switches

2010-02-08 Thread Guanyao Huang
I heard this from my supervisor. I also think this is not resolved,
because it seems hard to resolve this.
I think to guarantee flow_mod be set up for every switch, it is better
to install in the initial order, that means, the first switch
installed first, because the packet will hit in this order.
I think this is unresolved, because I occasionally saw this happens. I
guess the only thing we can do is to handle new flow_in event.

On Mon, Feb 8, 2010 at 7:10 PM, kk yap  wrote:
> Hi Guanyao,
>
> From what I know this is not resolved.  Do you recall where you heard
> that this is resolved in NOX 0.5?
>
> I put in a component in NOX 0.6 (not available publicly) to install
> the route/tree in reverse order, i.e., destination first.  This is not
> foolproof either, since there is no guarantees on the flow_mod will
> reach the switch in that order.  Just does better than the current
> order of installation.
>
> There exists a solution that totally removes the problem, but it adds
> an RTT delay.  Basically you can (in theory) do a barrier function for
> each flow_mod and wait for all the replies before putting the flow_mod
> to the source switch.
>
> Regards
> KK
>
> On 8 February 2010 14:33, Guanyao Huang  wrote:
>> Hi
>> Sorry to bother others.
>> In order to establish packet forwarding between switches, the rule
>> should be sent to switch before the first packet is sent back. The
>> race condition is the packet is sent back and even forwarded by the
>> first switch, but it doesnt find a rule in the second switch although
>> openflow command is already sent. I was told that conditions like this
>> were resolved after nox 0.5. My version is 0.5.0-full-beta, but I
>> still find this happens occasionally. Is there any other requirement
>> on the version? Also, how did you gaurrantee these conditions are
>> resolved. Did you try to control the delay of the packets on wire?
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Inquiry a race condition of openflow switches

2010-02-08 Thread Guanyao Huang
Hi
Sorry to bother others.
In order to establish packet forwarding between switches, the rule
should be sent to switch before the first packet is sent back. The
race condition is the packet is sent back and even forwarded by the
first switch, but it doesnt find a rule in the second switch although
openflow command is already sent. I was told that conditions like this
were resolved after nox 0.5. My version is 0.5.0-full-beta, but I
still find this happens occasionally. Is there any other requirement
on the version? Also, how did you gaurrantee these conditions are
resolved. Did you try to control the delay of the packets on wire?
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] A question regarding Authenticator module

2010-02-04 Thread Guanyao Huang
Hello
Sorry to bother others.
I can't understand the code of authenticator module, but I need a small favor.
I understand that if one mac is dst address, this mac address should
first be authenticated. After a while, this mac will timeout and
expire.
My current program wants to extend this timeout session. In this
program it first sends ping packets to authenticate dst mac (by ICMP
reply), and then tcpreplay some traces. If it expires quickly later
traces can not be redirected but only broadcasted to dst mac.
So, I only want to know which variable defines this interval. I tried
a few and it works. But I still need to know which variable is the key
factor.
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] What can I do with datapath leave

2010-02-03 Thread Guanyao Huang
I am using HP switch with openflow 0.8.9

On Wed, Feb 3, 2010 at 1:02 PM, Ben Pfaff  wrote:
> Normally the OpenFlow reference implementation and Open vSwitch log
> a message when a connection closes.
>
> On Wed, Feb 03, 2010 at 12:59:16PM -0800, Guanyao Huang wrote:
>> Hi
>> What are the logs you were talking about?
>> I saw the following messages. The CPU is only around 30%.
>>
>> 00038|openflow|WARN:stream: send error: Broken pipe
>> 00039|routingMR|ERR:Add flow entry to dp:f7cae464 failed with
>> 32:Broken pipe.
>> 00040|openflow|WARN:stream: send error: Bad file descriptor
>> 00041|routingMR|ERR:Send packet to dp:f7cae464 failed with 9:Bad
>> file descriptor.
>> 00042|openflow|WARN:stream: send error: Broken pipe
>> 00043|routingMR|ERR:Add flow entry to dp:f7cae40001f4 failed with
>> 32:Broken pipe.
>> 00044|openflow|WARN:stream: send error: Bad file descriptor
>> 00045|routingMR|ERR:Send packet to dp:f7cae40001f4 failed with 9:Bad
>> file descriptor.
>> 00046|openflow|WARN:stream: send error: Broken pipe
>> 00047|routingMR|ERR:Add flow entry to dp:f7cae4c8 failed with
>> 32:Broken pipe.
>> 00048|openflow|WARN:stream: send error: Bad file descriptor
>> 00049|routingMR|ERR:Send packet to dp:f7cae4c8 failed with 9:Bad
>> file descriptor.
>> 00050|openflow|WARN:stream: send error: Broken pipe
>> 00051|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with
>> 32:Broken pipe.
>> 00052|openflow|WARN:stream: send error: Bad file descriptor
>> 00053|routingMR|ERR:Send packet to dp:f7cae400012c failed with 9:Bad
>> file descriptor.
>> 00054|openflow|WARN:stream: send error: Broken pipe
>> 00055|routingMR|ERR:Add flow entry to dp:f7cae4000190 failed with
>> 32:Broken pipe.
>> 00056|openflow|WARN:stream: send error: Bad file descriptor
>> 00057|routingMR|ERR:Send packet to dp:f7cae4000190 failed with 9:Bad
>> file descriptor.
>> 00058|openflow|WARN:stream: receive error: Bad file descriptor
>> 00059|nox|WARN:stream: disconnected (Bad file descriptor)
>> 00060|openflow|WARN:stream: receive error: Bad file descriptor
>> 00061|nox|WARN:stream: disconnected (Bad file descriptor)
>> 00062|openflow|WARN:stream: receive error: Bad file descriptor
>> 00063|nox|WARN:stream: disconnected (Bad file descriptor)
>> 00064|openflow|WARN:stream: receive error: Bad file descriptor
>> 00065|nox|WARN:stream: disconnected (Bad file descriptor)
>> 00066|openflow|WARN:stream: receive error: Bad file descriptor
>> 00067|nox|WARN:stream: disconnected (Bad file descriptor)
>> Datapath leave, f7:ca:e4:00:00:64
>> Datapath leave, f7:ca:e4:00:01:f4
>> Datapath leave, f7:ca:e4:00:00:c8
>> Datapath leave, f7:ca:e4:00:01:2c
>> Datapath leave, f7:ca:e4:00:01:90
>>
>>
>> On Tue, Feb 2, 2010 at 9:33 PM, Ben Pfaff  wrote:
>> > On Tue, Feb 02, 2010 at 09:23:52PM -0800, Guanyao Huang wrote:
>> >> I am wondering what is the usual cause for a datapath to proactively
>> >> leaves the network. Is it because it is overburdened or some probe
>> >> messages time-out?
>> >
>> > The easiest way to find out is to look at the logs on the switches.
>> >
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] What can I do with datapath leave

2010-02-03 Thread Guanyao Huang
Hi
What are the logs you were talking about?
I saw the following messages. The CPU is only around 30%.

00038|openflow|WARN:stream: send error: Broken pipe
00039|routingMR|ERR:Add flow entry to dp:f7cae464 failed with
32:Broken pipe.
00040|openflow|WARN:stream: send error: Bad file descriptor
00041|routingMR|ERR:Send packet to dp:f7cae464 failed with 9:Bad
file descriptor.
00042|openflow|WARN:stream: send error: Broken pipe
00043|routingMR|ERR:Add flow entry to dp:f7cae40001f4 failed with
32:Broken pipe.
00044|openflow|WARN:stream: send error: Bad file descriptor
00045|routingMR|ERR:Send packet to dp:f7cae40001f4 failed with 9:Bad
file descriptor.
00046|openflow|WARN:stream: send error: Broken pipe
00047|routingMR|ERR:Add flow entry to dp:f7cae4c8 failed with
32:Broken pipe.
00048|openflow|WARN:stream: send error: Bad file descriptor
00049|routingMR|ERR:Send packet to dp:f7cae4c8 failed with 9:Bad
file descriptor.
00050|openflow|WARN:stream: send error: Broken pipe
00051|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with
32:Broken pipe.
00052|openflow|WARN:stream: send error: Bad file descriptor
00053|routingMR|ERR:Send packet to dp:f7cae400012c failed with 9:Bad
file descriptor.
00054|openflow|WARN:stream: send error: Broken pipe
00055|routingMR|ERR:Add flow entry to dp:f7cae4000190 failed with
32:Broken pipe.
00056|openflow|WARN:stream: send error: Bad file descriptor
00057|routingMR|ERR:Send packet to dp:f7cae4000190 failed with 9:Bad
file descriptor.
00058|openflow|WARN:stream: receive error: Bad file descriptor
00059|nox|WARN:stream: disconnected (Bad file descriptor)
00060|openflow|WARN:stream: receive error: Bad file descriptor
00061|nox|WARN:stream: disconnected (Bad file descriptor)
00062|openflow|WARN:stream: receive error: Bad file descriptor
00063|nox|WARN:stream: disconnected (Bad file descriptor)
00064|openflow|WARN:stream: receive error: Bad file descriptor
00065|nox|WARN:stream: disconnected (Bad file descriptor)
00066|openflow|WARN:stream: receive error: Bad file descriptor
00067|nox|WARN:stream: disconnected (Bad file descriptor)
Datapath leave, f7:ca:e4:00:00:64
Datapath leave, f7:ca:e4:00:01:f4
Datapath leave, f7:ca:e4:00:00:c8
Datapath leave, f7:ca:e4:00:01:2c
Datapath leave, f7:ca:e4:00:01:90


On Tue, Feb 2, 2010 at 9:33 PM, Ben Pfaff  wrote:
> On Tue, Feb 02, 2010 at 09:23:52PM -0800, Guanyao Huang wrote:
>> I am wondering what is the usual cause for a datapath to proactively
>> leaves the network. Is it because it is overburdened or some probe
>> messages time-out?
>
> The easiest way to find out is to look at the logs on the switches.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] What can I do with datapath leave

2010-02-02 Thread Guanyao Huang
Hello
Sorry to bother others. My program is redirecting traffic of 5
switches. Each switch tcpreplay a trace with speed=0.01mbps. There are
at maximum 400 flow entries per switch. This is very small. However,
the program shows some datapath leaves:

00016|openflow|WARN:stream: connection closed by peer
00017|nox|WARN:stream: connection closed by peer
Datapath leave, f7:ca:e4:00:00:64
00018|nox|ERR:no datapath with id f7cae464 registered at nox
not successfully opf command: routingMR::send_stats_request()
00019|nox|ERR:no datapath with id f7cae464 registered at nox
not successfully opf command: routingMR::send_stats_request()
00020|bindings_storage|ERR:NDB error on get_locnames_cb (ok if
transient): Can't find specified row

I am wondering what is the usual cause for a datapath to proactively
leaves the network. Is it because it is overburdened or some probe
messages time-out?
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Inquiry about counters of openflow switches

2010-02-02 Thread Guanyao Huang
Hello
Sorry to bother others.
My program is to redirect flows according to some metric in a topology
of loops, 5 switches. I need to accurately query flow sizes from
counters. For one flow, I will query its size from the egress switch.
I find that:
1, Querying sizes from the ingress switch has many problems, because
you have no idea whether the first packet will update the counter.
Although the first packet is sent to the outport directly, sometimes
it still update the counter, sometimes it will not. I am wondering how
can it update the counter if it is sent to the outport directly from
the controller.
2, Querying egress switch sometimes has the same problem, but it is
more stable. Occasionally (with small probability), a packet gets
through the switch without updating the counter (Because I saw no
flow_in event is generated). I am wondering what are the possible
reasions for this.
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] aggregate flow statistics always return 0

2010-02-02 Thread Guanyao Huang
I guess it depends on whether dpctl dump-aggregate works correctly.
My problem with it is that sometimes it can not aggregate flows
according to the specified wildcard. I guess this depends on
configuration of switches.

On Tue, Feb 2, 2010 at 5:57 PM, Rodrigo Braga  wrote:
> I have the same problem, did someone solve this problem ??
>
> My nox version is 0.8
>
> compiled to openflow 0x97
>
> thanks
>
>
> On Fri, Jan 15, 2010 at 3:36 AM, MinChi Tseng  wrote:
>>
>> I am using monitor component in NOX.
>>
>>
>>
>>  nox-0.6.0/src/noxcoreapps/examples/monitor.py =
>>
>> def aggregate_timer(self, dpid):
>>
>>   flow = ofp_match()
>>
>>   flow.wildcards = 0x
>>
>>   self.ctxt.send_aggregate_stats_request(dpid, flow,  0xff)
>>
>>   self.post_callback(MONITOR_TABLE_PERIOD, lambda :
>> self.aggregate_timer(dpid))
>>
>>
>>
>> Thanks,
>>
>> MinChi
>>
>>
>>
>> Can you paste the code which is doing the query?
>>
>>
>>
>> > No, the OF is get via NOX Virtual Test Environment setup instruction.
>>
>> > http://noxrepo.org/manual/vm_environment.html
>>
>> >
>>
>> > wget http://noxrepo.org/openflow_mod.ko
>>
>> > wget http://noxrepo.org/dpctl
>>
>> > wget http://noxrepo.org/secchan
>>
>> >
>>
>> >
>>
>> > MinChi
>>
>> >
>>
>> > -Original Message-
>>
>> > From: Martin Casado [mailto:cas...@nicira.com]
>>
>> > Sent: Friday, January 15, 2010 2:34 PM
>>
>> > To: MinChi Tseng
>>
>> > Cc: nox-dev@noxrepo.org
>>
>> > Subject: Re: [nox-dev] aggregate flow statistics always return 0
>>
>> >
>>
>> > Are you using the OF reference code from Stanford?
>>
>> >
>>
>> >
>>
>> >> Hi all,
>>
>> >>
>>
>> >> I am using NOX Virtual Test Environment
>>
>> >>
>>
>> >> The topology is one OpenFlow switch and two hosts.
>>
>> >>
>>
>> >> Host 1 and host2 continually ping each other.
>>
>> >>
>>
>> >> In monitor component, the aggregate statistics always show 0.
>>
>> >>
>>
>> >> But, if I dump the aggregate statistics on OpenFlow switch, OpenFlow
>>
>> >> switch did print aggregate statistics which is non-zero.
>>
>> >>
>>
>> >> My question is why OpenFlow switch always returned 0 for aggregate
>>
>> >> stats to NOX.
>>
>> >>
>>
>> >> OpenFlow version is 0.8.9~1
>>
>> >>
>>
>> >> NOX version is 0.6.0
>>
>> >>
>>
>> >> On NOX, I issued: *./nox_core -v -i ptcp:2525 pyswitch monitor*
>>
>> >>
>>
>> >> On OpenFlow, I issued: *./secchan nl:0 tcp:10.0.2.2:2525 &*
>>
>> >>
>>
>> >> = some NOX log message
>>
>> >>
>>
>> >> 00140|openflow-event|DBG:received stats reply from 002320c72f83
>>
>> >>
>>
>> >> Table stats in from datapath 00:23:20:c7:2f:83
>>
>> >>
>>
>> >> hash2 : 4
>>
>> >>
>>
>> >> linear : 0
>>
>> >>
>>
>> >> 00141|openflow-event|DBG:received stats reply from 002320c72f83
>>
>> >>
>>
>> >> Port stats in from datapath 00:23:20:c7:2f:83
>>
>> >>
>>
>> >> 0 : 167
>>
>> >>
>>
>> >> 1 : 165
>>
>> >>
>>
>> >> 00142|openflow-event|DBG:received stats reply from 002320c72f83
>>
>> >>
>>
>> >> *Aggregate stats in from datapath 00:23:20:c7:2f:83*
>>
>> >>
>>
>> >> * {'packet_count': 0L, 'byte_count': 0L, 'flow_count': 0L}*
>>
>> >>
>>
>> >> 00143|openflow-event|DBG:received stats reply from 002320c72f83
>>
>> >>
>>
>> >> Table stats in from datapath 00:23:20:c7:2f:83
>>
>> >>
>>
>> >> hash2 : 4
>>
>> >>
>>
>> >> linear : 0
>>
>> >>
>>
>> >> 00144|openflow-event|DBG:received stats reply from 002320c72f83
>>
>> >>
>>
>> >> Port stats in from datapath 00:23:20:c7:2f:83
>>
>> >>
>>
>> >> 0 : 173
>>
>> >>
>>
>> >> 1 : 171
>>
>> >>
>>
>> >> 00145|openflow-event|DBG:received stats reply from 002320c72f83
>>
>> >>
>>
>> >> *Aggregate stats in from datapath 00:23:20:c7:2f:83*
>>
>> >>
>>
>> >> * {'packet_count': 0L, 'byte_count': 0L, 'flow_count': 0L}*
>>
>> >>
>>
>> >> * *
>>
>> >>
>>
>> >>  dump aggregate statistics from Openflow ==
>>
>> >>
>>
>> >> hda:/cdrom# *./dpctl dump-aggregate nl:0*
>>
>> >>
>>
>> >> stats_reply (xid=0xbf8b2f94): flags=none type=2(aggregate)
>>
>> >>
>>
>> >> *packet_count=310 byte_count=30380 flow_count=4*
>>
>> >>
>>
>> >> hda:/cdrom# *./dpctl dump-aggregate nl:0*
>>
>> >>
>>
>> >> stats_reply (xid=0xe7b9f769): flags=none type=2(aggregate)
>>
>> >>
>>
>> >> *packet_count=318 byte_count=31164 flow_count=4*
>>
>> >>
>>
>> >> * *
>>
>> >>
>>
>> >> * *
>>
>> >>
>>
>> >> Thanks,
>>
>> >>
>>
>> >> MinChi
>>
>> >>
>>
>> >>
>> >> 
>>
>> >>
>>
>> >> ___
>>
>> >> nox-dev mailing list
>>
>> >> nox-dev@noxrepo.org
>>
>> >> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>> >>
>>
>> >>
>>
>> >
>>
>> >
>>
>>
>>
>> -Original Message-
>> From: Martin Casado [mailto:cas...@nicira.com]
>> Sent: Friday, January 15, 2010 3:16 PM
>> To: MinChi Tseng
>> Cc: nox-dev@noxrepo.org
>> Subject: Re: [nox-dev] aggregate flow statistics always return 0
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxre

Re: [nox-dev] [openflow-discuss] One question regarding byte number, another one regarding ./dpctl dump-flows entries

2010-01-27 Thread Guanyao Huang
You are right. I double check the traces.
1, 4 byte is checksum.
2, The pcap traces are actually broadcasted to another end, so, there
is no flow table. But if I ping first, the end host can authenticate
the dst mac, therefore a route can be set up for later coming pcap
traces.
These are not big issues. Thanks for your reply.

On Wed, Jan 27, 2010 at 1:54 PM, Dan Talayco  wrote:
> Hi Guanyao--
>
> For (1), I expect that the CRC is counted in the stats on the
> switch, but not by pcap.  It is a 4 byte "checksum" (actually,
> cyclical redundancy check) attached at the L2 layer.  This is
> a frequent problem with counting bytes on Ethernet switches.
>
> I'm not sure about (2).  Flows expire and it can sometimes be
> hard to know what's there when a packet hits the switch.  It
> could also be something particular about your hardware setup.
> What hardware are you using?
>
> -Dan
>
> On 1/26/10 1:09 PM, Guanyao Huang wrote:
>>
>> Hi
>> I am running on my own nox module on a topology of 5 switches. I find
>> two phenomena:
>>
>> 1, The byte number of every packet read from statistics is always 4
>> bytes larger than the real size.
>> If pcap shows the packet is of size N,  ./dpctl dump-flows will show a
>> size of N+4. So, if we query statistics, it is also N+4. I want to
>> know why there is a difference of 4?
>>
>> 2, I found that sometimes packets can also get redirected without an
>> entry in flow table, or, the switch has a bug to show the correct flow
>> table.
>> When I tcpreplay from one host to another one, packets get redirected
>> (tcpdump shows so), but  ./dpctl dump-flows shows no entry. Even if
>> the flow is so short to get counted as 0 size (first packet get lost),
>> an entry should still exist.
>> However, if I ping between these two hosts and then tcpreplay, the
>> entries will show correctly.
>> Is there any possible reason why flows get redirected but an entry is
>> not there?
>>
>> Many thanks.
>> ___
>> openflow-discuss mailing list
>> openflow-disc...@lists.stanford.edu
>> https://mailman.stanford.edu/mailman/listinfo/openflow-discuss
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] One question regarding byte number, another one regarding ./dpctl dump-flows entries

2010-01-26 Thread Guanyao Huang
Hi
I am running on my own nox module on a topology of 5 switches. I find
two phenomena:

1, The byte number of every packet read from statistics is always 4
bytes larger than the real size.
If pcap shows the packet is of size N,  ./dpctl dump-flows will show a
size of N+4. So, if we query statistics, it is also N+4. I want to
know why there is a difference of 4?

2, I found that sometimes packets can also get redirected without an
entry in flow table, or, the switch has a bug to show the correct flow
table.
When I tcpreplay from one host to another one, packets get redirected
(tcpdump shows so), but  ./dpctl dump-flows shows no entry. Even if
the flow is so short to get counted as 0 size (first packet get lost),
an entry should still exist.
However, if I ping between these two hosts and then tcpreplay, the
entries will show correctly.
Is there any possible reason why flows get redirected but an entry is
not there?

Many thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] aggregated flow statistics doesnt support nw_src and nw_dst option.

2010-01-22 Thread Guanyao Huang
Sorry, I was saying toroki switch and NEC switch, not sure about HP switch.

On Fri, Jan 22, 2010 at 3:04 PM, Guanyao Huang  wrote:
> Hi
> I have two questions.
> 1, why have people developed both individual flow statistics query and
> aggregated flow statistics query, since both of them have wildcard to
> aggregate flows.
> My supervisor suggested that for individual flow statistics query, if
> one flow in flow table is matched, then the count value will be
> returned, regardless of other possible matches. Is this true?
>
> 2, For the aggregated flow statistics query, there seems to have bugs
> on both Toroki and HP switches.
> When I specify nw_src and nw_dst to be some values, the switch will
> ignore this and return all flow statistics based on other fields.
> Later I find that dpctl dump-aggregate will have the same result.
> Basically, suppose there are 4 flows in the flow table with only 2 of
> them have desired IP address. If "dpctl dump-aggregate switchname
> nw_src=xx.xx.xx.xx", all the 4 flows will be matched. For other fields
> such as dl_dst, dl_src, in_port, etc, it matches correctly.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] aggregated flow statistics doesnt support nw_src and nw_dst option.

2010-01-22 Thread Guanyao Huang
Hi
I have two questions.
1, why have people developed both individual flow statistics query and
aggregated flow statistics query, since both of them have wildcard to
aggregate flows.
My supervisor suggested that for individual flow statistics query, if
one flow in flow table is matched, then the count value will be
returned, regardless of other possible matches. Is this true?

2, For the aggregated flow statistics query, there seems to have bugs
on both Toroki and HP switches.
When I specify nw_src and nw_dst to be some values, the switch will
ignore this and return all flow statistics based on other fields.
Later I find that dpctl dump-aggregate will have the same result.
Basically, suppose there are 4 flows in the flow table with only 2 of
them have desired IP address. If "dpctl dump-aggregate switchname
nw_src=xx.xx.xx.xx", all the 4 flows will be matched. For other fields
such as dl_dst, dl_src, in_port, etc, it matches correctly.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Fwd: A general question regarding discovery module

2009-12-23 Thread Guanyao Huang
-- Forwarded message --
From: Guanyao Huang 
Date: Wed, Dec 23, 2009 at 3:17 PM
Subject: Re: [nox-dev] A general question regarding discovery module
To: Martin Casado 


In verbose model:


00015|openflow|WARN:stream: send error: Broken pipe
00016|routingMR|ERR:Add flow entry to dp:f7cae400012c failed with
32:Broken pipe.
00017|openflow|WARN:stream: receive error: Bad file descriptor
00018|nox|WARN:stream: disconnected (Bad file descriptor)
Datapath leave, f7:ca:e4:00:01:2c
00019|bindings_storage|ERR:NDB error on get_locnames_cb (ok if
transient): Can't find specified row
00020|nox|ERR:no datapath with id f7cae400012c registered at nox
not successfully opf command: routingMR::send_stats_request()
00021|nox|ERR:no datapath with id f7cae400012c registered at nox
not successfully opf command: routingMR::send_stats_request()
00022|openflow|WARN:stream: send error: Broken pipe
00023|routingMR|ERR:Add flow entry to dp:f7cae4c8 failed with
32:Broken pipe.
00024|openflow|WARN:stream: send error: Bad file descriptor

Before these warnings, some other warnings show there are Unidirectional links:
WARNING: Unidirectional link detected between f7:ca:e4:00:01:2c -- 21
 <-->   f7:ca:e4:00:00:64 -- 15
WARNING: Unidirectional link detected between f7:ca:e4:00:01:90 -- 26
 <-->   f7:ca:e4:00:01:2c -- 24
WARNING: Unidirectional link detected between f7:ca:e4:00:01:2c -- 21
 <-->   f7:ca:e4:00:00:64 -- 15
WARNING: Unidirectional link detected between f7:ca:e4:00:01:90 -- 26
 <-->   f7:ca:e4:00:01:2c -- 24



On Wed, Dec 23, 2009 at 3:08 PM, Guanyao Huang  wrote:
> I forgot to mention:
>
> Those warnings are the first warnings in my program. After them, it
> shows failure to send flow command to the switch that left. If the
> discovery module times out first, I guess some warnings will print
> out.
>
> On Wed, Dec 23, 2009 at 2:55 PM, Martin Casado  wrote:
>> What is likely happening is that discovery times out the link, therefore now
>> flows are set up to use it forcing all packets to the controller.  This
>> causes major packet loss (including the uptime echo request) forcing a reset
>> of the connection.
>>
>>> Right, it only times out links if no LLDP is received. I was asking
>>> what was the reason for the warning messages above. Seems they are not
>>> related with discovery module.
>>>
>>> On Wed, Dec 23, 2009 at 2:37 PM, kk yap  wrote:
>>>
>>>>
>>>> Hi Guanyao,
>>>>
>>>> I am not sure what you are asking but discovery will not disconnected
>>>> switches.  That can be said with certainty.
>>>>
>>>> Regards
>>>> KK
>>>>
>>>> 2009/12/23 Guanyao Huang :
>>>>
>>>>>
>>>>> Some general questions:
>>>>>
>>>>> Will the datapath actively leave the network if it is burdened? Or
>>>>> only link_timeouts at discovery module will make them leave.
>>>>>
>>>>> My program has following messages:
>>>>> 00016|openflow|WARN:stream: send error: Broken pipe
>>>>> 00017|routingMR|ERR:Add flow entry to dp:f7cae464 failed with
>>>>> 32:Broken pipe.
>>>>> 00018|openflow|WARN:stream: receive error: Bad file descriptor
>>>>> 00019|nox|WARN:stream: disconnected (Bad file descriptor)
>>>>> Datapath leave, f7:ca:e4:00:00:64
>>>>>
>>>>> What does "Broken pipe" usually imply? I cant find where it is from.
>>>>>
>>>>> On Tue, Dec 22, 2009 at 10:41 AM, Guanyao Huang 
>>>>> wrote:
>>>>>
>>>>>>
>>>>>> But I am now in UCdavis. I will start my intern next quarter
>>>>>>
>>>>>> On Tue, Dec 22, 2009 at 5:18 AM, Rob Sherwood
>>>>>>  wrote:
>>>>>>
>>>>>>>
>>>>>>> Hi Guanyao,
>>>>>>>
>>>>>>> I'm going to be in the lab today ... let's try to find some time to
>>>>>>> talk about this.
>>>>>>>
>>>>>>> - Rob
>>>>>>> .
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Dec 22, 2009 at 5:17 AM, Rob Sherwood
>>>>>>>  wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Dec 21, 2009 at 12:47 PM, Martin Casado 
>>>>>>>> wrote:
>>>>&

Re: [nox-dev] A general question regarding discovery module

2009-12-23 Thread Guanyao Huang
I forgot to mention:

Those warnings are the first warnings in my program. After them, it
shows failure to send flow command to the switch that left. If the
discovery module times out first, I guess some warnings will print
out.

On Wed, Dec 23, 2009 at 2:55 PM, Martin Casado  wrote:
> What is likely happening is that discovery times out the link, therefore now
> flows are set up to use it forcing all packets to the controller.  This
> causes major packet loss (including the uptime echo request) forcing a reset
> of the connection.
>
>> Right, it only times out links if no LLDP is received. I was asking
>> what was the reason for the warning messages above. Seems they are not
>> related with discovery module.
>>
>> On Wed, Dec 23, 2009 at 2:37 PM, kk yap  wrote:
>>
>>>
>>> Hi Guanyao,
>>>
>>> I am not sure what you are asking but discovery will not disconnected
>>> switches.  That can be said with certainty.
>>>
>>> Regards
>>> KK
>>>
>>> 2009/12/23 Guanyao Huang :
>>>
>>>>
>>>> Some general questions:
>>>>
>>>> Will the datapath actively leave the network if it is burdened? Or
>>>> only link_timeouts at discovery module will make them leave.
>>>>
>>>> My program has following messages:
>>>> 00016|openflow|WARN:stream: send error: Broken pipe
>>>> 00017|routingMR|ERR:Add flow entry to dp:f7cae464 failed with
>>>> 32:Broken pipe.
>>>> 00018|openflow|WARN:stream: receive error: Bad file descriptor
>>>> 00019|nox|WARN:stream: disconnected (Bad file descriptor)
>>>> Datapath leave, f7:ca:e4:00:00:64
>>>>
>>>> What does "Broken pipe" usually imply? I cant find where it is from.
>>>>
>>>> On Tue, Dec 22, 2009 at 10:41 AM, Guanyao Huang 
>>>> wrote:
>>>>
>>>>>
>>>>> But I am now in UCdavis. I will start my intern next quarter
>>>>>
>>>>> On Tue, Dec 22, 2009 at 5:18 AM, Rob Sherwood
>>>>>  wrote:
>>>>>
>>>>>>
>>>>>> Hi Guanyao,
>>>>>>
>>>>>> I'm going to be in the lab today ... let's try to find some time to
>>>>>> talk about this.
>>>>>>
>>>>>> - Rob
>>>>>> .
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Dec 22, 2009 at 5:17 AM, Rob Sherwood
>>>>>>  wrote:
>>>>>>
>>>>>>>
>>>>>>> On Mon, Dec 21, 2009 at 12:47 PM, Martin Casado 
>>>>>>> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> I agree that if the problem is timeout due to loss from overload,
>>>>>>>> then the
>>>>>>>> only solution is prioritization.
>>>>>>>>
>>>>>>>
>>>>>>> In general yes, but the current discovery algorithm is fairly
>>>>>>> brittle.
>>>>>>>  With a large number of ports (48) on a hardware switch, even a small
>>>>>>> amount of packet loss it can falsely report down links.  Part of the
>>>>>>> goal of the rewrite is to address this issue.
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Question for the slicing folks, does slicing extend to the control
>>>>>>>> channel
>>>>>>>> (packets set to the controller?)
>>>>>>>>
>>>>>>>
>>>>>>> In addition to what Yiannis said (short story == "not yet"), Jean
>>>>>>> from
>>>>>>> HP developed a "rate limiter" openflow action as a vendor extension
>>>>>>> that can affect control and data traffic, so that could be used here.
>>>>>>> I think this is a useful primitive and something I'm hoping will
>>>>>>> making it into a future release of openflow (1.1?).
>>>>>>>
>>>>>>> - Rob
>>>>>>> .
>>>>>>>
>>>>>>>
>>>>
>>>> ___
>>>> nox-dev mailing list
>>>> nox-dev@noxrepo.org
>>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>>
>>>>
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A general question regarding discovery module

2009-12-23 Thread Guanyao Huang
Right, it only times out links if no LLDP is received. I was asking
what was the reason for the warning messages above. Seems they are not
related with discovery module.

On Wed, Dec 23, 2009 at 2:37 PM, kk yap  wrote:
> Hi Guanyao,
>
> I am not sure what you are asking but discovery will not disconnected
> switches.  That can be said with certainty.
>
> Regards
> KK
>
> 2009/12/23 Guanyao Huang :
>> Some general questions:
>>
>> Will the datapath actively leave the network if it is burdened? Or
>> only link_timeouts at discovery module will make them leave.
>>
>> My program has following messages:
>> 00016|openflow|WARN:stream: send error: Broken pipe
>> 00017|routingMR|ERR:Add flow entry to dp:f7cae464 failed with
>> 32:Broken pipe.
>> 00018|openflow|WARN:stream: receive error: Bad file descriptor
>> 00019|nox|WARN:stream: disconnected (Bad file descriptor)
>> Datapath leave, f7:ca:e4:00:00:64
>>
>> What does "Broken pipe" usually imply? I cant find where it is from.
>>
>> On Tue, Dec 22, 2009 at 10:41 AM, Guanyao Huang  wrote:
>>> But I am now in UCdavis. I will start my intern next quarter
>>>
>>> On Tue, Dec 22, 2009 at 5:18 AM, Rob Sherwood  
>>> wrote:
>>>> Hi Guanyao,
>>>>
>>>> I'm going to be in the lab today ... let's try to find some time to
>>>> talk about this.
>>>>
>>>> - Rob
>>>> .
>>>>
>>>>
>>>>
>>>> On Tue, Dec 22, 2009 at 5:17 AM, Rob Sherwood  
>>>> wrote:
>>>>> On Mon, Dec 21, 2009 at 12:47 PM, Martin Casado  wrote:
>>>>>> I agree that if the problem is timeout due to loss from overload, then 
>>>>>> the
>>>>>> only solution is prioritization.
>>>>>
>>>>> In general yes, but the current discovery algorithm is fairly brittle.
>>>>>  With a large number of ports (48) on a hardware switch, even a small
>>>>> amount of packet loss it can falsely report down links.  Part of the
>>>>> goal of the rewrite is to address this issue.
>>>>>
>>>>>> Question for the slicing folks, does slicing extend to the control 
>>>>>> channel
>>>>>> (packets set to the controller?)
>>>>>
>>>>> In addition to what Yiannis said (short story == "not yet"), Jean from
>>>>> HP developed a "rate limiter" openflow action as a vendor extension
>>>>> that can affect control and data traffic, so that could be used here.
>>>>> I think this is a useful primitive and something I'm hoping will
>>>>> making it into a future release of openflow (1.1?).
>>>>>
>>>>> - Rob
>>>>> .
>>>>>
>>>>
>>>
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A general question regarding discovery module

2009-12-23 Thread Guanyao Huang
Some general questions:

Will the datapath actively leave the network if it is burdened? Or
only link_timeouts at discovery module will make them leave.

My program has following messages:
00016|openflow|WARN:stream: send error: Broken pipe
00017|routingMR|ERR:Add flow entry to dp:f7cae464 failed with
32:Broken pipe.
00018|openflow|WARN:stream: receive error: Bad file descriptor
00019|nox|WARN:stream: disconnected (Bad file descriptor)
Datapath leave, f7:ca:e4:00:00:64

What does "Broken pipe" usually imply? I cant find where it is from.

On Tue, Dec 22, 2009 at 10:41 AM, Guanyao Huang  wrote:
> But I am now in UCdavis. I will start my intern next quarter
>
> On Tue, Dec 22, 2009 at 5:18 AM, Rob Sherwood  
> wrote:
>> Hi Guanyao,
>>
>> I'm going to be in the lab today ... let's try to find some time to
>> talk about this.
>>
>> - Rob
>> .
>>
>>
>>
>> On Tue, Dec 22, 2009 at 5:17 AM, Rob Sherwood  
>> wrote:
>>> On Mon, Dec 21, 2009 at 12:47 PM, Martin Casado  wrote:
>>>> I agree that if the problem is timeout due to loss from overload, then the
>>>> only solution is prioritization.
>>>
>>> In general yes, but the current discovery algorithm is fairly brittle.
>>>  With a large number of ports (48) on a hardware switch, even a small
>>> amount of packet loss it can falsely report down links.  Part of the
>>> goal of the rewrite is to address this issue.
>>>
>>>> Question for the slicing folks, does slicing extend to the control channel
>>>> (packets set to the controller?)
>>>
>>> In addition to what Yiannis said (short story == "not yet"), Jean from
>>> HP developed a "rate limiter" openflow action as a vendor extension
>>> that can affect control and data traffic, so that could be used here.
>>> I think this is a useful primitive and something I'm hoping will
>>> making it into a future release of openflow (1.1?).
>>>
>>> - Rob
>>> .
>>>
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] ofp_match

2009-12-23 Thread Guanyao Huang
My code is simply to query statistics of flows with the same  (also in_port is specified). However, I find that by some
reason the srcip and dstip are also wildcarded.

No matter tmpmatch.nw_src=1 or 2 or anything, all the flows will be
returned. srcip and dstip are indeed wildcarded although I dont want
to.

===
size_t size = sizeof(ofp_stats_request) + sizeof(ofp_aggregate_stats_request);
boost::shared_array raw_of(new char[size]);
ofp_stats_request *ost = (ofp_stats_request*)raw_of.get();
ost->header.version = OFP_VERSION;
ost->header.type = OFPT_STATS_REQUEST;
ost->header.length = htons(size);
uint32_t id=rand();
ost->header.xid = htonl(id);
ost->type = htons(OFPST_AGGREGATE);
ost->flags = htons(0);

ofp_aggregate_stats_request* ofsr =
(ofp_aggregate_stats_request*)(((uint8_t*)ost->body)+0);
ofsr->table_id = 0xff; //request for all flows
ofsr->out_port = OFPP_NONE;
ofp_match tmpmatch;
tmpmatch.nw_src=1;//(flow.nw_src);
tmpmatch.nw_dst=1;//(flow.nw_dst);
tmpmatch.in_port=5;
tmpmatch.wildcards=htonl( OFPFW_NW_PROTO | OFPFW_DL_VLAN |
OFPFW_DL_SRC | OFPFW_DL_DST | OFPFW_DL_TYPE | OFPFW_TP_SRC |
OFPFW_TP_DST );
   memcpy(&ofsr->match, &tmpmatch, sizeof(ofp_match));
   send_openflow_command(thisdp, &ost->header, false) ;



On Wed, Dec 23, 2009 at 1:01 AM, Guanyao Huang  wrote:
> This question might be too naive. If I want to specify nw_src and
> nw_dst, and make other fields wildcards, shouldn't the code be as
> follows:
> tmpmatch.wildcards=htonl( OFPFW_NW_PROTO | OFPFW_DL_VLAN |
> OFPFW_DL_SRC | OFPFW_DL_DST | OFPFW_DL_TYPE | OFPFW_TP_SRC |
> OFPFW_TP_DST );
> Is there anything wrong? 0 means not to wildcarded it.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] ofp_match

2009-12-23 Thread Guanyao Huang
This question might be too naive. If I want to specify nw_src and
nw_dst, and make other fields wildcards, shouldn't the code be as
follows:
tmpmatch.wildcards=htonl( OFPFW_NW_PROTO | OFPFW_DL_VLAN |
OFPFW_DL_SRC | OFPFW_DL_DST | OFPFW_DL_TYPE | OFPFW_TP_SRC |
OFPFW_TP_DST );
Is there anything wrong? 0 means not to wildcarded it.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A general question regarding discovery module

2009-12-21 Thread Guanyao Huang
I can have a try, but I dont expect the new algorithm will solve my problem. :)

On Mon, Dec 21, 2009 at 12:36 AM, Rob Sherwood
 wrote:
> Hello Guanyao,
>
> I don't work for Nicira, but there are some well known scaling issues
> with the algorithm used by the discovery protocol.  I'm hoping that
> this week I should be able to get around to an improved algorithm
> that, if you're interested in previewing, I can send you a copy.
>
> - Rob
> .
>
>
>
> On Fri, Dec 18, 2009 at 2:44 PM, Martin Casado  wrote:
>> Yeah, it could be due to high-loss from load (unfortunately).
>>
>> You could try increasing the timeout value in discovery.py.  If you don't
>> have dynamic link events, this should be able to survive temporary timeouts.
>>
>> What switches are you using?
>>
>>> In my program the discovery module times out links sometimes, causing
>>> my program not working well. I will debug to find out details why the
>>> link fails. Actually they are not supposed to fail. Maybe it's because
>>> of huge data.
>>>
>>> On Fri, Dec 18, 2009 at 8:41 AM, Martin Casado  wrote:
>>>

 The goal is to detect link failures, so one would hope that would be the
 most common failure mode.


>
> I assume LLDP packets are sent periodically. If there is no LLDP, what
> will be the most possible reason? The controller or the switch is too
> busy?
>
> On Thu, Dec 17, 2009 at 3:07 PM, Martin Casado 
> wrote:
>
>
>>
>> Discovery times out links when no LLDP packets have been received over
>> some
>> timeout period.  Timer values are documented within discovery.py.
>>
>>
>>
>>>
>>> It seems this module will periodically construct the topology. I dont
>>> know why it will periodically time_out the links. I want to know in
>>> what situations the links will time_out.
>>> Thanks.
>>>
>>> ___
>>> nox-dev mailing list
>>> nox-dev@noxrepo.org
>>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>>
>>>
>>>
>>
>>


>>
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A general question regarding discovery module

2009-12-18 Thread Guanyao Huang
In my program the discovery module times out links sometimes, causing
my program not working well. I will debug to find out details why the
link fails. Actually they are not supposed to fail. Maybe it's because
of huge data.

On Fri, Dec 18, 2009 at 8:41 AM, Martin Casado  wrote:
> The goal is to detect link failures, so one would hope that would be the
> most common failure mode.
>
>> I assume LLDP packets are sent periodically. If there is no LLDP, what
>> will be the most possible reason? The controller or the switch is too
>> busy?
>>
>> On Thu, Dec 17, 2009 at 3:07 PM, Martin Casado  wrote:
>>
>>>
>>> Discovery times out links when no LLDP packets have been received over
>>> some
>>> timeout period.  Timer values are documented within discovery.py.
>>>
>>>

 It seems this module will periodically construct the topology. I dont
 know why it will periodically time_out the links. I want to know in
 what situations the links will time_out.
 Thanks.

 ___
 nox-dev mailing list
 nox-dev@noxrepo.org
 http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


>>>
>>>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] A general question regarding discovery module

2009-12-18 Thread Guanyao Huang
I assume LLDP packets are sent periodically. If there is no LLDP, what
will be the most possible reason? The controller or the switch is too
busy?

On Thu, Dec 17, 2009 at 3:07 PM, Martin Casado  wrote:
> Discovery times out links when no LLDP packets have been received over some
> timeout period.  Timer values are documented within discovery.py.
>
>> It seems this module will periodically construct the topology. I dont
>> know why it will periodically time_out the links. I want to know in
>> what situations the links will time_out.
>> Thanks.
>>
>> ___
>> nox-dev mailing list
>> nox-dev@noxrepo.org
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need help regarding querying statistics from switches

2009-12-17 Thread Guanyao Huang
We are recently confirmed the switch itself has some bug, it cant
collect byte statistics. Thanks all.

On Thu, Dec 10, 2009 at 6:02 PM, Guanyao Huang  wrote:
> Hello
> Sorry to bother others. I one question regarding querying flow
> statistics from switches through struct ofp_stats_request. I am using
> nox 5.0
>
> In my topology I periodically ping between hosts. However, I find the
> packet_count and byte_count from the switch are always 0. I am
> confirmed that I successfully received ofp_flow_stats from the desired
> switch. The central controller maintains flow information and I query
> flows with desired nw_proto, nw_src, nw_dst, tp_src, tp_dst, and
> in_port. Other fields I use wildcard.
>
> When I use tcpreplay to replay some big packets, I find that the
> returned size are not always 0. However, flows in pcap file expire
> quickly and it is not easy to debug.
>
> Is it true that the returned size will always be 0 if the packet is small?
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] A general question regarding discovery module

2009-12-17 Thread Guanyao Huang
It seems this module will periodically construct the topology. I dont
know why it will periodically time_out the links. I want to know in
what situations the links will time_out.
Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need help regarding querying statistics from switches

2009-12-15 Thread Guanyao Huang
I find that I can not query port statistics either when pinging. The
returned value is also 0. But if I tcpreplay, the returned value is
obviously larger than 0 (for port load). Is it that ping is too small?
But obviously it can not be 0.

On Sun, Dec 13, 2009 at 3:55 PM, Keith Amidon  wrote:
> I apologize if you stated this already and I missed it, but what
> versions NOX and switch software are you using?
>
>          Thanks, Keith
>
>
> On Sun, 13 Dec 2009 11:17:01 -0800, Guanyao Huang  wrote:
>> I dont think the flow table entries expire quickly, because I find out
>> only initially the new packet is sent to the controller. Later packets
>> already have entries.
>>
>> It seems I dont have priority to use dpctl dump-flows command. I can
>> telnet to the switches and run showflow command, which shows the flows
>> are correct, with increasing size.
>>
>> Even if I use wildcards=0x to get all flow entries and use a
>> short interval to query flow statistics (500 ms), the returned sizes
>> are still always 0.
>>
>> Now, even reading port statistics doesnt work. Returned value is 0.
>>
>> The code is already posted to this email.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need help regarding querying statistics from switches

2009-12-15 Thread Guanyao Huang
There are only two flow entries on the switch (ping and ICMP reply). I
can clearly see the byte_no is none 0 through showflow command. I
periodically query and get statistics. I am sure the ofp_match fields
of the query and reply are the same for the 10 fields. But the
returned byte_no is always 0.

On Fri, Dec 11, 2009 at 2:25 PM, Keith Amidon  wrote:
> On Thu, 10 Dec 2009 18:02:57 -0800, Guanyao Huang  wrote:
>> In my topology I periodically ping between hosts. However, I find the
>> packet_count and byte_count from the switch are always 0. I am
>> confirmed that I successfully received ofp_flow_stats from the desired
>> switch. The central controller maintains flow information and I query
>> flows with desired nw_proto, nw_src, nw_dst, tp_src, tp_dst, and
>> in_port. Other fields I use wildcard.
>
> How frequent are the pings and how are the flows being installed.  One
> possibility here is that the flows are being installed with a timeout
> shorter than the interval between pings.  If that is the scenario, the
> behavior could be:
>
>   1. ping arrives at switch
>   2. switch does not find a matching flow, forwards to controller for
>      decision.
>   3. controller installs flow in switch to match future pings with a
>      soft timeout.  The controller may not count the stats from the
>      initial ping packet received in step 2 as being part of this new
>      flow.
>   4. nothing matches flow for the soft timeout.  flow is removed from
>      switch.
>   5. goto step 1
>
> Might this be what is happening?
>
>           --- Keith
>
>
>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need help regarding querying statistics from switches

2009-12-15 Thread Guanyao Huang
Nox version is 5.0. It works for the version of OpenFlow on the switch (0.8.9).

I used the same function to print ofp_match field and compare the
ofp_match value in the flow statistics request and flow statistics
reply. They are exactly the same for the 10 fields (wildcards=0). But
the returned value is still always 0.
If I use wildcards=0x, then two flows returns (one is for ICMP
reply), still with byte_no 0.

On Sun, Dec 13, 2009 at 3:55 PM, Keith Amidon  wrote:
> I apologize if you stated this already and I missed it, but what
> versions NOX and switch software are you using?
>
>          Thanks, Keith
>
>
> On Sun, 13 Dec 2009 11:17:01 -0800, Guanyao Huang  wrote:
>> I dont think the flow table entries expire quickly, because I find out
>> only initially the new packet is sent to the controller. Later packets
>> already have entries.
>>
>> It seems I dont have priority to use dpctl dump-flows command. I can
>> telnet to the switches and run showflow command, which shows the flows
>> are correct, with increasing size.
>>
>> Even if I use wildcards=0x to get all flow entries and use a
>> short interval to query flow statistics (500 ms), the returned sizes
>> are still always 0.
>>
>> Now, even reading port statistics doesnt work. Returned value is 0.
>>
>> The code is already posted to this email.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] A general question regarding getting statistics from switches.

2009-12-14 Thread Guanyao Huang
Hi
When querying individual flow statistics, the returned value is a
vector of Flow_stats, in which every flow ofp_match is clearly
contained. That means when querying flow statistics with some
wildcards, we might get more than one flows with their statistics.
But when using aggregate_flow_statistics, the returned value is
ofp_aggregate_stats_reply, which does not contain flow match
information. So, it seems that we can only use the id of the reply to
match the request id.
I just want to confirm this. Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need help regarding querying statistics from switches

2009-12-13 Thread Guanyao Huang
I dont think the flow table entries expire quickly, because I find out
only initially the new packet is sent to the controller. Later packets
already have entries.

It seems I dont have priority to use dpctl dump-flows command. I can
telnet to the switches and run showflow command, which shows the flows
are correct, with increasing size.

Even if I use wildcards=0x to get all flow entries and use a
short interval to query flow statistics (500 ms), the returned sizes
are still always 0.

Now, even reading port statistics doesnt work. Returned value is 0.

The code is already posted to this email.

> How frequent are the pings and how are the flows being installed.  One
> possibility here is that the flows are being installed with a timeout
> shorter than the interval between pings.  If that is the scenario, the
> behavior could be:
>
>   1. ping arrives at switch
>   2. switch does not find a matching flow, forwards to controller for
>      decision.
>   3. controller installs flow in switch to match future pings with a
>      soft timeout.  The controller may not count the stats from the
>      initial ping packet received in step 2 as being part of this new
>      flow.
>   4. nothing matches flow for the soft timeout.  flow is removed from
>      switch.
>   5. goto step 1
>
> Might this be what is happening?
>
>           --- Keith
>
>
>
>
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Need help regarding querying statistics from switches

2009-12-10 Thread Guanyao Huang
Sorry, I was wrong in saying my program can query flow statistics of
large flows. It cant query statistics of flows, no matter large or
small.
But I can query statistics of port. That is successful.
Below is my code to query flow statistics:

size_t size = sizeof(ofp_stats_request) + sizeof(ofp_flow_stats_request);
boost::shared_array raw_of(new char[size]);
ofp_stats_request *ost = (ofp_stats_request*)raw_of.get();
ost->header.version = OFP_VERSION;
ost->header.type = OFPT_STATS_REQUEST;
ost->header.length = htons(size);
ost->header.xid = htonl(STATS_DETAIL_ID);
ost->type = htons(OFPST_FLOW);
ost->flags = htons(0);
ofp_flow_stats_request* ofsr =
(ofp_flow_stats_request*)(((uint8_t*)ost->body)+0);
ofsr->table_id = 0xff; //request for all flow table
ofsr->out_port = OFPP_NONE;

for(.){//some loop code
ofp_match tmpmatch;
tmpmatch.nw_src=itflow->first.nw_src;
tmpmatch.nw_dst=itflow->first.nw_dst;
tmpmatch.tp_src=itflow->first.tp_src;
tmpmatch.tp_dst=itflow->first.tp_dst;
tmpmatch.nw_proto=itflow->first.nw_proto;
tmpmatch.in_port=itflow->first.in_port;
tmpmatch.wildcards=htonl(OFPFW_DL_VLAN | OFPFW_DL_SRC |
OFPFW_DL_DST | OFPFW_DL_TYPE | OFPFW_TP_SRC | OFPFW_TP_DST );
memcpy(&ofsr->match, &tmpmatch, sizeof(ofp_match));
if( 0 != send_openflow_command((it->first), &ost->header, false) ){
;
}
}

When parsing struct ofp_flow_stats, I find it is exactly the flow I
want to query. But the packet_count and byte_count are always 0.

Is this some setting problem?

On Thu, Dec 10, 2009 at 6:02 PM, Guanyao Huang  wrote:
> Hello
> Sorry to bother others. I one question regarding querying flow
> statistics from switches through struct ofp_stats_request. I am using
> nox 5.0
>
> In my topology I periodically ping between hosts. However, I find the
> packet_count and byte_count from the switch are always 0. I am
> confirmed that I successfully received ofp_flow_stats from the desired
> switch. The central controller maintains flow information and I query
> flows with desired nw_proto, nw_src, nw_dst, tp_src, tp_dst, and
> in_port. Other fields I use wildcard.
>
> When I use tcpreplay to replay some big packets, I find that the
> returned size are not always 0. However, flows in pcap file expire
> quickly and it is not easy to debug.
>
> Is it true that the returned size will always be 0 if the packet is small?
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Need help regarding querying statistics from switches

2009-12-10 Thread Guanyao Huang
Hello
Sorry to bother others. I one question regarding querying flow
statistics from switches through struct ofp_stats_request. I am using
nox 5.0

In my topology I periodically ping between hosts. However, I find the
packet_count and byte_count from the switch are always 0. I am
confirmed that I successfully received ofp_flow_stats from the desired
switch. The central controller maintains flow information and I query
flows with desired nw_proto, nw_src, nw_dst, tp_src, tp_dst, and
in_port. Other fields I use wildcard.

When I use tcpreplay to replay some big packets, I find that the
returned size are not always 0. However, flows in pcap file expire
quickly and it is not easy to debug.

Is it true that the returned size will always be 0 if the packet is small?

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


Re: [nox-dev] Questions regarding routing module

2009-11-30 Thread Guanyao Huang
Sorry, routing module doesnt handle lldp. I was refering some other
module. Forget about this.

On Mon, Nov 30, 2009 at 3:48 PM, Guanyao Huang  wrote:
> Hi
> Sorry to bother others.
> I find that there is one routing module under netapps directory. It
> can route the flows between openflow switches.
> My work now is to write my own routing module which uses dijstra
> protocol to find the shortest path (not all-pairs shortest path
> algorithm). I have a topology of some connected switches. Each switch
> connects to one end host. The topology contains loops for these
> switches. My module wants to achieve routing from any end host to
> another host.
> I guess it is a good choice to modify codes of routing module for my module.
>
> There are a couple of questions I dont understand regarding existing
> routing module.
> 1, Is it developed for layer 2 routing or  layer 3 routing? I find
> that the routing module works well (for my case) when the topology is
> loopless. But it can not work when there are loops for my case.
> 2, Is there any document on how it works? Forget about the All-pairs
> shortest path algorithm (I am using dijstra), I dont understand some
> codes in sprouting.cc, which uses some flooding and broadcasting.
> Specifically, I dont understand some related structures such as
> dst_locations. Basically, given the mac of end host, how to find the
> datapathid that the flow should be routed to.
> 3, I dont quite understand why it also handles lldp. I guess the
> topology is captured by topology module.
>
> Thanks.
>

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


[nox-dev] Questions regarding routing module

2009-11-30 Thread Guanyao Huang
Hi
Sorry to bother others.
I find that there is one routing module under netapps directory. It
can route the flows between openflow switches.
My work now is to write my own routing module which uses dijstra
protocol to find the shortest path (not all-pairs shortest path
algorithm). I have a topology of some connected switches. Each switch
connects to one end host. The topology contains loops for these
switches. My module wants to achieve routing from any end host to
another host.
I guess it is a good choice to modify codes of routing module for my module.

There are a couple of questions I dont understand regarding existing
routing module.
1, Is it developed for layer 2 routing or  layer 3 routing? I find
that the routing module works well (for my case) when the topology is
loopless. But it can not work when there are loops for my case.
2, Is there any document on how it works? Forget about the All-pairs
shortest path algorithm (I am using dijstra), I dont understand some
codes in sprouting.cc, which uses some flooding and broadcasting.
Specifically, I dont understand some related structures such as
dst_locations. Basically, given the mac of end host, how to find the
datapathid that the flow should be routed to.
3, I dont quite understand why it also handles lldp. I guess the
topology is captured by topology module.

Thanks.

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org