I like to reinstall my OS every few months to keep things tidy and fully functional on my MacBook 5,1. In a typical nuke-and-pave operation, I format my hard drive and then install the OS with most customizable options unchecked to save space. Then, I configure the firewall and other security features before installing all updates. Following that, I begin installing applications that I regularly use (iPhoto, Microsoft Office 2011, Seashore, VLC, and World of Warcraft). Next, I update any of those applications that have newer versions available (Service Pack 1 for Office 2011, and several GBs of new content for World of Warcraft–more on this later). I copy back my backed up files back to the MacBook’s internal hard drive, and point iTunes to my external media storage space (due to iPhone and iPad backups and my addiction to iTunes U, I cannot keep the iTunes media folder on my MacBook’s internal SSD, or solid state drive).
During the reinstallation process this time, I took a look at how World of Warcraft updates itself. I knew that it uses P2P (peer-to-peer) technology to distribute software updates from Blizzard to users and then between users themselves (see above). This method reduces Blizzard’s networking overhead and cost, because users can help one another update their software without any user intervention thanks to the updating mechanisms built into Blizzard’s video game. What I find particularly cool about Blizzard’s implementation of P2P, something already well established in the opensource software crowd, is that P2P is not something that is inherently bad. As some folks from the RIAA or MPAA might assert, P2P is solely a means of distributing illegally copied files between computer users. However, the technology of peer-to-peer file sharing and software distribution is not inherently meant to evade paying for software. Instead, it is a novel means of distributing files and networking resources (e.g., Tor) between P2P users. It turns the old networking, top-down model on its head. With P2P, the network spreads out rather than simply from a single point of distribution outward. For businesses like Blizzard, this helps reduce their costs for an otherwise large downstream of data to users like me who reinstall their programs regularly. For users, this allows for the easy updating of software that is more dependent upon their own Internet pipe and its size for the incoming stream of data from many users (see below).
I have intentionally blurred the IP addresses and Blizzard IDs of the users within the P2P network who were helping me update my software, but you can see that each line above represents another computer user who is streaming tiny bits of the rather large 3.85 GB of updates for World of Warcraft’s latest installment, Cataclysm. As these files are downloaded, the World of Warcraft updating software on my computer pieces everything back together and verifies with a hash tag that the downloaded software is legitimate (i.e., not compromised with bad data or a virus).
Time Warner’s Road Runner Internet service in Northeast Ohio, at least in Kent, is anything but road runner-fast. So, I did have to stop the transfer during the evening so that Y could use the Internet, too. I did not find a way to throttle the P2P updating feature from within the World of Warcraft software. When we went to bed last night, I started the updater again, and it was done when I woke up this morning.
P2P is not all bad, and there are certainly good uses for it. I think it was a wise decision on Blizzard’s part to incorporate it into World of Warcraft. Will other companies like Microsoft or Apple add this to their OS updates? It is hard to say, because I believe that security is the one concern about distributing software in this manner. When the software is released into the wild for P2P distribution, a vulnerability could be found and exploited.