In previous versions of the S60 platform, data connections were opened through Internet Access Points (IAPs). Applications could either define the IAP in the connection setup request or let the user select the IAP from the UI. In both cases the IAP was fixed for the duration of the data connection.
This caused a number of problems:
With the availability of WLAN and other upcoming data bearers, the number of IAPs grew considerably. Choosing the right one is not very intuitive.
With WLAN, the availability of an IAP can change frequently,
A fixed IAP in selection often led to a poor IAP choice: Because the network environment is now more dynamic, you can have either a safe but slow connection, or a fast but unreliable connection. In practice this means that the application is either stuck with using GPRS or the user must continuously change the settings to point to the WLAN IAP that happens to be available.
A fixed IAP led to non-optimal usage of available connections, especially with applications that use long-lasting data connections.
From S60 3rd Edition, Feature Pack 2 onwards, the S60 platform offers an alternative to IAPs. Destination networks, also known as Service Network Access Points (SNAPs) in Symbian terminology. They enable automatic connection selection and application-level roaming (ALR).
Typical phases involved in opening a connection through a destination network include:
Important implementation considerations include:
Applications should monitor the connection state by using platform services (such as Connection Monitor Server API) and avoid polling and keep-alives. If the application protocol mandates the use of timers, they should be tuned so that the control data over the air is minimised.