Io-net Architecture

Hi All,
I am trying to use io-net for an protocol driver to communicate to a
Serial Port Driver using io-net.
But the packets these modules deal with, are neither of type
ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
type binding” field in
io_net_registrant structure ? Does the io-net supports binding other
than ip,en,qnet or ppp ? Does it allow to specify any custom type of
binding ?
Any help will be appreciated.
Thanks,
Manoj

Is it that your protocol driver needs to be independent of the device
underneath it? If so, your best bet would be to write a Filter module which
sits just below the IP layer(Above the convertor).You get the whole packet
including ethernet/PPP headers here but you will have an offset which
indicates where does your data start.

Hope it helps

Sreekanth
ps : I am assuming that your protocol driver deals with IP packets alone.

“Manoj Kumar B” <bmanoj@msn.com> wrote in message
news:3C15C0F1.F2A8BC22@msn.com

Hi All,
I am trying to use io-net for an protocol driver to communicate to a
Serial Port Driver using io-net.
But the packets these modules deal with, are neither of type
ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
type binding” field in
io_net_registrant structure ? Does the io-net supports binding other
than ip,en,qnet or ppp ? Does it allow to specify any custom type of
binding ?
Any help will be appreciated.
Thanks,
Manoj

I just meant to ask whether Protocol X and Device Driver Y can communicate with
each other using io-net ?
The protocol X will have its own formatted packets which can be understood only
by Device Driver Y and vice-versa. ie,a case where the format of the packets
will not be IP or EN or PPP or QNET type.
Thanks Sreekanth for your response,
Regards,
Manoj

Sreekanth wrote:

Is it that your protocol driver needs to be independent of the device
underneath it? If so, your best bet would be to write a Filter module which
sits just below the IP layer(Above the convertor).You get the whole packet
including ethernet/PPP headers here but you will have an offset which
indicates where does your data start.

Hope it helps

Sreekanth
ps : I am assuming that your protocol driver deals with IP packets alone.

“Manoj Kumar B” <> bmanoj@msn.com> > wrote in message
news:> 3C15C0F1.F2A8BC22@msn.com> …
Hi All,
I am trying to use io-net for an protocol driver to communicate to a
Serial Port Driver using io-net.
But the packets these modules deal with, are neither of type
ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
type binding” field in
io_net_registrant structure ? Does the io-net supports binding other
than ip,en,qnet or ppp ? Does it allow to specify any custom type of
binding ?
Any help will be appreciated.
Thanks,
Manoj

io-net has no knowledge of packet contents. So yes, it should be possible
to plug in your own protocols and drivers.

-seanb

Manoj Kumar B <bmanoj@msn.com> wrote:
: I just meant to ask whether Protocol X and Device Driver Y can communicate with
: each other using io-net ?
: The protocol X will have its own formatted packets which can be understood only
: by Device Driver Y and vice-versa. ie,a case where the format of the packets
: will not be IP or EN or PPP or QNET type.
: Thanks Sreekanth for your response,
: Regards,
: Manoj

: Sreekanth wrote:

:> Is it that your protocol driver needs to be independent of the device
:> underneath it? If so, your best bet would be to write a Filter module which
:> sits just below the IP layer(Above the convertor).You get the whole packet
:> including ethernet/PPP headers here but you will have an offset which
:> indicates where does your data start.
:>
:> Hope it helps
:>
:> Sreekanth
:> ps : I am assuming that your protocol driver deals with IP packets alone.
:>
:> “Manoj Kumar B” <bmanoj@msn.com> wrote in message
:> news:3C15C0F1.F2A8BC22@msn.com
:> > Hi All,
:> > I am trying to use io-net for an protocol driver to communicate to a
:> > Serial Port Driver using io-net.
:> > But the packets these modules deal with, are neither of type
:> > ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
:> > type binding” field in
:> > io_net_registrant structure ? Does the io-net supports binding other
:> > than ip,en,qnet or ppp ? Does it allow to specify any custom type of
:> > binding ?
:> > Any help will be appreciated.
:> > Thanks,
:> > Manoj
:> >

Thanks Sean.

What value should I specify for bot_type field in io_net_registrant structure for my
custom protocol driver (remind you I cannot give “ip” or “qnet” or “ppp” because it is

neither of this). Similarly, what value I should specify for “top_type” field in
io_net_registrant structure for a custom device driver (I cannot give “en” because
this is not ethernet type) .

I actually tried giving bot_type = “ip” for my custom protocol driver and top_type =
“en” for my device driver ( as I thought packet contents would not be looked in by
io-net ). But then I could not receive any packets which protocol driver sends to my
device driver and vice-versa. I believe that the ip_en convertor which is included
with io-net,
peeps in the packet and discards if they not of the type ip or en.

Please let me know correct values I can give for “top_type” and “bot_type” fields in
case of custom protocol and custom device driver.
Many Thanks for your help,
Regards,
Manoj

Sean Boudreau wrote:

io-net has no knowledge of packet contents. So yes, it should be possible
to plug in your own protocols and drivers.

-seanb

Manoj Kumar B <> bmanoj@msn.com> > wrote:
: I just meant to ask whether Protocol X and Device Driver Y can communicate with
: each other using io-net ?
: The protocol X will have its own formatted packets which can be understood only
: by Device Driver Y and vice-versa. ie,a case where the format of the packets
: will not be IP or EN or PPP or QNET type.
: Thanks Sreekanth for your response,
: Regards,
: Manoj

: Sreekanth wrote:

:> Is it that your protocol driver needs to be independent of the device
:> underneath it? If so, your best bet would be to write a Filter module which
:> sits just below the IP layer(Above the convertor).You get the whole packet
:> including ethernet/PPP headers here but you will have an offset which
:> indicates where does your data start.
:
:> Hope it helps
:
:> Sreekanth
:> ps : I am assuming that your protocol driver deals with IP packets alone.
:
:> “Manoj Kumar B” <> bmanoj@msn.com> > wrote in message
:> news:> 3C15C0F1.F2A8BC22@msn.com> …
:> > Hi All,
:> > I am trying to use io-net for an protocol driver to communicate to a
:> > Serial Port Driver using io-net.
:> > But the packets these modules deal with, are neither of type
:> > ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
:> > type binding” field in
:> > io_net_registrant structure ? Does the io-net supports binding other
:> > than ip,en,qnet or ppp ? Does it allow to specify any custom type of
:> > binding ?
:> > Any help will be appreciated.
:> > Thanks,
:> > Manoj
:

Manoj,
Is it just a typo that you wrote you tried to give bot_type =
“ip” ? I guess the right way would be to give bot_type = “en” and top_type =
“ip”.Anyway even correcting might not work because io-net allows only one
convertor between layers (in this case ip and ethernet) and the Arp is
already in that place.When you try to load your module it will try to
replace the arp ( or ip_en as referred by io-net) which may not be what you
are expecting.Even i was under the impression that the io-net allows
stacking of convertors(Atleast that was what suggested in the document ) but
i think i was wrong there.My suggestion is if you either write a filter
which sits between Arp and ethernet or it sits between IP and arp.The
Difference being that either way you will have to choose between an ethernet
packet with any protocol or an IP packet with any device underneath it

Hope it helps.

Sreekanth.

“Manoj Kumar B” <bmanoj@msn.com> wrote in message
news:3C178C10.DF746F2E@msn.com
Thanks Sean

What value should I specify for bot_type field in io_net_registrant
structure for my custom protocol driver (remind you I cannot give “ip” or
“qnet” or “ppp” because it is
neither of this). Similarly, what value I should specify for “top_type”
field in io_net_registrant structure for a custom device driver (I cannot
give “en” because this is not ethernet type) .
I actually tried giving bot_type = “ip” for my custom protocol driver and
top_type = “en” for my device driver ( as I thought packet contents would
not be looked in by
io-net ). But then I could not receive any packets which protocol driver
sends to my device driver and vice-versa. I believe that the ip_en convertor
which is included with io-net,
peeps in the packet and discards if they not of the type ip or en.
Please let me know correct values I can give for “top_type” and “bot_type”
fields in case of custom protocol and custom device driver.
Many Thanks for your help,
Regards,
Manoj
Sean Boudreau wrote:
io-net has no knowledge of packet contents. So yes, it should be possible
to plug in your own protocols and drivers.
-seanb
Manoj Kumar B <bmanoj@msn.com> wrote:
: I just meant to ask whether Protocol X and Device Driver Y can
communicate with
: each other using io-net ?
: The protocol X will have its own formatted packets which can be
understood only
: by Device Driver Y and vice-versa. ie,a case where the format of the
packets
: will not be IP or EN or PPP or QNET type.
: Thanks Sreekanth for your response,
: Regards,
: Manoj
: Sreekanth wrote:
:> Is it that your protocol driver needs to be independent of the device
:> underneath it? If so, your best bet would be to write a Filter module
which
:> sits just below the IP layer(Above the convertor).You get the whole
packet
:> including ethernet/PPP headers here but you will have an offset which
:> indicates where does your data start.
:>
:> Hope it helps
:>
:> Sreekanth
:> ps : I am assuming that your protocol driver deals with IP packets alone.
:>
:> “Manoj Kumar B” <bmanoj@msn.com> wrote in message
:> news:3C15C0F1.F2A8BC22@msn.com
:> > Hi All,
:> > I am trying to use io-net for an protocol driver to communicate to
a
:> > Serial Port Driver using io-net.
:> > But the packets these modules deal with, are neither of type
:> > ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
:> > type binding” field in
:> > io_net_registrant structure ? Does the io-net supports binding other
:> > than ip,en,qnet or ppp ? Does it allow to specify any custom type of
:> > binding ?
:> > Any help will be appreciated.
:> > Thanks,
:> > Manoj
:> >

We don’t have the values enumerated currently. You can choose anything
that is descriptive of your driver / protocol.

-seanb

Manoj Kumar B <bmanoj@msn.com> wrote:
: Thanks Sean.

: What value should I specify for bot_type field in io_net_registrant structure for my
: custom protocol driver (remind you I cannot give “ip” or “qnet” or “ppp” because it is

: neither of this). Similarly, what value I should specify for “top_type” field in
: io_net_registrant structure for a custom device driver (I cannot give “en” because
: this is not ethernet type) .

: I actually tried giving bot_type = “ip” for my custom protocol driver and top_type =
: “en” for my device driver ( as I thought packet contents would not be looked in by
: io-net ). But then I could not receive any packets which protocol driver sends to my
: device driver and vice-versa. I believe that the ip_en convertor which is included
: with io-net,
: peeps in the packet and discards if they not of the type ip or en.

: Please let me know correct values I can give for “top_type” and “bot_type” fields in
: case of custom protocol and custom device driver.
: Many Thanks for your help,
: Regards,
: Manoj

: Sean Boudreau wrote:

:> io-net has no knowledge of packet contents. So yes, it should be possible
:> to plug in your own protocols and drivers.
:>
:> -seanb
:>
:> Manoj Kumar B <bmanoj@msn.com> wrote:
:> : I just meant to ask whether Protocol X and Device Driver Y can communicate with
:> : each other using io-net ?
:> : The protocol X will have its own formatted packets which can be understood only
:> : by Device Driver Y and vice-versa. ie,a case where the format of the packets
:> : will not be IP or EN or PPP or QNET type.
:> : Thanks Sreekanth for your response,
:> : Regards,
:> : Manoj
:>
:> : Sreekanth wrote:
:>
:> :> Is it that your protocol driver needs to be independent of the device
:> :> underneath it? If so, your best bet would be to write a Filter module which
:> :> sits just below the IP layer(Above the convertor).You get the whole packet
:> :> including ethernet/PPP headers here but you will have an offset which
:> :> indicates where does your data start.
:> :>
:> :> Hope it helps
:> :>
:> :> Sreekanth
:> :> ps : I am assuming that your protocol driver deals with IP packets alone.
:> :>
:> :> “Manoj Kumar B” <bmanoj@msn.com> wrote in message
:> :> news:3C15C0F1.F2A8BC22@msn.com
:> :> > Hi All,
:> :> > I am trying to use io-net for an protocol driver to communicate to a
:> :> > Serial Port Driver using io-net.
:> :> > But the packets these modules deal with, are neither of type
:> :> > ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
:> :> > type binding” field in
:> :> > io_net_registrant structure ? Does the io-net supports binding other
:> :> > than ip,en,qnet or ppp ? Does it allow to specify any custom type of
:> :> > binding ?
:> :> > Any help will be appreciated.
:> :> > Thanks,
:> :> > Manoj
:> :> >

Thanks Sean.

I got the solution.
I, initially tried to give “bot_type” binding of protocol driver = “bt” and “top_type”
binding of device driver = “bt” (because my case did not require any convertor). But this
was not working,

Then I tried as follows:
I gave “bot_type” binding of protocol driver = “bt” and “top_type” binding of device driver
= “tp”.Then I wrote a convertor of type “bt_tp”.
This works. My protocol and device driver can now send/receive pkts intended for each
other…

Many thanks for your response.
Regards,
Manoj


Sean Boudreau wrote:

We don’t have the values enumerated currently. You can choose anything
that is descriptive of your driver / protocol.

-seanb

Manoj Kumar B <> bmanoj@msn.com> > wrote:
: Thanks Sean.

: What value should I specify for bot_type field in io_net_registrant structure for my
: custom protocol driver (remind you I cannot give “ip” or “qnet” or “ppp” because it is

: neither of this). Similarly, what value I should specify for “top_type” field in
: io_net_registrant structure for a custom device driver (I cannot give “en” because
: this is not ethernet type) .

: I actually tried giving bot_type = “ip” for my custom protocol driver and top_type =
: “en” for my device driver ( as I thought packet contents would not be looked in by
: io-net ). But then I could not receive any packets which protocol driver sends to my
: device driver and vice-versa. I believe that the ip_en convertor which is included
: with io-net,
: peeps in the packet and discards if they not of the type ip or en.

: Please let me know correct values I can give for “top_type” and “bot_type” fields in
: case of custom protocol and custom device driver.
: Many Thanks for your help,
: Regards,
: Manoj

: Sean Boudreau wrote:

:> io-net has no knowledge of packet contents. So yes, it should be possible
:> to plug in your own protocols and drivers.
:
:> -seanb
:
:> Manoj Kumar B <> bmanoj@msn.com> > wrote:
:> : I just meant to ask whether Protocol X and Device Driver Y can communicate with
:> : each other using io-net ?
:> : The protocol X will have its own formatted packets which can be understood only
:> : by Device Driver Y and vice-versa. ie,a case where the format of the packets
:> : will not be IP or EN or PPP or QNET type.
:> : Thanks Sreekanth for your response,
:> : Regards,
:> : Manoj
:
:> : Sreekanth wrote:
:
:> :> Is it that your protocol driver needs to be independent of the device
:> :> underneath it? If so, your best bet would be to write a Filter module which
:> :> sits just below the IP layer(Above the convertor).You get the whole packet
:> :> including ethernet/PPP headers here but you will have an offset which
:> :> indicates where does your data start.
:> :
:> :> Hope it helps
:> :
:> :> Sreekanth
:> :> ps : I am assuming that your protocol driver deals with IP packets alone.
:> :
:> :> “Manoj Kumar B” <> bmanoj@msn.com> > wrote in message
:> :> news:> 3C15C0F1.F2A8BC22@msn.com> …
:> :> > Hi All,
:> :> > I am trying to use io-net for an protocol driver to communicate to a
:> :> > Serial Port Driver using io-net.
:> :> > But the packets these modules deal with, are neither of type
:> :> > ip,en,qnet or ppp. What should I specify “top type binding” or “bottom
:> :> > type binding” field in
:> :> > io_net_registrant structure ? Does the io-net supports binding other
:> :> > than ip,en,qnet or ppp ? Does it allow to specify any custom type of
:> :> > binding ?
:> :> > Any help will be appreciated.
:> :> > Thanks,
:> :> > Manoj
:> :