Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

cRIO-903X jumbo Frame support

Hello,

 

Would you please confirm If the 903X cRIO family supports Jumbo Frame communication over the GigE ports?

 

If No, would you please explain the reason?

 

Thanks

Med Mehdi BOUZID
Field Sales Engineer (Tunisia & Algeria)
National Instruments Arabia Branch
www.ni.com\arabia
0 Kudos
Message 1 of 13
(6,486 Views)

It should.  I have not tried it and we do not test it, but the hardware supports it and there is no reason for the driver to not support it.  You'll have to enable the feature using the appropriate Linux commands.

0 Kudos
Message 2 of 13
(6,462 Views)

Hi,

I encountered a problem with this yesterday. In order to enable jumbo frames on my 9039, I had to ssh to the controller (using PuTTY) and issue the command "ifconfig eth0 mtu 9000". That correctly configured the port but running a "Configure Grab" vi just produced the same error, complaining that jumbo frames weren't enabled.

Restart the controller and the jumbo frames have gone but if I then repeated the process the vi was happy. Odd.

Anyway, what you then need to do is make the change to the port settings persistent. I couldn't find any succinct information on how to do this but the following works.

 

Ensure that ssh access is enabled on the controller (checkbox in MaX)

Connect to the controller over ssh (PuTTY is great for this. The default system username is "admin" and no password)

cd /etc/rc5.d(Enter)    (this is the startup folder for runlevel 5)

Look for an unused slot. The files have names like Snn-xxxxxxx. and they execute in order. I created a file called "S12-jumbo" as the network starts right at the beginning.

To create the file...

vi S12-jumbo(Enter)

i  (switches to insert mode)

#! /bin/sh(Enter)   (this line opens a shell. Don't miss the space between the ! and the /)

ifconfig eth0 mtu 9000(Enter)

(Esc):wq(Enter)   (the esc key returns you from insert mode. The colon opens the command line w and q write and quit. I know, vi is a horrible editor. You could just transfer the file in from your PC)

So, by this stage, we should have a file created called /etc/rc5.d/S12-jumbo

We need to make it executable so type

chmod +x S12-jumbo

 

We are done!

Restart your controller and the first ethernet port will support jumbo frames. If you need to do the same for port 2, just add the line "ifconfig eth1 mtu 9000"  to the above script.

 

Hope this helps someone.

Cheers,

Nick

Message 3 of 13
(4,930 Views)

Hello:

I was trying to set my flexrio controller 7935 to support Jumbo frame, following your post I input: ifconfig eth0 mtu 9000,but it doesn't looks like it working.

 

admin@CLifconfig eth0 mtu 9000
ifconfig: SIOCSIFMTU: Device or resource busy

 

Can anyone give me some suggestion? Thanks!

0 Kudos
Message 4 of 13
(3,936 Views)

A quick search online finds this error and comments like 

While network device is up,  system can not change the MTU. unless, do  " ifconfig eth0 down" before.

So perhaps you need to configure it before it comes up (or take it down briefly to change the settings) . Try setting the MTU in the startup script  and see if that's early enough. If not then perhaps you need to add the "down" and "up" commands around it.

0 Kudos
Message 5 of 13
(3,931 Views)

I just tried that.

 

admin@CL:~# ifconfig eth0 down
admin@CL:~# ifconfig eth0 mtu 9000
ifconfig: SIOCSIFMTU: Invalid argument

admin@CL:~# ifconfig eth0 mtu 1500
admin@CL:~# ifconfig eth0 mtu 1600
ifconfig: SIOCSIFMTU: Invalid argument

 

any suggestion?

0 Kudos
Message 6 of 13
(3,929 Views)

Ah-ha!

Add the line

mtu="9000" 

to the [eth0] section of /etc/natinst/share/ni-rt.ini

I hadn't seen this before but I just tried it and it seems to work perfectly, and without all of the messing about with the rest of the system. I did this on a cRIO-9031 but it should work the same on your controller.

Hope this helps.

0 Kudos
Message 7 of 13
(3,921 Views)

I did what you told, add a line to this ini file, but after device restart, the last line I added mtu="9000" simply gone...

 

0 Kudos
Message 8 of 13
(3,915 Views)

I just rebooted and checked my chassis and it still has the line intact and reports the correct mtu in ifconfig.

I added it straight after the [eth0] line using the "vi" program. It's easy to exit "vi" without saving the file. Check it's saved correctly (do Esc:w!). If you added it at the bottom, make sure you have a carriage return after it. Beyond that I'm not sure what to suggest.

0 Kudos
Message 9 of 13
(3,910 Views)

I did "press ESC", press w, press q, and I even open the file again to check the line I put is there.

 

I also did add a Enter at the end of the line.

 

After reboot, it all gone...

0 Kudos
Message 10 of 13
(3,902 Views)