
As I've described before, and I'm sure you're well aware of, a botnet is a group of compromised computers, or zombies, as I prefer to call them, that are linked together through some sort of command protocol set up by the botmaster, or botherder. Until recently there has been only two techniques that these botnets have used to communicate. The first being the originating means of C&C or command and control, and that was to issue commands to the main computer via IRC. A bot would be set up as an apparent user in an IRC chat room, and the botherder would issue commands to it as if they were chatting, though somewhat more cryptically, and the main bot would then carry out the orders and communicate the commands to the other bots in the network. This form of communication became much easier to stifle as the IRC commands would basically broadcast the location of the main computer in the chain once intercepted. Once the main computer was taken down, the entire botnet would fall.
With the rise of the Storm Worm's now infamous botnet, so came the birth of the peer to peer communicating botnet. Taking its queue from popular P2P file sharing networks, this version is still very strong today because all of the zombies within the network communicate amongst themselves allowing pieces of the network to survive when other parts of the same network have been cleaned or taken down.
Recently experts in the field have been noticing the rise of a third type of botnet known as the HTTP botnet which communicates via web requests. Instead of the bots in this type of network being configured with a list of IRC commands to communicate with, it is set-up to communicate with certain URLs. It will connect via the internet to these URLs with a HTTP post that contains unique identifiers for the bot, and in return the server it is communicating with will send back the HTTP commands that it has been set-up with, often utilizing the ever popular 'GET' command. With this command it could download malware files, spam information, or even DDoS instructions from a command such as "http://get flood\[]\[]" that would also contain information about the specific target to attack. The connection isn't constant as it is with the IRC, or P2P connections, which allow the botnets to exchange a singular command with the server, and go about its duties. This would definitely make it more difficult to thwart a DDoS attack, for example, once it was already in progress.
For the most part there a very few of these in existence, but it's possible that it could catch on once the idea spreads, or automated set-up, or kit, software appears in the wild.