이 프로그램은 보증 없이 제공됩니다. 귀하는 자신의 책임 하에 이 프로그램을 사용해야 합니다.
aria2는 파일을 다운로드하는 유틸리티입니다. 지원되는 프로토콜은 HTTP(S), FTP, SFTP, BitTorrent 및 Metalink입니다. aria2는 여러 소스/프로토콜에서 파일을 다운로드할 수 있으며 최대 다운로드 대역폭을 활용하려고 시도합니다. HTTP(S)/FTP/SFTP와 BitTorrent에서 동시에 파일을 다운로드하는 동시에 HTTP(S)/FTP/SFTP에서 다운로드한 데이터가 BitTorrent 떼에 업로드되는 것을 지원합니다. Metalink의 청크 체크섬을 사용하여 aria2는 BitTorrent와 같은 파일을 다운로드하는 동안 자동으로 데이터 청크의 유효성을 검사합니다.
프로젝트 페이지는 https://aria2.github.io/에 있습니다.
aria2 사용 방법을 알아보려면 aria2 온라인 매뉴얼(러시아어 번역, 포르투갈어 번역)을 참조하세요.
기능 목록은 다음과 같습니다.
명령줄 인터페이스
HTTP(S)/FTP/SFTP/BitTorrent를 통해 파일 다운로드
분할 다운로드
Metalink 버전 4(RFC 5854) 지원(HTTP/FTP/SFTP/BitTorrent)
Metalink 버전 3.0 지원(HTTP/FTP/SFTP/BitTorrent)
Metalink/HTTP(RFC 6249) 지원
HTTP/1.1 구현
HTTP 프록시 지원
HTTP BASIC 인증 지원
HTTP 프록시 인증 지원
프록시에 대해 잘 알려진 환경 변수: http_proxy
, https_proxy
, ftp_proxy
, all_proxy
및 no_proxy
HTTP gzip, 압축 콘텐츠 인코딩 지원
HTTPS에서 제공된 신뢰할 수 있는 CA 인증서를 사용하여 피어 확인
HTTPS의 클라이언트 인증서 인증
청크 전송 인코딩 지원
Firefox3 형식, Chromium/Google Chrome 및 Mozilla/Firefox(1.x/2.x)/Netscape 형식을 사용하여 파일에서 쿠키를 로드합니다.
Mozilla/Firefox(1.x/2.x)/Netscape 형식으로 쿠키를 저장합니다.
사용자 정의 HTTP 헤더 지원
영구 연결 지원
HTTP 프록시를 통한 FTP/SFTP
다운로드/업로드 속도 조절
BitTorrent 확장: 빠른 확장, DHT, PEX, MSE/PSE, Multi-Tracker, UDP 추적기
BitTorrent 웹-시드. aria2는 요청 오버헤드를 줄이기 위해 조각 크기보다 더 많은 청크를 요청합니다. 또한 조각 크기의 파이프라인 요청도 지원합니다.
BitTorrent 로컬 피어 검색
BitTorrent 다운로드의 디렉터리 구조 이름 바꾸기/변경 완전히
JSON-RPC(HTTP 및 WebSocket을 통해)/XML-RPC 인터페이스
데몬 프로세스로 실행
다중 파일 토렌트/Metalink에서 선택적으로 다운로드
Metalink의 청크 체크섬 검증
Metalink에서 분할된 다운로드를 비활성화할 수 있습니다.
Netrc 지원
구성 파일 지원
텍스트 파일 또는 stdin에서 발견된 다운로드 URI와 대상 디렉터리 및 출력 파일 이름을 선택적으로 지정할 수 있습니다.
매개변수화된 URI 지원
Happy Eyeballs의 IPv6 지원
디스크 활동을 줄이기 위한 디스크 캐시
aria2 버전에는 MAJOR.MINOR.PATCH라는 3개의 숫자를 사용합니다. 매달 15일에 사소한 업데이트를 제공할 예정입니다. 마지막 릴리스 이후 변경 사항이 없으면 릴리스를 건너뛸 수 있습니다. 기능 및 문서 동결은 번역 팀의 릴리스일(매월 5일) 10일 전에 발생합니다. 그날쯤 출시에 관한 문제를 제기하겠습니다.
보안 문제가 있는 경우 정규 릴리스 사이에 패치 릴리스를 릴리스할 수 있습니다.
MAJOR 버전은 당분간 1로 유지됩니다.
우리는 Github에서 소스 코드를 관리합니다: https://github.com/aria2/aria2
최신 소스 코드를 얻으려면 다음 명령을 실행하십시오.
$ 자식 클론 https://github.com/aria2/aria2.git
그러면 현재 디렉터리에 aria2 디렉터리가 생성되고 소스 파일이 해당 디렉터리에 저장됩니다.
특징 | 의존 |
---|---|
HTTPS | OSX 또는 GnuTLS 또는 OpenSSL 또는 Windows |
SFTP | libssh2 |
비트토렌트 | 없음. 선택 사항: libnettle+libgmp 또는 libgcrypt 또는 OpenSSL(참고 참조) |
메탈링크 | libxml2 또는 Expat. |
체크섬 | 없음. 선택 사항: OSX, libnettle, libgcrypt, OpenSSL, Windows(참고 참조) |
gzip, HTTP에서 수축 | zlib |
비동기 DNS | C-아레스 |
Firefox3/Chromium 쿠키 | libsqlite3 |
XML-RPC | libxml2 또는 Expat. |
WebSocket을 통한 JSON-RPC | libnettle 또는 libgcrypt 또는 OpenSSL |
메모
두 라이브러리가 모두 설치된 경우 libxml2는 Expat보다 우선합니다. Expat를 선호하는 경우 --without-libxml2
사용하여 구성을 실행하세요.
메모
Apple OSX에서는 OS 수준 SSL/TLS 지원이 선호됩니다. 따라서 해당 플랫폼에는 GnuTLS나 OpenSSL이 필요하지 않습니다. 이 동작을 비활성화하려면 --without-appletls
사용하여 구성을 실행하세요.
두 라이브러리가 모두 설치된 경우 GnuTLS가 OpenSSL보다 우선합니다. OpenSSL을 선호하는 경우 --without-gnutls
--with-openssl
사용하여 구성을 실행하세요.
Windows에서는 기본 Windows SSL 기능(Schannel)을 기반으로 하는 SSL 구현을 사용할 수 있으며 이것이 선호됩니다. 따라서 해당 플랫폼에는 GnuTLS나 OpenSSL이 필요하지 않습니다. 이 동작을 비활성화하려면 --without-wintls
사용하여 구성을 실행하세요.
메모
Apple OSX에서는 aria2가 --without-appletls
로 구성되지 않는 한 OS 수준 체크섬 지원이 선호됩니다.
두 라이브러리가 모두 설치된 경우 libnettle은 libgcrypt보다 우선합니다. libgcrypt를 선호하는 경우 --without-libnettle --with-libgcrypt
사용하여 구성을 실행하세요. GnuTLS 대신 OpenSSL을 선택한 경우 libnettle과 libgcrypt가 모두 사용되지 않습니다.
선택적 종속성이 설치되지 않은 경우 md5 및 sha1만 지원하는 내부 구현이 사용됩니다.
Windows에서는 기본 Windows 기능을 기반으로 하는 SSL 구현을 사용할 수 있으며 aria2가 --without-wintls
로 구성되지 않는 한 선호됩니다.
사용자는 SSL 및 암호화 라이브러리에 대해 다음 구성 중 하나를 가질 수 있습니다.
OpenSSL
GnuTLS + libgcrypt
GnuTLS + libnettle
Apple TLS(OSX 전용)
Windows TLS(Windows에만 해당)
구성 스크립트에 --disable-bittorrent
및 --disable-metalink
각각 제공하여 BitTorrent 및 Metalink 지원을 비활성화할 수 있습니다.
비동기 DNS 지원을 활성화하려면 c-ares가 필요합니다.
c-ares: http://c-ares.haxx.se/
aria2는 주로 C++로 작성되었습니다. 처음에는 C++98/C++03 표준 기능을 기반으로 작성되었습니다. 이제 aria2를 C++11 표준으로 마이그레이션하고 있습니다. 현재 소스 코드에는 C++11 인식 컴파일러가 필요합니다. g++ 및 clang과 같은 잘 알려진 컴파일러의 경우 -std=c++11
또는 -std=c++0x
플래그가 지원되어야 합니다.
소스 패키지에서 aria2를 빌드하려면 다음 개발 패키지가 필요합니다(패키지 이름은 사용하는 배포판에 따라 다를 수 있습니다):
libgnutls-dev(HTTPS, BitTorrent, 체크섬 지원에 필요)
nettle-dev(BitTorrent, 체크섬 지원에 필요)
libgmp-dev (BitTorrent에 필요)
libssh2-1-dev(SFTP 지원에 필요)
libc-ares-dev(비동기 DNS 지원에 필요)
libxml2-dev(Metalink 지원에 필요)
zlib1g-dev(gzip에 필요, HTTP에서 deflate 디코딩 지원)
libsqlite3-dev(Firefox3/Chromium 쿠키 지원에 필요)
pkg-config (설치된 라이브러리를 감지하는 데 필요)
nettle-dev 및 libgmp-dev 대신 libgcrypt-dev를 사용할 수 있습니다.
libgpg-error-dev(BitTorrent, 체크섬 지원에 필요)
libgcrypt-dev(BitTorrent, 체크섬 지원에 필요)
libgnutls-dev, nettle-dev, libgmp-dev, libgpg-error-dev 및 libgcrypt-dev 대신 libssl-dev를 사용할 수 있습니다.
libssl-dev(HTTPS, BitTorrent, 체크섬 지원에 필요)
libxml2-dev 대신 libexpat1-dev를 사용할 수 있습니다.
libexpat1-dev(Metalink 지원에 필요)
Fedora에서는 다음 패키지가 필요합니다: gcc, gcc-c++, kernel-devel, libgcrypt-devel, libxml2-devel, openssl-devel, gettext-devel, cppunit
Git 저장소에서 소스 코드를 다운로드한 경우 autoconf 매크로를 얻으려면 다음 패키지를 설치해야 합니다.
libxml2-dev
libcppunit-dev
자동 구성
자동 제작
자동 도구 개발
자동 포인트
libtool
그리고 다음 명령을 실행하여 프로그램을 빌드하는 데 필요한 구성 스크립트와 기타 파일을 생성합니다.
$ 자동 재설정 -i
또한 매뉴얼 페이지를 구축하려면 Sphinx가 필요합니다.
Mac OS X용 aria2를 빌드하는 경우 makerelease-osx.mk GNU Make makefile을 살펴보세요.
aria2를 빌드하는 가장 빠른 방법은 먼저 구성 스크립트를 실행하는 것입니다.
$ ./구성
정적으로 연결된 aria2를 빌드하려면 ARIA2_STATIC=yes
명령줄 옵션을 사용하세요.
$ ./ARIA2_STATIC=yes 구성
구성이 완료되면 make
실행하여 프로그램을 컴파일합니다.
$만들다
Windows 바이너리를 생성하려면 Windows 바이너리 크로스 컴파일을 참조하세요. Android 바이너리를 생성하려면 Android 바이너리 크로스 컴파일을 참조하세요.
구성 스크립트는 사용 가능한 라이브러리를 확인하고 기본적으로 활성화되지 않은 실험적 기능을 제외하고 가능한 한 많은 기능을 활성화합니다.
1.1.0부터 aria2는 기본적으로 HTTPS 서버의 인증서를 확인합니다. OpenSSL 또는 gnutls_certificate_set_x509_system_trust()
함수가 있는 최신 버전의 GnuTLS로 빌드하고 라이브러리가 시스템 전체 CA 인증서 저장소를 찾도록 올바르게 구성된 경우 aria2는 시작 시 해당 인증서를 자동으로 로드합니다. 그렇지 않은 경우 CA 번들 파일의 경로를 제공하는 것이 좋습니다. 예를 들어 Debian에서 CA 번들 파일의 경로는 '/etc/ssl/certs/ca-certificates.crt'(ca-certificates 패키지에 있음)입니다. 이는 배포판에 따라 다를 수 있습니다. --with-ca-bundle option
사용하여 스크립트를 구성하도록 제공할 수 있습니다.
$ ./configure --with-ca-bundle='/etc/ssl/certs/ca-certificates.crt' $만들다
--with-ca-bundle
옵션이 없으면 CA 번들 없이 인증서를 확인할 수 없으므로 HTTPS 서버에 액세스할 때 오류가 발생합니다. 이러한 경우 aria2의 --ca-certificate
옵션을 사용하여 CA 번들 파일을 지정할 수 있습니다. CA 번들 파일이 설치되어 있지 않은 경우 최후의 수단은 --check-certificate=false
사용하여 인증서 유효성 검사를 비활성화하는 것입니다.
기본 OSX(AppleTLS) 및/또는 Windows(WinTLS) 구현을 사용하면 시스템 인증서 저장소가 자동으로 사용되므로 --with-ca-bundle
필요하지 않으며 이러한 구현을 사용할 때 무시됩니다.
기본적으로 aria2c
라는 bash_completion 파일은 $prefix/share/doc/aria2/bash_completion
디렉터리에 설치됩니다. 파일의 설치 디렉터리를 변경하려면 --with-bashcompletiondir
옵션을 사용하세요.
make
후에 실행 파일은 src/aria2c
에 위치합니다.
aria2는 자동화된 단위 테스트를 위해 CppUnit을 사용합니다. 단위 테스트를 실행하려면 다음 안내를 따르세요.
$ 확인하세요
이 섹션에서는 Debian Linux에서 mingw-w64(http://mingw-w64.org/doku.php) 크로스 컴파일러를 사용하여 Windows 바이너리를 빌드하는 방법을 설명합니다. MinGW(http://www.mingw.org/)에서는 aria2를 빌드하지 못할 수도 있습니다.
Windows 바이너리를 빌드하는 가장 쉬운 방법은 Dockerfile.mingw를 사용하는 것입니다. 바이너리를 빌드하는 방법은 Dockerfile.mingw를 참조하세요. Dockerfile을 사용할 수 없는 경우 다음 단락을 계속 읽으십시오.
기본적으로 종속 라이브러리를 컴파일하고 설치한 후 적절한 --host
옵션을 전달하고 구성할 CPPFLAGS
, LDFLAGS
및 PKG_CONFIG_LIBDIR
변수를 지정하기만 하면 크로스 컴파일을 수행할 수 있습니다. 편의성과 자체 개발 비용 절감을 위해 빌드 설정을 구성하는 더 쉬운 방법을 제공합니다.
mingw-config
스크립트는 mingw-w64에 대한 구성 스크립트 래퍼입니다. 우리는 이를 사용하여 공식 Windows 빌드를 만듭니다. 이 스크립트에서는 크로스 컴파일을 위해 다음 라이브러리가 구축되었다고 가정합니다.
C-아레스
국외 거주자
SQLite3
zlib
libssh2
cpp단위
일부 환경 변수를 조정하여 빌드 설정을 변경할 수 있습니다.
HOST
HOST
에서 실행할 프로그램을 빌드하기 위해 크로스 컴파일합니다. 기본값은 i686-w64-mingw32
입니다. 64비트 바이너리를 빌드하려면 x86_64-w64-mingw32
지정하세요.
PREFIX
종속 라이브러리가 설치된 디렉터리의 접두사입니다. 기본값은 /usr/local/$HOST
입니다. -I$PREFIX/include
CPPFLAGS
에 추가됩니다. -L$PREFIX/lib
LDFLAGS
에 추가됩니다. $PREFIX/lib/pkgconfig
PKG_CONFIG_LIBDIR
로 설정됩니다.
예를 들어, 64비트 바이너리를 빌드하려면 다음을 수행하십시오.
$ 호스트=x86_64-w64-mingw32 ./mingw-config
--enable-libaria2
사용하여 libaria2 dll을 원하는 경우 ARIA2_STATIC=yes
사용하지 말고 외부 라이브러리의 DLL 버전을 준비하세요.
이 섹션에서는 Debian Linux에서 Android NDK 크로스 컴파일러를 사용하여 Android 바이너리를 빌드하는 방법을 설명합니다.
이 글을 쓰는 시점에서는 Android NDK r21e가 오류 없이 aria2를 컴파일해야 합니다.
android-config
스크립트는 Android 빌드를 위한 구성 스크립트 래퍼입니다. 우리는 이를 사용하여 공식 Android 빌드를 만듭니다. 이 스크립트에서는 크로스 컴파일을 위해 다음 라이브러리가 구축되었다고 가정합니다.
C-아레스
openssl
국외 거주자
zlib
libssh2
위 라이브러리를 빌드할 때 공유 라이브러리를 비활성화하고 정적 라이브러리만 활성화해야 합니다. 우리는 해당 라이브러리를 정적으로 링크할 것입니다.
android-config
$ANDROID_HOME
및 $NDK
환경 변수가 정의되어 있다고 가정합니다.
현재 Android NDK r21e를 사용하고 있습니다. $NDK
Android NDK에 대한 디렉터리를 가리켜야 합니다. 빌드 도구는 $NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/
아래에 있습니다.
모든 종속 라이브러리는 $ANDROID_HOME/usr/local
아래에 설치되어야 합니다.
android-config
이후 make
실행하여 소스를 컴파일합니다.
Sphinx는 문서를 작성하는 데 사용됩니다. aria2 매뉴얼 페이지가 최신이 아닌 경우 make
실행할 때 빌드됩니다. make html
사용하여 aria2 매뉴얼 페이지의 HTML 버전을 만들 수도 있습니다. HTML 버전 매뉴얼은 온라인에서도 보실 수 있습니다(러시아어 번역, 포르투갈어 번역).
다운로드한 파일의 파일명은 다음과 같이 결정됩니다.
단일 파일 모드
.torrent 파일에 "name" 키가 있는 경우 파일 이름은 "name" 키 값입니다. 그렇지 않은 경우 파일 이름은 ".file"이 추가된 .torrent 파일의 기본 이름입니다. 예를 들어, .torrent 파일은 "test.torrent"이고 파일 이름은 "test.torrent.file"입니다. -d 옵션으로 다운로드한 파일을 저장할 디렉터리를 지정할 수 있다.
다중 파일 모드
.torrent 파일에 언급된 전체 디렉터리/파일 구조가 생성됩니다. -d 옵션으로 다운로드한 파일의 최상위 디렉터리를 저장할 디렉터리를 지정할 수 있다.
다운로드가 시작되기 전에 필요한 경우 전체 디렉터리 구조가 생성됩니다. 기본적으로 aria2는 .torrent 파일에 언급된 파일을 최대 100개까지 열고 이 파일에서 직접 쓰고 읽습니다. 동시에 열 파일 수는 --bt-max-open-files
옵션으로 제어할 수 있습니다.
aria2는 메인라인 호환 DHT를 지원합니다. 기본적으로 IPv4 DHT의 라우팅 테이블은 $XDG_CACHE_HOME/aria2/dht.dat
에 저장되고 IPv6 DHT의 라우팅 테이블은 $XDG_CACHE_HOME/aria2/dht6.dat
에 저장됩니다. 단, $HOME/.aria2/dht.dat
또는 $HOME/.aria2/dht6.dat
. aria2는 동일한 포트 번호를 사용하여 IPv4 및 IPv6 DHT를 모두 수신합니다.
IPv4 DHT가 활성화되면 UDP 추적기 지원이 활성화됩니다. UDP 추적기의 포트 번호는 DHT와 공유됩니다. 포트 번호를 변경하려면 --dht-listen-port
옵션을 사용하십시오.
-o
옵션은 .torrent 파일에 있는 파일의 이름을 변경하는 것이 아니라 .torrent 파일 자체의 파일 이름을 변경하는 데 사용됩니다. 이를 위해서는 대신 --index-out
옵션을 사용하십시오.
aria2가 기본적으로 사용하는 포트 번호는 TCP 및 UDP의 경우 6881-6999입니다.
aria2는 포트 전달을 자동으로 구성하지 않습니다. 라우터나 방화벽을 수동으로 구성하세요.
최대 피어 수는 55개입니다. 다운로드 속도가 낮을 경우 이 제한이 초과될 수 있습니다. 이 다운로드 속도는 --bt-request-peer-speed-limit
옵션을 사용하여 조정할 수 있습니다.
릴리스 0.10.0부터 aria2는 선택적 다운로드가 완료된 후 요청 메시지 전송을 중지합니다.
현재 구현은 HTTP(S)/FTP/SFTP/BitTorrent를 지원합니다. 다른 P2P 프로토콜은 무시됩니다. Metalink4(RFC 5854) 및 Metalink 버전 3.0 문서가 모두 지원됩니다.
체크섬 확인을 위해 md5, sha-1, sha-224, sha-256, sha-384 및 sha-512가 지원됩니다. 여러 해시 알고리즘이 제공되면 aria2는 더 강력한 해시 알고리즘을 사용합니다. 전체 파일 체크섬 확인이 실패하면 aria2는 다운로드를 다시 시도하지 않고 0이 아닌 반환 코드로 종료됩니다.
지원되는 사용자 기본 설정은 버전, 언어, 위치, 프로토콜 및 OS입니다.
Metalink 파일에 청크 체크섬이 제공되면 aria2는 다운로드 중에 데이터 청크의 유효성을 자동으로 확인합니다. 이 동작은 명령줄 옵션으로 끌 수 있습니다.
Metalink 파일에 서명이 포함되어 있는 경우 aria2는 다운로드 완료 후 서명을 파일로 저장합니다. 파일명은 다운로드 파일명 + ".sig" 입니다. 동일한 파일이 이미 존재할 경우 서명 파일은 저장되지 않습니다.
Metalink4에서는 다중 파일 토렌트가 metalink:metaurl 요소에 나타날 수 있습니다. aria2는 동시에 2개의 동일한 토렌트를 다운로드할 수 없기 때문에 aria2는 동일한 BitTorrent 메타 URL을 가진 metalink:file 요소에 파일을 그룹화하고 단일 BitTorrent 떼에서 다운로드합니다. 이는 기본적으로 파일 선택이 포함된 다중 파일 토렌트 다운로드이므로 Metalink 문서에는 없지만 선택한 파일과 동일한 부분을 공유하는 인접 파일도 생성됩니다.
metalink:url 또는 metalink:metaurl 요소에 상대 URI가 지정되면 aria2는 Metalink 파일의 URI를 기본 URI로 사용하여 상대 URI를 확인합니다. 로컬 디스크에서 읽은 Metalink 파일에서 상대 URI가 발견되면 aria2는 --metalink-base-uri
옵션 값을 기본 URI로 사용합니다. 이 옵션을 지정하지 않으면 상대 URI가 무시됩니다.
현재 구현에서는 rel=duplicate 링크만 사용합니다. aria2는 다이제스트 헤더 필드를 이해하고 다른 소스의 다이제스트 값과 일치하는지 확인합니다. 다르면 연결을 끊습니다. aria2는 또한 이 다이제스트 값을 사용하여 다운로드가 완료된 후 체크섬 확인을 수행합니다. aria2는 지리적 값을 인식합니다. aria2에게 선호하는 위치를 알려주려면 --metalink-location
옵션을 사용할 수 있습니다.
netrc 지원은 HTTP(S)/FTP/SFTP에 대해 기본적으로 활성화됩니다. netrc 지원을 비활성화하려면 -n 명령줄 옵션을 지정합니다. .netrc 파일에는 올바른 권한(600)이 있어야 합니다.
aria2에 내장된 WebSocket 서버는 RFC 6455에 정의된 사양을 구현합니다. 지원되는 프로토콜 버전은 13입니다.
libaria2는 클라이언트 코드에 aria2 기능을 제공하는 C++ 라이브러리입니다. 현재 libaria2는 기본적으로 빌드되지 않습니다. libaria2를 활성화하려면 --enable-libaria2
구성 옵션을 사용하십시오. 기본적으로 공유 라이브러리만 빌드됩니다. 정적 라이브러리를 구축하려면 --enable-static
구성 옵션도 사용하십시오. API 사용 방법을 알아보려면 libaria2 설명서를 참조하세요.
aria2 온라인 매뉴얼
https://aria2.github.io/
RFC 959 파일 전송 프로토콜(FTP)
RFC 1738 URL(Uniform Resource Locator)
IPv6 및 NAT용 RFC 2428 FTP 확장
RFC 2616 하이퍼텍스트 전송 프로토콜 - HTTP/1.1
FTP에 대한 RFC 3659 확장
RFC 3986 URI(Uniform Resource Identifier): 일반 구문
RFC 4038 IPv6 전환의 애플리케이션 측면
RFC 5854 Metalink 다운로드 설명 형식
RFC 6249 Metalink/HTTP: 미러 및 해시
RFC 6265 HTTP 상태 관리 메커니즘
RFC 6266 HTTP(Hypertext Transfer Protocol)에서 콘텐츠 처리 헤더 필드 사용
RFC 6455 웹소켓 프로토콜
RFC 6555 Happy Eyeballs: 듀얼 스택 호스트를 통한 성공
BitTorrent 프로토콜 사양
BitTorrent: DHT 프로토콜
BitTorrent: 빠른 확장
BitTorrent: IPv6 추적기 확장
BitTorrent: 피어가 메타데이터 파일을 보내는 확장 프로그램
BitTorrent: 확장 프로토콜
BitTorrent: 멀티트래커 메타데이터 확장
BitTorrent: BitTorrent 및 BitTorrent udp-tracker 프로토콜 사양을 위한 UDP 추적기 프로토콜입니다.
BitTorrent: WebSeed - HTTP/FTP 시드(GetRight 스타일)
BitTorrent: 비공개 토렌트
BitTorrent: IPv6용 BitTorrent DHT 확장
BitTorrent: 메시지 스트림 암호화
Kademlia: XOR 측정법을 기반으로 한 P2P 정보 시스템