Where bandwidth is plentiful it’s become a curse to the media industry. The television studios hate it because people don’t need TiVo when the latest episode of Lost is available on PirateBay the day (or only hours) after it airs. Hollywood hates it because when movies leak, it’s a virtually untraceable way for the culprits to cover there tracks while sharing content with millions. The music industry hates it because…well they hate anything that allows people to asynchronously share music without paying for it. So Bittorrent and peer-to-peer sharing in general is the bane of the majority of the media industry, highly destructive and incredibly disruptive to a ninety year old business model. In Africa and other developing countries I see a real and immediate value for bittorrent.
It goes without saying that bandwidth is precious. So what is bit torrent and why should more developmental groups adopt it as means of distributing software?
Oh, Virtuous Torrenting
BitTorrent is a file-sharing protocol that enables the download of large files using minimum Internet bandwidth in less a mounts of time than normal bandwidth. It maximizes transfer speed by gathering portions of the transferred file and downloading multiple pieces concurrently from people who already have them.
The traditional way of sharing files is far less efficient. A file is placed on a server and the URL is publicized and your end user begins downloading. No matter how few or how many people need that file, they all request it from the same place. You might have two million, or you might have two. Whatever the case, they all attempt to get data from the same place. For each user, your server experiences the same strain.
It’s like watering your lawn with a hose versus a sprinkler system. Sure, for a small lawn a hose might work fine. But what about when your lawn grows to 190 acres? That hose is still going to work, it’s just going to take longer. On the web, the connection to one server is affected by many variables including your distance from the physical location of the server, the integrity of the connection, the fidelity of your signal (especially for people using satellite), the power and features of the server itself and amount of bandwidth on the receivers end. On a good connection, these variables are negligible. On a bad connection, each and everyone can make someone have a very annoying internet session. When you move that server across the Atlantic Ocean, and then try to connect to it through a an orbiting satellite (as is the case for internet users in Africa and other places) the potential things that can go wrong are compounded by the trip of the signal to space, back down and half-way around the world. Or to go back to my analogy, it’s like using a good hose versus a bad hose with patched leaks and folds that’s coming from a broken faucet at your neighbors house.
With Bittorent, a central computer called a tracker monitors requests for files and pairs them with the computers either already have the files, or that are already downloading them. That central computer then sort of ‘directs traffic’, allowing your computer to get bits and pieces of the file you need from all those computers who have the same file. Computers with the full file are called seeders while the collective of computers with all or a potion of the requested file are called a swarm. Downloading multiple parts of the same file at the same time solves the problem of having to rely upon a single connection. Torrent users often have multiple redundant connections to the same file all at work at the same time.
The Cons of Torrents
Bittorrent does have it’s own problems. Occasionally only one computer is online that has any part of the file at all and maybe they don’t have is all, or maybe your computer has more of the file downloaded than anyone else in the swarm…this results in files that never complete downloading. The only way the download will ever resolve is if someone with more or all of the file downloaded rejoins the swarm. Also, most of the Bittorrent sites you find online aren’t the actual trackers. This would make them immediately complicit in file-sharing because it would mean they have uploaded all the files that people are seeking to download to their own servers. Instead, these websites act as a repository for the millions of trackers and seeders that are often simply home users like you or me. They are tracking trackers that are tracking seeders that are also sometimes trackers. It’s a completely decentralized network of file-sharers. If the central torrent site is ever shut down, theoretically you could still use your bit torrent to connect directly to other seeders and continue your uploads and downloads. This it what makes Piratebay.org much harder to shutdown than say, Napster.
This is really the only major flaw in bittorrent. No matter what you’re downloading, there are times when only on tracker is available. If that tracker decides to go offline and never comes back, your download can never resolve because it won’t know where to look for seeders. However, there can be more than one tracker for the same file. These are called peers.
Better Living Through Torrenting
In the developing world, the problems of downloading files are plentiful. If you want to send a large file to someone all the factors mentioned above can cause the users browser to timeout on the connection. Sometimes the browser thinks a file is finished before it actually is, resulting in unusable pieces of the intended file. The real benefit of bittorrent is that it can track all those bits and stitch them back together. The user would never have to ‘restart’ their download as I’ve often had to do after my connection timed-out while downloading files. I can’t tell you how many times I’ve gone to sleep with a file downloading here in Uganda only to wake up to find out that the download timed-out early leaving me with a completely unusable half of whatever it is I was fetching. With bittorrent, I never have to worry. The file is only assembled once the full torrent completes.
The other problem with sharing files to countries that aren’t directly connected to the undersea cables that make a truly world wide web possible is that it takes a long time. The signal goes from the computer in the developing country, to their end-user dish, to their providers dish, through their providers routers, out the providers V-Sat dish, up to space to a satellite, back down to Earth to another provider dish that may be connected directly to the undersea cables, through the undersea network of cables, to the destination continent. It’s then forwarded to a a large ISP that routes the request to the correct local provider who then routes the request to the intended server or computer. If you’re requesting a file it then does all of that in reverse to begin pushing you data. With local peers you can avoid at least five of those steps and reduce a whole lot of distance!
If I were an NGO, I’d prefer to send my content to a centralized repository on content and redistribute it from there. If I had a multiple contacts or locations on the continent I’d make those people/locations my peers. For files that change frequently, this is inefficient; but if it’s things like instruction manuals, audio or video, it makes perfect sense. Bandwidth/Time = Money Where there is more bandwidth, it’s cheaper as things take far less time to upload or download. This allows for more users, who use less bandwidth and eventually you can spread the costs out among them making things cheaper. Where there is less bandwidth, things are more expensive as things take longer, are prone to more problems, and thus, cost more to maintain. Less users can afford it, keeping costs relatively high. It would seem to be in the best interest of non-profit groups, governments and NGOs to save all of the above (money, time and bandwidth).
Smarter Trackers?
I wonder, and I may be completely clueless here, but could there be (or are there already) smart trackers that peer only the machines that are closer to the computer requesting the downloads? So if I’m in Africa requesting a torrent of Obama’s Inauguration (which many did), could the trackers contain some sort of algorithm that peers the users closest to me first, before expanding out to find peers farther away. From what I understand, tracks right now are blind. They just return seeds with all or some of the file requested. But I’m thinking of a network where I’m requesting a file from Uganda. The tracker would look for peers with an IP address designated as being Ugandan, then it would seek out seeders across Africa, then it would begin looking in the rest of the world. I say this because torrenting is still subject to being only as fast as the network allows and when all your seeders are in the States or Europe, there’s still the problem of distance.
I dunno, it might be a dumb idea but in the case of an NGO it would mean they could ensure that they are maximizing bandwidth even if they had peers all over the world. Or in the case of Nation Media Group’s NTV in Kenya, they could share files with their branches all over Africa faster and more efficiently.

About the author: Jonathan Gosier is a software developer, writer and social entrepreneur. He currently lives in Kampala, Uganda where he incubates and invests in East African entrepreneurs as the CEO of Appfrica Labs. He's also a TED Fellow.
Cet article a été publié dans Featured, Web avec les mots-clefs : bandwidth, ngo, Technology, Web. Bookmarker le
permalien. Les trackbacks sont fermés, mais vous pouvez .
Bit Torrent in Developing Countries
It goes without saying that bandwidth is precious. So what is bit torrent and why should more developmental groups adopt it as means of distributing software?
Oh, Virtuous Torrenting
BitTorrent is a file-sharing protocol that enables the download of large files using minimum Internet bandwidth in less a mounts of time than normal bandwidth. It maximizes transfer speed by gathering portions of the transferred file and downloading multiple pieces concurrently from people who already have them.
The traditional way of sharing files is far less efficient. A file is placed on a server and the URL is publicized and your end user begins downloading. No matter how few or how many people need that file, they all request it from the same place. You might have two million, or you might have two. Whatever the case, they all attempt to get data from the same place. For each user, your server experiences the same strain.
It’s like watering your lawn with a hose versus a sprinkler system. Sure, for a small lawn a hose might work fine. But what about when your lawn grows to 190 acres? That hose is still going to work, it’s just going to take longer. On the web, the connection to one server is affected by many variables including your distance from the physical location of the server, the integrity of the connection, the fidelity of your signal (especially for people using satellite), the power and features of the server itself and amount of bandwidth on the receivers end. On a good connection, these variables are negligible. On a bad connection, each and everyone can make someone have a very annoying internet session. When you move that server across the Atlantic Ocean, and then try to connect to it through a an orbiting satellite (as is the case for internet users in Africa and other places) the potential things that can go wrong are compounded by the trip of the signal to space, back down and half-way around the world. Or to go back to my analogy, it’s like using a good hose versus a bad hose with patched leaks and folds that’s coming from a broken faucet at your neighbors house.
With Bittorent, a central computer called a tracker monitors requests for files and pairs them with the computers either already have the files, or that are already downloading them. That central computer then sort of ‘directs traffic’, allowing your computer to get bits and pieces of the file you need from all those computers who have the same file. Computers with the full file are called seeders while the collective of computers with all or a potion of the requested file are called a swarm. Downloading multiple parts of the same file at the same time solves the problem of having to rely upon a single connection. Torrent users often have multiple redundant connections to the same file all at work at the same time.
The Cons of Torrents
Bittorrent does have it’s own problems. Occasionally only one computer is online that has any part of the file at all and maybe they don’t have is all, or maybe your computer has more of the file downloaded than anyone else in the swarm…this results in files that never complete downloading. The only way the download will ever resolve is if someone with more or all of the file downloaded rejoins the swarm. Also, most of the Bittorrent sites you find online aren’t the actual trackers. This would make them immediately complicit in file-sharing because it would mean they have uploaded all the files that people are seeking to download to their own servers. Instead, these websites act as a repository for the millions of trackers and seeders that are often simply home users like you or me. They are tracking trackers that are tracking seeders that are also sometimes trackers. It’s a completely decentralized network of file-sharers. If the central torrent site is ever shut down, theoretically you could still use your bit torrent to connect directly to other seeders and continue your uploads and downloads. This it what makes Piratebay.org much harder to shutdown than say, Napster.
This is really the only major flaw in bittorrent. No matter what you’re downloading, there are times when only on tracker is available. If that tracker decides to go offline and never comes back, your download can never resolve because it won’t know where to look for seeders. However, there can be more than one tracker for the same file. These are called peers.
Better Living Through Torrenting
In the developing world, the problems of downloading files are plentiful. If you want to send a large file to someone all the factors mentioned above can cause the users browser to timeout on the connection. Sometimes the browser thinks a file is finished before it actually is, resulting in unusable pieces of the intended file. The real benefit of bittorrent is that it can track all those bits and stitch them back together. The user would never have to ‘restart’ their download as I’ve often had to do after my connection timed-out while downloading files. I can’t tell you how many times I’ve gone to sleep with a file downloading here in Uganda only to wake up to find out that the download timed-out early leaving me with a completely unusable half of whatever it is I was fetching. With bittorrent, I never have to worry. The file is only assembled once the full torrent completes.
The other problem with sharing files to countries that aren’t directly connected to the undersea cables that make a truly world wide web possible is that it takes a long time. The signal goes from the computer in the developing country, to their end-user dish, to their providers dish, through their providers routers, out the providers V-Sat dish, up to space to a satellite, back down to Earth to another provider dish that may be connected directly to the undersea cables, through the undersea network of cables, to the destination continent. It’s then forwarded to a a large ISP that routes the request to the correct local provider who then routes the request to the intended server or computer. If you’re requesting a file it then does all of that in reverse to begin pushing you data. With local peers you can avoid at least five of those steps and reduce a whole lot of distance!
If I were an NGO, I’d prefer to send my content to a centralized repository on content and redistribute it from there. If I had a multiple contacts or locations on the continent I’d make those people/locations my peers. For files that change frequently, this is inefficient; but if it’s things like instruction manuals, audio or video, it makes perfect sense. Bandwidth/Time = Money Where there is more bandwidth, it’s cheaper as things take far less time to upload or download. This allows for more users, who use less bandwidth and eventually you can spread the costs out among them making things cheaper. Where there is less bandwidth, things are more expensive as things take longer, are prone to more problems, and thus, cost more to maintain. Less users can afford it, keeping costs relatively high. It would seem to be in the best interest of non-profit groups, governments and NGOs to save all of the above (money, time and bandwidth).
Smarter Trackers?
I wonder, and I may be completely clueless here, but could there be (or are there already) smart trackers that peer only the machines that are closer to the computer requesting the downloads? So if I’m in Africa requesting a torrent of Obama’s Inauguration (which many did), could the trackers contain some sort of algorithm that peers the users closest to me first, before expanding out to find peers farther away. From what I understand, tracks right now are blind. They just return seeds with all or some of the file requested. But I’m thinking of a network where I’m requesting a file from Uganda. The tracker would look for peers with an IP address designated as being Ugandan, then it would seek out seeders across Africa, then it would begin looking in the rest of the world. I say this because torrenting is still subject to being only as fast as the network allows and when all your seeders are in the States or Europe, there’s still the problem of distance.
I dunno, it might be a dumb idea but in the case of an NGO it would mean they could ensure that they are maximizing bandwidth even if they had peers all over the world. Or in the case of Nation Media Group’s NTV in Kenya, they could share files with their branches all over Africa faster and more efficiently.