내 생의 멋진 날

토렌트란?



브램 코헨

토렌트는 브램 코헨이라는 사람이 창안한 프로토콜이다. 2001년 7월에 발표가 된 의외로 오래된 기술인데,비트토렌트inc라는 회사가 이것을 유지보수하고 있는 상황이다. 선행 기술이 있는 상황에서 기술이 퍼지는 것이 쉽지는 않은데 브램 코헨은 이 기술을 퍼트리기 위해서 일부러 포르노를 이용했었다. VCR이나 토렌트나 기술이 발전해도 퍼트리는 매게채는 달라지지는 않나보다.

여기서 약간 오해가 있을지는 모르지만 토렌트 기술 자체는 위법적인 것이 아니다. 의외로 합법적인 회사들이 토렌트 기술을 라이선싱해서 유용하게 사용하는 것을 볼 수가 있는데, 남자들이라면 다 알 법한 게임인 월드 오브 워크래프트의 경우 클라이언트 프로그램을 다운로드 할 때 토렌트를 이용한다. 이외에도 오픈소스프로그램(주로 리눅스 계열의 대용량 OS 이미지) 배포판도 이렇게 배포를 하곤 한다. 국내에서는 던전 앤 파이터 대규모 업데이트를 할때도 쓰인, 의외로 잘은 모르지만 컴퓨터세계에서는 많이 접해진 기술이다. 


쥴리아 어산지


하지만 가장 유명해진 토렌트라면 아마 doomsday file을 유포하여 전 세계의 정보기관을 멘붕(?)에 빠트린 쥴리아 어센지의 파일이 그것이었다. 지금도 누구나 받을 수 있는 이 파일은 토렌트라는 방식으로 유포가 되면서 한번 기사로도 조명이 되었다. 

이 기술의 장점은 아래서 설명하지만 서버의 부하를 줄일 수 있다는 것. 쉽게말해서 서버에서 다운로드를 받으면 1:다수의 클라이언트로 받기 때문에 결국 1/n으로 속도는 나뉘어 질 수밖에 없다. 혹은 서버를 늘린다면 해결이 되지만 그만큼 서버에 대한 유지비가 올라간다. 서버의 유지비용이 뭐 크게 생각할수 있겠냐고 생각할수 있지만, 민간시장에서는 회선비를 싸게 받아도 기업시장에서 회선비는 1M당 월 몇십만원이 든다(..) 때문에 서버가 늘어나면 회선이 늘어나고 회선이 늘어나면 그만큼 기하급수적으로 비용은 늘어나게 되는 것이다.

토렌트는 이런 서버의 부담을 개인들끼리의 P2P로 이어주는 것인데 그 설명은 아래와 같다. 



1. 기초적인 공유 P2P



순수한 P2P는 사용자와 다른 사용자간의 데이터를 주고받는 경우이다. Webshare로 자신의 컴퓨터를 서버로 만들어서 공유를 한다던가 하는것이 순수한 방식의 P2P가 되는 것이다. 

문제는 이를 중계하는 서버가 없다보니 어디에 누가 자료를 가지고 있는지 모르는 경우가 태반이며, 게릴라식으로 생겼다 사라지는 문제점이 있는 것이다. 또 가장 중요한 한명 -> 다중으로 전송시 속도가 기하급수적으로 떨어지는 현상이 문제로 지적이 된다.

웹쉐어와 같은 http방식의 개인 웹서버나 ftp가 이런 형식이다. 


2. 웹하드



웹하드는 P2P의 단점을 해결하는 방식중 하나이다. 즉 서버에 자료를 업로드하고 이것을 사용자들이 클라이언트 프로그램을 이용해서 받아가는 구조를 말한다. 장점은 서버가 사용자보다 성능이 좋고 또 백본망을 이용하니 속도가 빠르다는 것과 함께 24시간 켜져있어 원하는데로 서비스를 할 수 있다. 

허나 IDC서버에 저장이 되어있다 보니 저작권적인 위협과 함께 수익적인 일로 일정의 서비스 비용을 지불해야 한다. 또 P2P에서 나오는 문제처럼 일정 대역폭을 넘어가면 속도가 줄어드는 문제도 있어서  그리드 딜리버리를 사용하여 유저의 컴퓨터가 느려지기도 한다. 



3. 토렌트



토렌트는 P2P와 웹하드의 장단점을 합친 복합적인 산물이라고 봐야 한다. 데이터는 서버에 없어 단속의 위험이 매우 낮아졌고(없는것은 아니다.) 사용자들이 가진 데이터를 서로 업/다운을 하게 만드는 방식이다. 

저 그림으로 이해가 안된다면 이제 아래그림을 보자


일단 토렌트 사이트에서 .torrent파일을 받는다. 




그리고 이 파일을 토렌트 클라이언트 프로그램을 이용해서 
실행을 시키면 트렉커로 정보가 들어간다.



요청을 받은 트렉커는 이미 서로 공유를 하고 있는 시더(파일이 다 완료된 사용자)와 
피어(아직 다운이 완료되지 않은 사용자)를 찾는다. 이들은 이미 서로 공유를 하는 상태이다.


시더와 피어를 찾으면 요청을 한 사용자도 피어가 되어 파일을 받기 시작하게 되는 것이다.
그리고 다운로드가 완료되면 피어였던 사용자는 시더가 되어 업로드만 하게 된다. 
(피어때도 업로드는 한다)


3.1 DHT?


DHT(Distributed Hash Tabel)는 뜻 그래도 해석하면 해쉬 테이블 분배라는 뜻이다. 본인도 해석하지 못하는 기술이긴한데, 그림을 그리면 다음과 같다고 한다. 인터넷을 많이 뒤졌으나 설명하기엔 기술적 해석이 된 것이 없어서 자세한 설명을 하진 못하지만, 망내에서 교환을 하여 트렉커를 거치지 않고 사용자들끼리 찾아서 데이터를 전송하는 것이다. 

가장 P2P에 근접한 기술이긴 하나, Local(한국이면 한국, 미국이면 미국)끼리만 속도가 잘 나오며, 두번째로는 아직 기술이 발전중인 것이라 완전하지 않다는 단점을 가지고 있다. 그러니 적당히 사용하자. 



그렇다면 왜 문제가 되는가?


문제의 원인은 잘 알 것이다. 바로 이 기술을 통해서 공유되는 자료가 그것. 웹하드의 단속은 심해지니 그린파일이라는 이름으로 받을 수 없는 것들이 생기고, 이런 다크한 자료는 자동적으로 토렌트를 통해서 공유가 될 수밖에 없었을 것이다.


또 다른 문제는 ip가 노출이 된다는 것이다. 자료를 받으면 자동적으로 피어 목록에 ip가 뜨기 마련인데 이 아이피를 가지고 추적을 한다면 누구인지 쉽게 알수 있는 것. 


Posted by 친구1004