oracle directory permssions and listener 2004-10-12 - By Hollis, Les
Here is a direct cut from Oracle Corporation Power point slides concerning listener process in their Database Fundamentals II course which covers Networking and RMAN.
1. The client establishes a connection to the listener by using the configured protocol and sends the listener a connect packet. 2. The listener checks that the SID is defined. If it is, the listener will spawn a new thread or process to service the new connection. An IPC connection is then established between the listener and the new process or thread. 3. The new process or thread selects a "new TCP/IP port from the list of free user-defined ports" and passes this information back to the listener. 4. The listener inserts this new port into a redirect packet and sends it back to the client and the "original TCP socket between the client and the listener is then reset". 5. A "new TCP connection" is established to the redirect address specified in the redirect packet and a connect packet is then forwarded to the dedicated server process. 6. The dedicated server process can now finally accept the incoming connection and forwards an ACCEPT message back to the client.
Which says that the connection is redirected to a different port on the TCP stack and that is what is used for communication. The port 1521 or whatever is for the initial "listening" (hence the listener name) or a connection request. It is not the final port used for communication.
-- --Original Message-- -- From: Trey Gruel [mailto:drathos-suseoracle@(protected)] Sent: Tuesday, October 12, 2004 1:58 PM To: suse-oracle@(protected) Subject: RE: [suse-oracle] oracle directory permssions and listener
On Tue, 12 Oct 2004, Hollis, Les wrote: <snip> > Now, once the connection is MADE, through port 15xx (1521 if you prefer) a > response is sent to your client that directs the actual connection to a port > other than that of the listener. Your client then reconnects to the > database with the port number supplied to it. > > Take a look at a listener.log and see what port numbers you are actually > conversing on somewhere in the 30000 and up range typically.... but not > always true it depends on the server. <snip>
I don't think that is correct. The port numbers listed in your logs are, I believe, the *source* port number. In this example:
12-AUG-2004 11:42:24 * (CONNECT_DATA=(SID=TRATST)(SERVER=DEDICATED)(CID=(PROGRAM =)(HOST=rydrsd01)(USER=trfprod))(SERVER=dedicated)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.253.11)(PORT=47478)) * establish * TRATST * 0
I believe that means that the connection is from 192.168.253.11:47478.
Take a look at netstat. I've got a daemon running with a connection to Oracle that shows up like this with 'netstat -n' (don't resolve names):
tcp 0 0 127.0.0.1:53932 127.0.0.1:1521 ESTABLISHED tcp 0 0 127.0.0.1:1521 127.0.0.1:53932 ESTABLISHED
Here's the lsof results as well:
tarlog 19546 logger 5u IPv4 108111853 TCP 127.0.0.1:53932->127.0.0.1:1521 (ESTABLISHED) oracle 19558 oracle 12u IPv4 108111854 TCP 127.0.0.1:1521->127.0.0.1:53932 (ESTABLISHED)
-- trey
-- To unsubscribe, email: suse-oracle-unsubscribe@(protected) For additional commands, email: suse-oracle-help@(protected) Please see http://www.suse.com/oracle/ before posting
-- To unsubscribe, email: suse-oracle-unsubscribe@(protected) For additional commands, email: suse-oracle-help@(protected) Please see http://www.suse.com/oracle/ before posting
|
|