1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu về giao thức Bittorrent

17 282 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 292,08 KB
File đính kèm slide thuyết trinh.rar (1 MB)

Nội dung

Tìm hiểu về giao thức Bittorrent bản trình bày gồm Word + slide Báo cáo môn Internet và giao thức Học viện công nghệ bưu chính viễn thông giảng viên: Nguyễn Tiến Ban Báo cáo tóm tắt + slide có ví dụ minh họa Giao thức Bittorent Tổng quan cấu hình p2p Hoạt động thuật ngữ thường sử dụng ví dụ minh họa cho hoạt động

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA VIỄN THÔNG I

- -BÁO CÁO MÔN: INTERNET VÀ CÁC GIAO THỨC

ĐỀ TÀI: TÌM HIỂU GIAO THỨC

BITTORRENT

GIẢNG VIÊN: PGS.TS NGUYỄN TIẾN BAN

SINH VIÊN THỰC HIỆN

Trang 2

N i dung ô

Chương 1: Tổng quan về mạng ngang hàng P2P 3

1.1 Giới thiệu 3

1.2 Định nghĩa P2P 3

1.3 So sánh mô hình P2P với mô hình Client/Server: 4

1.4 Ưu, nhược điểm của mạng P2P, Client/Server: 4

1.5 So sánh sự khác nhau giữa ba phương thức truyền tin 5

Chương 2: Tổng quan về giao thức BitTorrent 7

2.1 Khái niệm về BitTorrent 7

2.2 Các thuật ngữ sử dụng trong BitTorrent 7

2.2.1 File Torrent 7

2.2.2 Seed/Seeder - Leech/Leecher là gì? Peer là gì? 8

2.2.3 Tracker Torrents 8

2.2.4 Trackerless Torrents 9

2.2.5 Share Ratio 9

2.2.6 Swarm 10

2.2.7 Reseed 10

Chương 3:Phương pháp hoạt động của BitTorrent 10

Chương 4: Ưu và nhược điểm của BitTorrent 14

Trang 3

Chương 1: Tổng quan về mạng ngang hàng P2P

1.1 Giới thiệu

Mạng ngang hàng (Peer-to-Peer – P2P) bắt đầu xuất hiện từ 1999 và

đã thu hút sự quan tâm của giới CNTT trong những năm gần đây Đặc biệt việc áp dụng các mô hình P2P trong việc xây dựng những ứng dụng chia sẻ file (file sharing), điện thoại trên nền Internet (Internet-based telephony) đã đạt được nhiều thành công

Hiện nay các ứng dụng P2P chiếm khoảng 50% (thậm chí 75%) băng thông trên Internet

Các ứng dụng của kiểu mạng này như là: Napster, Skype, BitTorrent, FlashGet, Sopcast, ICQ vv

1.2 Định nghĩa P2P

“Mạng ngang hàng là một kiểu mạng được thiết kế cho các thiết bị trong đó có chức năng và khả năng của các thiết bị đó là như nhau”

Mạng P2P không có khái niệm máy trạm (client) hay máy chủ (server), mà chỉ có

khái niệm các nốt (peers) đóng vai trò như cả client và server

Hình 1 Kiến trúc mạng ngang hang Peer-to-Peer

Trang 4

Mạng ngang hàng là một hệ thống phân tán đặc biệt trong tầng ứng

dụng, ở đó mỗi cặp điểm nút có thể giao tiếp với nhau thông qua giao thức

định tuyến trọng các tầng mạng ngang hàng Mỗi điểm nút giữ 1 đối tượng

dữ liệu nào đó có thể là nhạc, ảnh, tài liệu, vv Mỗi điểm nút có thể truy

vấn tới đối tượng nó cần từ các điểm nút khác thông qua kết nối logic

trong tầng mạng ngang hàng

1.3 So sánh mô hình P2P với mô hình Client/Server:

P2P Client/Serv

er

- Một mạng ngang hàng cho phép

các node (PCs) đóng góp, chia sẻ

nguồn tài nguyên với nhau Tài

nguyên riêng rẽ của các node (ổ

cứng, CD-ROM, máy in … Các

nguồn tài nguyên này có thể được

truy cập từ bất cứ node nào trong

mạng)

- Các node đóng vai trò như cả Client

(truy vấn

thông tin) và Server (cung cấp

thông tin)

- Dữ liệu được lưu trữ ở một Server trung tâm, tốc độ cao (Tốc độ truy cập thường lớn hơn so với mạng P2P)

- Khi một máy client yêu cầu lấy thông tin về thời gian nó sẽ phải gửi một yêu cầu theo một tiêu chuẩn do server định ra, nếu yêu cầu được chấp nhận thì máy server sẽ trả về thông tin mà client yêu cầu

1.4 Ưu, nhược điểm của mạng P2P, Client/Server:

Trang 5

P2P Client/Ser

ver + Ưu điểm:

- Không cần server riêng, các

client chia sẻ tài nguyên Khi

mạng càng được mở rộng thì

khả năng hoạt động của hệ

thống càng tốt

- Rẻ

- Dễ cài đặt và bảo trì

- Thuận lợi cho việc chia sẽ file,

máy in, CD-ROM v.v…

+ Ưu điểm:

- Tốc độ truy cập nhanh

- Khả năng mở rộng cao

- Hoạt động với bất kì loại ứng dụng nào

- Sử dụng được với các ứng dụng chia sẻ

CSDL

- Đáng tin cậy hơn (có server riêng)

Trang 6

+ Nhược

điểm:

- Chậm

- Không tốt cho các ứng dụng

CSDL

- Kém tin cậy

+ Nhược điểm

- Cần server riêng (nghẽn cổ chai)

- Đắt

- Phức tạp trong việc bảo trì, duy trì hoạt động của mạng

1.5 So sánh sự khác nhau giữa ba phương thức truyền tin

1.5.1 Phương pháp chia sẻ theo kiểu khách - chủ (Client – Server)

Theo phương pháp này, khi muốn tải một tập tin về máy, bạn dùng trình duyệt để mở trang web và nhấn chuột vào liên kết download tập tin

Khi đó trình duyệt sẽ yêu cầu máy chủ chứa tập tin bạn cần truyền

tập tin đó về máy của bạn

Việc truyền tập tin sau đó diễn ra theo các quy tắc định sẵn, còn gọi

là giao thức (protocol), như FTP, HTTP

* Nhận xét: Tốc độ truyền phụ thuộc nhiều yếu tố: kiểu giao thức

truyền, khả năngg đáp ứng của máy chủ, số lượng các máy khác cũng

đang tải tập tin này về Nếu tập tin vừa lớn vừa có tinh phổ biến thì sự phụ thuộc vào máy chủ rất lớn, việc tải về sẽ rất chậm

1.5.2 Phương pháp chia sẻ tập tin theo kiểu ngang hàng

peer-to-peer Trong cách truyền tập tin này, bạn chạy một phần mềm chia sẻ tập tin cài trên máy để xác định những máy nào trên Internet có chứa tập tin

Trang 7

bạn cần Vì các máy có quyền chia sẻ dữ liệu như nhau nên gọi là ngang hàng Việc thực hiện cụ thể như sau: Bạn chạy một phần mềm chia sẻ ngang hàng, ví dụ như BearShare trên máy của bạn và gửi ra ngoài yêu cầu tải tập tin bạn cần

Để tìm ra tập tin này, phần mềm BearShare truy vấn các máy khác trên Internet cũng đang chạy phần mềm chia sẻ BearShare này Khi phần mềm phát hiện ra trên Internet có một máy tính đang chứa tập tin bạn cần trong ổ cứng thì việc tải tập tin này về sẽ bắt đầu Những người khác có dùng phần mềm chia sẻ ngang hàng có thể tải tập tin họ muốn từ ổ đĩa cứng trên máy của bạn, nếu bạn chia sẻ nó

* Nhận xét: Ưu điểm của phương pháp này là gánh nặng truyền tập tin sẽ được phân bổ giữa các máy đang trao đổi tập tin Nhưng cũng có những nhược điểm là:

o Khi máy tính của bạn truy vấn hàng ngàn máy tính khác để tìm tập tin cần tải về sẽ có thể làm nghẽn mạng

o Một số người tải tập tin về nhưng ngay lập tức ngắt kết nối không cho người khác thu được những tập tin từ máy của họ Điều này hạn chế

số lượng máy tính mà phần mềm có thể tìm kiếm để tải tập tin

1.5.3 Phương pháp chia sẻ BITTORRENT

Không như các phương pháp chia sẻ như đã nêu trên, phương pháp BitTorrent chuyển gánh nặng dò tìm tập tin mà bạn muốn tải về sang một máy chủ trung tâm, gọi là tracker, Nghĩa là bạn phải chia sẻ những phần tập tin mà bạn đã tải về được cho những người khác trong quá trình đang tải toàn bộ tập tin

Chương 2: Tổng quan về giao thức BitTorrent

2.1 Khái niệm về BitTorrent

BitTorrent là một mạng là một mạng lưới P2P ( tức là nhiều người cùng kết nối trực tiếp với nhau để chia sẻ file) được sáng lập

Trang 8

bởi Bram Cohen vào năm 2001 Do kết nối ngang hàng nên có tốc

độ rất cao Phù hợp cho download các dữ liệu dung lượng lớn

Nếu bạn có 1 file dung lượng 1GB và 300 người cần, sẽ cần rất nhiều thời gian để chia sẻ 300GB dữ liệu Nhưng nếu bạn chia file thành các mảnh nhỏ gửi cho mọi người và họ lại chia sẻ các mảnh

đó cho người khác cho đến khi ai ai cũng có file hoàn chỉnh thì sẽ nhanh hơn rất nhiều

2.2 Các thuật ngữ sử dụng trong BitTorrent

2.2.1 File Torrent

BitTorrent không giống bất kỳ một công nghệ chia sẽ file nào trước đó, bạn không thể tìm được file bạn muốn tải bằng cách sử dụng các chương trinh BitTorrent Thay vào đó bạn phải vào các trang web có danh sách các file Torrent Các file Torrent này chứa các thông tin về file A mà bạn muốn download và chứa thông tin về các “tracker” mà bạn phải kết nối để bắt đầu download Các

“tracker” là các máy chủ trung tâm, nó lưu giữ thông tin về từng người đang chia sẻ các file A, và các phần mà họ có Khi bạn download file Torrent, và open nó, chương trình BitTorrent (như là Bit Torrent, Bit Tornado, Azureus, vvv.) sẽ chạy và kết nối đến các tracker Tracker sẽ kết nối bạn đến Seeds và Peers – những người đang chia sẻ file A này và quá trình download của bạn sẽ bắt đầu Đến khi bạn có ít nhất một “mảnh” của file A, bạn đã có thể upload

“mảnh” đó cho những người chưa có Như vậy bạn đã có thể thấy rằng BitTorrent khác với các mạng P2P khác : cần có file Torrent cho các file (hoặc thư mục) mà bạn muốn download hoặc chia sẻ

Một số trang web chia sẻ file torrent uy tín

• Public Domain Torrents có hàng trăm phim kinh điển được đưa lên và hoàn toàn hợp lệ để download

• Titanium Torrents và gameupdates.org có rất nhiều video game miễn phí, game demo, và các bản chạy thử

• South By Southwest Festival - music từ rất nhiều ca sĩ

Trang 9

• etree.org cung cấp hàng trăm bản hòa nhạc trực tiếp bởi các nhạc công nổi tiếng

2.2.2 Seed/Seeder - Leech/Leecher là gì? Peer là gì?

Có ba khái niệm rất quan trọng mà bạn sẽ luôn gặp chúng cho đến khi nào bạn còn sử dụng BiTorrent để chia sẻ file và thư mục Seeds

là những người đã có 100% file hoặc thư mục (file hoặc thư mục hoàn chỉnh) và vẫn đang tiếp tục upload cho những người khác Peers là nhưng người chưa có đủ 100% file (file chưa hoàn chỉnh) đang download các phần mà họ chưa có đồng thời upload các phần

họ đã có cho người khác Leechers là nhưng người download file nhưng không upload hoặc giảm mức upload xuống mức thấp nhất Những người này bị gọi là kẻ trộm bởi vì đơn giản họ chỉ lấy cái họ cần và bỏ đi

Tổng số Leech + tổng số Seed = Số Peer

2.2.3 Tracker Torrents

Một server nằm trên mạng internet, phối hợp hoạt động của các trình BitTorrent Khi bạn mở một file torrent, máy tính của bạn sẽ liên lạc với tracker để lấy danh sách các peer cần kết nối Trong quá trình down file torrent, thỉnh thoảng máy tính của bạn sẽ lại liên lạc với tracker, thông báo cho tracker biết bạn đã down và up bao nhiêu, còn bao nhiêu nữa là down xong, Nếu bạn chuẩn bị down một file mà tracker của nó hiện đang die, bạn sẽ ko thể tạo kết nối Nếu đang down mà tracker die, bạn vẫn có thể tiếp tục quá trình truyền tải file với các peer hiện có, nhưng sẽ ko kết nối thêm được với peer mới nào khác Thường các lỗi với tracker ít khi xảy ra trong một thời gian dài, do đó bạn chỉ việc chờ đợi và để mở trình BitTorrent

Có hai loại tracker khác nhau: là public và private Open tracker là dạng mở, mọi người đều có thể truy cập, và đồng nghĩa với việc có vô số malware, virus đi kèm

Trang 10

Đối lập với nó là private tracker, các private tracker này đều được quản lí và hạn chế truy cập, tức nhiên là bạn sẽ phải trả tiền

để sử dụng dịch vụ này Private tracker sẽ kiểm soát mạng của các seeder rất chặt chẽ, và như vậy bạn sẽ hạn chế được virus và malware có khả năng truy cập vào máy tính của bạn

2.2.4 Trackerless Torrents

Cơ chế “trackerless” cho phép các BitTorrent client giao tiếp với nhau mà không cần có sự hỗ trợ của bất kỳ máy chủ trung tâm nào Để đạt được điều này, các BitTorrent client sử dụng một dạng bảng băm phân tán (distributed hash table - DHT) Trong đó mỗi BitTorent client đóng vai trò của một node trên hash table Khi người dùng đưa thông tin về một torent mới vào BitTorrent client (thông qua file torrent hay qua một “magnet link”), BitTorrent client này – dưới tư cách một DHT node sẽ liên lạc với các node gần nó để tìm thông tin cần cho việc chia sẻ file Các node “hàng xóm” này nếu cần lại tiếp tục chuyển tiếp thông tin vừa nhận được sang các node xung quanh đó cho khi tìm thấy thông tin cần thiết (tức thông tin về các máy đang tham gia mạng lưới chia sẻ trong file torrent hay magnet link đó)

Nói một cách ngắn gọn, như trong mô tả của giao thức DHT “Về cốt lõi, mỗi peer sẽ trở thành một tracker” Đồng nghĩa với việc mọi sự tồn tại của các máy chủ trung tâm đã hoàn toàn được lược bỏ Các máy trong mạng lưới BitTorrent chia sẻ dữ liệu ngang hàng và quản lý thông tin của nhau cũng theo phương thức ngang hàng

Một mạng lưới cũng có thể hoạt động theo cả 2 cơ chế: sử dụng DHT và sử dụng tracker Trong trường hợp này DHT chủ yếu được sử dụng như phương pháp dự phòng khi máy chủ tracker gặp sự cố

DHT có thể hiểu là một chức năng giúp bạn kết nối tới các máy khác nhanh hơn, tải dữ liệu từ các máy đó mà ko cần thông qua tracker Hầu hết các public tracker đều có chức năng này Chức năng chỉ có một nhược điểm duy nhất là dữ liệu up/down phần nào ko thông qua tracker nên thông tin up/down trên Client (VD: Utorrent) khác với thông tin trên tracker

DHT (Distributed Hash Table) là một lớp nằm trong hệ thống mạng p2p nó chứa các giá trị và tên giống như một bảng băm Hash table và sẵn sàng cung cấp các thông tin này cho các User có bật DHT và tìm kiếm cái Hash table đó, điều này sẽ giúp các User liên

Trang 11

kết với nhau trên khắp thế giới và khi tìm thấy cái file có cái bảng hash table đó nó sẽ tải về máy mình

Nếu bạn dùng một trình BitTorrent với giao diện GUI (Graphic User Interface), bạn sẽ thấy thông số share rating hiện trên giao diện Nó đơn giản chỉ là tỉ lệ bạn up trên tỉ lệ down Nếu thông số share ratio là 1.0, điều đó có nghĩa là lượng bạn down bằng với lượng bạn up Số này càng cao thì nghĩa là bạn đóng góp càng nhiều Nếu bạn thấy share ratio là vô cùng, thì nghĩa là bạn đang seed một file - bạn up nhưng ko down Nói chung, con số này chỉ để làm cảnh - tuy vậy vì lợi ích của người khác, hãy giữ cho share ratio của bạn lớn nhất có thể

Hiểu một cách đơn giản thì Ratio được tính bắng công thức: Ratio=dung lượng upload/dung lượng download

Muốn có ratio cao là điều tương đối khó vì bạn cần phải up nhiều hơn down một lượng rất lớn

Một nhóm các máy tính kết nối với nhau thông qua 1 file torrent Ví dụ, nếu trình BitTorrent của bạn báo bạn đang nối với 10 peer và 3 seed, thì điều đó nghĩa là trong swarm đó có 13 người (ko

kể bạn )

Với một file torrent mà số seed của nó là con số 0 tròn trĩnh (hoặc ko

có đủ số peer để tạo thành một bản copy hoàn hảo), thì dù muốn hay ko tất cả những gì các peer nhận được cũng sẽ là 1 file ko hoàn chỉnh, vì ko ai trong swarm đó có các phần còn thiếu Khi điều đó xảy ra, một ai đó với file hoàn chỉnh (seed) sẽ phải đứng ra kết nối với swarm để tiến hành việc truyền tải các phần còn thiếu Nó gọi là reseed Thường thì khi một yêu cầu reseed được đưa ra và được chấp thuận, người được yêu cầu phải đảm bảo mình sẽ để trình

Trang 12

BitTorrent của mình mở trong một thời gian nhất định, tạo điều kiện cho file torrent đó có thể được nhiều người down hơn

Chương 3:Phương pháp hoạt đông của BitTorrent.

Nói như dân kỹ thuật thì BitTorrent là một giao thức được tạo ra phục

vụ cho quá trình truyền tải file Dưới hình thức kết nối peer-to-peer, người

sử dụng kết nối trực tiếp với nhau để gửi và nhận các phần của một file Một server trung tâm, dưới tên gọi tracker, được lập ra để xác định vị trí những người dùng ấy Tracker mang nhiệm vụ duy nhất là quản lý các kết nối, nó ko cần biết gì về nội dung file đang được truyền tải, bởi thế ngay

cả khi tracker có băng thông cực nhỏ, một số lượng người dùng cực lớn vẫn có thể tham gia vào việc truyền tải file Điểm cơ bản trong BitTorrent chính là việc người dùng thực hiện việc up và down cùng một lúc trong khi băng thông được tổ chức sao cho tối ưu nhất BitTorrent được thiết kế để khi số người dùng càng tăng cao thì càng làm việc hiệu quả - điều này trái ngược hẳn với các giao thức truyền tải file khác

Một ví dụ để dễ hình dung quá trình này này là hình ảnh một nhóm người gồm 5 người A,B,C,D,E ngồi quanh một cái bàn Hiển nhiên ai cũng

có thể nói và nghe người khác nói Giờ hãy tưởng tượng họ đều đang cố lấy một bản copy của một cuốn sách gồm 50 trang Người A cho biết anh

Ngày đăng: 04/05/2018, 09:30

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w