Ethernet: Messaging on the Physical Layer

Messages sent by EtherMAC mark the beginning of a transmission. The end of a transmission is not explicitly represented by a message, but instead, the EtherMAC calculates it from the frame length and the transmission rate. Frames are represented by EtherFrame.

When frames collide, the transmission is aborted -- in this case EtherMAC makes use of the modelled jam signals to figure out when colliding transmissions end.

When a transmitting station senses a collision, it transmits a jam signal. Jam signals are represented by a EtherJam message. When EtherMAC received a jam signal, it knows that one transmission has ended in jamming -- thus when it receives as many jam messages as colliding frames, it can be sure all transmissions have been aborted.

Receiving a jam message marks the beginning (and not the end) of a jam signal, so actually EtherMAC has to wait for the duration of the jamming before assuming the channel is free again.

In burst mode, filled inter-frame gaps are represented with EtherFilledIFG packets.

Carrier extension is modelled by simply adding to the frame length, using the addBitLength() method of cPacket.