How Connection Manager Satisfies a Connection Request
4/8/2010
Every cellular data connection requires a resource. In a serialized APN environment, there is only one cellular radio resource. In a simultaneous APN environment, there are N > 1 resources, each resource is able to support one context. In order to satisfy a connection request over a cellular data connection, Connection Manager will use the priority of the request along with a tally of available resources and resource management rules to determine if the connection request can be established. The connection request can be established if one of the following conditions is satisfied:
- There is at least one free resource.In this situation, the free resource will be allocated to the new connection request.
- All resources are being used, but at least one resource is used by a non-exclusive connection request, and the new connection request is also non-exclusive.In this situation the connection occupying the resource will be shared with the new connection request. This assumes that the connected connection can satisfy the new connection request, i.e. connects to the destination network requested by the new connection request, or has the requested connection name.
- All resources are used, but at least one resource is used by a connection request that is of lower or equal priority than the new connection request.In this situation the current connection request will be terminated, causing one resource to be freed. The resource will be allocated to the new connection request and a new connection will be established.As per the third bullet, above, a conflict may arise between two or more connection requests requiring the same resource. Resource conflicts are resolved according to the following rules:
- A higher priority connection request will win a resource from a lower priority connection request.
- A resource conflict between two connection requests having the same priority is resolved by allowing the most recently created connection request to win.
Note
In order to avoid resource conflicts between applications, especially in a serialized APN environment, it is recommended that non-user-interactive data activities use a non-user-interactive connection request priority.