비트토렌트(Bittorrent)는 p2p(peer-to-peer) 방식으로 기존의 server-client 방식의 문제점이었던 대역폭의 한계를 해결하기 위해 고안된 파일 전송 프로토콜입니다. 아래 왼쪽 그림과 같이 하나의 서버가 여러개의 클라이언트와 통신하는 방식이 가장 널리 사용되고 있는 server-client 방식입니다. 오른쪽 그림은 하나의 서버에서 시작된 파일이 여러 클라이언트로 전달되고 이후에는 클라이언트들이 가지고있는 파일의 조각들을 서로 공유하면서 여러 peer 끼리 통신이 맺어져 대역폭 효율을 최대로 끌어내 빠르게 파일 공유가 가능해집니다.
이번에는 이러한 비트토렌트 방식의 서버를 구축하고 파일을 공유하는 방식에 대해 알아보겠습니다. 인터넷 환경에서는 이미 비트토렌트 프로토콜을 지원하는 여러 클라이언트 프로그램이 존재합니다. 비트토렌트를 이용하기 위해서는 링크를 클릭해 클라이언트를 다운받아 설치하면 됩니다.
qBittorrent 설치
이번 글에서는 환경을 구축하는 과정에 대해서 중점을 두고 진행하겠습니다. VirtualBox의 Ubuntu 16.04 환경에서 작성했으며 구글에 공개된 구축 방법 중 가장 간단한것 같습니다.
sudo apt-get install qbittorrent
위 명령어를 입력해주면 자동으로 qBittorrent가 설치됩니다. 설치 이후에는 qBittorrent를 실행합니다.
qBittorrent를 실행하면 이렇게 현재 공유중인 파일 목록을 확인할 수 있는 창이 나타납니다.
qBittorrent 접속
qBittorrent는 클라이언트와 웹 접속을 지원합니다. 웹 접속을 위해서는 서버에서 Web UI(User Interface) 설정을 별도로 진행해야합니다. 서버에 웹으로 접속해 파일을 업로드하고 시드를 유지할 수 있습니다.
화면 우측 상단에 있는 도구상자 확장 버튼을 클릭하면 나타나는 Options를 클릭합니다.
Web UI의 [Enable Web User Interface (Remote control)] 체크박스를 체크해 활성화 해주고 [Authentication]의 [Password]를 설정해줍니다. (필수) 화면을 보면 기본 접속 포트가 8080으로 설정된 것을 알 수 있습니다. 시스템 환경에 따라 포트는 변경할 수 있습니다.
qBittorrent Web 접속
서버의 IP와 설정한 Port를 입력하면 다른 운영체제에서도 웹브라우저를 통해 접속할 수 있습니다. ID와 Password는 위에서 설정한 값을 입력하면 됩니다.
구축한 서버에 토렌트 파일을 업로드하면 서버는 토렌트 파일에 포함된 메타데이터를 읽어 파일을 다운로드 받고 파일 공유를 중개해주는 시드 역할을 수행할 수 있습니다. 이 때 서버에서 파일을 다운로드 하기 위해 최소 1개 이상의 시드가 유지되어야 합니다.
사진과 같이 파일이 다운로드되면 업로드 한 토렌트 파일의 공유를 위한 시드로써의 역할을 수행할 수 있습니다.
torrent 파일 생성
bittorrent 프로토콜 방식으로 파일을 배포하기 위해서는 파일에 대한 정보를 가지고있는 torrent 파일을 생성해야합니다. 윈도우 환경에서 생성하기 위해 qBittorrent 공식 사이트에서 클라이언트 파일을 다운로드 했습니다.
설치는 [다음] 버튼만 선택해주면 완료됩니다.
설치 후 클라이언트를 실행해 [Tools] - [Torrent Creator] 로 이동합니다.
[Select file] torrent 파일을 생성할 파일을 선택하고 [Start seeding immediately] 를 체크 후 [Create Torrent] 를 클릭합니다.
torrent 파일이 생성됩니다. 생성된 torrent 파일을 배포하면 p2p 방식의 배포가 시작됩니다. 이 때 사용자의 네트워크 환경이 torrent 파일을 생성할 때와 변동사항이 발생했다면 torrent 파일을 재생성해야합니다.
torrent 파일 배포
torrent 파일 배포는 앞의 과정에서 생성된 torrent 파일을 상대방에게 전달하고 torrent 클라이언트가 설치된 환경에서 실행하면 클라이언트 프로그램이 자동으로 다운로드를 진행합니다. 이 때 torrent 파일에 대한 시드는 최소 1개 이상 유지되어야 합니다.
qBittorrent가 설치된 환경에서 배포된 torrent 파일을 실행하면 위와 같은 화면이 나오고 저장 경로를 선택 후 [OK] 버튼을 누르면 지정된 경로에 파일이 다운로드 됩니다.
qBittorrent 삭제
설치된 qBittorrent 삭제는 아래 명령어로 수행할 수 있습니다.
sudo apt-get remove --autoremove qbittorrent
글이 도움이 되었다면 하단의 하트와 구독을 눌러주세요. 하트와 구독은 글을 쓰는데 큰 힘이 됩니다.
댓글