16.2 Network Naming Methods

 < Day Day Up > 



There are a number of different network naming methods Oracle Database can use. What is a naming method? A naming method is a way in which a node name on a network will be translated into a form understandable and routable by hardware and network software on that network. The only fact that can really be stated about tuning naming methods with respect to Oracle Database is as follows. The smaller number of steps required to pass messages across a network using the SQL*Net software then the faster database communication will be. It should be noted though that not much can be done to speed up SQL*Net in this respect. There are five different configurations available. Applying different configuration parameters within the different naming methods can help to increase Oracle SQL*Net performance processing.

  • Local Naming.   Uses a configuration file called tnsnames.ora or Transparent Network Substrate. This method is the default method and the most commonly used. Using an IP-Address instead of a hostname will be noticeably faster but if network IP-Addresses change frequently, which they are want to do, this could cause a maintenance problem.

  • Directory Naming.   Net service names and their mappings are stored in a lightweight directory access protocol (LDAP) server, much like a DNS server.

  • Oracle Names.   Typically used for globally distributed networks involving the use of an Oracle Names server. The Oracle Names server is used to store service addresses and net service names. An Oracle Names server can reside on a machine separate to that of the database server, thus distributing processing.

    Note 

     Oracle Database 10 Grid   Oracle Names is desupported. Directory Naming can be used instead.

  • Host Naming.   This is the simplest method of database communication using operating-system-based IP-Address to hostname mapping host files. Host files on Solaris Unix are placed in the /etc/system directory and on Windows in the c:\windows\ system32\drivers\etc directory.

  • External Naming.   Third-party naming services.

  •  Oracle Database 10 Grid   Easy Connect.   Allows a direct connection to a database server using a connection string as shown in this syntax diagram and the following example.

CONNECT user/password@host:port/service

This example connects me to my database server on my 2000server host, through port 1521, connecting to the database called TEST.

16.2.1 Local Naming

As far as tuning is concerned, local naming using the tnsnames.ora file is the naming method that will suffice for explanatory purposes.

Dedicated Versus Shared Servers

When a user connects to a database a server process is used to service the connection. The server process can either be a dedicated server process or a shared server process. For a dedicated server process the process is started up and retained for the duration of the connection. A shared server process, on the other hand, is shared indirectly between different connections through dispatcher processes. Shared server processes and dispatchers comprise what used to be called Oracle MTS or Multi-Threaded Server configuration.

Tip 

Shared servers was called MTS or Multi-Threaded Server prior to Oracle9i Database.

Shared server processes and dispatchers will be covered later on in this chapter. Both dedicated and shared server connections are shown in Figure 16.1. This diagram is repeated for convenience and is a copy of Figure 11.1.

click to expand
Figure 16.1: Dedicated Versus Shared Servers

A dedicated server process can be used to allocate a dedicated connection to a local name. A dedicated server process connection can be forced in a shared server process configuration, and is necessary for certain types of functionality such as using RMAN.

Tip 

RMAN is an acronym for Recovery Manager.

Following is an example tnsnames.ora file containing TNS name connections for an OLTP database and an RMAN backup connection. RMAN requires a dedicated server connection.

<TNSname> =    (DESCRIPTION =       (ADDRESS_LIST =          (ADDRESS = (PROTOCOL = TCP) (HOST = <hostname>)             (PORT = 1521))       )       (CONNECT_DATA =           (SID = <SID>)          (ORACLE_HOME = /oracle/ora81)          (SERVER = SHARED)       )    )     RMAN =     (DESCRIPTION =       (ADDRESS_LIST =          (ADDRESS = (PROTOCOL = TCP) (HOST = <hostname>)             (PORT = 1521))       )       (CONNECT_DATA = (SERVICE_NAME = RMAN) (SERVER =          DEDICATED))    )

The Session Data Unit Buffer (SDU)

SQL*Net uses a buffer to contain information ready for sending over the network. The buffer is flushed to the network and sent on request or when it is full. The larger the buffer is then the more information is sent over the network at once. SDU buffer size can range from 512 bytes up to 32 Kb. The default setting is operating system dependent. The following example shows a tnsnames.ora configuration file with its SDU buffer size altered. Sessions containing large transactions may benefit from a larger SDU buffer size.

<TNSname> =    (DESCRIPTION =       (ADDRESS_LIST =          (ADDRESS = (PROTOCOL = TCP) (HOST = <hostname>)             (PORT = 1521))       )       (SDU=1024)       (CONNECT_DATA = (SID = <SID>) (ORACLE_HOME =           /oracle/ora81)       )    )



 < Day Day Up > 



Oracle High Performance Tuning for 9i and 10g
Oracle High Performance Tuning for 9i and 10g
ISBN: 1555583059
EAN: 2147483647
Year: 2003
Pages: 164

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net