Changes between Version 9 and Version 10 of WARPLab/Requirements


Ignore:
Timestamp:
Aug 22, 2013, 9:14:12 PM (11 years ago)
Author:
murphpo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WARPLab/Requirements

    v9 v10  
    2323  * Static IP address in the 10.0.0.X subnet
    2424  * Open firewall for UDP ports (10000 and [9000:9000+numNodes-1])
     25
     26----
     27
     28== Using Jumbo Ethernet Frames ==
     29The WARP hardware design supports Ethernet packets up to 9000 bytes. Any Ethernet packet larger than 1500 bytes is considered a "jumbo frame" and support for these jumbo frames among consumer NICs and switches is limited. To see if your hardware supports jumbo frames, increase the MTU setting on your computer to the maximum allowed setting. Then, two tests can determine the maximum usable payload: (a) a ping test, and (b) a WARPLab test.
     30----
     31==== Ping Test ====
     32Once the MTU on your machine is raised to its maximum, you can use pings from your computer to determine whether your switch and NIC can actually send and receive jumbo frames. Make sure you have a board configured with the WARPLab bitstream and a DIP switch of '0' (making its IP address 10.0.0.1).
     33
     34'''Windows:''' Open the command line 'cmd.exe' and type the following:
     35
     36{{{
     37>ping -l 8000 10.0.0.1
     38}}}
     39
     40This will send 8000 byte pings to the board. If the board responds, Windows will tell you how many bytes were actually returned. For example, we receive the following using one of our PCs:
     41
     42{{{
     43Pinging 10.0.0.1 with 8000 bytes of data:
     44Reply from 10.0.0.1: bytes=8000 time=2ms TTL=32
     45Reply from 10.0.0.1: bytes=8000 time=2ms TTL=32
     46Reply from 10.0.0.1: bytes=8000 time=2ms TTL=32
     47Reply from 10.0.0.1: bytes=8000 time=2ms TTL=32
     48}}}
     49
     50This shows that the 8000 byte ping packet was returned, and you computer and switch appear to support communicating with a WARP board with jumbo frames. If, however, you receive ping responses that look like this:
     51
     52{{{
     53Pinging 10.0.0.1 with 8000 bytes of data:
     54Reply from 10.0.0.1: bytes=1472 (sent 8000) time<1ms TTL=32
     55Reply from 10.0.0.1: bytes=1472 (sent 8000) time<1ms TTL=32
     56Reply from 10.0.0.1: bytes=1472 (sent 8000) time<1ms TTL=32
     57Reply from 10.0.0.1: bytes=1472 (sent 8000) time<1ms TTL=32
     58}}}
     59
     60Then only 1472 bytes were returned of the sent 8000. This means that the packets were fragmented and that the MTU was not set high enough to support the 8000 byte ping packet.
     61
     62'''Linux/OSX:''' Open a terminal and type the following:
     63
     64{{{
     65> ping -s 8000 10.0.0.1
     66}}}
     67
     68This will send 8000 byte pings to the board. The board should respond to these pings and return something similar to the following:
     69
     70{{{
     71PING 10.0.0.1 (10.0.0.1): 8000 data bytes
     725976 bytes from 10.0.0.1: icmp_seq=1 ttl=32 time=2.356 ms
     73wrong total length 5996 instead of 8028
     74}}}
     75
     76If, however, the MTU is not set high enough to support the 8000 byte pings, then the board may respond with a smaller reply:
     77
     78{{{
     79PING 10.0.0.1 (10.0.0.1): 8000 data bytes
     808008 bytes from 10.0.0.1: icmp_seq=0 ttl=32 time=2.928 ms
     818008 bytes from 10.0.0.1: icmp_seq=1 ttl=32 time=3.071 ms
     82}}}
     83----
     84==== WARPLab Test ====
     85If the ping test indicates that your PC and your Ethernet switch support jumbo frames, the next step is to see if WARPLab works with jumbo frames. When node objects are first set up in a WARPLab script, they run a test with their associated boards to see what maximum payload size can be supported. First, re-run the [wiki:../Reference/Utility#wl_setup 'wl_setup'] function in {{{M_Code_Reference}}} and select that you would like to enable jumbo frame support. Next, ensure one WARP board is programmed with the WARPLab bitstream and configured with DIP switch '0'. Then, copy and paste the following lines to the MATLAB command line:
     86
     87{{{
     88clear;
     89node = wl_initNodes(1);
     90disp(node.transport.maxPayload)
     91}}}
     92
     93This will display the payload size the WARPLab has configured itself to use. For one of our PCs, this value returns as {{{8960}}}, showing the jumbo frame support is correctly working.
     94
     95[[br]]
     96== Hardware Compatibility ==
     97
     98It is impossible to form a definitive list of hardware that is compatible with jumbo frame support, but we will maintain a list of observed setups and their compatibility. If you try jumbo frames and have a hardware setup that does or does not work with them, please post to [http://warpproject.org/forums/ the WARP forums] so we can add them to the list.
     99
     100'''Known Compatible:'''
     101 * Dell workstation, Windows 7 64-bit, Intel(R) 82573LB NIC
     102 * Netgear GS105 gigabit switch
     103
     104'''Known Partially Compatible:'''
     105 * Apple 2013 Macbook Pro, OSX 10.8.3, Apple Thunderbolt to Gigabit Ethernet Adapter
     106  * Appears to have a "hidden" MTU maximum around 8000, despite the GUI letting you choose 9000.
     107 * Apple 2011 Mac Mini, OSX 10.8.3, Broadcom 57765-B0
     108  * Appears to work for MTU < 7000. There were problems with larger MTUs, but those problems may be attributed to a bad switch.
     109
     110'''Known Incompatible:'''
     111 * Dell workstation, Windows 7 64-bit, Broadcom NetXtreme Gigabit Ethernet BCM5755
     112 * Apple 2010 Macbook Pro, OSX 10.8.3, Broadcom 5764-B0
     113
     114[[br]]