# Net8 连接概述

Net8 允许连接到各种服务，如 Oracle 数据库、非 Oracle 数据库、网关和外部过程。

用户通过传递用户名和口令以及他们希望连接的服务的标识符来发出连接请求。称为连接标识符的标识符可标识：

- 目标服务

- 路径或网络路由，跨网络而连接某个服务

用几个不同的方法指定连接标识符。最常用的方法之一是通过使用一个网络服务名，另一个是使用映射为连接描述符的服务名。连接描述符包含目标服务和网络路由信息。所需的服务通过使用它对 Oracle8i 数据库的服务名或 Oracle8 或 Oracle7 数据库的 Oracle 系统标识符 (SID) 的服务名表示。网络路由至少通过使用网络地址来提供监听程序的位置。

以下显示的是名为 `sales` 的网络服务名映射为连接描述符：

       sales=
       (description=
         (address=(protocol=tcp)(host=sales-server1)(port=1521))
         (connect_data=
         (service_name=sales.us.acme.com))

位于 `sales1-server` 上的监听程序使用 TCP/IP 协议在端口 1521 上监听对名为 `sales.us.acme.com` 的数据库服务发出的连接请求。

至少用一种命名方法来存储连接标识符及其连接描述符。在连接请求期间，客户机联系命名方法以把连接标识符 (上例中的 `sales`) 解析为连接描述符。接着客户机与连接描述符中指定的监听程序进行联系。

监听程序将通过协议接收客户机连接。监听程序将客户机信息与它通过服务注册从数据库服务接收的信息，以及存储在它自己的配置文件 listener.ora 中的信息加以比较。如果信息匹配，则准予连接。