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