Oops... should have spotted that.  Thanks Paulo, that saved me.

Regards
KK

PS>> This email comes 20 sec before I decide to spend a few mins on this.  :)

On 21 March 2011 12:24, Paulo César <pcd...@gmail.com> wrote:
> Hi, Ricardo.
> I solved this problem.
> Try to use ntohll() to uint64 and ntohs() to uint32.
> Best regards.
> 2011/3/21 Paulo César <pcd...@gmail.com>
>>
>> Hi,
>> I am having the same problem.
>> Any help?
>> Best regards.
>>
>>
>> 2011/3/20 Ricardo Bennesby <ricardo.benne...@gmail.com>
>>>
>>> Sorry, forgot to paste that...
>>>       fsie is from Flow_stats_in event, declared in a
>>> handle_flow_stats_in method (a handler):
>>>
>>> Disposition newcomp::handle_flow_stats_in(const Event& e){
>>>         const Flow_stats_in_event& fsie
>>>             = assert_cast<const Flow_stats_in_event&>(e);
>>>
>>> So, fsie.flows has that informations about the flows, that can be used to
>>> collect statistcs.
>>>
>>> Thanks for help.
>>> Regards.
>>>
>>> 2011/3/20 kk yap <yap...@stanford.edu>
>>>>
>>>> Ricardo,
>>>>
>>>> Can you explain which component is fsie as with
>>>> * fsie.flows.at(i)
>>>>
>>>> Regards
>>>> KK
>>>>
>>>> On 20 March 2011 13:11, Ricardo Bennesby <ricardo.benne...@gmail.com>
>>>> wrote:
>>>> > Thanks kk.
>>>> >
>>>> > I think I did what you suggested:
>>>> >
>>>> >         uint32_t ds; //duration_sec
>>>> >         uint64_t pc; //packet_count
>>>> >         uint16_t pri; //priority
>>>> >         uint64_t bc; //byte_count
>>>> >         uint16_t len; //legth
>>>> >         uint8_t tid; //table_id
>>>> >
>>>> >         for(int i=0;i<fsie.flows.size();i++){
>>>> >                 lg.dbg("i value: %d",i);
>>>> >                 ds = ntohl(fsie.flows.at(i).duration_sec);
>>>> >                 pc = ntohl(fsie.flows.at(i).packet_count);
>>>> >                 pri = ntohl(fsie.flows.at(i).priority);
>>>> >                 bc = ntohl(fsie.flows.at(i).byte_count);
>>>> >                 len = ntohl(fsie.flows.at(i).length);
>>>> >                 tid = ntohl(fsie.flows.at(i).table_id);
>>>> >                 lg.dbg("duration_sec: %"PRIu32,ds);
>>>> >                 lg.dbg("packet_count: %"PRIu64,pc);
>>>> >                 lg.dbg("priority: %"PRIu16,pri);
>>>> >                 lg.dbg("byte_count: %"PRIu64,bc);
>>>> >                 lg.dbg("length: %"PRIu16,len);
>>>> >                 lg.dbg("table_id: %"PRIu8,tid);
>>>> >         }
>>>> >
>>>> > But now only number of flows and duration in seconds are non-zero:
>>>> >
>>>> > 00238|newcomp|DBG:Size of flows: 2
>>>> > 00239|newcomp|DBG:i value: 0
>>>> > 00240|newcomp|DBG:duration_sec: 8
>>>> > 00241|newcomp|DBG:packet_count: 0
>>>> > 00242|newcomp|DBG:priority: 0
>>>> > 00243|newcomp|DBG:byte_count: 0
>>>> > 00244|newcomp|DBG:length: 0
>>>> > 00245|newcomp|DBG:table_id: 0
>>>> > 00246|newcomp|DBG:i value: 1
>>>> > 00247|newcomp|DBG:duration_sec: 7
>>>> > 00248|newcomp|DBG:packet_count: 0
>>>> > 00249|newcomp|DBG:priority: 0
>>>> > 00250|newcomp|DBG:byte_count: 0
>>>> > 00251|newcomp|DBG:length: 0
>>>> > 00252|newcomp|DBG:table_id: 0
>>>> >
>>>> > What am I missing?
>>>> >
>>>> > Sorry to bother.
>>>> >
>>>> > Regards.
>>>> >
>>>> >
>>>> > 2011/3/20 kk yap <yap...@stanford.edu>
>>>> >>
>>>> >> Hi Ricardo,
>>>> >>
>>>> >> I mean the result.  Did you run  ntoh<x> on them.
>>>> >>
>>>> >> Regards
>>>> >> KK
>>>> >>
>>>> >> On 20 March 2011 10:50, Ricardo Bennesby <ricardo.benne...@gmail.com>
>>>> >> wrote:
>>>> >> > Hi kk, thanks for quick reply.
>>>> >> >
>>>> >> > I changed request.match.wildcards = htonl(0xffffffff) to:
>>>> >> >
>>>> >> > request.match.wildcards = htons(0xffffffff); -> but it didn't work.
>>>> >> > Nothing
>>>> >> > was printed about the packets
>>>> >> >
>>>> >> > request.match.wildcards = ntohs(0xffffffff); -> the same that
>>>> >> > happened
>>>> >> > with
>>>> >> > htons
>>>> >> >
>>>> >> > request.match.wildcards = ntohl(0xffffffff); -> the same result of
>>>> >> > use
>>>> >> > htonl
>>>> >> >
>>>> >> > Sorry kk, but still I missing something?
>>>> >> >
>>>> >> > 2011/3/20 kk yap <yap...@stanford.edu>
>>>> >> >>
>>>> >> >> Hi Ricardo,
>>>> >> >>
>>>> >> >> Did you consider network/host byte order?
>>>> >> >>
>>>> >> >> Regards
>>>> >> >> KK
>>>> >> >>
>>>> >> >> On 20 March 2011 10:01, Ricardo Bennesby
>>>> >> >> <ricardo.benne...@gmail.com>
>>>> >> >> wrote:
>>>> >> >> > Hi.
>>>> >> >> >
>>>> >> >> > I am running a C++ component that prints statistics of flows
>>>> >> >> > collected
>>>> >> >> > in
>>>> >> >> > switches with the flow_stats_in_event.
>>>> >> >> > I am also running the dpctl dump-flows command in mininet to
>>>> >> >> > compare
>>>> >> >> > the
>>>> >> >> > values and they are very different.
>>>> >> >> >
>>>> >> >> > The request is as follows:
>>>> >> >> >       request.table_id = 0xff;
>>>> >> >> >       request.out_port = OFPP_NONE;
>>>> >> >> >       request.match.wildcards = htonl(0xffffffff);
>>>> >> >> >
>>>> >> >> > Some values printed with dpctl dump-flows are:
>>>> >> >> >   cookie=0, duration_sec=6s, table_id=1, priority=32768,
>>>> >> >> > n_packets=9,
>>>> >> >> > n_bytes=882
>>>> >> >> > And it seems correct.
>>>> >> >> >
>>>> >> >> > In Flow_stats_in_event handler I wrote:
>>>> >> >> >     if(fsie.flows.size()>0){
>>>> >> >> >                 lg.dbg("duration_sec:
>>>> >> >> > %"PRIu32,fsie.flows.at(0).duration_sec);
>>>> >> >> >                 lg.dbg("packet_count:
>>>> >> >> > %"PRIu64,fsie.flows.at(0).packet_count);
>>>> >> >> >                 lg.dbg("priority:
>>>> >> >> > %"PRIu16,fsie.flows.at(0).priority);
>>>> >> >> >                 lg.dbg("byte_count:
>>>> >> >> > %"PRIu64,fsie.flows.at(0).byte_count);
>>>> >> >> >                 lg.dbg("length: %d",fsie.flows.at(0).length);
>>>> >> >> >                 lg.dbg("table_id:
>>>> >> >> > %d",fsie.flows.at(0).table_id);
>>>> >> >> >    }
>>>> >> >> >
>>>> >> >> > But the values printed are:
>>>> >> >> > 00533|openflow-event|DBG:received stats reply from 000000000001
>>>> >> >> > 00534|newcomp|DBG:Size of flows: 2
>>>> >> >> > 00535|newcomp|DBG:duration_sec: 922746880
>>>> >> >> > 00536|newcomp|DBG:packet_count: 7710162562058289152
>>>> >> >> > 00537|newcomp|DBG:priority: 128
>>>> >> >> > 00538|newcomp|DBG:byte_count: 17737427132398698496
>>>> >> >> > 00539|newcomp|DBG:length: 24576
>>>> >> >> > 00540|newcomp|DBG:table_id: 1
>>>> >> >> >
>>>> >> >> > What am I missing?
>>>> >> >> > If I wasn't detailed enough please let me know.
>>>> >> >> >
>>>> >> >> > Best Regards.
>>>> >> >> >
>>>> >> >> > --
>>>> >> >> > Ricardo Bennesby da Silva
>>>> >> >> > Ciência da Computação - UFAM
>>>> >> >> > LabCIA - Laboratório de Computação Inteligente e Autonômica
>>>> >> >> >
>>>> >> >> >
>>>> >> >> > _______________________________________________
>>>> >> >> > nox-dev mailing list
>>>> >> >> > nox-dev@noxrepo.org
>>>> >> >> > http://noxrepo.org/mailman/listinfo/nox-dev
>>>> >> >> >
>>>> >> >> >
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >> > --
>>>> >> > Ricardo Bennesby da Silva
>>>> >> > Ciência da Computação - UFAM
>>>> >> > LabCIA - Laboratório de Computação Inteligente e Autonômica
>>>> >> >
>>>> >> >
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > Ricardo Bennesby da Silva
>>>> > Ciência da Computação - UFAM
>>>> > LabCIA - Laboratório de Computação Inteligente e Autonômica
>>>> >
>>>> >
>>>
>>>
>>>
>>> --
>>> Ricardo Bennesby da Silva
>>> Ciência da Computação - UFAM
>>> LabCIA - Laboratório de Computação Inteligente e Autonômica
>>>
>>>
>>> _______________________________________________
>>> nox-dev mailing list
>>> nox-dev@noxrepo.org
>>> http://noxrepo.org/mailman/listinfo/nox-dev
>>>
>>
>>
>>
>> --
>> "Life is not fair; get used to it."
>> Bill Gates
>>
>
>
>
> --
> "Life is not fair; get used to it."
> Bill Gates
>
>
_______________________________________________
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev

Reply via email to