I have 2 Network card in my QNX box. 1 is 100Mbit/s and the second one is 1000Mbits/s card. QNX automatically setup both network card and when I go into “phlip” I see en0 (100Mbits card) and en1 (1000Mbit card) respectively. The problem I am having is that I have a real-time requirement communication (6 Mbytes/s or more) happening with my en1 device, but it is having trouble keeping up.
I found that once I disable en0 or even unplug the network cable from en0 this problem goes away. So I am thinking has to do with how io-net is servicing both network card and how traffic from en0 can hold service required from en1. Is there a way to setup the io-net so that we can service the two network card at a different priority? I cannot afford any retransmission or data loss from en1, but I don’t care if en0 losses data because nothing in that connection has any hard real-time constraints. Thanks in advance for your help. I would appreciate how I can modify the boot script (or script I can put in /etc/rc.d/ in QNX to make this work.
Thanks
What version of OS are you using, what is you card model?
i’m running 6.3.2 and devn-speedo.so and devn-i82544.so.
You should be able to set the priority of each driver with the argument priority=xxx. It would also be a good idea to increase the number of rx and tx descriptor for the 82544 driver ( we use 4096 ).
If this is a standard setup I believe you can edit the net enum database file to add these arguments.
just changing the priority doesn’t seem to work, I still have the issue. But when I run a completely seperate TCP/IP stack the issue is gone.
how can I in the net enum file add this option so that my i82544.so starts like this.
io-net -i1 -di82544 priority=24 receive=4096 transmit=4096 -ptcpip prefix=/sock2
thanks
If two io-net solves the problem then it’s not a priority problem. Either it’s a flaw in io-net or there is something in your config that screws up io-net.
Don’t know the answer about your enum file question.