Lines Matching refs:packet
86 DPRINTF(Ethernet, "Fifo is full. Drop packet: len=%d\n",
87 std::prev(fifo.end())->packet->length);
89 _size -= std::prev(fifo.end())->packet->length;
98 // Return true if the newly pushed packet gets inserted
101 // scheduled for the old head of queue packet and schedule a new one
102 if (!empty() && fifo.begin()->packet == ptr) {
114 assert(_size >= fifo.begin()->packet->length);
115 // Erase the packet at the head of the queue
116 _size -= fifo.begin()->packet->length;
139 EtherSwitch::Interface::recvPacket(EthPacketPtr packet)
141 Net::EthAddr destMacAddr(packet->data);
142 Net::EthAddr srcMacAddr(&packet->data[6]);
150 it->enqueue(packet, interfaceId);
152 DPRINTF(Ethernet, "sending packet from MAC %x on port "
156 receiver->enqueue(packet, interfaceId);
159 // don't (drop packet); in both cases packet is received on
166 EtherSwitch::Interface::enqueue(EthPacketPtr packet, unsigned senderId)
169 // if the newly push packet gets inserted at the head of the queue
171 // packet was higher than the packets already in the fifo)
173 // "curTick" + "switchingDelay of the packet at the head of the fifo"
174 // to send this packet out the external link
176 if (outputFifo.push(packet, senderId)) {
192 DPRINTF(Ethernet, "packet sent: len=%d\n", outputFifo.front()->length);
306 packet->serialize("packet", cp);
314 packet = make_shared<EthPacketData>(16384);
315 packet->unserialize("packet", cp);