1 / 39

Net8 Architecture

Net8 Architecture. Overview of Stack Communications (1/8). Stack communications can be explained by referencing the Open Systems Interconnection (OSI) model.

dori
Download Presentation

Net8 Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Net8 Architecture

  2. Overview of Stack Communications (1/8) • Stack communications can be explained by referencing the Open Systems Interconnection (OSI) model. • In the OSI model, communication between separate computers occurs in a stack-like fashion with information passing from one node to the other through several layers of code.

  3. Overview of Stack Communications (2/8) • Client application • The OSI layer closest to the user, and as such is dependent on the functionality requested by the user. • For example, in a database environment, a Forms application may attempt to initiate communication in order to access data from a server.

  4. Overview of Stack Communications (3/8) • Presentation • Ensures that data is represented in a format that the application and session layers can accommodate. • This includes keeping track of syntax and semantics of the data transferred between the client and server. • If necessary, the presentation layer translates between multiple data representation formats by using a common data format.

  5. Overview of Stack Communications (4/8) • Session • Establishes, manages, and terminates network sessions between the client and server. • This is a virtual pipe that carries data requests and responses. • The session layer manages whether the data traffic can go in both directions at the same time (referred to as asynchronous), or in only one direction at a time (referred to as synchronous).

  6. Overview of Stack Communications (5/8) • Transport • Implements the data transport ensuring that the data is transported reliably.

  7. Overview of Stack Communications (6/8) • Network • Ensures that the data transport is routed through optimal paths through a series of interconnected subnetworks.

  8. Overview of Stack Communications (7/8) • Link • Provides reliable transit of data across a physical link.

  9. Overview of Stack Communications (8/8) • Physical • Defines the electrical, mechanical, and procedural specifications for activating, maintaining and deactivating the physical link between client and server.

  10. Stack Communications in a Typical Net8 Client/Server Environment

  11. Net8 Client-Side Interaction (1/10) • In an Oracle client-server transaction, information passes through the following layers: • Client Application • Oracle Call Interface (OCI) • Two-Task Common (TTC) • Net8 • Network-Specific Protocols

  12. Net8 Client-Side Interaction (2/10) • Client application • The application identifies database operations to send to the server and passes them through to the Oracle Call Interface (OCI).

  13. Net8 Client-Side Interaction (3/10) • Oracle Call Interface (OCI) • Oracle Call Interface (OCI) code contains all the information required to initiate a SQL dialog between the client and the server. It defines calls to the server to: • Parse SQL statements for syntax validation • Open a cursor for the SQL statement • Bind client application variables into the server shared memory • Describe the contents of the fields being returned based on the values in the server's data dictionary • Execute SQL statements within the cursor memory space • Fetch one or more rows of data into the client application • Close the cursor

  14. Net8 Client-Side Interaction (4/10) • Two-Task Common (TTC) • Two-Task Common (TTC) is Oracle's implementation of the presentation layer. • TTC provides character set and data type conversion between different character sets or formats on the client and server. • This layer is optimized on a per connection basis to perform conversion only when required.

  15. Net8 Client-Side Interaction (5/10) • Net8 (1/) • Net8 provides all the session and transport layer functionality in an Oracle communication stack. • It is responsible for establishing and maintaining the connection between the client application and server, as well as exchanging messages between them. • Net8 is also responsible for mapping session functionality into industry-standard protocols.

  16. Net8 Client-Side Interaction (6/10) • Net8 has three component layers: • Network Interface (NI) • Network Session (NS) • Oracle Protocols

  17. Net8 Client-Side Interaction (7/10) • Network Interface (NI) • This layer provides a generic interface for Oracle clients, servers, or external processes to access Net8 functions. • NI uses Network Naming (NN) to resolve names to connect descriptors.

  18. Net8 Client-Side Interaction (8/10) • Network Session (NS) • This layer receives requests from NI, and settles all generic machine-level connectivity issues, such as: • the location of the server or destination (open, close functions) • whether one or more protocols will be involved in the connection (open, close functions) • how to handle interrupts between client and server based on the capabilities of each (send, receive functions). • NS uses Network Route (NR) to route the network session to the destination and Network Authentication (NA) to negotiate any authentication requirements with the destination.

  19. Net8 Client-Side Interaction (9/10) • Oracle protocols • Oracle protocols are Oracle's implementation of the transport layer. • Each protocol is responsible for mapping the equivalent functions between NS and a specific protocol. Oracle protocols include: • TCP/IP • TCP/IP with SSL • SPX • Named Pipes • LU6.2

  20. Net8 Client-Side Interaction (10/10) • Network-Specific Protocols • All Oracle software in the client-server connection process requires an existing network protocol stack to make the machine-level connection between the two machines for the transport layer. • The network protocol is responsible only for getting the data from the client machine to the server machine, at which point the data is passed to the server-side Oracle protocol.

  21. Server-Side Interaction (1/3) • Two components above the network session layer are different from those on the client side: • Oracle Program Interface (OPI) • Oracle Server

  22. Server-Side Interaction (2/3) • Oracle Program Interface (OPI) • Oracle Program Interface (OPI) performs a complementary function to that of the OCI. • It is responsible for responding to each of the possible messages sent by the OCI. • For example, an OCI request to fetch 25 rows would have an OPI response to return the 25 rows once they have been fetched.

  23. Server-Side Interaction (3/3) • Oracle Server • The Oracle Server side of the connection is responsible for receiving requests from the client OCI code and resolving SQL statements on behalf of the client application. • Once received, a request is processed and the resulting data is passed to the OPI for responses to be formatted and returned to the client application.

  24. Server-to-Server Interaction • When two servers communicate to complete a distributed transaction, the server acts as a client application. • The server has its own version of OCI, called the Network Program Interface (NPI).

  25. Stack Communication for JDBC Clients (1/6) • Oracle offers two JDBC drivers. • JDBC/OCI • Oracle's Level 2 JDBC driver. • It is targeted to client-server Java application programmers and Java-based middle-tier developers. • The JDBC/OCI driver converts JDBC invocations to calls to the Oracle Call Interface (OCI) which are then sent over Net8 to the Oracle database server. • Thin JDBC driver • Oracle's Level 4 driver. • It is designed for Java applet and Java application developers. • The JDBC driver establishes a direct connection to the Oracle database server over Java sockets. • Access to the database is assisted with a lightweight implementation of Two-Task Common (TTC) and Net8.

  26. Stack Communication for JDBC Clients (2/6) • In a Java client applet-server transaction, information passes through the following layers: • DBAccess Interface • JavaTTC • JavaNet • TCP/IP Protocol

  27. Stack Communication for JDBC Clients (3/6) • DBAccess Interface • The Java DBAccess Interface layer enables the client to initiate a SQL session much like Oracle Call Interface (OCI) does in a standard client communication stack.

  28. Stack Communication for JDBC Clients (4/6) • JavaTTC • JavaTTC provides a subset version of the Two-Task Common (TTC) implementation necessary for exchanges of information between the Java client and the database. JavaTTC is responsible for: • Negotiating protocol version and data type • Determining whether conversions between the Java client character set and server character set are necessary • SQL statement execution

  29. Stack Communication for JDBC Clients (5/6) • JavaNet • JavaNet provides a communication infrastructure that is equivalent to NI, NR/NN/NA, and TNS in Net8. • Communication Interface • Provides an interface between JavaTTC and other networking layers much like NI does in a standard client communication stack. • Addressing • Processes Net8 destination addresses much like NN does in a standard client communication stack. • Java NS • Provides a common interface to TCP/IP, and settles all generic machine-level connectivity issues. • Java Sockets • Provides a connection between Java NS and TCP/IP.

  30. Stack Communication for JDBC Clients (6/6) • TCP/IP Protocol • Java NS will only run on top of TCP/IP, because Java sockets use TCP/IP.

  31. Stack Communications for Oracle8i JServer Clients (1/3) • Oracle8i has Java support with Oracle8i JServer. • Oracle8i JServer includes support for Java stored procedures, JDBC, SQLJ, Common Object Request Broker Architecture (CORBA), and Enterprise JavaBeans (EJBs).

  32. Stack Communications for Oracle8i JServer Clients (2/3) • Oracle8i JServer supports the General Inter-Orb Protocol (GIOP) presentation for Java Virtual Machine (VM) requests. • GIOP is used by clients accessing Enterprise Java Beans and CORBA Servers in the Java VM. • EJB and CORBA clients use a different communication stack than a typical Net8 client stack. • Differences include: • GIOP as the presentation layer • No session layer

  33. Stack Communications for Oracle8i JServer Clients (3/3) • The server side does not require many of the Net8 communication layers needed in a typical Net8 connection. • Instead, the server side only requires a network protocol of TCP/IP and an Oracle protocol of TCP/IP or TCP/IP with SSL. • The only component of Net8 required is Network Session (NS).

More Related