Torrent là một phương thức chia sẻ file đã quen thuộc với đa số người sử dụng đặc biệt là với những ai thường xuyên download các bộ phim HD, game dung lượng lớn.
BitTorrent là bất hợp pháp?
Về mặt kỹ thuật thì việc trao đổi thông tin bằng torrent là hoàn toàn hợp pháp, tuy nhiên nội dung mà bạn tải về máy có hợp lệ hay không lại là chuyện hoàn toàn khác. Theo một số kết quả điều tra thì ước tính chỉ có 1% trong số 1021 tập tin mẫu chọn lựa ngẫu nhiên được chia sẻ qua torrent là không vi phạm bản quyền, vì vậy cũng không có gì là ngạc nhiên khi mà nhiều người cho rằng download bằng torrent là trái với pháp luật.
Tất nhiên đối với nước ta việc sử dụng phần mềm “lậu” đã quá phổ biến nên việc này chẳng có gì đáng nói nhưng ở các nước khác luật về vấn đề này rất nghiêm nên có một thời gian đã có nhiều vụ kiện tụng liên quan đến phương thức chia sẻ file này. Tuy nhiên đến thời điểm này thì torrent vẫn sống tốt mà không gặp phải vấn đề gì.
BitTorrent làm việc như thế nào?
Thông thường khi muốn tải về một tập tin nào đó từ trên mạng, bạn chỉ cần nhấp vào liên kết tương ứng và các máy chủ lưu trữ sẽ bắt đầu gửi cho máy tính của bạn tập tin đó. Máy của bạn đóng vai trò là máy khách (client) và nhận dữ liệu gửi về từ máy chủ (server).
Mô hình kết nối client-server.
Không giống như phương thức truyền dữ liệu dựa vào máy chủ (server-based), BitTorrent là phương thức chia sẻ file dựa trên mạng đồng đẳng hay mạng ngang hàng (peer-to-peer hay P2P). Trong mạng này tất cả các máy tính tham gia đều ngang hàng nhau và được gọi là peer, mỗi máy tính đóng vai trò vừa là máy chủ vừa là máy khách đối với các máy khác trong mạng P2P. BitTorrent là một cải tiến dựa trên giao thức đồng đẳng trước đó cho phép chia sẻ dữ liệu một cách ổn định và chặt chẽ hơn. Tóm lại, sử dụng BitTorrent thay vì phải download trực tiếp toàn bộ một file nào đó từ server, bạn sẽ lấy về từng phần của file thông qua các peer trong mạng đồng thời chia sẻ những phần mà bạn có cho những người khác.
Kết nối peer-to-peer.
Để bắt đầu download một tập tin bằng torrent, bạn cần truy cập vào các trang web chuyên về torrent như thepiratebay.org, demonoid,… và tải về một file có đuôi .torrent liên quan đến tập tin cần download. Các file torrent này không phải là bộ phim, bài hát, hoặc tập tin thực tế mà bạn đang cần tải về mà là một file giúp máy của bạn kết nối với các máy khác trong mạng thông qua một server theo dõi gọi là tracker, sau đó địa chỉ của các máy này sẽ được tracker gửi về máy bạn cũng như địa chỉ của bạn sẽ được gửi cho các máy khác trong mạng để quá trình download có thể được diễn ra.
Giả sử bạn đang tải một bộ phim thông qua torrent, từng phần của bộ phim sẽ được tải về từ các máy khác trong mạng thông qua tracker. Khi bạn đã có được một vài phần nhỏ của file, những phần này sẽ được upload cho những người khác cũng đang muốn tải bộ phim đó và quá trình này được thực hiện đồng thời với việc download các phần còn lại của bộ phim. giả sử rằng một tập tin được chia thành 6 khối tương ứng với 6 màu, đầu tiên một máy có đầy đủ tập tin (những máy này được gọi là seeder) sẽ gửi cho mỗi máy trong mạng một phần của tập tin.
Seeder chứa đầy đủ 6 phần của file.
Sau đó lần lượt gửi mỗi phần tới một máy trong mạng.
Ngay khi một máy nhận được một phần của tập tin, nó sẽ bắt đầu chia sẻ phần đó với các máy khác chưa có phần này. Việc phần nào của file được gửi cho máy nào là do tracker đảm nhiệm và điều phối.
Các máy trong mạng tự trao đổi với nhau cho tới khi nào có được đầy đủ các phần của tập tin.
Một số thuật ngữ của BitTorrent
Nếu bạn mới sử dụng BitTorrent thì chắc hẳn bạn sẽ không khỏi thắc mắc ngoài các thông số quen thuộc như Down speed, Up speed, ETA,… thì trên giao diện của các client BitTorrent còn có khá nhiều thông số khác. Sau đây là thông tin về các chỉ số thường thấy ở các trình download torrent.
Availability: là số lượng bản sao hoàn chỉnh của tệp đang có ở các máy ngang hàng tại thời điểm đang download. Mỗi một máy seed sẽ cộng thêm 1 vào chỉ số này. Nếu một máy có một phần của tệp mà các máy khác không có thì cộng phần này vào chỉ số (ví dụ: một máy đã tải về được 65,3% thì cộng thêm 0.653 vào chỉ số này).
Choked: diễn tả máy ngang hàng đang tải lên làm nghẽn đường truyền dữ liệu đến của các máy ngang hàng khác. Tình trạng này có thể do hai nguyên nhân sau:
- Máy ngang hàng là seeder, nó đã có đầy đủ tập tin và không muốn nhận thêm bất kỳ một mảnh dữ liệu nào từ các máy ngang hàng khác.
- Máy ngang hàng đang tải lên đã đạt đến giới hạn của băng thông.
Interested: diễn tả máy ngang hàng cần tải về mảnh dữ liệu nó thiếu từ máy ngang hàng khác.
Ratio: tỉ lệ giữa dung lượng file đã upload/download. Các trang torrent lớn dựa vào thông số này để quản lý người sử dụng, thông thường bạn phải upload ít nhất là 70% dung lượng đã download (tương đương ratio>0.7) hoặc account của bạn sẽ bị khóa.
Peer/Leech: là các máy đang sử dụng BitTorrent để tải dữ liệu. Thường các máy này chưa có đủ tập tin hoàn chỉnh.
Seeder: là các máy đã có bản sao đầy đủ của file và đang tải lên file đó. Số lượng seed càng nhiều thì thời gian tải file về càng nhanh.
Snubbed: một máy sẽ bị gắn mác snubbed khi quá thời gian 60s mà các máy ngang hàng khác không tải về được dữ liệu từ nó.
Swarm: tập hợp tất cả máy ngang hàng và các seeder liên quan đến một tập tin.
Ưu và nhược điểm của BitTorrent
Tất cả mọi thứ đều có ưu và nhược điểm và giao thức BitTorrent cũng không phải là ngoại lệ. Trước tiên chúng ta hãy xem BitTorrent mang lại những lợi ích gì so với phương thức download client-server truyền thống.
Tắt, bật và tạm dừng chương trình download bất kỳ lúc nào mà không ảnh hưởng đến tập tin cần tải: Lợi thế rất lớn so với việc download trực tiếp từ server, nếu quá trình tải về tập tin bị gián đoạn vì một lý do nào đó như mất điện chẳng hạn thì thay vì việc phải download lại từ đầu bạn chỉ cần restart lại client là file lại tiếp tục được tải về..
Download file dung lượng lớn với 1 click: các bộ phim HD hoặc các game mới hiện nay thường có dung lượng lớn nên khi upload lên các server đều phải chia nhỏ ra và số lượng có khi lên tới vài chục part. So với việc add cả đống link vào hàng đợi download thì việc tải phim bằng torrent tỏ ra thuận tiện hơn rất nhiều.
Download các file cũ: Đối với các bộ phim hay chương trình cũ thì việc download trực tiếp là khá khó khăn khi mà toàn bộ file hoặc một vài part đã quá thời hạn cho phép của host và bị xóa khiến cho bạn không tải về được. Tuy nhiên đối với torrent bạn vẫn có thể tìm được những tracker phù hợp để download những tập tin cũ, tuy tốc độ có thể chậm một chút do lượng máy seed không còn nhiều nhưng ít ra thì “méo mó có hơn không”.
Bên cạnh những ưu điểm đã nêu trên, BitTorrent mắc phải một số hạn chế sau:
Tốc độ tải phụ thuộc vào số lượng seeder: như đã đề cập ở trên bản chất của torrent là chia sẻ từng phần file giữa các máy tính và số lượng máy càng nhiều thì tốc độ download cũng càng nhanh. Đối với các bộ phim hay phần mềm hot mới ra thì lượng người download là rất nhiều nên vấn đề này không đáng quan tâm, tuy nhiên nếu bạn đang tìm kiếm những tập tin cũ thì với vài seeder có thể khiến cho bạn mất vài ngày mới có thể download xong 1 tập tin cỡ 3GB.
Nguy cơ nhiễm các phần mềm có hại: do việc chia sẻ file qua torrent là hoàn toàn tự do và không có ai kiểm soát nên kẻ xấu có thể lợi dụng để phát tán các loại virus hay malware sang các máy tính khác. Vì vậy hãy chọn các trang cung cấp torrent lớn như Thepiratebay, Mininova, Demonoid,.. và hãy đọc các comment trước khi tải file torrent về máy vì nếu có virus thì gần như chắc chắn sẽ có người comment cảnh báo.
Tốn băng thông đường truyền: bạn có thể nhận thấy rằng kết nối Internet của bạn sẽ bị chậm lại trong khi download bằng torrent, đặc biệt là khi download hoặc upload nhiều file cùng lúc. Nguyên nhân là do băng thông đường truyền của bạn được sử dụng cho việc download và upload dữ liệu cùng một lúc. Để khắc phục bạn có thể đặt tốc độ down/up giới hạn cho từng file và download/upload một file duy nhất trong một thời điểm.
Trên đây là một vài nét cơ bản về giao thức chia sẻ file bằng BitTorrent. Hy vọng qua bài viết này các bạn chưa hoặc mới biết về torrent sẽ có thêm hiểu biết về phương thức này.