Forcing QNET to query for existing nodes.

Hi,

I’d like to be able to send a message to io-net/qnet to force it to query
for existing nodes running qnet. I am going to be looking for server names
by scanning the /net directory, and have noticed that unless I know a name
of a node, I can’t get qnet to display until it decides to take a look and
see who is there.

Is it possible?

Thanks
Kevin

I found this function mentioned in the QNET Networking docs, netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <kevin@ffflyingrobots.com> wrote in message
news:ap9gpk$1e2$1@inn.qnx.com

Hi,

I’d like to be able to send a message to io-net/qnet to force it to query
for existing nodes running qnet. I am going to be looking for server
names
by scanning the /net directory, and have noticed that unless I know a name
of a node, I can’t get qnet to display until it decides to take a look and
see who is there.

Is it possible?

Thanks
Kevin

No, netmgr_ctl() won’t help. In fact, there is no way in QNET to re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe there are
otherways
to do it.

-xtang

Kevin Stallard <kevin@ffflyingrobots.com> wrote in message
news:ap9ieq$337$1@inn.qnx.com

I found this function mentioned in the QNET Networking docs, netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force it to
query
for existing nodes running qnet. I am going to be looking for server
names
by scanning the /net directory, and have noticed that unless I know a
name
of a node, I can’t get qnet to display until it decides to take a look
and
see who is there.

Is it possible?

Thanks
Kevin
\

Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to find it w/o
knowning the name of the node on which it is residing. This would allow
dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so I can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <xtang@qnx.com> wrote in message
news:apa9ik$l7b$1@nntp.qnx.com

No, netmgr_ctl() won’t help. In fact, there is no way in QNET to re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force it to
query
for existing nodes running qnet. I am going to be looking for server
names
by scanning the /net directory, and have noticed that unless I know a
name
of a node, I can’t get qnet to display until it decides to take a look
and
see who is there.

Is it possible?

Thanks
Kevin


\

Kevin Stallard <kevin@ffflyingrobots.com> wrote in message
news:apa9o0$r0s$1@inn.qnx.com

Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to find it w/o
knowning the name of the node on which it is residing. This would allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so I can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force it to
query
for existing nodes running qnet. I am going to be looking for
server
names
by scanning the /net directory, and have noticed that unless I know
a
name
of a node, I can’t get qnet to display until it decides to take a
look
and
see who is there.

Is it possible?

Thanks
Kevin




\

You know…all you guys have to do is figure out how we can get a list of
available nodes in a reliable fashion…a global name server isn’t all that
important since we have the pathnamespace…

Kevin

“Xiaodan Tang” <xtang@qnx.com> wrote in message
news:apaapi$lvb$1@nntp.qnx.com

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to find it
w/o
knowning the name of the node on which it is residing. This would allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so I can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force it
to
query
for existing nodes running qnet. I am going to be looking for
server
names
by scanning the /net directory, and have noticed that unless I
know
a
name
of a node, I can’t get qnet to display until it decides to take a
look
and
see who is there.

Is it possible?

Thanks
Kevin






\

Kevin,

There is and undocumented option for npm-qnet.so that you may wish to try.
(This message will self destruct in 10 seconds).

broadcast=0x0003000A

which will force a node to advertise its presence every 10 seconds. I am
told the ‘0003’ is a “do broadcast” command and the ‘000A’ is for 10
seconds. I don’t know what the permissable range is for the time interval.

There has been a hint that this might be formalised in a future release.

Jim

“Kevin Stallard” <kevin@ffflyingrobots.com> wrote in message
news:apad31$1ar$1@inn.qnx.com

You know…all you guys have to do is figure out how we can get a list of
available nodes in a reliable fashion…a global name server isn’t all
that
important since we have the pathnamespace…

Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to find it
w/o
knowning the name of the node on which it is residing. This would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force it
to
query
for existing nodes running qnet. I am going to be looking for
server
names
by scanning the /net directory, and have noticed that unless I
know
a
name
of a node, I can’t get qnet to display until it decides to take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin








\

“Jim Douglas” <jim@dramatec.co.uk> wrote in message
news:apatjl$hta$1@inn.qnx.com

Kevin,

There is and undocumented option for npm-qnet.so that you may wish to try.
(This message will self destruct in 10 seconds).

Mission Impossible never had to worry aboug Google :slight_smile:

Kevin

Kevin Stallard <kevin@ffflyingrobots.com> wrote in message
news:apad31$1ar$1@inn.qnx.com

You know…all you guys have to do is figure out how we can get a list of
available nodes in a reliable fashion…a global name server isn’t all
that
important since we have the pathnamespace…

Well, this only makes it work around the problem, but in real world, you
don’t want
to stat() all the possiable path to find out the server.

On the other hand, the undocumented “broadcast=” option, would make it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node show up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know ALL the
nodes
on the otherside of earth is come and go? What if some node is on a flaky
link, and not
broadcast reachable?

This will only work on some special condition (a LAN, reasonable reliable
media).

-xtang

Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to find it
w/o
knowning the name of the node on which it is residing. This would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force it
to
query
for existing nodes running qnet. I am going to be looking for
server
names
by scanning the /net directory, and have noticed that unless I
know
a
name
of a node, I can’t get qnet to display until it decides to take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin








\

On the other hand, the undocumented “broadcast=” option, would make it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node show up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know ALL the
nodes
on the otherside of earth is come and go? What if some node is on a flaky
link, and not
broadcast reachable?

The TCPIP part of this is understandable. That would be too hard to do, but
it is unlikley that we would do what we want using TCPIP as it would be
local LAN only (TCPIP has too much overhead, and too much has to be done to
make it dynamic (have to use DHCP, etc). This is how we intend to use it
(local LAN only)…

Thanks for your feedback xtang…it’s appreciated.

Kevin

This will only work on some special condition (a LAN, reasonable reliable
media).

-xtang


Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to find
it
w/o
knowning the name of the node on which it is residing. This would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to force
it
to
query
for existing nodes running qnet. I am going to be looking for
server
names
by scanning the /net directory, and have noticed that unless I
know
a
name
of a node, I can’t get qnet to display until it decides to
take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin










\

Kevin,

On a perticular system, don’t you always KNOW all your node names? You know
you can
talk to a node even if it is not show up under /net, do you?

-xtang

Kevin Stallard <kevin@ffflyingrobots.com> wrote in message
news:apbp18$ipj$1@inn.qnx.com

On the other hand, the undocumented “broadcast=” option, would make it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node show
up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know ALL
the
nodes
on the otherside of earth is come and go? What if some node is on a
flaky
link, and not
broadcast reachable?

The TCPIP part of this is understandable. That would be too hard to do,
but
it is unlikley that we would do what we want using TCPIP as it would be
local LAN only (TCPIP has too much overhead, and too much has to be done
to
make it dynamic (have to use DHCP, etc). This is how we intend to use it
(local LAN only)…

Thanks for your feedback xtang…it’s appreciated.

Kevin

This will only work on some special condition (a LAN, reasonable
reliable
media).

-xtang


Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to
find
it
w/o
knowning the name of the node on which it is residing. This would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network so
I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and
maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference. Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to
force
it
to
query
for existing nodes running qnet. I am going to be looking
for
server
names
by scanning the /net directory, and have noticed that unless
I
know
a
name
of a node, I can’t get qnet to display until it decides to
take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin












\

Well, for now, yes…but this is something we are working on moving away
from. This would remove an additional dependancy from the application if we
didn’t have to care about node names.

Kevin

“Xiaodan Tang” <xtang@qnx.com> wrote in message
news:apbrf9$n7s$1@nntp.qnx.com

Kevin,

On a perticular system, don’t you always KNOW all your node names? You
know
you can
talk to a node even if it is not show up under /net, do you?

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apbp18$ipj$> 1@inn.qnx.com> …

On the other hand, the undocumented “broadcast=” option, would make it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node show
up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know ALL
the
nodes
on the otherside of earth is come and go? What if some node is on a
flaky
link, and not
broadcast reachable?

The TCPIP part of this is understandable. That would be too hard to do,
but
it is unlikley that we would do what we want using TCPIP as it would be
local LAN only (TCPIP has too much overhead, and too much has to be done
to
make it dynamic (have to use DHCP, etc). This is how we intend to use
it
(local LAN only)…

Thanks for your feedback xtang…it’s appreciated.

Kevin

This will only work on some special condition (a LAN, reasonable
reliable
media).

-xtang


Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to
find
it
w/o
knowning the name of the node on which it is residing. This
would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global
Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of them.

I need a way to find out the names of the nodes on the network
so
I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in QNET
to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and
maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference.
Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to
force
it
to
query
for existing nodes running qnet. I am going to be looking
for
server
names
by scanning the /net directory, and have noticed that
unless
I
know
a
name
of a node, I can’t get qnet to display until it decides to
take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin














\

I would second this approach. If there was some way of configuring a logical
system regardless of the physical layout it would open up a new world of
possibilities. QNX4/Fleet got close to this - trouble is the more I use and
get to know about the limitations of QNX6/QNet, the more the dream
receeds…

Jim


“Kevin Stallard” <kevin@ffflyingrobots.com> wrote in message
news:apbri7$lla$1@inn.qnx.com

Well, for now, yes…but this is something we are working on moving away
from. This would remove an additional dependancy from the application if
we
didn’t have to care about node names.

Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apbrf9$n7s$> 1@nntp.qnx.com> …
Kevin,

On a perticular system, don’t you always KNOW all your node names? You
know
you can
talk to a node even if it is not show up under /net, do you?

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apbp18$ipj$> 1@inn.qnx.com> …

On the other hand, the undocumented “broadcast=” option, would make
it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node
show
up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know
ALL
the
nodes
on the otherside of earth is come and go? What if some node is on a
flaky
link, and not
broadcast reachable?

The TCPIP part of this is understandable. That would be too hard to
do,
but
it is unlikley that we would do what we want using TCPIP as it would
be
local LAN only (TCPIP has too much overhead, and too much has to be
done
to
make it dynamic (have to use DHCP, etc). This is how we intend to use
it
(local LAN only)…

Thanks for your feedback xtang…it’s appreciated.

Kevin

This will only work on some special condition (a LAN, reasonable
reliable
media).

-xtang


Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to
find
it
w/o
knowning the name of the node on which it is residing. This
would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global
Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of
them.

I need a way to find out the names of the nodes on the network
so
I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in
QNET
to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and
maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking
docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference.
Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in
message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to
force
it
to
query
for existing nodes running qnet. I am going to be
looking
for
server
names
by scanning the /net directory, and have noticed that
unless
I
know
a
name
of a node, I can’t get qnet to display until it decides
to
take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin
















\

A fully “node name independent” approch, would be the global name services.
Which will comming.

If you want to “have all the node name, and poke their naem space”, then
you can obveriosly hide “how to obtain all the node name” in somewhere
else.

Jim Douglas <jim@dramatec.co.uk> wrote in message
news:apc0li$qtl$1@inn.qnx.com

I would second this approach. If there was some way of configuring a
logical
system regardless of the physical layout it would open up a new world of
possibilities. QNX4/Fleet got close to this - trouble is the more I use
and
get to know about the limitations of QNX6/QNet, the more the dream
receeds…

Do you want to share some of the dream so that it might come true someday?

-xtang

Jim


“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in message
news:apbri7$lla$> 1@inn.qnx.com> …
Well, for now, yes…but this is something we are working on moving away
from. This would remove an additional dependancy from the application
if
we
didn’t have to care about node names.

Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apbrf9$n7s$> 1@nntp.qnx.com> …
Kevin,

On a perticular system, don’t you always KNOW all your node names? You
know
you can
talk to a node even if it is not show up under /net, do you?

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apbp18$ipj$> 1@inn.qnx.com> …

On the other hand, the undocumented “broadcast=” option, would
make
it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node
show
up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know
ALL
the
nodes
on the otherside of earth is come and go? What if some node is on
a
flaky
link, and not
broadcast reachable?

The TCPIP part of this is understandable. That would be too hard to
do,
but
it is unlikley that we would do what we want using TCPIP as it would
be
local LAN only (TCPIP has too much overhead, and too much has to be
done
to
make it dynamic (have to use DHCP, etc). This is how we intend to
use
it
(local LAN only)…

Thanks for your feedback xtang…it’s appreciated.

Kevin

This will only work on some special condition (a LAN, reasonable
reliable
media).

-xtang


Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able
to
find
it
w/o
knowning the name of the node on which it is residing. This
would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a
“Global
Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of
them.

I need a way to find out the names of the nodes on the
network
so
I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in
QNET
to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this?
and
maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking
docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference.
Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in
message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet
to
force
it
to
query
for existing nodes running qnet. I am going to be
looking
for
server
names
by scanning the /net directory, and have noticed that
unless
I
know
a
name
of a node, I can’t get qnet to display until it
decides
to
take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin


















\

Kevin…

I hope that all is well.

You may want to create a dedicated udp layer that broadcast the name
every x seconds. Whoever is interested, listens and acts upon it.
This is easy to do, and it is also both reliable and consistent with
real-time applications as the like in which you might be interested. It
also shields you from future implementations of qnet. Also would work
for 4.2x if need be.

regards…

Miguel.


Kevin Stallard wrote:

Hi,

I’d like to be able to send a message to io-net/qnet to force it to query
for existing nodes running qnet. I am going to be looking for server names
by scanning the /net directory, and have noticed that unless I know a name
of a node, I can’t get qnet to display until it decides to take a look and
see who is there.

Is it possible?

Thanks
Kevin

[…]

  • trouble is the more I use and
    get to know about the limitations of QNX6/QNet, the more the dream
    receeds…

Do you want to share some of the dream so that it might come true someday?

-xtang

Share it with whom? I was beginning to think seriously about this, and I
would start by making a list of all the
roadblocks/detours/caveats/minefields that have come to light in my work to
date, in the hope that some of them could be removed or better signposted.
Trouble is it will be a very long document, but I will give it some quality
time if I can believe that it is going to be read by those that influence
the development of QNX6.

Jim

“Kevin Stallard” <kevin@ffflyingrobots.com> wrote in message
news:apbri7$lla$1@inn.qnx.com

Well, for now, yes…but this is something we are working on moving away
from. This would remove an additional dependancy from the application if
we
didn’t have to care about node names.

Let me clarify this a little bit.

Node names are still extremely useful. It helps you identify which physical
piece of hardware to which you are talking. Very important when it comes to
diagnostics. Robotics it is especially important. In the robotics case,
you may want to introduce a new machine w/o having to tell everyone else
its name.

I don’t think a global name locator service is the answer, but the ability
to discover who is there and what resources they have is. I really think
you guys hit a home run when you decided to have servers show up in the
pathname space. Yeah…when you query for this info there are a lot of
stat()'s going on, but this should only occur during initial discovery. I’m
not sure its that big a deal as when you know what services are there, you
connect to them usuall for the lifetime of what ever operation you are
performing.

Anyone knows that if you are going to access a file, you don’t open and
close, then re-open it for every record.

We just need to be able to broadcast a “tell me who you are” message to
currently running nodes and get responses on demand. The broadcast idea
will work, but like you said xtang, it is going to result in a lot of
chatter. It would be nice if remote qnets could respond to a “tell my who
you are” broadcast.

Kevin



Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apbrf9$n7s$> 1@nntp.qnx.com> …
Kevin,

On a perticular system, don’t you always KNOW all your node names? You
know
you can
talk to a node even if it is not show up under /net, do you?

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apbp18$ipj$> 1@inn.qnx.com> …

On the other hand, the undocumented “broadcast=” option, would make
it
chatty, but
somewhat reliable (on node being show up under /net).

Let me point this out, there is NO reliable way to make “all node
show
up”
from the design
view of QNET. What if QNET is based on tcpip, do you want to know
ALL
the
nodes
on the otherside of earth is come and go? What if some node is on a
flaky
link, and not
broadcast reachable?

The TCPIP part of this is understandable. That would be too hard to
do,
but
it is unlikley that we would do what we want using TCPIP as it would
be
local LAN only (TCPIP has too much overhead, and too much has to be
done
to
make it dynamic (have to use DHCP, etc). This is how we intend to use
it
(local LAN only)…

Thanks for your feedback xtang…it’s appreciated.

Kevin

This will only work on some special condition (a LAN, reasonable
reliable
media).

-xtang


Kevin

“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apaapi$lvb$> 1@nntp.qnx.com> …

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:apa9o0$r0s$> 1@inn.qnx.com> …
Hey xtang…how’s things goin?

I want to be able to start a server on any node and be able to
find
it
w/o
knowning the name of the node on which it is residing. This
would
allow

This is what name_attach(name, NAME_ATTACH_FLAG_GLOBAL)
and name_open(name, NAME_ATTACH_FLAG_GLOBAL) suppose
to do.

Unfortunatly this is not true right now. We will have a “Global
Name
Services”
manager to address this.

-xtang

dynamic shifting of processes and the dynamic discovery of
them.

I need a way to find out the names of the nodes on the network
so
I
can
query each one…

Thanks,
Kevin
“Xiaodan Tang” <> xtang@qnx.com> > wrote in message
news:apa9ik$l7b$> 1@nntp.qnx.com> …
No, netmgr_ctl() won’t help. In fact, there is no way in
QNET
to
re-learn
the existing node.
Node names under /net is not that “reliable” anyway.

It might be interesting to know why you want to do this? and
maybe
there
are
otherways
to do it.

-xtang

Kevin Stallard <> kevin@ffflyingrobots.com> > wrote in message
news:ap9ieq$337$> 1@inn.qnx.com> …
I found this function mentioned in the QNET Networking
docs,
netmgr_ctl(),
but it doesn’t seem to exist in the library reference.
Would
netmgr_ctl()
help me out with this?

Thanks
Kevin

“Kevin Stallard” <> kevin@ffflyingrobots.com> > wrote in
message
news:ap9gpk$1e2$> 1@inn.qnx.com> …
Hi,

I’d like to be able to send a message to io-net/qnet to
force
it
to
query
for existing nodes running qnet. I am going to be
looking
for
server
names
by scanning the /net directory, and have noticed that
unless
I
know
a
name
of a node, I can’t get qnet to display until it decides
to
take
a
look
and
see who is there.

Is it possible?

Thanks
Kevin
















\

[full snip]
The more I read this thread, the thing you need is
already provided in NetBIOS name registering scheme…

(NetBIOS uses broadcast to announce itself, each node listens to them
and remembers it locally, use timeout to expire stale entry,
could establish “master browser” without any administration…)

The trouble is QNET doesn’t use that
(but you can run Samba nmbd on each node and glean browser data from /var/samba)

kabe

Hey Miguel,

Nice to hear from you, how are you doing? Are you going to be in SJC
anytime soon? We still need to do lunch :slight_smile:

You may want to create a dedicated udp layer that broadcast the name
every x seconds.

I think that QNET does this as well (the broadcast parameter of which I was
informed)

Whoever is interested, listens and acts upon it.
This is easy to do, and it is also both reliable and consistent with
real-time applications as the like in which you might be interested. It
also shields you from future implementations of qnet. Also would work
for 4.2x if need be.

Can I use UDP w/o having to worry about IP addresses? Or are you talking
about doing this in a UDP like way, but without using the tcpip stack?

Hey…I just had an idea.

I wonder if it would be possible to create another npm-name.so. A simple
network protocol that would be loaded along with npm-qnet.so that could be
asked to broadcast a request of names and the record them and make them
available to the rest of the apps locally. When ever it received this
broadcast message it would send back it’s own name. That might suffice, I
wonder how hard it would be to implement.

This would essentially do what you are suggesting w/o using tcpip stack and
I wouldn’t have to muck around with IP addresses…

Best Regards,
Kevin

“Miguel Simon” <simon@ou.edu> wrote in message
news:3DB99ADA.4020006@ou.edu

Kevin…

I hope that all is well.


regards…

Miguel.


Kevin Stallard wrote:
Hi,

I’d like to be able to send a message to io-net/qnet to force it to
query
for existing nodes running qnet. I am going to be looking for server
names
by scanning the /net directory, and have noticed that unless I know a
name
of a node, I can’t get qnet to display until it decides to take a look
and
see who is there.

Is it possible?

Thanks
Kevin

HI…

kabe@sra-tohoku.co.jp wrote:

[full snip]
The more I read this thread, the thing you need is
already provided in NetBIOS name registering scheme…

(NetBIOS uses broadcast to announce itself, each node listens to them
and remembers it locally, use timeout to expire stale entry,
could establish “master browser” without any administration…)

The trouble is QNET doesn’t use that
(but you can run Samba nmbd on each node and glean browser data from /var/samba)

right, you could also use fs-nfs2 to do something like this. Not
realtime, but you could use it with imagination and some work.

regards…

Miguel.