Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]


Overview of Mappings in the Comms Database

[Top]


Purpose

The Comms database is used to store configuration settings for network connections. This page describes the connections between tables used in the Comms Architecture, describes some of the mappings and puts the tables into functional groups.

The following diagram shows how the main tables are related to each other. Rounded rectangular boxes represent tables and arrows show how one table links to others. Dotted line boxes group tables that are specialisations of the same type. Grouped tables may share fields of the same type, but would not share the same records. The colour scheme shows table function:

Comms Database Table Relationships


Comms Database Table Relationships

[Top]


Global settings

This table contains global information for the whole comms server. It only ever contains one record and includes information such as the default Tier to use if none is specified by a client function call.

Table Class Table ID

Global Settings

CCDGlobalSettingsRecord

KCDTIdGlobalSettingsRecord

Two fields previously held in the Global Settings table, iPromptForSNAP (renamed to iPromptUser) and iDefaultSNAP (renamed to iDefaultAP), are now held in the Tier table (below) in the record identified by CCDGlobalRecord::iDefaultTier.

[Top]


Three-Plane Architecture stack creation

The Three-Plane Architecture uses the following tables to identify Tiers; MCPR, CPR and SCPR providers; and other information needed to configure the Comms stack -

Table Class Table ID

Tier Table

CCDTierRecord

KCDTIdTierRecord

Meta Connection Provider Table

CCDMCprRecord

KCDTIdMCprRecord

Connection Provider Table

CCDCprRecord

KCDTIdCprRecord

SubConnection Provider Table

CCDSCprRecord

KCDTIdSCprRecord

Access Point (AP) Priority Selection Policy Table

CCDApPrioritySelectionPolicyRecord

KCDTIdApPrioritySelectionPolicyRecord

Comms Framework Protocol Table

CCDProtocolRecord

KCDTIdProtocolRecord

Bearer Type Table

CCDBearerTypeRecord

KCDTIdBearerTypeRecord

Configuration Access Point Table

CCDConfigAccessPointRecord

KCDTIdConfigAccessPointRecord

Access Point Table

CCDAccessPoint

KCDTIdAccessPointRecord

The tables for Tier, Meta Connection Provider, Connection Provider and SubConnection Provider all list the libraries that implement the respective node types by giving the ECom implementation ID of those libraries.

Only the Tier table is readable by all users of the Comms server, the other tables in this section are for device creators only.

When a Tier is defined, the default AP for the Tier must also be defined. Tiers should be identified by a "well-known" identifier (a name allocated by the Tier creator) stored in the iTag field of the Tier Record which is a persistant value unlike the Record ID which is transient.

The Access Point Priority Selection Policy table is used to identify which AP, out of several available alternatives, to use at the next layer in the stack. This information is required to guide protocol selection decisions on connection startup. Information is also required to guide mobility decisions once a connection is active. However device creators writing their own MCPRs may choose to ignore this table for selection and mobility decisions. This table replaces the IAP Selection Policy table (see below).

The Bearer Type Table is only used when creating an Access Point Table record from an Internet Access Point (IAP).

The Configuration Access Point Table specifies APs used internally for authentication or configuration of a standard data processing Access Point. This is used, for example, to create an internal stack for EAP authentication over Wi-Fi.

The Access Point Table should not be confused with the SNAP table under Legacy stack creation below.

In the AP Table, iAccessPointGID is now obsolete as iTier replaces it. iIAPSelectionPolicy is likewise obsoleted by iAPSelectionPolicy. iSelectionPolicy maps directly to thew new iBearerSelectionPolicy field which contains an integer for interpretation by the MCPR.

[Top]


Legacy stack creation

These tables contain connection preferences and identifyies stack configuration. Primarily responsible for identifying the order of connection preferences for the automatic connection start. In some cases these tables are retained for backward compatability.

Table Class Table ID

Connection Preference Table

CCDConnectionPrefsRecord

KCDTIdConnectionPrefsRecord

Internet Access Point Table

CCDIAPRecord

KCDTIdIAPRecord

SNAP Table

CCDAccessPointRecord

KCDTIdAccessPointRecord

IAP Selection Policy Table (deprecated)

CCDIapPrioritySelectionPolicyRecord

KCDTIdIapPrioritySelectionPolicyRecord

Data from the IAP Selection Policy table is now mapped to the AP Priority Selection Policy table (see above).

The Internet Access Point Table (the IAP Table) is still used to hold configuration data, but connections should be started using an Access Point. The following list explains what is necessary for mapping an Internet Access Point (IAP) to an Access Point:

Converting from an IAP record ID to an AP record ID is done by entering the ElementID of the IAP record in the iTag field of an CCDAccessPointRecord container and calling CCDAccessPointRecord::FindL(). All IAP records will have one matching AP record.

Converting from an AP record ID to an IAP record ID is simple since if the AP record is mapped from an IAP record it will have an ElementID for a CCDIAPRecord in its iTag field. This will give the RecordID of the IAP record that matches that AP record. Not all AP records will be a map for an IAP record.

[Top]


Service tables

The Service tables each contain data specific to a different service, such as WLAN and WCDMA.

Table Class Table ID

Dial Out ISP Record

CCDDialOutISPRecord

KCDTIdDialOutISPRecord

Dial In ISP Record

CCDDialInISPRecord

KCDTIdDialInISPRecord;

LAN Service Record

CCDLANServiceRecord

KCDTIdLANServiceRecord

WLAN Service Record

CCDWLANServiceExtRecord

KCDTIdWLANServiceExtRecord

VPN Service Record

CCDVPNServiceRecord

KCDTIdVPNServiceRecord

WCDMA Packet Service Record

CCDWCDMAPacketServiceRecord

KCDTIdWCDMAPacketServiceRecord

Outgoing GPRS Table

CCDOutgoingGprsRecord

KCDTIdOutgoingGprsRecord

Incoming GPRS Table

CCDIncomingGprsRecord

KCDTIdIncomingGprsRecord

Bluetooth PAN Service Extension

CCDPANServiceExtRecord

KCDTIdPANServiceExtRecord

Default WCDMA Table

CCDDefaultWCDMARecord

KCDTIdDefaultWCDMARecord

[Top]


Bearer tables

The Bearer tables contain information required by different types of Bearer, such as Modem and LAN.

Table Class Table ID

Modem Bearer Table

CCDModemBearerRecord

KCDTIdModemBearerRecord

LAN Bearer Table

CCDLANBearerRecord

KCDTIdLANBearerRecord

VPN Bearer Table

CCDVirtualBearerRecord

KCDTIdVirtualBearerRecord

[Top]


Service configuration tables

These tables contain service specific information such as HTTP Proxies and Quality of Service (QoS) information.

Table Class Table ID

Charge Card Table

CCDChargecardRecord

KCDTIdChargecardRecord

HTTP Proxy Table

CCDProxiesRecord

KCDTIdProxiesRecord

R99 QoS settings

CCDUmtsR99QoSAndOnTableRecord

Table IDKCDTIdUmtsR99QoSAndOnTableRecord

Network Table

CCDNetworkRecord

KCDTIdNetworkRecord

Location Table

CCDLocationRecord

KCDTIdLocationRecord

[Top]


Wi-Fi security tables

These tables contain the information required to secure a Wi-Fi connection.

Table Class Table ID

EAP Security Table

CCDEAPSecRecord

KCDTIdEAPSecRecord

EAP Inner Tunnel Configuration

CCDTunEAPRecord

KCDTIdTunEAPRecord

EAP TLS Table

CCDEAPTLSRecord

KCDTIdEAPTLSRecord

LEAP Table

CCDLEAPRecord

KCDTIdLEAPRecord

EAP SIM Table

CCDEapSimProtocolRecord

KCDTIdEapSimProtocolRecord

EAP AKA Table

CCDEapAkaProtocolRecord

KCDTIdEapAkaProtocolRecord

[Top]


WAP tables

These tables contain information required for a WAP connection.

Table Class Table ID

WAP Access Points

CCDWAPAccessPointRecord

KCDTIdWAPAccessPointRecord

WAP SMS Bearer Table

CCDWAPSMSBearerRecord

KCDTIdWAPSMSBearerRecord

WAP IP Bearer Table

CCDWAPIPBearerRecord

KCDTIdWAPIPBearerRecord

[Top]


See also

Configuring Comms Database For Network Connections

Comms Database Use Cases