lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] Try to Increase Jumbo Packet size beyond 9K


From: Rishi Khan
Subject: Re: [lwip-users] Try to Increase Jumbo Packet size beyond 9K
Date: Sat, 11 Oct 2008 00:14:25 -0400

You may want to consider TCP window scaling. I had a similar problem and couldn't get the bandwidth up with normal frame sizes. However, after implementing window scaling, it works. See:
http://savannah.nongnu.org/patch/?6537
This is a patch to 1.3.0

Rishi

On Oct 10, 2008, at 4:28 PM, Gary Olson wrote:

Hi,

I have been working with LWIP and have made a few modifications to create Jumbo Packet sizes:



At first I was creating 2020 Packets, Then Increased them to 4040, the number being my specific packet size for my Xilinx FPGA Design.



Finally I was able to increase the packet size to 8080. However after that I tried to go to 10100 and have not been able to reach



This size. When the problem occurs, the PC which talks to the LWIP FPGA design performs a ARP Request and the LWIP software



Running on the Xilinx Board does not respond. There have been discussions on memory corruption causing ARP problems (Ping).



I tried a few solutions from the discussions but still could not get it to work.





Does anyone know how to create larger packets then 9 K. I have a Intel GigE Ethernet card capable of sending 16K packets.



The main reason I need to do this Is I have a bandwidth requirement that could be met only if I can get my packet size higher



Then what I can do at this time. I would like to get 16K packets to be received. Just in case someone would like to see



what I changed to get these packets sizes here is info on what I changed.





------------------------------------------------------------------



Changes made in the xlltemac.h file





// Changed by Gary XTE_MTU to be 3050 previously 1500

// Changed to 4080  Sept 15 08  This works for 4040 packets

// 4380  does not work at this time

// 4680  does not work at this time

// 5080  does not work at this time

// Changed to 6400  This works fof 6060 packets

// Changed to 8140  Trying this for 8080 packets

#define XTE_MAC_ADDR_SIZE 6 /* MAC addresses are 6 bytes */

#define XTE_MTU 8140 /* max MTU size of an Ethernet frame */

#define XTE_JUMBO_MTU 8192 /* max MTU size of a jumbo Ethernet frame */

#define XTE_HDR_SIZE        14     /* size of an Ethernet header */

#define XTE_HDR_VLAN_SIZE 18 /* size of an Ethernet header with VLAN */

#define XTE_TRL_SIZE 4 /* size of an Ethernet trailer (FCS) */

#define XTE_MAX_FRAME_SIZE (XTE_MTU + XTE_HDR_SIZE + XTE_TRL_SIZE)

#define XTE_MAX_VLAN_FRAME_SIZE (XTE_MTU + XTE_HDR_VLAN_SIZE + XTE_TRL_SIZE)

#define XTE_MAX_JUMBO_FRAME_SIZE (XTE_JUMBO_MTU + XTE_HDR_SIZE + XTE_TRL_SIZE)



#define XTE_DEFAULT_OPTIONS                     \

    (                                           \

     XTE_JUMBO_OPTION |                         \

     XTE_FLOW_CONTROL_OPTION |                  \

     XTE_BROADCAST_OPTION |                     \

     XTE_FCS_INSERT_OPTION |                    \

     XTE_FCS_STRIP_OPTION |                     \

     XTE_LENTYPE_ERR_OPTION |                   \

     XTE_TRANSMITTER_ENABLE_OPTION |            \

     XTE_RECEIVER_ENABLE_OPTION)

/**< XTE_DEFAULT_OPTIONS specify the options set in XLlTemac_Reset () and

 *   XLlTemac_CfgInitialize() */



------------------------------------------------------------------



Changes made in

Changes made in the xlltemacif.c file



                /* maximum transfer unit */

                //  removed by gary  netif->mtu = XTE_MAX_FRAME_SIZE;

                //netif->mtu = 3032; // Changed by gary 1482;

                //netif->mtu = 6400;  works for 6060

                netif->mtu = 8120;  //try for 8080







--------------------------------------------------------------



BEGIN LIBRARY

 PARAMETER LIBRARY_NAME = lwip

 PARAMETER LIBRARY_VER = 3.00.a

 PARAMETER PROC_INSTANCE = microblaze_0

 PARAMETER tcp_mss = 8560

PARAMETER mem_size = 500000

 PARAMETER pbuf_pool_bufsize = 8600

 PARAMETER tcp_wnd = 40000

 PARAMETER tcp_snd_buf = 40000

 PARAMETER tcp_tx_checksum_offload = true

 PARAMETER tcp_rx_checksum_offload = true

 PARAMETER udp_ttl = 255

 PARAMETER ip_default_ttl = 255

END



Thank You,

  Gary Olson



_______________________________________________
lwip-users mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/lwip-users





reply via email to

[Prev in Thread] Current Thread [Next in Thread]