Oracle Net8 Administrator's Guide
Release 8.0







Title and Copyright Information


Send Us Your Comments

1 Introducing Net8

What Net8 Does
What Happened to SQL*Net?
Net8 Applications
Why Use Net8?
Network Transparency
Protocol Independence
Media/Topology Independence
Heterogeneous Networking
Large Scale Scalability
Net8 Features
Scalability Features
Manageability Features
Host Naming
Oracle Net8 Assistant
Security Features
Other Features
Multiprotocol Support Using Oracle Connection Manager
Oracle Trace Assistant
Native Naming Adapters

2 Understanding Net8

Net8 Operations
Connect Operations
Connecting to Servers
Establishing Connections with the Network Listener
Bequeathed Sessions to Dedicated Server Processes
Redirected Sessions to Existing Server Processes
Refused Sessions
Disconnecting from Servers
User-Initiated Disconnect
Additional Connection Request
Abnormal Connection Termination
Timer Initiated Disconnect or Dead Connection Detection
Data Operations
Exception Operations
Net8 and the Transparent Network Substrate (TNS)
Net8 Architecture
Stack Communications
Stack Communications in an Oracle networking environment
Client-Server Interaction
Server-to-Server Interaction

3 Planning Your Network

Planning Overview
Defining Your Network Layout
Resolving Service Names
Naming Methods
Host Naming
Establishing a Connection Using the Host Naming Option
Host Naming Zero Configuration Scenario
Local Naming
Establishing a Connection Using the Local Naming Option
Configuring Local Naming
Centralized Naming using Oracle Names
Establishing a Connection Using the Centralized Naming Option
Configuring Centralized Naming
External Naming
Establishing a Connection Using the External Naming Option
Configuring External Naming
Oracle Names and Native Naming Adapters
Choosing a Naming Method
Improving Large Network Performance
Managing Connection Requests
Connection Pooling
Connection Concentration
Using Connection Pooling and Concentration
Load Balancing
Listener Load Balancing
Randomizing Client Requests Among Several Listeners
Optimizing Data Transfer by Adjusting the Session Data Unit (SDU) Size
Persistent Buffer Flushing for TCP/IP
Configuring Listener Queuesize
Planning Summary

4 Configuring Network Services

Zero Listener Configuration
Configuring the Network Listener
Naming the Listener
Configuring Listening Addresses
Defining Multiple Listening Addresses
Interprocess Communication (IPC) Listening Addresses
Configuring the Listener to Handle Larger Volumes of Connection Requests
Configuring the Listener for Database Services
Global Database Name
Oracle Home Directory
System Identifier (SID)
Configuring Prestarted or Prespawned Dedicated Server Processes
Registering Information with a Names Server
Configuring Other Listener Features
Configuring Protocol Specific Parameters
Configuring Validnode Checking
Configuring Persistent Buffer Flushing
Configuring Dead Connection Detection

5 Configuring Network Clients

Configuring Network Clients Using Oracle Net8 Assistant
Local Naming Configuration File
Oracle Net8 Assistant
The Oracle Net8 Assistant and Java
Starting the Oracle Net8 Assistant
Configuring a Profile Using the Oracle Net8 Assistant
Configuring Naming Methods
Default Naming Methods
Adding or Editing Naming Methods
Configuring Tracing Features
Configuring Logging Features
Routing Connection Requests
Configuring Advanced Net8 Functionality
TNS Time-Out Value
Registering Unique Client Identifiers
Turning Off Signal Handling
Disabling Out of Band Breaks
Configuring Security Features
Configuring the Server as a Client
Configuring Service Names Using the Oracle Net8 Assistant
Adding Service Names
Modifying Service Names
Configuring Advanced Service Name Options
Global Database Name
Session Data Unit (SDU) Size
Source Route Addresses
Configuring Clients to Use Oracle Names
Configuring the Client to Use Centralized Naming
Discovering Names Servers on the Network
How the Discovery Process Works
Client Cache Daemon Process
Starting the Client Cache Daemon Process

6 Oracle Names

What Oracle Names Does
Why Use Oracle Names?
How Oracle Names Works
Continuous Replication vs. Database Storage of Service Names
Single Region vs. Multiple Regions
What Data is Stored in a Names Server
Using Oracle Names with the Oracle Net8 Assistant
Configuring a Names Server
Starting a Names Server
Loading Service Names Information Into a Names Server
Creating a Database to Store Names Server Information
Creating a Database in a Delegated Region
Organizing and Naming Network Components
Single Domain Model
Hierarchical Naming Model
Default Domains
Multiple Domains
Using Consistent Domain Names
Using Regions to Decentralize Administrative Responsibilities
How Multiple Region Networks Are Organized

7 Oracle Connection Manager

What Oracle Connection Manager Does
Connection Concentration
Network Access Control
Multiple Protocol Support
How Oracle Connection Manager Works
Connection Manager Processes
Configuring Oracle Connection Manager
Configuring the Connection Manager to Listen on Multiple Addresses
Enabling Connection Concentration Features
Specifying Network Access Control Rules
Configuring Clients to Use Oracle Connection Manager
Starting Oracle Connection Manager

8 Using Net8

Procedures to Get the Network Running
Net8 Component Testing Methodology
Net8 Control Utilities
Using the Oracle Names Control Utility (NAMESCTL)
Starting a Names Server
Testing a Names Server
Test Network Objects Using NAMESCTL
Using the Listener Control Utility (LSNRCTL)
Starting a Listener
Test a Listener
Using the Connection Manager Control Utility (CMCTL)
Starting Oracle Connection Manager
Testing Oracle Connection Manager
Starting TNSPING
TNSPING Examples
Effect on Performance
Starting the Trace Route Utility
Examples of Trace Route Output
Testing a Client
Connecting from the Operating System to Test a Client
Connecting from the Tool Logon Screen to Test a Client
Connecting from 3GL to Test a Client
Connecting Using Special Commands within Tools
Checklist for Troubleshooting Common Startup Problems

9 Migrating to Net8

Migrating from SQL*Net version 2
Why Migrate to Net8?
Considerations for Migrating to Oracle Names version 8
Migrating from Oracle Names version 2 using a Database
Migrating from Oracle Names version 2 using the Dynamic Discovery Option
Checklist for Ensuring Proper Migration to Oracle Names version 8
Other Obsolete Parameters
Using Oracle Connection Manager instead of Oracle MultiProtocol Interchange
Migration Scenarios
Migrating an existing Oracle7 Database to Oracle8
Installing a new Oracle8 database in an existing Oracle7 network
Migrating SQL*Net v2 clients to Net8
Migrating to Oracle8 with Oracle Names

10 Troubleshooting Net8

Troubleshooting Common Network Errors
Troubleshooting Network Problems Using Log and Trace Files
Logging Error Information
Error Stacks
Log Filenames
Setting Log Parameters
Changing Log File Names
Changing Log File Directories
Using Log Files
Listener's Log Audit Trail
Format of the Listener's Log Audit Trail
Using Audit Trail Information
Tracing Error Information
Setting Tracing Parameters
Setting Trace Parameters Using Component Configuration Files
Setting Trace Parameters Using Component Control Utilities
Setting Trace Parameters Using Oracle Trace
Evaluating Net8 Traces
Understanding the Flow of Data Packets Between Network Nodes
Understanding Pertinent Error Output
Using the Trace Assistant to Examine Your Trace Files
Understanding Information Traversing the Network in Net8 Packets
Analyze the Data Collected into Appropriate Statistics
Example of a Trace File
Contacting Oracle Customer Support

11 Net8 Enhancements for Programmers

Net8 OPEN API Function Calls
Finding the Net8 OPEN Applications Program Interface
Building Your Own Application
Configuring the System to Use Your Net8 OPEN Application
Sample Programs
Net8 OPEN API Errors
UNIX Client Programming
Signal Handler and Alarm Programming
Oracle OSD Signal Handling Rules
Bequeath Adapter
Child Process Termination

12 Extending Net8 Functionality

Oracle Enterprise Manager
Oracle Advanced Networking Option
Oracle Security Server

A Control Utility Reference

Listener Control Utility (LSNRCTL)
LSNRCTL Commands
Oracle Names Control Utility (NAMESCTL)
NAMESCTL Operating Modes
NAMESCTL Parameter Options
NAMESCTL's Distributed Operation
Confirmation Mode in NAMESCTL
Connection Manager Control Utility (CMCTL)
CMCTL Commands

B Configuration Parameters

Syntax Rules for Configuration Files
Further Syntax Rules for Configuration Files
Network Character Set
Service Name Character Set
Profile Parameters (SQLNET.ORA)
Local Naming Parameters (TNSNAMES.ORA)
Listener Parameters (LISTENER.ORA)
Oracle Names Parameters (NAMES.ORA)
Oracle Connection Manager Parameters (CMAN.ORA)
Protocol-specific Parameters (PROTOCOL.ORA)

C Sample Configuration Files

Profile (SQLNET.ORA)
Local Naming Configuration File (TNSNAMES.ORA)
Listener Configuration File (LISTENER.ORA)
Names Server Configuration File (NAMES.ORA)
Oracle Connection Manager Configuration File (CMAN.ORA)

D Native Naming Adapters

System Requirements
How the NIS Naming Adapter Interacts with SQL*Net and Oracle
Oracle Database Service Names are Stored in a Separate NIS Map
Configuring NIS Servers to Support the NIS Adapter
Add the tnsnames Map to the Existing Set of NIS Maps
Verifying that the tnsnames Map Has Been Properly Installed
How the NDS Adapter Interacts with SQL*Net and Oracle
What the Client Does
What the Server Does
System Requirements
Optional Configuration Parameters for Clients and Servers
Optional Configuration Parameter for the Client
Optional Configuration Parameter for the Server Configuration
Known Limitations


Copyright © 1997 Oracle Corporation.

All Rights Reserved.