WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2011-Feb-16 16:08:28

wj326_0
Member
Registered: 2010-Oct-14
Posts: 52

Question about WARP frame format

1. Basically i think the Ethernet packet is the payload part of my packet. When it is passed to the MAC layer, MAC adds a MAC header to my packet. Then the MAC header + payload is treated as payload when passed down to PHY layer. Phy layer adds PHY header to my packet. When the packet is transmitted, preamble and training symbols are added before the packet. I think base rate is modulating the packet header and full rate is modulating the packet payload.

there is a structure "Macframe"(structure "phyHeader"  and  "remainingTx") in warpmac.h. Is structure "Macframe" like a MAC Header or PHY Header?


2. OFDM Design used a 24 Bytes Header, it means structure "phyHeader" is 24 Bytes? and how can i find the bytes for each field in the header (length, srcAddr, destAddr and so on...... )?

i think 2 Bytes for "short int" Type and 1 Byte for "char" Type, right?



3.  i want to find the different between the warp frame format and the general Mac frame format,

here is the general Mac frame format in 802.11:
Byte:            2                          2                        6                    6                 6                          2                            6                   0 - 2312                 4
          Frame control     |     Ruration ID     |     Address1   |   Address2   |  Address3   |   Sequnece  Control   |      Address4    |      Frame Body    |      CRC     |
          <----------------------------------------------------------------------MAC Header--------------------------------------------------->


so i think the warp frame format is something like below, am i right?:

fullRate    |   codeRate   |   length   |   srcAddr    |  destAddr    |    relAddr    |     pktType   |    seqNum    |    Reserved byte 1-10     |    checksum    |     remainingTx   |    plus ethernet paket   |
<----------------------------------------------------------------------------------PHY Header------------------------------------------------------------------------->
<----------------------------------------------------------------------------------MAC Header---------------------------------------------------------------------------------------------->

4. i use iperf to send udp from one node to another:   iperf -u -c 10.0.0.2
i printf the txframe.header.length in code csmamac.c. i find the result on terminal is 1516, but when i use the wireshark, the frame is 1512, there is always 4 Bytes less than in Terminal (it happens again when i use ping to test).

and sometimes when i use some packet sending tools (D-ITG) to set the payload to 1472 (max. payload ), it always fail to do it. the max payload which allow me to set is 1468 Bytes, so these is another 4 Bytes less. could you please tell me why?

Thanks!

Offline

 

#2 2011-Feb-16 16:10:05

wj326_0
Member
Registered: 2010-Oct-14
Posts: 52

Re: Question about WARP frame format

5. what is the maximum for the payload part of warp frame(macframe.header.length) ? 1472 Bytes?

Offline

 

#3 2011-Feb-17 14:14:30

murphpo
Administrator
From: Mango Communications
Registered: 2006-Jul-03
Posts: 5159

Re: Question about WARP frame format

1) Our design doesn't make a distinction between the MAC and PHY header. The first 24 bytes of every packet are the header, containing both PHY information (payload length and modulation rate) and MAC information (packet type, addresses, etc.).

2-3) phyHeader defines the format of the first 24 bytes of each packet. The length, modulation rate and code rate fields must be located in their assigned positions (the PHY uses these values). The last two bytes will always be overwritten by a 16-bit checksum. The rest of the bytes are available for arbitrary use by the MAC.

4) The packet length over-the-air is 28 bytes longer than the Ethernet frame (24 bytes for the wireless header, 4 bytes for the packet checksum).

5) The PHY can handle packets up to 2048 bytes. The Ethernet interface caps this at its MTU (usually 1500 bytes).

Offline

 

Board footer