Search code examples
httpprotocols

Other common protocols besides HTTP?


I usually pass data between my web servers (in different locations) using HTTP requests (sometimes using SSL if it's sensitive). I was wondering if there were any lighter protocols that I might be able to swap HTTP(S) for that would also support public/private keys like SSH or something.

I used PHP sockets to build a SMTP client before so I wouldn't mind doing that if required.


Solution

  • There are lots and lots and lots of protocols. Lots. Start here for a list. http://en.wikipedia.org/wiki/Internet_Protocol_Suite

    SFTP is fun for passing data around. It works well. You'll find that it's not much better than HTTP, however, because HTTP is pretty simple. http://en.wikipedia.org/wiki/SSH_file_transfer_protocol

    SMTP would work. http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

    SNMP can be made to work. http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol You have to really push the envelope.

    All of these, however, involve TCP/IP sockets, which involve a fair amount of overhead because of the negotiation for a connection and the acknowledgement of packets.

    If you want real fun with very low overhead, use UDP.
    http://en.wikipedia.org/wiki/User_Datagram_Protocol

    You might want to use Reliable UDP if you're worried about messages getting dropped. http://en.wikipedia.org/wiki/Reliable_User_Datagram_Protocol