Seminar report on " BIT-TORRENT "



Bit Torrent is a protocol designed for transferring files. It is peer-to-peer in nature, as users connect to each other directly to send and receive portions of the file. However, there is a central server (called a tracker) which coordinates the action of all such peers. The tracker only manages connections, it does not have any knowledge of the contents of the files being distributed, and therefore a large number of users can be supported with relatively limited tracker bandwidth. The key philosophy of Bit Torrent is that users should upload (transmit outbound) at the same time they are downloading (receiving inbound.) In this manner, network bandwidth is utilized as efficiently as possible. Bit Torrent is designed to work better as the number of people interested in a certain file increases, in contrast to other file transfer protocols.

One analogy to describe this process might be to visualize a group of people sitting at a table. Each person at the table can both talk and listen to any other person at the table. These people are each trying to get a complete copy of a book. Person A announces that he has pages 1-10, 23, 42-50, and 75. Persons C, D, and E are each missing some of those pages that A has, and so they coordinate such that A gives them each copies of the pages he has that they are missing. Person B then announces that she has pages 11-22, 31-37, and 63-70. Persons A, D, and E tell B they would like some of her pages, so she gives them copies of the pages that she has.

The process continues around the table until everyone has announced what they have. The people at the table coordinate to swap parts of this book until everyone has everything. There is also another person at the table, who we will call 'S'. This person has a complete copy of the book, and so does not need anything sent to him. He responds with pages that no one else in the group has. At first, when everyone has just arrived, they all must talk to him to get their first set of pages. However, the people are smart enough to not all get the same pages from him. After a short while, they all have most of the book amongst themselves, even if no one person has the whole thing. In this manner, this one person can share a book that he has with many other people, without having to give a full copy to everyone that is interested. He can instead give out different parts to different people, and they will be able to share it .

Bit Torrent was created by Bram Cohen as a way to distribute large files around a network. There is a lot of potential behind Bit Torrent, especially for people who need to distribute large files to Internet users. If you had a 1GB file and there was 300 people trying to download it, it would take a lot of time to distribute 300GB of data for most people. So instead, you distribute the file in small pieces to users who then share them around with other users until they have the full file. After they have the full file they can continue to upload to other users to help them also get the full file, this is known as seeding. The speed of Bit Torrent can be absolutely amazing; with very large files transferring in a few hours.  it was to help distribute content quicker around an unreliable network.

Bit Torrent is a free speech tool. You have something terrific to publish a large music or video file, software, a game or anything else that many people would like to have. But the more popular your file becomes, the more you are punished by soaring bandwidth costs. If your file becomes phenomenally successful and a flash crowd of hundreds or thousands try to get it at once, your server simply crashes and no one gets it. With Bit Torrent, those who get your file tap into their upload capacity to give the file to others at the same time. Those that provide the most to others get the best treatment in return.
More customers require more Cooperative distribution can grow almost without limit, because each new participant brings not only demand, but also supply. Instead of a vicious cycle, popularity creates a virtuous circle. And because each new participant brings new resources to the distribution, you get limitless scalability for a nearly fixed cost.
Bit Torrent is not just a concept, but has an easy-to-use implementation capable of swarming downloads across unreliable networks. Bit Torrent has been embraced by numerous publishers to distribute to millions of users. With Bit Torrent free speech no longer has a high price.

2. Bit Torrent files
A popular file sharing service developed by Bram Cohen that prevents people from downloading constantly unless they are willing to share in the overall transmission load on the network.
Large Files Become Torrents Instead of downloading an entire file, Bit Torrent breaks a file into chunks and distributes them among several participating users. When you download a "torrent," you are also uploading it to another user. Bit Torrent balances the load because broadband download and upload speeds are not the same. Users download files faster than they can upload them, which make them less interested in sharing bandwidth to upload to someone else. BitTorrent ensures every user participates in uploading.
BitTorrent has become widely used for transferring huge program files as well as pirated movies. In 2004, one estimate placed BitTorrent files as a third of Internet traffic. Even if widely exaggerated, torrent traffic has been substantial, and the software has made its mark
File swapping systems have been architected in different ways as outlined in the following illustrations:
BitTorrent is a peer-to-peer (P2P) file distribution tool. The reference implementation is written in Python. With BitTorrent, files are broken into smaller fragments, typically a quarter of a megabyte each. As the fragments get distributed to the peers, they can be reassembled on a requesting machine in a random order. Each peer takes advantage of the best connections to the missing pieces while providing an upload connection to the pieces it already has. This scheme has proven particularly adept in trading large files such as videos and software source code. In conventional downloading, high demand leads to

2.1 Sharing files

BitTorrent greatly reduces the load on the server, because the users generally download the file from each other, not the server. As the colored bars below each client show, the file is downloaded in random order, instead of sequential order.
To share a file using Bit Torrent, a user creates a .torrent file, a small "pointer" file which contains:
  • the filename, size, and the hash of each block in the file (which allows users to make sure they are downloading the real thing)
  • the address of a "tracker" server (which is discussed below)
  • And some other data.
The torrent file can then be distributed to other users, often via email or placed on a website. The BitTorrent client is then started as a "seed node", allowing other users to connect and commence downloading. When other users finish downloading the entire file, they can optionally "reseed" it--becoming an additional source for the file. One outcome of this approach is that if all seeds get taken offline, the file may no longer be available for download, even if the torrent file is possessed. Downloading with Bit Torrent is straightforward. Each person who wants to download the file first downloads the torrent and opens it in the BitTorrent client software. The torrent file tells the client the address of the tracker, which, in turn, maintains a log of which users are downloading the file and where the file and its fragments reside. For each available source, the client considers which blocks of the file are available, and then requests the rarest block it does not yet have. This makes it more likely that peers will have blocks to exchange. As soon as the client finishes importing a block, it hashes it to make sure that the block matches what the torrent file said it should be. Then it begins looking for someone to upload the block to.
Though Bit Torrent is a good protocol for a broadband user, it is less effective for dial up connections, where disconnections are common.

2.2 Web seeding
One recently implemented feature of Bit Torrent is web seeding. The advantage of this feature is that a site may distribute a torrent for a particular file or batch of files and make those files available for download from that same web server application; this can simplify seeding and load balancing greatly once support for this feature is implemented in the various Bit Torrent clients. This feature is an unofficial one, created by the author of a specific third-party client.

2.3 Pre - BitTorrent
Bit Torrent on its own is a protocol to enable file-downloading. When used in conjunction with directory style websites, Bit Torrent becomes a powerful tool enabling users of the system to share large files. The users of the system download the files from each other but they rely on a centralized system in order to do this.


File Sharing (Pre - Bit Torrent)
A computer network is a system for communication among two or more computers allowing exchange of traffic back and forth between them. The Internet is an interconnected system of networks that connects computers around the world via the TCP/IP protocol
One of the most popular uses of the Internet is file downloading. This method was restricted by the number of people attempting to download files from the server.
 P2P file-sharing is a more efficient way of downloading high-bandwidth material like music and video.
In order for a P2P application to be successful the system should adhere to several criteria
It should have a high availability of different files
  1. The content should be of good quality
  2. High download speeds should be available

3. The Bit Torrent Protocol

Illustration of the Bit Torrent Protocol
          the green blocks represent fully downloaded chunks, available for upload. The red blocks are the blocks currently being downloaded? Each peer can upload only two blocks at a time.
In Bit Torrent, a file is split into chunks, typically of the order of a thousand chunks per file. To download a complete file, a user downloads different chunks of the desired file from other users. The chunks are not downloaded sequentially, but are based on the rarity of the chunk at that time. This method of splitting a file into many pieces greatly facilitates the sharing of large files such as MPEGs and software applications.
A seed seed is a computer that has a complete copy of a particular file, whereas a peer is one that has a partial copy. In order to download this file, one must simply procure the .torrent file. torrent refers to the metadata available from a web server about the file you wish to download - typically the filename, size, and the hash of each block in the file and the address of a tracker server The .torrent file is sent to the downloader's computer when they click on a link and it can be used for downloading via Bit Torrent. When a client finishes downloading from a seed, it will remain open until it is closed or the finish' button is clicked.
The .torrent file is not stored on the website itself but is distributed among a number of tracker servers. These servers store a global registry of all the downloader’s and seeds of the corresponding file. When a user wishes to start downloading, they click on a link from the website to a .torrent file. The tracker server responds to the users request by sending back a list of other users that have (part of) the file.
The above graph deals with another aspect of Bit Torrent. Here the horizontal axis represents the number of seeds for a file after its injection into mainstream traffic. The vertical axis shows how long the file needs to stay available so that a given number users can download it.
As the number of seeds increases, the lifetime of the file dramatically declines. The attraction to becoming a seed is low because all upload capacity is used for distribution of one file. Obviously, as the number of seeds increases, not only are you a seed for a shorter time, but the bandwidth used for uploading this file is reduced. Even though, as time goes by the number of seeds for a particular file decreases, the file is available so long as there is at least one seed available.
When no seeds are available, a user with the complete file must come in and act as the newseed. This is known as reseeding. A Swarm is a term given to a group of computers, potentially including both seeds and Peers that are connected for a particular file.
Choked is a term from the Bit Torrent protocol which indicates a state an up loader is in if it refuses to send anything on that link. It is used when the choked flag is in use, to let it be known that whenever possible, a connection is wanted.
Snubbed is term from the protocol that indicates that a client has not received anything for a substantial period of time. It is used to improve download speeds
The above graph displays measurements taken during a study on the tolerance of Bit Torrent to the "Flash Crowd Effect". The blue line shows the number of downloads of the tracker for "Lord of the rings 3" from "FutureZone.TV". The red line signifies the number of seeds for the file.
For the first five days, "FutureZone.TV" was the only seed, causing the sustained high download rates. As the number of seeds increases, the download rate dropped for the website. Notice that a small increase in the number of seeds dramatically decreases the load on the provider. From these results, it can be concluded that bit torrent is well capable of handling large, sudden crowds.

3.1 Decentralization

Traditionally, the bit torrent model has relied on a small number of centralized servers to provide the trackers for specific files. There is an inherent problem with this model. If any number of servers go down, this places an extra Burdon on the remaining few. Although this has been shown that this is difficult to do, it is also a common fact that a determined hacker usually finds a way. When a popular new file is introduced by a seed there can be a large surge of simultaneous downloads from this source. Since the infrastructure is not there to oversee the file sharing, this file may well infect many machines. Another problem that may arise is obtaining the torrent.

3.2 Pure Decentralization with the Overhaul Protocol

When a file is large it is better to divide it into separate chunks. One way of doing this is using Overhaul. Overhaul changes the HTTP of an overloaded server so it acts like a peer to peer network. It splits up the requested document into n chunks. Each request results in a response that includes the itch chunk and the IP address of m other clients accessing the document. A signature for each of the n chunks is also provided in the header. A client supporting Overhaul connects to other clients to retrieve the remaining chunks. This saves bandwidth utilized by a regular fetch. By transferring only a small portion of the document, the Overhaul process frees up the server to satisfy requests from other clients.
3.3 The Overhaul Protocol
An example is shown above; four client request for the same document off the server. The server becomes overloaded and goes into Overhaul mode, where it splits the document into chunks and distributes these amongst the clients. The client collaborate to merge the chunks together so that each can form a coherent document. This is different to Bit Torrent which is a specialized tool for distributing large files over existing peer to peer networks, (the Internet). Also Bit Torrent requires a dedicated tracker and meta-info file for each requested document, resulting in extra traffic to the server.

  4.peer-to-peer
A peer-to-peer (or P2P) computer network is a network that relies on computing power at the edges (ends) of a connection rather than in the network itself. P2P networks are used for sharing content like audio, video, data or anything in digital format. P2P network
A pure peer-to-peer file transfer network does not have the notion of clients or servers, but only equal peer nodes that simultaneously function as both "clients" and "servers" to the other nodes on the network. This model of network arrangement differs from the client-server model where communication is usually to and from a central server. A typical example for a non peer-to-peer file transfer is an FTP server. One user uploads a file to the FTP server, then many others download it, with no need for the up loader and downloader to be connected at the same time.

4.1 Types of P2P net woks:
Three major types of P2P network are:
a) Pure P2P:
  • Peers act as clients and server
  • There is no central server
  • There is no central router
b) Hybrid P2P:
  • Has a central server that keeps information on peers and responds to requests for that information.
  • Peers are responsible for hosting the information as the central server doesn't store files, for letting the central server know what files they want to share and for downloading its shareable resources to peers that request it.
  • Route terminals are used addresses, which are referenced by a set of indices to obtain an absolute address.
c) Mixed P2P:
  • Has both pure and hybrid characteristics
4.2 Attacks on Peer-to-peer networks
Many peer-to-peer networks are under constant attack by people with a variety of motives.
Examples include:
  • poisoning attacks (providing files whose contents are different than the description)
  • denial of service attacks (attacks that may make the network run very slowly or break completely)
  • defection attacks (users or software that make use of the network without contributing resources to it)
  • insertion of viruses to carried data (e.g. downloaded or carried files may be infected with viruses or other malware)
  • filtering (network operators may attempt to prevent peer-to-peer network data from being carried)
  • identity attacks (e.g. tracking down the users of the network and harassing or legally attacking them)
5. Functions:
Bit Torrent is a file sharing system. Its official software is cross-platform and is extremely simple to install and use. It includes a window that appears as a regular download window but includes a rate for download and upload. BitTorrent is open-source and does not contain spy ware.

5.1 Torrent Files
The torrent system is based on small, easily exchanged Torrent files. These file have a file name followed by .torrent and are usually only a few kilobytes in size yet allow gigabytes of information to be downloaded. Increasingly used by Web sites that do not have the capacity to handle massive download, BitTorrent is estimated by some sources to make up between 50 and 85 percent of all Internet traffic.

5.2 How it Works
Bit Torrent connects to multiple other users who are downloading the same file, speeding up the process for everyone. This type of interaction is called a multi-source system growing popular in p2p where files begin sharing before fully downloaded. Any file downloaded by BitTorrent is then checked against a hash file contained in the torrent to confirm its integrity. This eliminates many of the problems with false file exchanges, so long as one trusts a file's source.
Arguably the most successful P2P-based file distribution system, BitTorrent's success goes way beyond simple warez and ex-Napster music downloaders, enabling access to much-requested high-volume data such as with Web-based independent movies and the free software community.

5.3 USING BitTorrent

Once you have downloaded and installed the client, for a variety of software, music, and data distributed via BitTorrent. When you have found a ".torrent" file, your browser should automatically start BitTorrent and begin downloading. If it does not, save it somewhere on your computer and click twice on the file. A download box should appear.
When your download has completed, wait to click "finish" for as long as possible. This allows the file to continue uploading even after you have the entire file and assist others in downloading as well.

5.4 BITTORRENT’S power

Bit Torrent is a solution for Web sites that cannot handle massive traffic but must distribute an enormous amount of information.
As is common, downloaders have varying connection speeds of T1, DSL, and dial-up but the server in this example can only upload 20 kilobytes per second to any one outside computer. With hundreds of requests, either some will be denied or get 1 kilobyte per second. This will take weeks to distribute to hundreds of people.
Until file sharing systems, the only other option was shipping the music using postal mail or moving to an expensive, high-end server, not possible for most users. With BitTorrent, one person on a slow network can distribute the contents of a regular compact disk (~700 megabytes) to hundreds or even thousands in a matter of hours - not weeks - because everyone shares whatever they receive. A tiny amount of data can be downloaded and then exchanged among all users because higher-bandwidth users assist lower-bandwidth users and everyone hands back to everyone else; users upload files while simultaneously downloading them.

5.4.1 BitTorrent or direct-download

When choosing between the download of a file directly from its Web site or an available BitTorrent link you should choose depending on time of day .
Bit Torrent - more effective during peak Internet usage times - usually 6-9 P.M. weekdays - as the program scales inversely to the demand, making download speeds quite high.
Direct Download - more effective during low-usage times - such as 3 a.m. on a Sunday - the download it from the Web site option may be faster since the Web site's traffic is quite low.

5.4.2 Other uses for BitTorrent

1. Files gained over other file sharing systems can be checked using BitTorrent for integrity.
2. share files gathered over direct-download are often identical to those gained over BitTorrent and can then be shared.
3. BitTorrent checksums can be included on a CD to later test archives for an accurate burn

5.5 Bit Torrent Versus other types of file sharing

5.5.1 Positive

Bit Torrent software and ".TORRENT" files are very small and easy to download and host.
Files have an included hash system to make sure they're fully downloaded and all portions of the file are accurate.
Simplicity - other file sharing systems have so many other features.
It forces you to share and go faster at the same time, so the community benefits from it.

5.5.2 Negative

An intense focus on simplicity that also means lack of features, for instance no built-in search capability. After a file downloads, the network continues to share it as part of those users' "shared" folders.
Resource-intensive - slower machines (400mhz or less) may experience a performance hit while running BitTorrent.

5.6 Distributed File Sharing Using Bit Torrent
Bit Torrent is a file sharing system that minimizes the role of the central server, thereby enabling many more users to share or acquire large files. Distributed file sharing thus avoids the problems often encountered when popular files are downloaded through FTP or HTTP protocols, namely that the servers become overloaded, slow down, and refuse connections. Bit Torrent clients are available for Linux, Windows, and OS X.

5.6.1 Multi-Source

Multi-Source is generally used in peer-to-peer applications where a client can download pieces of a file from more than one source (user) at a time. This may also be called hive downloading but is in fact a different term; hive downloading is simultaneous download and upload to and from multiple sources.

6. Files

6.1 Peer-To-Peer File sharing

            Another file-transfer method that you may have heard about is called peer-to-peer file sharing. In this process, you use a software program  to locate computers that have the file you want. Because these are ordinary computers like yours, as opposed to servers, they are called peers. The process works like this:
  • You run peer-to-peer file-sharing software on your computer and send out a request for the file you want to download.
  • To locate the file, the software queries other computers that are connected to the Internet and running the file-sharing software.
  • When the software finds a computer that has the file you want on its hard drive, the download begins.
  • Others using the file-sharing software can obtain files they want from your computer's hard drive.
The file-transfer load is distributed between the computers exchanging files, but file searches and transfers from your computer to others can cause bottlenecks. Some people download files and immediately disconnect without allowing others to obtain files from their system, which is called leeching. This limits the number of computers the software can search for the requested file.

6.2 What Bit Torrent Does
           Unlike some other peer-to-peer downloading methods, Bit Torrent is a protocol that offloads some of the file tracking work to a central server (called a tracker). nother difference is that it uses a principal called tit-for-tat. This means that in order to receive files, you have to give them. This solves the problem of leeching -- one of developer Bram Cohen's primary goals. With BitTorrent, the more files you share with others, the faster your downloads are. Finally, to make better use of available Internet bandwidth (the pipeline for data transmission), Bit Torrent downloads different pieces of the file you want simultaneously from multiple computers.
  • You open a Web page and click on a link for the file you want.
  • Bit Torrent client software communicates with a tracker to find other computers running Bit Torrent that have the complete file and those with a portion of the file
  • The tracker identifies the swarm, which is the connected computers that have all of or a portion of the file and are in the process of sending or receiving it.
  • The tracker helps the client software trade pieces of the file you want with other computers in the swarm. Your computer receives multiple pieces of the file simultaneously.
you continue to run the BitTorrent client software after your download is complete, others can receive .torrent files from your computer.
Downloading pieces of the file at the same time helps solve a common problem with other peer-to-peer download methods: Peers upload at a much slower rate than they download. By downloading multiple pieces at the same time, the overall speed is greatly improved. The more computers involved in the swarm, the faster the file transfer occurs because there are more
If
sources of each piece of the file. For this reason, BitTorrent is especially useful for large, popular files.

6.3  How to Download Files with BitTorrent
To use BitTorrent for file downloads, you need to install the BitTorrent client software. You may also need to tweak your firewall and network router to accept Bit Torrent files. We'll give you all the details to get started. But first, here's a synopsis of the steps:
  1. Download and install the BitTorrent client software.
  2. Check and configure firewall and/or router for BitTorrent (if applicable).
  3. Find files to download.
  4. Download and open the .torrent pointer file.
  5. Let BitTorrent give and receive pieces of the file.
  6. Stay connected after the download completes to share your .torrent files with others.
6.4 Check and Configure Firewall
If you have a firewall installed on your computer, you will obtain faster download rates if you configure it to have an open pathway for BitTorrent file transfers. A firewall protects your system from intruders by disallowing unauthorized access to your computer's ports. A port is a way for Internet communications to travel into and out of your computer. Ports are numbered, and each communication type has a standard port number.
BitTorrent also uses specific port numbers, normally ports 6881 through 6889. Because firewalls block these ports by default, you'll need to configure your firewall to accept this incoming traffic in order to receive .torrent files. You may also have to enable port forwarding of your computer's IP address for ports 6881 through 6889 so that other Bit Torrent computers can find you.

6.5 Traditional Client-Server downloading
           To understand how Bit Torrent works and why it is different from other file-serving methods; let's examine what happens when you download a file from a Web site. It works something like this:
  • You open a Web page and click a link to download a file to your computer.
  • The Web browser software on your computer (the client) tells the server  to transfer a copy of the file to your computer.
  • The transfer is handled by a protocol , such as FTP (File Transfer Protocol) or HTTP (Hypertext Transfer Protocol).
The transfer speed is affected by a number of variables, including the type of protocol, the amount of traffic on the server and the number of other computers that are downloading the file. If the file is both large and popular, the demands on the server are great, and the download will be slow.

7. Conclusion

Bit Torrent was conceived as a way of distributing large file more quickly, efficiently, and reliably. The download of large file has become more feasible, and people have become accustomed to acquiring video through the net. At this point it is virtually impossible for anyone to bring an end to illegal downloads.
BitTorrent is a peer –to-peer file sharing system that is quickly becoming the method of choice for publishing and sharing large files across the internet. It is distinct from other p2p programs, such as lime wire and Kazak, in that break down files into smaller packets of information, generally 256KB, and uses a protocol.
As it can be seen Bit Torrent may be ushering in a new paradigm in downloading. At the moment it’s the cheapest and one of the fastest ways to share large files in the mainstream medium - the internet
Even if this application of protocol (Free downloads) were to come to an end, through a business agreement only cause BitTorrent to have an even greater overall social impact. Illegal distribution of films online has already affected the film industry, affecting box-office ticket and home video sales. However, if movie studios were to actually transition to online distribution,it could completely transform the business of cinema.

8. References

No comments:

Post a Comment

leave your opinion