They probably all have the same reliability. I would think socket transport is the fastest, since it need not go through any secondary layer, like a webapp layer (i.e. servlet) or an HTTP parsing layer (like http).
The differences are in other areas. For example: Using http allows you to more easily tunnel through firewalls (since typically, you'll tunnel over port 80 using the http transport and your firewall may already allow for that - no need to punch another hole). Using servlet allows you to go through a webapp layer that, say, Tomcat provides so you can piggyback on an already deployed Tomcat server - which in turn allows the sslservlet transport to reuse the Tomcat security features i.e. you can reuse the SSL connector and Tomcat's SSL certificate setup.