Oracle Net8 Administrator's Guide Release 8.0 A58230-01 |
Library | Product | Contents | Index

# 7
Oracle Connection Manager

Oracle Connection Manager is a multipurpose, networking service that provides connection concentration, network access control, and multiprotocol connectivity functionality. It is available only with the Oracle8 Enterprise Edition.

This chapter describes the features and functionality available with Oracle Connection Manager. It also outlines installation notes and configuration procedures.

This chapter includes the following sections:

- Section 7.1, "What Oracle Connection Manager Does"
- Section 7.2, "How Oracle Connection Manager Works"
- Section 7.3, "Configuring Oracle Connection Manager"
- Section 7.4, "Starting Oracle Connection Manager"

## 7.1 What Oracle Connection Manager Does

Oracle Connection Manager is a new application that is available with Oracle8 Enterprise Edition. It provides support for the following features:

- "Connection Concentration"
- "Network Access Control"
- "Multiple Protocol Support"

### 7.1.1 Connection Concentration

Oracle Connection Manager enables you to take advantage of Net8's ability to multiplex or funnel multiple logical client sessions through a single transport connection to a multi-threaded server destination. This is accomplished through Oracle Connection Manager's connection concentration feature.

Concentration reduces the demand on resources needed to maintain multiple connections between two processes by enabling the server to use fewer connection end points for incoming requests. This enables you to increase the total number of sessions that a server can handle. By using multiple Connection Managers, it is possible for thousands of concurrent users to connect to a server.

Figure 7-1 depicts how concentration works.

#### Figure 7-1 Connection Concentration Through Oracle Connection Manager

### 7.1.2 Network Access Control

Oracle Connection Manager also includes a feature which you can use to control client access to designated servers in a TCP/IP environment. By specifying certain filtering rules you may allow or restrict specific clients access to a server based on the following criteria:

- Source hostname(s) or IP address(es) for clients
- Destination hostname(s) or IP address(es) for servers
- Destination database server identifier

### 7.1.3 Multiple Protocol Support

Oracle Connection Manager also provides multiple protocol support enabling a client and server with different networking protocols to communicate with each other. This feature replaces functionality previously provided by the Oracle MultiProtocol Interchange with SQL*Net version 2.

Net8 can traverse as many networking protocol stacks as can be installed and supported. In fact, the number of networking protocols supported is limited only by those restrictions imposed by the specific node's hardware, memory and operating system.

Figure 7-2 depicts how a client in an SPX/IPX network can route its session to a server over a TCP/IP transport through Oracle Connection Manager.

#### Figure 7-2 Multiprotocol Support Through Oracle Connection Manager

## 7.2 How Oracle Connection Manager Works

Oracle Connection Manager acts like a router through which client connection requests may either be sent to its next hop or directly to a server. Clients who route their connection requests through a Connection Manager may then take advantage of the connection concentration, network access control, or multiprotocol support features configured on that Connection Manager.

### 7.2.1 Connection Manager Processes

There are three main processes associated with Oracle Connection Manager:

- CMGW
- CMADM
- CMCTL

Note:: On desktop platforms, the executables are CMGW80, CMADM80 and CMCTL80.

#### 7.2.1.1 CMGW

CMGW is a gateway process acting as a hub for the Connection Manager. This process is responsible for the following:

- registering with the Connection Manager Administration process
- listening for incoming SQL*Net 2.x or NET 8.x connection requests. By default it listens on port 1600
- initiating connection requests to listeners for clients
- relaying data between the client and server
- answering requests initiated by CMCTL

#### 7.2.1.2 CMADM

CMADM is a multi-threaded process that is responsible for all administrative issues of the Connection Manager. Its primary function is to maintain address information in the Oracle Names Server for the SQL*Net 2.x and NET 8.x clients. Other responsibilities include:

- processing the CMGW registration
- locating local Oracle Names Servers
- identifying all listeners serving at least one database instance
- registering address information about the CMGW and listeners
- monitoring changes in the network and update the Names Server
- answering requests initiated by CMCTL

Communication between CMGW and CMADM is done via interprocess communications. The Connection Manager periodically goes to the Names Server to update its cache of available services.

#### 7.2.1.3 CMCTL

CMCTL is the executable name for the Connection Manager control utility. It provides administrative access to CMADM and CMGW. For more information on the Connection Manager Control Utility, refer to Section A.3, "Connection Manager Control Utility (CMCTL)" in Appendix A, "Control Utility Reference".

## 7.3 Configuring Oracle Connection Manager

You may configure features specifying how the Connection Manager will work by adding or editing parameters in the Connection Manager configuration file (CMAN.ORA). This file consists of three sections:

- CMAN (which defines the listening address for the Connection Manager)
- CMAN_PROFILE (which defines general configuration parameters)
- CMAN_RULES (which defines rules for filtering incoming connection requests)

### 7.3.1 Configuring the Connection Manager to Listen on Multiple Addresses

Connection Manager will listen by default on Port 1600, using TCP/IP. The Connection Manager may also be configured to listen on other listening addresses. To do this, you will need to configure those addresses in the CMAN parameter.

Example 7-1 depicts how the Connection Manager configuration file would look if you configured it to listen on two addresses, SPX and TCP/IP. Note that a Connection Manager can listen on any protocol that Oracle supports.

#### Example 7-1 CMAN Parameter Configured for Multiple Listening Addresses

    CMAN=
        (ADDRESS_LIST=
           (ADDRESS=
                (PROTOCOL=SPX)
                (SERVICE=CMAN)
           )
           (ADDRESS=
               (PROTOCOL=TCP)
               (HOST=CMAN.US.ORACLE.COM)
               (PORT=1600)
           )
        )

### 7.3.2 Enabling Connection Concentration Features

To use Oracle Connection Manager's connection concentration feature, proceed as follows:

1. verify that the destination server is configured as a Multi-Threaded Server and that the multiplexing feature is turned on. This is done by setting the MTS_DISPATCHERS parameter in the database initialization file (INIT.ORA) for that instance as follows.

       MTS_DISPATCHERS = (PROTOCOL=TCP) (MULTIPLEXING=ON)

1. route client connection requests you want concentrated to the database server through that Connection Manager. For more information on routing your connection requests through Connection Manager, refer to Section 7.3.4, "Configuring Clients to Use Oracle Connection Manager".

For more detailed information on the Multi-Threaded Server, refer to the Oracle8 Concepts manual.

### 7.3.3 Specifying Network Access Control Rules

To configure the Connection Manager to control access to your database server, proceed as follows:

1. configure values in the CMAN_RULES parameter
2. route client connection requests you want subject to network access control rules to the database server through that Connection Manager. For more information on routing your connection requests through Connection Manager, refer to Section 7.3.4, "Configuring Clients to Use Oracle Connection Manager".

Example 7-2 depicts filtering rules specifying network access control in a CMAN_RULES parameter. Note that parameter fields in the RULES section are defined as follows: shost is the source hostname or IP address of session request (client); dhost is the destination hostname or IP address (server); services is the SID name; and ACT: specifies whether or not the Connection Manager will either accept or reject the incoming requests based on the above three parameters.

#### Example 7-2 Filtering Rules in CMAN_RULES

    CMAN_RULES=
       (RULE_LIST=
            (RULE=
                (SRC = shost)
                (DST = dhost)
                (SRV = services)
                (ACT = accept | reject)
            )
         )

Multiple rules can be defined within the RULE_LIST. The first matched RULE is applied to the request. When CMAN_RULES exist, the Connection Manager adheres to the principle "that which is not expressly permitted is prohibited". If the CMAN_RULES are not defined, then everything is permitted.

Note that Oracle Connection Manager can only apply access control in a TCP/IP network.

### 7.3.4 Configuring Clients to Use Oracle Connection Manager

If you want to use any of the features included with Oracle Connection Manager, including connection concentration, network access control, or multiprotocol support, you will need to:

1. modify the client's profile to route connection requests through the Connection Manager. For more information on routing connections through the Connection Manager, refer to Section 5.2.4, "Routing Connection Requests".
2. verify that you are using either centralized naming using Oracle Names or local naming as a naming method.
   - If you are using Oracle Names, the Connection Manager will automatically update addresses in the Names Server as a source route address, by inserting the address for the Connection Manager into the existing address.

     Note:: If more than one Connection Manager is used in the connection path (more than 1 hop), you cannot use Oracle Names to connect clients through it.

   - if you are using local naming, you will need to specify a path of addresses through the Connection Manager as a source route address. For more information on configuring source route addresses, refer to Section 5.4.3, "Configuring Advanced Service Name Options".

## 7.4 Starting Oracle Connection Manager

You may start Oracle Connection Manager from any node where Net8 is installed. To start Oracle Connection Manager, use the Connection Manager Control Utility (CMCTL) to issue a START command as follows:

    CMCTL START CMAN

A status message will appear if Oracle Connection Manager has started successfully. For more information on the Connection Manager Control Utility, refer to Section 8.3.3, "Using the Connection Manager Control Utility (CMCTL)".

Prev | Next
| Copyright © 1997 Oracle Corporation. All Rights Reserved. |
Library | Product | Contents | Index