Torrents(種子)檔案的原理
Torrents(種子) — 每次聽到這個詞時,在我的腦海裡想到的唯一的事情就是免費的電影、遊戲、和被破解的軟體。但是我們並不知道它們是如何運作的,在「種子」中涉及各種概念。因此,透過這篇文章我們從技術的角度來了解種子下載是什麼。
#「種子」是一個到因特網上文件位置的連結。它們不是一個文件,它們只是動態指向到你想去下載的原始文件。
例如:如果你點擊 Google Chrome[1],你可以從Google的伺服器上下載 Google Chrome 瀏覽器。
如果你明天、或下週、或下個月再去點擊那個鏈接,這個文件仍然可以從谷歌伺服器上去下載。
但是當我們使用「種子」下載時,它並沒有固定的伺服器。檔案是從以前使用「種子」下載的其它人的個人電腦上下載的。
##假設 ‘A’ 上有一些視頻,它希望以「種子」方式去下載。因此,他創建了一個“種子”,並將這個連結發送給 ‘B’,這個連結包含了那個影片在因特網上的準確 IP 位址的資訊。因此,當 ‘B’ 開始下載那個檔案的時候,‘B’ 連接到 ‘A’ 的電腦。在 ‘B’ 下載完成這個影片之後,‘B’ 將開始做為種子,也就是 ‘B’ 將允許其它的 ‘C’ 或 ‘D’ 從 ‘B’ 的電腦上下載它。
因此每個人先下載檔案然後會上傳,下載的人越多,下載的速度也越快。而且在任何情況下,如果想停止上傳,也沒有問題,隨時可以。這樣做並不會成為什麼問題,除非很多的人下載而上傳的人很少。
##下載完成特定檔案的使用者將會立即做為上傳者,因此,可以被新使用者下載的已下載者稱為播種者。
而一些還沒有完成特定檔案的下載者,而且也正在下載的使用者稱為索取者。
#所有的「種子」檔案都獨立分割成固定大小的資料包,因此,它們可以非線性順序和隨機順序下載。每個區塊都有唯一的標識,因此,一旦所有的區塊下載完成之後,它們會被拼接出原始檔案。
正是因為這種機制,如果你正在從某人處下載一個文件,假如這個時候因某些原因他停止了上傳,你可以繼續從其它的播種者處繼續下載,而不需要從頭開始重新下載。
對端是指目前連結到你的索取者。一個正在上傳的索取者,不論它下載了多少塊,它就是一個對端。
例如:
一個已經下載了文件的前 50 個區塊的使用者就是一個索取者,但是,他又同時上傳這些文件,而你只有前 10 個區塊,因此,你可以從他那裡下載最多 50 個區塊。這時候他就成了你的對端。
當你下載一個「種子」時,總是選擇最大的播種者。這就是最佳經驗。
這裡沒有最小的標準,但是只要確保你選擇的是最大的那一個播種者就可以了。
##「種子」相關的法律和其它的法律並沒有什麼區別,對受版權保護的其它任何東西一樣,侵權行為會受到法律的製裁。大多數的政府都攔截「種子」網站和協議,但是「種子」下載本身並不是有害的東西。
「種子」對快速分享檔案是非常有用的,而且它們被用來共享開源社群的軟體,因為它們能節約大量的伺服器資源。但是,許多人卻因為盜版而使用它們。
Torrenting 是降低伺服器上負載的一個非常完美的技術。 「種子」下載可以使我們將下載速度提升到網路卡的極限,這是非常好的。但是,在這種非中心化的伺服器上,盜版成為必然發生的事。限制我們分享的內容,從不下載盜版的東西,這是我們的道德責任。
請在下面的評論中分享你使用「種子」的心得,分享你喜歡的、法律許可下載的「種子」網站。
以上是Torrents(種子)檔案的原理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

在 Sublime 中運行代碼的方法有六種:通過熱鍵、菜單、構建系統、命令行、設置默認構建系統和自定義構建命令,並可通過右鍵單擊項目/文件運行單個文件/項目,構建系統可用性取決於 Sublime Text 的安裝情況。

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

要安裝 Laravel,需依序進行以下步驟:安裝 Composer(適用於 macOS/Linux 和 Windows)安裝 Laravel 安裝器創建新項目啟動服務訪問應用程序(網址:http://127.0.0.1:8000)設置數據庫連接(如果需要)

自定義開發環境的方法有很多種,但全局 Git 配置文件是最有可能用於自定義設置(例如用戶名、電子郵件、首選文本編輯器和遠程分支)的一種。以下是您需要了解的有關全局 Git 配置文件的關鍵事項。
