Impact on ConnectAttach()

When you call ConnectAttach(), you're specifying an ND, a PID, and a CHID. All that happens in Neutrino is that the kernel returns a connection ID to the Qnet "network handler" thread pictured in the diagram above. Since no message has been sent, you're not informed as to whether the node that you've just attached to is still alive or not. In normal use, this isn't a problem, because most clients won't be doing their own ConnectAttach()— rather, they'll be using the services of the library call open(), which does the ConnectAttach() and then almost immediately sends out an "open" message. This has the effect of indicating almost immediately if the remote node is alive or not.