Citrix Receiver for BlackBerry strictly uses three of different kinds of transport mechanisms that RIM provides to connect to internet. They are BES/MDS, TCP Wi-Fi and TCP Cellular. Hence possible ways to connect to Enterprise network using Citrix Receiver are:
Connecting to XA from CR through BlackBerry enterprise server:
If your XenApp server is not hosted on public domain, then Citrix Receiver for BlackBerry connects to XA/XD server via BES. For this the device has to be registered with BES. Please see the below diagram that how data is transferred between XenApp server and BlackBerry device for this type of connection.
The data is always routed through BES, BES acts as gateway for both incoming and outgoing traffic. CR uses Mobile Data Service runs on BES server, to connect to internal servers. BES is smart enough to choose between available Wi-Fi or Carrier network. If Wi-Fi is available CR connects using Wi-Fi and if Wi-Fi not available then BES smartly falls down to Carrier network to connect. There will not be any connection losses during this fallback, this fallback is so smooth such that user don’t perceive the fallback. Connecting to XA servers using BES is not recommended scenario because the connections are slow through BES. If your enterprise has hosted servers on an internal IP, and have no access gateway server, this is the only choice to use.
Communication flow when devices are connected to XA servers via BES:
1. From devices to Service provider wireless networks/antenna
2. Wireless networks to public internet.
3. Connects to BlackBerry Infrastructure, and it resolves the SRP of enterprises BES and forwards data to BES.
4. Data reaches BES and the BES routes data to XA server with in the Corporate network.
Common problems users face using this type of connection to XenApp server are, enumeration of applications will be successful but application launch will fail. This is because application enumeration happens on port 80/443 which is most commonly used port for HTTP/HTTPS traffic, and this is usually not blocked by either corporate firewall or BES. But ICA connections will be established on port 1494/2598, if either corporate firewall or BES blocks this port, ICA connections or application launch will fail. So administrators has to ensure that ports related to XenApp server are unblocked. Other common error scenario but less likely is BES may not be able to resolve DNS of XenApp server.
Connecting to XA servers hosted behind Citrix Access Gateway:
Citrix Receiver for BlackBerry has the capability to connect to XA servers hosted in your private enterprise network behind a Access Gateway. The main transportation method Citrix Receiver uses is either TCP Wi-Fi or TCP Cellular based on availability. Supported Access gateway versions are Citrix AGSE 4.6.3, Citrix AGAE 4.5 and Citrix AGEE 9.2 and also supports different authentication methods.
Please see the below diagram that how data is transferred between XenApp server and BlackBerry device for this type of connection.
Communication flow when devices are connected to XA servers via Access Gateway:
1. Data transfer from devices to Service provider wireless networks/antenna.
2. Then from there to public internet to enterprise Access gateway.
3. And Access Gateway routes data to XA server with in the Corporate network.
Common problems users face with this type of connections to XenApp server are, not able to reach Access Gateway server, the main reason could user may be trying to connect to Access Gateway server using his Carrier network without proper APN settings. In order TCP cellular to work, user has to set APN configuration on his device. Mostly these settings will be pushed by service provider upon data plan activation, but in some cases users has to explicitly configure these settings on his device contacting corresponding Service providers. So please ensure that your device APN settings are properly configured or service books related to APN configuration were properly pushed to your device before using this.
Special thanks to RIM for providing a very nice document on understanding various network transports available for BlackBerry devices and how they work. Graphics in the above documentation were taken from the same document @ http://supportforums.blackberry.com/t5/Java-Development/Network-Transports/ta-p/482457 and modified.