A few sections from the available documentation on how oracle connections work.

May help, may not, but it’s all I can find.

SOURCE/CLIENT

The source/client is wyclapph017 IP 10.217.28.189

DATABASE HOST ADDRESSES

The cluster scan (Single Client Access Name) is racprd007b-scan on port 1526 (IP 10.217.105.73 and 74 and 75).

These addresses are shared across doclorad004 and doclorad005.

The database listener is on port 1536 and uses the IP addresses:

Doclorad004

10.217.105.98  doclorad004.uk.centricaplc.com

10.217.105.147 doclorad004-vip.uk.centricaplc.com

Doclorad005

10.217.105.174 doclorad005.uk.centricaplc.com

10.217.105.148 doclorad005-vip.uk.centricaplc.com

===

“When a client submits a request, the SCAN listener listening on a SCAN IP address and the SCAN port is contracted on a client’s behalf. Because all services on the cluster are registered with the SCAN listener, the SCAN listener replies with the address of the local listener on the least-loaded node (Each scan listener keeps updated cluster load statistics) where the service is currently being offered. Finally, the client establishes connection to the service through the listener on the node where service is offered.All of these actions take place transparently to the client without any explicit configuration required in the client.”

 

===

The listener uses the dispatcher as a type of service handler to which it can direct client requests.
When a client request arrives, the listener performs one of the following actions:
• Hands the connection request directly to a dispatcher.
• Issues a redirect message to the client, containing the protocol address of a dispatcher.

The client then terminates the network session to the listener and establishes a network session to the dispatcher, using the network address provided in the redirect message.

The listener uses direct hand off whenever possible.
Redirect messages are used, for example, when dispatchers are remote to the listener.

===

When the client makes a connection, Connection packet is sent to a Scan listener.
Connection is then redirected to a Node Listener.
Node Listener forks the shadow process for the dedicated connection to use or passes the connection onto dispatcher for shared server connection model.
The most intense operation a TNS listener does, the fork (bequeath) of a shadow process is completed by the Node listener.

 

How the Client connection works thru SCAN?
Client connection attempt, based on the IP provide from DNS, reaches one the SCAN LIstner.
SCAN Listener is aware of load and availability conditions of all Instances in the cluster.
It direct the client to most sutiable instance.
This is done by directing the client to the Listener on node-vip of the most suitable instance.
Once the client connection reaches the local listerner it hands off the connection to database.