Hi,
I think this one is much more interresting :
So, let’s say :
- an ethernet packet come from the cable in a ethernet card.
- the card driver gives the packet to the “en->raw convertor” (without
copying the data)
- the convertor gives it to the “producer” driver (it insert some new data)
- the producer gives the packet+data to a “raw->en convertor”
- the “raw->en convertor” gives the packet+data to an other card driver and
it is sent.
| producer |
||
| |
|| ||
| |
→ A|| |_______|B------------------->
Is it possible for io-net to handle all this?
Is it possible that it takes less than 5 microseconds to go from point A to
point B ?
Or is it completely impossible?
What does happen when an other packet arrives to point A before the first
packet has reached point B?
(now, I understand what are threads, mutex,…I guess it’s going to be part
of the answers)
This time, I hope these questions are more interresting for you…
Thank you for all the help you already gave me and for , I hope, some new
one
Arnaud Stoumont
Read my comments inline
“arno stoum” <starn@yucom.be> wrote in message
news:ac3efk$fq6$1@inn.qnx.com…
Hi,
I think this one is much more interresting :
So, let’s say :
- an ethernet packet come from the cable in a ethernet card.
- the card driver gives the packet to the “en->raw convertor” (without
copying the data)
- the convertor gives it to the “producer” driver (it insert some new
data)
- the producer gives the packet+data to a “raw->en convertor”
- the “raw->en convertor” gives the packet+data to an other card driver
and
it is sent.
| producer |
||
| |
|| ||
| |
→ A|| |_______|B-------------------
Is it possible for io-net to handle all this?
Yes
Is it possible that it takes less than 5 microseconds to go from point A
to
point B ?
Or is it completely impossible?
Very Unlikely unless a highly compact code is written
What does happen when an other packet arrives to point A before the first
packet has reached point B?
The point A(Assuming the driver) does a tx_up for the received packet.Once
the call returns it can send another packet.So the Answer is under a normal
circumstance nothing untoward should happen.The Packets almost flow in a
serialized fashion between the modules.But you should take note that the
producer cannot receive any other packet till it returns from the rx_up
routine.For best results thus you might have to have another thread sending
packets to B
(now, I understand what are threads, mutex,…I guess it’s going to be
part
of the answers)
This time, I hope these questions are more interresting for you…
Thank you for all the help you already gave me and for , I hope, some new
one >
Arnaud Stoumont
\
Hope these answers clear your doubts
Sreekanth
Thank you for all that, Sreekanth.