View | Details | Raw Unified | Return to bug 2318
Collapse All | Expand All

(-)a/src/wifi/model/mac-low.cc (-7 / +7 lines)
 Lines 1634-1640   MacLow::ForwardDown (Ptr<const Packet> p Link Here 
1634
                ", mode=" << txVector.GetMode  () <<
1634
                ", mode=" << txVector.GetMode  () <<
1635
                ", duration=" << hdr->GetDuration () <<
1635
                ", duration=" << hdr->GetDuration () <<
1636
                ", seq=0x" << std::hex << m_currentHdr.GetSequenceControl () << std::dec);
1636
                ", seq=0x" << std::hex << m_currentHdr.GetSequenceControl () << std::dec);
1637
  if (!m_ampdu || hdr->IsRts ())
1637
  if (!m_ampdu || hdr->IsRts () || hdr->IsBlockAck ())
1638
    {
1638
    {
1639
      m_phy->SendPacket (packet, txVector, preamble);
1639
      m_phy->SendPacket (packet, txVector, preamble);
1640
    }
1640
    }
 Lines 2886-2891   MacLow::DeaggregateAmpduAndReceive (Ptr< Link Here 
2886
bool
2886
bool
2887
MacLow::StopMpduAggregation (Ptr<const Packet> peekedPacket, WifiMacHeader peekedHdr, Ptr<Packet> aggregatedPacket, uint16_t size) const
2887
MacLow::StopMpduAggregation (Ptr<const Packet> peekedPacket, WifiMacHeader peekedHdr, Ptr<Packet> aggregatedPacket, uint16_t size) const
2888
{
2888
{
2889
  if (peekedPacket == 0)
2890
    {
2891
      NS_LOG_DEBUG ("no more packets in queue");
2892
      return true;
2893
    }
2894
2889
  WifiPreamble preamble;
2895
  WifiPreamble preamble;
2890
  WifiTxVector dataTxVector = GetDataTxVector (m_currentPacket, &m_currentHdr);
2896
  WifiTxVector dataTxVector = GetDataTxVector (m_currentPacket, &m_currentHdr);
2891
2897
 Lines 2914-2925   MacLow::StopMpduAggregation (Ptr<const P Link Here 
2914
      preamble = WIFI_PREAMBLE_LONG;
2920
      preamble = WIFI_PREAMBLE_LONG;
2915
    }
2921
    }
2916
2922
2917
  if (peekedPacket == 0)
2918
    {
2919
      NS_LOG_DEBUG ("no more packets in queue");
2920
      return true;
2921
    }
2922
2923
  //An HT STA shall not transmit a PPDU that has a duration that is greater than aPPDUMaxTime (10 milliseconds)
2923
  //An HT STA shall not transmit a PPDU that has a duration that is greater than aPPDUMaxTime (10 milliseconds)
2924
  if (m_phy->CalculateTxDuration (aggregatedPacket->GetSize () + peekedPacket->GetSize () + peekedHdr.GetSize () + WIFI_MAC_FCS_LENGTH, dataTxVector, preamble, m_phy->GetFrequency ()) > MilliSeconds (10))
2924
  if (m_phy->CalculateTxDuration (aggregatedPacket->GetSize () + peekedPacket->GetSize () + peekedHdr.GetSize () + WIFI_MAC_FCS_LENGTH, dataTxVector, preamble, m_phy->GetFrequency ()) > MilliSeconds (10))
2925
    {
2925
    {

Return to bug 2318