Oracle7 Server Distributed Systems Volume I: Distributed Data

Contents Index Home Previous Next

Network Issues to Consider When Implementing a Distributed Database System

This section describes some things the network administrator must consider before deciding on the structure of a distributed system. Read this section before using the Oracle Network Manager to configure the network.

Planning your Network

When planning your SQL*Net network, think about future needs as well as present requirements. Select a layout that is flexible and expandable. If you foresee your network growing, select computers that have the capacity to handle additional connections. When naming the components in your system, think about how your naming conventions can be extended to handle future components.

Draw the Network Layout

It is a good idea to draw a picture of your network layout as you decide about its composition. Especially if your network includes multiple communities, Interchanges and Names servers, it is much easier to understand and modify if you have a diagram. Two types of diagrams are useful:

Physical diagrams show every component in a network, including the physical connections among them. A physical diagram can help show what pieces are required and demonstrate the connections between components.

Logical diagrams show the relationships between network components without going into detail about their physical placement. The figures throughout this book are good examples of the sort of graphical representation that is needed. In general, the more complex the network, the more necessary a visual mapping.

Select Network Protocols to be Used

The first decision to make when designing a network is whether it will include only one protocol or more than one protocol.

As explained in "SQL*Net version 2 Architecture" [*], SQL*Net runs above TNS, which in turn runs over a transport level protocol, with an Oracle Protocol Adapter acting as an interface between TNS and the protocol of choice. The specific hardware below the transport layer is irrelevant to SQL*Net's functioning.

You may be able to choose a single transport level protocol that works well on all the components in your network. Protocol adapters are available for most of the major protocols on many platforms. If you have only one protocol in your network, as shown in Figure 2 - 9, then all the components are members of the same community.

Figure 2 - 9. A Single Community Network

For reasons of necessity or efficiency, you may choose to have more than one protocol running in your network. You may do this by having multiple protocol adapters on the computers in your network, or, more efficiently, you may have an Interchange between the computers running one protocol and the computers running another.

Using SQL*Net and the MultiProtocol Interchange, individual computers can communicate across the protocols that are most compatible with their operating systems. For example, you can have personal computers running Novell's SPX/IPX connected to a VAX server that uses the DECnet protocol. If your network uses one or more Interchanges, as shown in Figure 2 - 10, it is a multicommunity network.

Figure 2 - 10. A Multicommunity Network

Choose Nodes as Interchanges

If you decide on a multicommunity network, you must choose what nodes to use for Interchanges to connect the communities. Considerations include:

For more information about Interchanges, see the Oracle MultiProtocol Interchange Administrator's Guide.

Choose a Node to Run Network Manager

Select a location for Network Manager from which it is relatively easy to transfer configuration files to other network components. The Network Manager includes a utility, NetFetch, which helps you do this, but a SQL*Net network (either version 2 or release 2.1) must be up and running before it can be used.

For more information about using the Oracle Network Manager to create SQL*Net configuration files, see the Oracle Network Manager Administrator's Guide.

Decide on the Structure of Network Administration

Most networks have one central point of administration, that is, one installation of the Oracle Network Manager. However, if you are using Oracle Names and your network is quite large or widely distributed geographically, you may choose to have several regions of network administration.

If your enterprise-wide network includes both the United States and Europe, you might want to have administrative decisions about the network made locally.

For example, it would be more efficient if a network administrator in Chicago had jurisdiction over the names and locations of US network services, while an administrator in Brussels was responsible for decisions about a European network.

For more information about centralized and decentralized administration, see the Oracle Names Administrator's Guide.

Decide which Nodes will Run Oracle Names Servers

If you use Oracle Names to provide a centralized naming service for your network, you must decide what nodes should contain Names servers, which provide name and address information to enable connections throughout the network. Currently, you must have a name server in every community. In general, Oracle recommends that Names servers in a multicommunity network be placed on MultiProtocol Interchange nodes, thereby minimizing the number of Names servers required.

For more information about Oracle Names, see the Oracle Names Administrator's Guide.

Decide on a Organizational Naming Standard

When you name entities such as nodes in a networked environment, you should ensure that object names are unique within the network. This can be a challenge if your organization is large, and network administration is not handled centrally.

You may be able to guarantee that all services in your building or jurisdiction have unique names, but that does not guarantee that the name is unique within the organization. Your goal should be to avoid the occurrence of duplicate names if multiple independent TNS communities are joined by installing an Interchange between them.

Selecting Domain Names

A recommended network naming technique is to use hierarchical groups or domains in which each administrative unit is assigned to a unique domain based on the function it provides. Many of the examples in this guide feature the fictitious company, ACME Inc., which has segregated its naming domains as shown in Figure 2 - 11.

Figure 2 - 11. Naming Domains at ACME

In this figure, each of the boxes represents a separate domain. The domains are related hierarchically; that is, FIN and HR are the children of HQ, which is one of the children of ACME. A network object (such as an Interchange or a server) within a given domain has a unique name within that domain. This is generally manageable because one or at most a few people have authority to pass out names for that domain. The global name for that object includes the parent domains.

For example, consider the corporation shown in Figure 2 - 11. The sales organization (the SALES domain) could have a server named VAULT. The human resources group (the HR domain) could also have a server named VAULT. The global names of these servers would be unique. The finance group's server would have the global name

VAULT.SALES.ACME

while the global name of the human resources server would be

VAULT.HR.HQ.ACME

This structure is especially important if you are using a Oracle Names server to access any of the addresses or other information used within the network.

Names can go to the company level (the ACME stem) or can go to the inter-network level (for example, the ACME.COM stem) in support of inter-company communications such as mail or Electronic Data Interchange (EDI). If your organization belongs to the Internet, or you expect that it might join the Internet in the future, the domain names should include the appropriate stem (such as COM, GOV, or EDU).

If your organization already has global naming conventions, your network components should follow those conventions.

Network Manager automatically appends the default domain .WORLD to the name of all network components unless you provide alternative domain names. See the Oracle Names Administrator's Guide for more information.

Default Domain

Every client and server has a default domain listed in its SQLNET.ORA file. The default domain is the domain to which most of the clients' connection requests are directed. The service names of databases in the default domain do not need to be fully qualified; that is, the domain name does not need to be included.

For example, if a client wanted to make a connection to a database in its default domain with the service name PROFITS.SALES.ACME.COM, it could do so using the following command:

% sqlplus scott/tiger@profits

However, if the PROFITS database were not in the client's default domain, the command would be:

% sqlplus scott/tiger@profits.sales.acme.com

Note: The default domain is not necessarily the same as the domain of the client itself. For example, clients in one domain may frequently access Oracle servers in another domain.


Contents Index Home Previous Next