BitTorrent tracker optimization

<p><span style="font-family: sans-serif; color: #000000; font-size: small;"><span style="font-size: 13px; line-height: 19px;"><span style="font-family: Verdana, sans-serif; font-size: 12px; color: #494949; white-space: pre-wrap;">A BitTorrent tracker is a server software based on BitTorrent protocol. Download clients are required to firstly communicate with the tracker to get other peers which have already begun downloading the same file that the clients want to get. During the download, tracker randomly and periodically provides clients newer peers which have joined the same download group. Optimize the tracker by using GeoTool so that the tracker can provide clients the nearest peers through geographical coordinates and therefore speed up the entire download time. </span></span></span></p><p><span style="line-height: 19px; white-space: pre-wrap;"><span style="line-height: 20px; white-space: normal;"><br /></span></span></p>
2 answers

Combine BNBT tracker with GeoTool API

Basically, use database which GeoTool provides publicly to calculate the individual geographically coordinates for each downloading peer. These coordinates are going to be transmitted to the downloading client. This can be achieved by using the database API which the company MaxMind provides.There is a open source version of BitTorrent tracker available on the web which is written by C++ and totally compatible to the original BitTorrent tracker which is written by Python. When the tracker operates unter a Linux system, we can use the IPC(Inter Process Communication) technology like Shared Memory and synchronisation technology like Semaphores to enable the data exchange between the database API and the tracker.This means tracker sends coordinate requests and corresponding answers via shared memory, while semaphores are used for a synchronised access to shared memory.

Taggings:

Embedding of Google Maps

Before you do anything, as with most API-based web services, you will need to attain an API key before you are able to use the service. Head over to this Google Maps page to sign up for an API key. Signing up is pain free and you get the API-key right after you click on Generate API Key.You then need to download the gmapez.js file from this website and host it somewhere on your website. The actual code necessary to make the map appear on your blog entry or website relies on using an iframe, so you will need to make another html file that the iframe will read from.Below is the code you will need to put in that html file; a few things will need to be changed so keep on reading. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><script src="http://maps.google.com/maps?file=api&v=1&key=YOUR_GOOGLE_MAPS_API_KEY_HERE" type="text/javascript"></script><script src="http://www.YOURDOMAIN.com/path/to/gmapez.js"type="text/javascript"></script></head><body><div class="GMapEZ GLargeMapControl GMapTypeControl GScaleControl"style="width: 400px; height: 400px;"><a href="YOURGOOGLELINK"></a></div></body></html>This is the basic skeleton of code needed to get a Google Map running on your site. You will have to give it your Google API key as well as a valid url to your gmapez.js file. One more thing is the actual Google Maps link for the area you want shown on the map. Go to maps.google.com and find the location you want to be shown, double click on it and then copy the link via the Link to this page at the top right of the Google Maps site. Paste that url in the code above where it says YOURGOOGLELINK. This will automatically center the map on a marker of that location. You can create new markers my creating more and more <a href></a> type tags. Placing a capital letter between those tags will display that letter as the marker instead of the default dot. You can find out more about various configurations at the GMap EZ site.Now to actually placing the code on your site. The piece below goes on the actual blog post or website page. Make sure to feed it the proper URL to your html containing the code above.  <iframe src="http://www.YOURDOMAIN.com/pathto/YOURCODE.html" width="500" height="500"></iframe>