IT tutorials
 
Database
 

Oracle Database 11g : Use Oracle Net Services

1/19/2013 4:57:21 PM
- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019

Oracle Net Services is the software component that allows enterprise connectivity across heterogeneous environments. Oracle Net is the part of Oracle Net Services that manages data communication between a remote application and the Oracle database; it runs on top of a network protocol like TCP/IP. The software used by Oracle Net software resides on the remote system and the Oracle database platform.

A listener process must be running on the database server to receive the network request. (A listener is a program that listens on a port for incoming network requests and then hands the request to another program for processing.) The listener then determines the appropriate type of process to handle the request.

The network protocol sends a request to the Oracle Protocol layer, which sends the information to the Oracle Net Foundation layer, which in turn communicates with the database server. The Oracle network communication stack, shown in Figure 1, is similar on both the client and server sides.

Figure 1. The Oracle network communication stack


Oracle Net (Oracle Net Foundation Layer and Oracle Protocol Support) fits into the session layer of the Open Systems Interconnect (OSI) model (visit www.ietf.org for more information about the OSI model).

Network Protocols

Oracle supports a number of industry standard protocols. These protocols transport the data between the remote platform and the database server platform. The protocols also display how users need to work with data differently than they did a few years ago. Oracle-supporting protocols like SDP, HTTP, FTP, and WebDAV show that Oracle Database 11g enhances network performance and offers increased flexibility for users working with data. In this section, the term application server will be used to address both web and application server services available in the middle tier. Table 1 lists the supported industry-standard protocols.

Table 1. Standard Industry Network Protocols
ProtocolDescription
TCP/IPThe Transmission Control Protocol/Internet Protocol (TCP/IP) is the standard protocol used in client server environments.
TCP/IP with SSLTCP/IP with Secure Sockets Layer (SSL) provides authentication (certificates and private keys) encryption. The Oracle Advanced Security option is required for this protocol.
SDPThe Sockets Directory Protocol (SDP) is an industry-standard high-speed protocol. SDP is used with an InfiniBand network. The InfiniBand network takes the messaging burden off the CPU and onto the network hardware. This network reduces the overhead of TCP/IP, providing increased bandwidth.
Named pipesThis supports inter-process communication between remote platforms and the database server platform using pipes. A pipe is opened on one end and information is sent down the pipe to allow I/O between the platforms.
HTTPThe Hypertext Transport Protocol (HTTP) is an industry- standard protocol that is primarily used between clients and application servers. Oracle can also start up an HTTP listener to handle a request over HTTP directly.
FTPFile Transfer Protocol (FTP) is a standard method for transferring files across the Internet. It makes it easy to transfer files back and forth between different platforms. A server that can receive an FTP connection is referred to as an FTP server or FTP site. FTP addresses looks similar to HTTP; ftp://ftp.beginner.com is an example of an FTP server address.
WebDAVThe Web-based Distributed Authoring and Versioning (WebDAV) protocol supports collaborative authoring over the Internet. The benefits of WebDAV include locking mechanisms, interoperable publishing with HTTP and XML support, writing over the Web with embedded devices, versioning, and Access Control Lists.

Optimize Network Bandwidth

Multi-tiered architectures need to maximize the bandwidth between the application server and the database server platforms. Oracle Net Services supports the high-speed networks of InfiniBand, a channel-based, high-speed interconnect technology designed to optimize performance between different platforms. It’s used for server clustering and for network interfaces to storage area networks (SANs) and local area networks (LANs). Vendors such as Hewlett-Packard, IBM, Sun Microsystems, Dell, and Microsoft support InfiniBand technology; the SDP protocol, an industry-standard wire protocol, is also used with the InfiniBand network. Highly active multi-tiered environments should consider using high-speed interconnects between the application server and the database server.

Connections

A connection is an Oracle communication path between a user process and the Oracle database server. If this communication path is dropped, a user must establish a new session. The current transaction is rolled back if the connection for its session is lost. A session is a specific connection for a user between the user process and the Oracle database server.

If a connection cannot be made, it is important to be able to troubleshoot these issues and problems. In the Automatic Diagnostic Repository (ADR) for Oracle 11g, the network information is also captured. The repository holds trace files and other errors collected into a standard place. This troubleshooting facility for diagnosing network problems is the same as the one you will use to analyze and diagnose database problems. With tools like this it will be easier to find connection issues or avoid problems.

Maintain Connections

The Oracle Net Foundation Layer establishes and maintains connections with the database server. Transparent Network Substrate (TNS) is the common interface between all the industry-standard protocols. Oracle Protocol Support maps the industry-standard protocols (TCP/IP, TCP/IP with SSL, SDP and Named Pipes) used in the connection.

Figure 2 shows us how Oracle Net works. Oracle Net software will reside on the database server platform and the platform that is running the Oracle applications. With an application server, HTTP runs on top of a network protocol between the browser platform and the application server platform. Oracle Net then runs on top of a network protocol between the application server and the database server. For a client/server configuration, Oracle Net will reside on the client platform and the database server platform, and will run on top of a network protocol between the client and the database server platforms.

Figure 2. An Oracle network overview

If Java programs are running, a Java Database Connectivity (JDBC) OCI, or Thin driver, will communicate with Oracle Net to process the database request. A JDBC OCI driver requires Oracle Net on the remote platform and the database server. A Thin driver doesn’t require a full Oracle Client to be installed and uses network calls to connect to a database. So, a JDBC Thin driver written entirely in Java uses JavaNet to communicate, and requires Oracle Net only on the server platform.

Define a Location

Locations need to be defined so a remote application can find the correct Oracle database server on the network. A service name, such as customer.us.beginner.com, is used to define the unique location of each database server. In the preceding example, customer is the database name and us.beginner.com is the domain name. On the plus side, if the physical location of the database is changed, the service name can stay the same while the definition or settings of the name can change underneath.

A database can support multiple services. The service name, defined with the initialization parameter SERVICE_NAMES, makes the physical location of the database transparent and will default to the global database name (the name of your database), which uses the format database_name.database_domain, as in customer.us.beginner.com.

The database domain name is the domain where the database is located, and is made up of the initialization parameters DB_NAME and DB_DOMAIN. The combination of the DB_NAME and DB_DOMAIN (customer.us.beginner.com) name distinguishes one database from another, as shown in the following examples:

DB_NAME=customer
DB_DOMAIN=us.beginner.com

Ask the Expert

Q:Why is it important for DBAs to understand the networking setup and configuration for Oracle Database 11g?
A:Often as systems interact with the database, networking bottlenecks surface that require attention from DBA personnel in addition to those who manage the applications. Familiarity if not fluency with setting up Oracle Net services and its configuration files arms the DBA with the skills required to intervene.
 
Others
 
 
 
Top 10
 
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
Technology FAQ
- Is possible to just to use a wireless router to extend wireless access to wireless access points?
- Ruby - Insert Struct to MySql
- how to find my Symantec pcAnywhere serial number
- About direct X / Open GL issue
- How to determine eclipse version?
- What SAN cert Exchange 2010 for UM, OA?
- How do I populate a SQL Express table from Excel file?
- code for express check out with Paypal.
- Problem with Templated User Control
- ShellExecute SW_HIDE
programming4us programming4us