equal
deleted
inserted
replaced
809 if (hdr.IsQosAck ()) |
809 if (hdr.IsQosAck ()) |
810 { |
810 { |
811 AgreementsI it = m_bAckAgreements.find (std::make_pair (hdr.GetAddr2 (), hdr.GetQosTid ())); |
811 AgreementsI it = m_bAckAgreements.find (std::make_pair (hdr.GetAddr2 (), hdr.GetQosTid ())); |
812 RxCompleteBufferedPacketsWithSmallerSequence (it->second.first.GetStartingSequence (), |
812 RxCompleteBufferedPacketsWithSmallerSequence (it->second.first.GetStartingSequence (), |
813 hdr.GetAddr2 (), hdr.GetQosTid ()); |
813 hdr.GetAddr2 (), hdr.GetQosTid ()); |
814 RxCompleteBufferedPackets (hdr.GetAddr2 (), hdr.GetQosTid ()); |
814 RxCompleteBufferedPacketsUntilFirstLost (hdr.GetAddr2 (), hdr.GetQosTid ()); |
815 NS_ASSERT (m_sendAckEvent.IsExpired ()); |
815 NS_ASSERT (m_sendAckEvent.IsExpired ()); |
816 m_sendAckEvent = Simulator::Schedule (GetSifs (), |
816 m_sendAckEvent = Simulator::Schedule (GetSifs (), |
817 &MacLow::SendAckAfterData, this, |
817 &MacLow::SendAckAfterData, this, |
818 hdr.GetAddr2 (), |
818 hdr.GetAddr2 (), |
819 hdr.GetDuration (), |
819 hdr.GetDuration (), |
1561 { |
1561 { |
1562 AgreementsI it = m_bAckAgreements.find (std::make_pair (originator, tid)); |
1562 AgreementsI it = m_bAckAgreements.find (std::make_pair (originator, tid)); |
1563 if (it != m_bAckAgreements.end ()) |
1563 if (it != m_bAckAgreements.end ()) |
1564 { |
1564 { |
1565 RxCompleteBufferedPacketsWithSmallerSequence (it->second.first.GetStartingSequence (), originator, tid); |
1565 RxCompleteBufferedPacketsWithSmallerSequence (it->second.first.GetStartingSequence (), originator, tid); |
1566 RxCompleteBufferedPackets (originator, tid); |
1566 RxCompleteBufferedPacketsUntilFirstLost (originator, tid); |
1567 m_bAckAgreements.erase (it); |
1567 m_bAckAgreements.erase (it); |
1568 } |
1568 } |
1569 } |
1569 } |
1570 |
1570 |
1571 void |
1571 void |
1627 (*it).second.second.erase ((*it).second.second.begin (), i); |
1627 (*it).second.second.erase ((*it).second.second.begin (), i); |
1628 } |
1628 } |
1629 } |
1629 } |
1630 |
1630 |
1631 void |
1631 void |
1632 MacLow::RxCompleteBufferedPackets (Mac48Address originator, uint8_t tid) |
1632 MacLow::RxCompleteBufferedPacketsUntilFirstLost (Mac48Address originator, uint8_t tid) |
1633 { |
1633 { |
1634 AgreementsI it = m_bAckAgreements.find (std::make_pair (originator, tid)); |
1634 AgreementsI it = m_bAckAgreements.find (std::make_pair (originator, tid)); |
1635 if (it != m_bAckAgreements.end ()) |
1635 if (it != m_bAckAgreements.end ()) |
1636 { |
1636 { |
1637 uint16_t startingSeqCtrl = ((*it).second.first.GetStartingSequence ()<<4) & 0xfff0; |
1637 uint16_t startingSeqCtrl = ((*it).second.first.GetStartingSequence ()<<4) & 0xfff0; |