# HG changeset patch # User Kirill Andreev # Date 1243847490 -14400 # Node ID 0b8f9da17a562e8f3a50d09582dd556540462281 # Parent 38332392025a49bd8511e43b71780dd3d7788cf8 Statistics fixed diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/hwmp-mac-plugin.cc --- a/src/devices/mesh/dot11s/hwmp-mac-plugin.cc Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/hwmp-mac-plugin.cc Mon Jun 01 13:11:30 2009 +0400 @@ -60,8 +60,8 @@ NS_ASSERT (false); } packet->RemoveHeader(meshHdr); - m_stats.recvData ++; - m_stats.recvDataBytes += packet->GetSize (); + m_stats.rxData ++; + m_stats.rxDataBytes += packet->GetSize (); //TODO: address extension Mac48Address destination; Mac48Address source; @@ -89,8 +89,8 @@ } if(header.IsAction()) { - m_stats.recvMgt ++; - m_stats.recvMgtBytes += packet->GetSize (); + m_stats.rxMgt ++; + m_stats.rxMgtBytes += packet->GetSize (); WifiMeshActionHeader actionHdr; packet->RemoveHeader (actionHdr); WifiMeshActionHeader::ActionValue actionValue = actionHdr.GetAction (); @@ -101,7 +101,7 @@ case WifiMeshActionHeader::PATH_REQUEST: { IePreq preq; - m_stats.recvPreq ++; + m_stats.rxPreq ++; packet->RemoveHeader (preq); if(preq.GetOriginatorAddress () == m_protocol->GetAddress ()) return false; @@ -114,7 +114,7 @@ case WifiMeshActionHeader::PATH_REPLY: { IePrep prep; - m_stats.recvPrep ++; + m_stats.rxPrep ++; packet->RemoveHeader (prep); if(prep.GetTtl () == 0) return false; @@ -125,7 +125,7 @@ case WifiMeshActionHeader::PATH_ERROR: { IePerr perr; - m_stats.recvPerr ++; + m_stats.rxPerr ++; packet->RemoveHeader (perr); m_protocol->ReceivePerr (perr, header.GetAddr2 (), m_ifIndex, header.GetAddr3 ()); return false; @@ -148,8 +148,8 @@ //do it this way to silence compiler NS_ASSERT (false); } - m_stats.sentData ++; - m_stats.sentDataBytes += packet->GetSize (); + m_stats.txData ++; + m_stats.txDataBytes += packet->GetSize (); MeshHeader meshHdr; meshHdr.SetMeshSeqno(tag.GetSeqno()); meshHdr.SetMeshTtl(tag.GetTtl()); @@ -215,9 +215,9 @@ for(std::vector::const_iterator i = receivers.begin (); i != receivers.end (); i ++) { hdr.SetAddr1 (*i); - m_stats.sentPreq ++; - m_stats.sentMgt ++; - m_stats.sentMgtBytes += packet->GetSize (); + m_stats.txPreq ++; + m_stats.txMgt ++; + m_stats.txMgtBytes += packet->GetSize (); m_parent->SendManagementFrame(packet, hdr); } //erase queue @@ -254,9 +254,9 @@ for(std::vector::const_iterator i = m_myPerr.receivers.begin (); i != m_myPerr.receivers.end (); i ++) { hdr.SetAddr1 (*i); - m_stats.sentPerr ++; - m_stats.sentMgt ++; - m_stats.sentMgtBytes += packet->GetSize (); + m_stats.txPerr ++; + m_stats.txMgt ++; + m_stats.txMgtBytes += packet->GetSize (); m_parent->SendManagementFrame(packet, hdr); } m_myPerr.perr.ResetPerr (); @@ -283,9 +283,9 @@ hdr.SetAddr2 (m_parent->GetAddress ()); hdr.SetAddr3 (m_protocol->GetAddress ()); //Send Management frame - m_stats.sentPrep ++; - m_stats.sentMgt ++; - m_stats.sentMgtBytes += packet->GetSize (); + m_stats.txPrep ++; + m_stats.txMgt ++; + m_stats.txMgtBytes += packet->GetSize (); m_parent->SendManagementFrame(packet, hdr); } void @@ -317,20 +317,20 @@ HwmpMacPlugin::Statistics::Print (std::ostream & os) const { os << "\n"; + "txPreq= \"" << txPreq << "\"\n" + "txPrep=\"" << txPrep << "\"\n" + "txPerr=\"" << txPerr << "\"\n" + "rxPreq=\"" << rxPreq << "\"\n" + "rxPrep=\"" << rxPrep << "\"\n" + "rxPerr=\"" << rxPerr << "\"\n" + "txMgt=\"" << txMgt << "\"\n" + "txMgtBytes=\"" << (double)txMgtBytes / 1024.0 << "K\"\n" + "rxMgt=\"" << rxMgt << "\"\n" + "rxMgtBytes=\"" << (double)rxMgtBytes / 1204.0 << "K\"\n" + "txData=\"" << txData << "\"\n" + "txDataBytes=\"" << (double)txDataBytes / 1024.0 << "K\"\n" + "rxData=\"" << rxData << "\"\n" + "rxDataBytes=\"" << (double)rxDataBytes / 1024.0 << "K\"/>\n"; } void HwmpMacPlugin::Report (std::ostream & os) const diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/hwmp-mac-plugin.h --- a/src/devices/mesh/dot11s/hwmp-mac-plugin.h Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/hwmp-mac-plugin.h Mon Jun 01 13:11:30 2009 +0400 @@ -104,36 +104,36 @@ ///\{ struct Statistics { - uint16_t sentPreq; - uint16_t recvPreq; - uint16_t sentPrep; - uint16_t recvPrep; - uint16_t sentPerr; - uint16_t recvPerr; - uint16_t sentMgt; - uint32_t sentMgtBytes; - uint16_t recvMgt; - uint32_t recvMgtBytes; - uint16_t sentData; - uint32_t sentDataBytes; - uint16_t recvData; - uint32_t recvDataBytes; + uint16_t txPreq; + uint16_t rxPreq; + uint16_t txPrep; + uint16_t rxPrep; + uint16_t txPerr; + uint16_t rxPerr; + uint16_t txMgt; + uint32_t txMgtBytes; + uint16_t rxMgt; + uint32_t rxMgtBytes; + uint16_t txData; + uint32_t txDataBytes; + uint16_t rxData; + uint32_t rxDataBytes; void Print (std::ostream & os) const; Statistics () : - sentPreq (0), - recvPreq (0), - sentPrep (0), - recvPrep (0), - sentPerr (0), - recvPerr (0), - sentMgt (0), - sentMgtBytes (0), - recvMgt (0), - recvMgtBytes (0), - sentData (0), - sentDataBytes (0), - recvData (0), - recvDataBytes (0) + txPreq (0), + rxPreq (0), + txPrep (0), + rxPrep (0), + txPerr (0), + rxPerr (0), + txMgt (0), + txMgtBytes (0), + rxMgt (0), + rxMgtBytes (0), + txData (0), + txDataBytes (0), + rxData (0), + rxDataBytes (0) {} }; Statistics m_stats; diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/hwmp-protocol.cc --- a/src/devices/mesh/dot11s/hwmp-protocol.cc Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/hwmp-protocol.cc Mon Jun 01 13:11:30 2009 +0400 @@ -225,8 +225,8 @@ } if (destination == Mac48Address::GetBroadcast ()) { - m_stats.forwardedBroadcast ++; - m_stats.forwardedBytes += packet->GetSize (); + m_stats.txBroadcast ++; + m_stats.txBytes += packet->GetSize (); //channel IDs where we have already sent broadcast: std::vector channels; for(HwmpPluginMap::const_iterator plugin = m_interfaces.begin (); plugin != m_interfaces.end (); plugin ++) @@ -270,8 +270,8 @@ { //reply immediately: routeReply (true, packet, source, destination, protocolType, result.ifIndex); - m_stats.forwardedUnicast ++; - m_stats.forwardedBytes += packet->GetSize (); + m_stats.txUnicast ++; + m_stats.txBytes += packet->GetSize (); return true; } if (sourceIface != GetMeshPoint ()->GetIfIndex()) @@ -768,8 +768,8 @@ packet.pkt->RemovePacketTag(tag); tag.SetAddress (result.retransmitter); packet.pkt->AddPacketTag (tag); - m_stats.forwardedUnicast ++; - m_stats.forwardedBytes += packet.pkt->GetSize (); + m_stats.txUnicast ++; + m_stats.txBytes += packet.pkt->GetSize (); packet.reply (true, packet.pkt, packet.src, packet.dst, packet.protocol, result.ifIndex); } } @@ -790,8 +790,8 @@ NS_ASSERT (packet.pkt->PeekPacketTag(tag)); tag.SetAddress (result.retransmitter); packet.pkt->AddPacketTag (tag); - m_stats.forwardedUnicast ++; - m_stats.forwardedBytes += packet.pkt->GetSize (); + m_stats.txUnicast ++; + m_stats.txBytes += packet.pkt->GetSize (); packet.reply (true, packet.pkt, packet.src, packet.dst, packet.protocol, result.ifIndex); } } @@ -942,9 +942,9 @@ void HwmpProtocol::Statistics::Print (std::ostream & os) const { os << "\n"; } diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/hwmp-protocol.h --- a/src/devices/mesh/dot11s/hwmp-protocol.h Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/hwmp-protocol.h Mon Jun 01 13:11:30 2009 +0400 @@ -142,14 +142,14 @@ ///\{ struct Statistics { - uint16_t forwardedUnicast; - uint16_t forwardedBroadcast; - uint32_t forwardedBytes; + uint16_t txUnicast; + uint16_t txBroadcast; + uint32_t txBytes; uint16_t totalQueued; uint16_t totalDropped; void Print (std::ostream & os) const; - Statistics () : forwardedUnicast (0), forwardedBroadcast (0), forwardedBytes (0), totalQueued (0), totalDropped (0) {} + Statistics () : txUnicast (0), txBroadcast (0), txBytes (0), totalQueued (0), totalDropped (0) {} }; Statistics m_stats; ///\} diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/peer-link.cc --- a/src/devices/mesh/dot11s/peer-link.cc Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/peer-link.cc Mon Jun 01 13:11:30 2009 +0400 @@ -580,10 +580,10 @@ "peerInterfaceAddress=\"" << m_peerAddress << "\"\n" "peerMeshPointAddress=\"" << m_peerMeshPointAddress << "\"\n" "metricOfTheLink=\"" << m_macPlugin->GetLinkMetric(m_peerAddress) << "\"\n" - "m_lastBeacon=\"" << m_lastBeacon.GetMilliSeconds () << "ms\"\n" - "m_localLinkId=\"" << m_localLinkId << "\"\n" - "m_peerLinkId=\"" << m_peerLinkId << "\"\n" - "m_assocId=\"" << m_assocId << "\"\n" + "lastBeacon=\"" << m_lastBeacon.GetMilliSeconds () << "ms\"\n" + "localLinkId=\"" << m_localLinkId << "\"\n" + "peerLinkId=\"" << m_peerLinkId << "\"\n" + "assocId=\"" << m_assocId << "\"\n" "dot11MeshMaxRetries=\"" << m_dot11MeshMaxRetries << "\"\n" "dot11MeshRetryTimeout=\"" << m_dot11MeshRetryTimeout.GetMilliSeconds () << "ms\"\n" "dot11MeshHoldingTimeout=\"" << m_dot11MeshHoldingTimeout.GetMilliSeconds () << "ms\"\n" diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/peer-management-plugin.cc --- a/src/devices/mesh/dot11s/peer-management-plugin.cc Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/peer-management-plugin.cc Mon Jun 01 13:11:30 2009 +0400 @@ -84,8 +84,8 @@ // If can not handle - just return; if(actionHdr.GetCategory () != WifiMeshActionHeader::MESH_PEERING_MGT) return m_protocol->IsActiveLink(m_ifIndex,header.GetAddr2()); - m_stats.recvMgt ++; - m_stats.recvMgtBytes += packet->GetSize (); + m_stats.rxMgt ++; + m_stats.rxMgtBytes += packet->GetSize (); Mac48Address peerAddress = header.GetAddr2 (); Mac48Address peerMpAddress = header.GetAddr3 (); PeerLinkFrameStart::PlinkFrameStartFields fields; @@ -121,17 +121,17 @@ //Check taht frame subtype corresponds peer link subtype if(peerElement.SubtypeIsOpen ()) { - m_stats.recvOpen ++; + m_stats.rxOpen ++; NS_ASSERT(actionValue.peerLink == WifiMeshActionHeader::PEER_LINK_OPEN); } if(peerElement.SubtypeIsConfirm ()) { - m_stats.recvConfirm ++; + m_stats.rxConfirm ++; NS_ASSERT(actionValue.peerLink == WifiMeshActionHeader::PEER_LINK_CONFIRM); } if(peerElement.SubtypeIsClose ()) { - m_stats.recvClose ++; + m_stats.rxClose ++; NS_ASSERT(actionValue.peerLink == WifiMeshActionHeader::PEER_LINK_CLOSE); } //Deliver Peer link management frame to protocol: @@ -197,7 +197,7 @@ WifiMeshActionHeader actionHdr; if (peerElement.SubtypeIsOpen ()) { - m_stats.sendOpen ++; + m_stats.txOpen ++; WifiMeshActionHeader::ActionValue action; action.peerLink = WifiMeshActionHeader::PEER_LINK_OPEN; fields.subtype = WifiMeshActionHeader::PEER_LINK_OPEN; @@ -205,7 +205,7 @@ } if (peerElement.SubtypeIsConfirm ()) { - m_stats.sendConfirm ++; + m_stats.txConfirm ++; WifiMeshActionHeader::ActionValue action; action.peerLink = WifiMeshActionHeader::PEER_LINK_CONFIRM; fields.aid = aid; @@ -214,7 +214,7 @@ } if (peerElement.SubtypeIsClose ()) { - m_stats.sendClose ++; + m_stats.txClose ++; WifiMeshActionHeader::ActionValue action; action.peerLink = WifiMeshActionHeader::PEER_LINK_CLOSE; fields.subtype = WifiMeshActionHeader::PEER_LINK_CLOSE; @@ -224,8 +224,8 @@ plinkFrame.SetPlinkFrameStart(fields); packet->AddHeader (plinkFrame); packet->AddHeader (actionHdr); - m_stats.sentMgt ++; - m_stats.sentMgtBytes += packet->GetSize (); + m_stats.txMgt ++; + m_stats.txMgtBytes += packet->GetSize (); // Wifi Mac header: WifiMacHeader hdr; hdr.SetAction (); @@ -261,18 +261,18 @@ m_parent->ShiftTbtt (shift); } PeerManagerMacPlugin::Statistics::Statistics () : - sendOpen (0), - sendConfirm (0), - sendClose (0), - recvOpen (0), - recvConfirm (0), - recvClose (0), + txOpen (0), + txConfirm (0), + txClose (0), + rxOpen (0), + rxConfirm (0), + rxClose (0), dropped (0), brokenMgt (0), - sentMgt (0), - sentMgtBytes (0), - recvMgt (0), - recvMgtBytes (0), + txMgt (0), + txMgtBytes (0), + rxMgt (0), + rxMgtBytes (0), beaconShift (0) { } @@ -280,18 +280,18 @@ PeerManagerMacPlugin::Statistics::Print (std::ostream & os) const { os << "\n"; } void diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/dot11s/peer-management-plugin.h --- a/src/devices/mesh/dot11s/peer-management-plugin.h Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/dot11s/peer-management-plugin.h Mon Jun 01 13:11:30 2009 +0400 @@ -105,18 +105,18 @@ ///\} //Keeps statistics struct Statistics { - uint16_t sendOpen; - uint16_t sendConfirm; - uint16_t sendClose; - uint16_t recvOpen; - uint16_t recvConfirm; - uint16_t recvClose; + uint16_t txOpen; + uint16_t txConfirm; + uint16_t txClose; + uint16_t rxOpen; + uint16_t rxConfirm; + uint16_t rxClose; uint16_t dropped; uint16_t brokenMgt; - uint16_t sentMgt; - uint32_t sentMgtBytes; - uint16_t recvMgt; - uint32_t recvMgtBytes; + uint16_t txMgt; + uint32_t txMgtBytes; + uint16_t rxMgt; + uint32_t rxMgtBytes; uint16_t beaconShift; Statistics (); diff -r 38332392025a -r 0b8f9da17a56 src/devices/mesh/mesh-wifi-interface-mac.cc --- a/src/devices/mesh/mesh-wifi-interface-mac.cc Mon Jun 01 12:39:42 2009 +0400 +++ b/src/devices/mesh/mesh-wifi-interface-mac.cc Mon Jun 01 13:11:30 2009 +0400 @@ -643,11 +643,11 @@ MeshWifiInterfaceMac::Statistics::Print (std::ostream & os) const { os << "\n"; + "rxBeacons=\"" << recvBeacons << "\" " + "txFrames=\"" << sentFrames << "\" " + "txBytes=\"" << (double)sentBytes / 1024.0 << "K\" " + "rxFrames=\"" << recvFrames << "\" " + "rxBytes=\"" << (double)recvBytes / 1024.0 << "K\"/>\n"; } void MeshWifiInterfaceMac::Report (std::ostream & os) const