2010년 9월 17일 금요일

P2P의 역사와 세대별 P2P정리

세대별 P2P정리

1세대 1999년 - Napster(냅스터)

소리바다를 써보신분은 아시지만 소리바다의 원형이 냅스터입니다.
서버는 사용자가 서버에 접속하면 PC의 MP3, WMA등의 파일을 서버에 전송해 이것을 목록화하는 서버통제형방식입니다. 서버에 접속한 사용자의 파일은 중앙 서버에 모두 데이터화되고, 파일을 다운받고자 하는 컴퓨터와 제공하는 컴퓨터를 1:1로 연결하여 파일을 전송하게 됩니다.
냅스터의 단점은 음악 파일만 공유할수 있다는 단점이 있습니다.
그리고 중앙서비가 일일이 파일의 목록을 간섭하기때문에 저작권단체의 표적이 되었고 결국 냅스터는 사라지게 됩니다. 냅스터를 그대로 빼긴 소리바다또한 같은 운명에 처하게 되죠.

대표적 프로그램: Napster(냅스터), 소리바다



2세대 - Gnutella(그누텔라)

혹시 구루구루 써보신 분 계신가요?
바로 구루구루의 원형이 그누텔라입니다. 개인과 개인끼리 묶어주는 P2P이죠.
사용자는 먼저 네트워크에 있는 또 다른 그누텔라의 IP 주소를 알아야 합니다. 수많은 그누텔라 사용자가 게시되어 있는 유명 웹 사이트를 방문하면 주소를 알 수 있죠. 사용자가 파일을 찾기 원한다면, 그 사용자는 그누텔라 사용자들에게 그 파일에 대한 질의(query)를 던집니다.

파일점 주세요?!! 제발!? 플리즈!!~~~@@@
이런식으로 구걸을 해야합니다;; 그야말로 파일이 많은 분이 신이죠..
초창기엔 사용자들이 그냥 파일을 공유했지만 나중에 사람들이 자료를 그냥 나누어주는게 아니라 받을려는 사람의 자료를 보고서 원하는게 없다면 주지를 않습니다. 자료가 없는 분은 구걸을 할수 밖에 없습니다.
이런 문제점이 누적되어 결국 그 왕좌를 당나귀에게 넘겨주어 역사의 뒤안길로 사라졌나 싶었는데 2008년에 들어서 다시 최근에 일본에서 우타타네(うたたね)로 화려하게 부활하고 있습니다. 우타타네에 대한 설명은 뒤에 다시 하겠습니다.

대표적 프로그램: 구루구루, Gnutella(그누텔라), KaZaA(카자), Limewire(라임와이어), soulseek(솔식), Utatane(우타타네)



3세대 - edonkey(당나귀)

edonkey는 최초의 파일분할식 공유프로그램입니다.
영화같은 대용량의 파일을 공유하는 것은 당나귀가 출현하고 나서였죠.
그전까지 유행했던 카자, 라임와이어등이 몰락하고 당나귀가 P2P계를 제패했죠.
초창기 당나귀개발자들은 개발자금으로 당나귀에 광고창을 띠워서 자금을 충당했는데 이것이 공개소스진영을 반발을 사서 이뮬emule을 개발합니다.

이뮬은 공개소스이기 때문에 수많은 변형버전이 나왔죠.
이뮬은 그자체로 좋았지만 문제는 이뮬의 형제들이 악랄한 프로그램이 많았습니다.
이뮬의 변형버전들이 자신들끼리만 자료를 더 빠르게 공유하며 다른 유저를 차별을 했는데 유료회원에게만 더 빠른 속도를 제공하는 푸루나가 대표적이었죠.

이런 이기적인 프로그램의 문제로 한개의 당나귀서버가 다운되면, 연쇄적으로 수많은 전세계의 당나귀서버들이 다운되는 일이 자주 발생하게 되었습니다.
서버말썽이 심하자 edonkey개발자들은 오버넷이라는 차세대프로그램을 만듭니다.
Overnet은 최초의 서버리스방식의P2P프로그램으로써 기념비적인 프로그램이기도 합니다.
이뮬진영은 오버넷에 대항해 kademlia라는 서버리스네트웍을 만듭니다.

당나귀의 폭발적인 성장으로 오랜동안 전성기를 누렸지만 저작권단체의 표적이 되어 서버가 패쇄되었고 당나귀개발자의 사망으로 결국 개발이 중단되었습니다. 이뮬이 당나귀의 네트워크를 물려받고 잠시동안 크게 성장했지만 역시 서버패쇄와 사용자의 이기적인 히트 앤드 런 문제로 점점 쇠락의 길을 걷고 있습니다.
이뮬은 히트앤드런을 완벽하게 차단한 레이쇼정책을 쓰는 토렌트에 완벽하게 밀려버립니다.

대표적프로그램: edonkey(당나귀), Overnet(오버넷), eMule(이뮬), 미디어뱀프, 동키호테, 이지뮬, 푸루나, winmx

 

4세대 - 비트토렌트

너무나 글이 길어
모든 P2P의 개념을 통합한 비트토렌트 라는 포스트로 작성했습니다.



일본의 P2P

4세대 위니, 쉐어, 퍼닥

일본은 정부의 통제가 심해서 서버를 둘수없어 토래커가 생길수 없는 구조입니다.
당나귀의 초기버전은 서버가 망하면 거기에 있는 이용자가 모두 이용할수없는데 반해 오버넷은 서버가 없이 돌아가는 P2P라서 일부 노드가 없더라도 생생하게 돌아가죠.

위니,쉐어, 파닥은 오버넷과 P2P구현원리가 비슷하며 그래서 서버가 없어도 돌아가는 퍼닥,위니,쉐어같은 P2P가 일본에서 많이 쓰이고 있죠.
노드는 토렌트의 피어와 비슷하게 생각하시면 됩니다.

처음에 검색하면 자료가 뜨지 않지만 천천히 노드가 모이면서 파일을 받을수 있는 구조입니다.
바다에 낚시하는 기분으로 트리거로 예약해두면 몇시간후에 노드가 모이면서 파일이 받아집니다.
그리고 카보스는 음악파일만 특화된 프로그램입니다.

대표적 프로그램: Winny(위니), Share(쉐어), Perfect Dark(퍼퍽트다크), Cabos(카보스)


2세대 그누텔라방식으로 희귀한 일본P2P Utatane(우타타네)

일본에서 지속적인 P2P의 단속으로 인해 퍼닥,쉐어,위니의 업로드가 체포되었고 그래서 가장 패쇄적인 그누텔라방식의 우타타네가 뜨고 있습니다.
아는 사람에게 파일을 공유하겠다는 지극히 패쇄적인 P2P시스템이죠.

우타타네는 수많은 개인과 개인을 연결하지만 몇몇의 개인은 개인서버를 만들어야 합니다. 리쳐는 그런 개인서버에 접속해서 파일다운을 개인서버운영자에게 허락을 받아야 다운을 받을수 있습니다.
그리고 그 개인서버주소는 특정한 패쇄적인 사이트에서만 알수 있습니다.
즉 가장 패쇄적인 파일공유시스템이고 자신이 파일을 가지고 있어야 쉽게 다운을 허락받을수있습니다.

ps: winmx는 당나귀프로그램과 전혀 다른 프로그램이지만 P2P의 구현원리는 당나귀와 흡사해서 3세대에 속합니다. 역시 구루구루도 그누텔라와 다른 프로그램이지만 P2P의 구현원리는 그누텔라방식이라서 2세대에 포함했습니다.

 

 

 

전세계의 P2P현황

 

1.일본

일본애들은 토렌트를 잘 안쓰는 것 같습니다.
대충 일본은 위니, 쉐어, 퍼닥의 3파전입니다.
퍼닥이 제일 자료가 많은데 무조건 40기가 캐시를 다운받은후 쓸수 있습니다.
퍼닥이 제일 잘나가고 있지만 아직도 위니나 쉐어를 많이 쓰고 있습니다.
참로로 저는 쉐어만 쓰죠
그리고 음악파일만 공유하는 카보스와
구루구루와 흡사한 우타타네도 유명합니다.


2.북미와 유럽

북미와 유럽은 온리 토렌트입니다.
그 냥 토렌트를 많이 씁니다.
북미와 유럽에서 토렌트를 많이 쓰니까 그래서 한국에서도 빗톡이나 비코같은 커뮤니티가 생겼죠.
하지만 아직도 이뮬은 죽지 않았습니다.
다만 오리지널이뮬보다 변종이뮬(eMule MoDs)이 유행하고 있죠.
eMule Xtreme, eMule IoNiX, eMule MorphXT가 유명하죠.


3.중국

중국은 이뮬과 토렌트의 2파전인데
토렌트를 제일 많이 쓰고 그다음에 이뮬을 많이 쓰네요.
특히 중국에는 Very시디라는 거대한 이뮬사이트가 있어서 이뮬을 많이 선호하는 것 같습니다.
이뮬과 토렌트의 기묘한 동거는 이뮬과 토렌트가 함게 돌아가는 Xunlei라는 프로그램까지 유행하게 되었습니다.
더구나 Xunlei는 flashget이나 Net Transport과 비슷한 링크자동감지다운로드기능까지 있어 중국인이 많이 씁니다.
Very시디사이트에서는 easyMule이라는 변종이뮬을 배포합니다.


4. 국내

국내는 뭐 웹하드나 토렌트죠
웹하드나 공개토렌트의 기세는 워닥 좋으니
하지만 아직도 이뮬이 죽지 않았는데 이뮬고수들은 오리지널 이뮬보다 Xtreme, IoNiX, MorphXT를 많이씁니다.
특히 eMule IoNiX는 다운로드와 업로드를 관리하는 기능이 있어 이뮬고수들에게 환영받는 프로그램입니다.
그리고 가끔 중국자료를 받기위해 easyMule를 쓰시는 분도 계십니다.

eMule-Xtreme_12.png
이뮬 익스트림


5. 월드

뭐 남미, 중동, 동남아시아, 아프리카등 인터넷속도가 느린곳은 웹하드를 많이 쓰고 그담에 이뮬를 많이씁니다. 가끔 토렌트도 씁니다.
특히 웹하드중에서 rapidshare와 MEGAUPLOAD를 많이 쓰고 hotfile.com도 많이 씁니다.
이뮬도 많이 쓰구요..
가끔 자료를 검색해서 중동쪽사이트가 나오면 거의 rapidshare나 MEGAUPLOAD링크가 걸려있는 곳이 많죠.
웹하드의 유행은 uvrx같은 서치사이트까지 나왔고 JDownloader 같은 웹하드 전문 다운로드프램그램까지 나왔습니다. 

 


 

모든 P2P의 개념을 통합한 비트토렌트

마지막글입니다. 아무려도 P2P에 토렌트가 빠지면 안될것 같아서 작성했습니다.

모든 P2P의 개념을 통합한 비트토렌트

P2P는 크게 2가지의 개념을 가집니다.바로 공개형과 비공개형이죠.
공개형은 바로 냅스터와 당나귀이고 비공개형은 그누텔라방식이죠


공개형P2P

1:多공유이다.
파일검색이 가능하다.
쉽게 파일에 접근해서 다운로드할수 있다. 검색을 통해 파일을 액세스할수있다.
커뮤니티사이트가 없어도 된다.
서버주소는 몰라도 된다. 자동으로 접속가능하다.
보안에 취약하다.

대표적 프로그램: Napster(냅스터), 소리바다, edonkey(당나귀), Overnet(오버넷), eMule(이뮬), 미디어뱀프, 동키호테, 이지뮬, 푸루나, winmx, Winny(위니), Share(쉐어), Perfect Dark(퍼퍽트다크), Cabos(카보스)


비공개형P2P

1:1공유이다.(요즘엔 개선해서 1:多공유로 바뀌었다고 합니다.)
파일검색이 불가능하다.
파일에 접근할려면 상대방의 허락이 있어야한다. 질의한후 허락받고 파일을 액세스를 할수 있다.
커뮤니티사이트가 반드시 존재해야한다.
서버주소는 커뮤니티사이트에서 정보을 받아야한다.
보안에 강하다.

대표적 프로그램: 구루구루, Gnutella(그누텔라), KaZaA(카자), Limewire(라임와이어), soulseek(소울식), Utatane(우타타네)


션패닝이 냅스터라는 프로그램을 개발하면서 인터넷상에서 개별 컴퓨터끼리 자유롭게 의사소통 할 수 있는 길을 터주자는 것입니다.
그전까지도 P2P라는 존재는 있었으나 대중들을 위한 P2P프로그램을 만들어준것은 션패닝이 최초였습니다.
션패닝의 냅스터는 폭발적인 인기를 끌었고 저작권단체의 소송에 직면하게 됩니다.
클라이언트-써버 모델(client-server model)은 저작권에 취약했고 결국 냅스터는 패쇄하게 됩니다.

이런 저작권단체의 소송에서 벗어나고자 그누텔라가 탄생합니다.
저작권단체의 추적에서 완벽하게 피하고 소수의 커뮤니티사이트에서 회원끼리 공유하는 방식이죠.
Nullsoft라는 회사에서 p2P프로그램를 개발했지만 프로젝트는 페지되었고 코드를 폐기할 예정이었으나 해커들이 코드을 낚아채서 새로운 소프트웨어를 만들었습니다.
바로 그누텔라라는 유명한 소프트웨어입니다.

그누텔라는 저작권을 추적을 피하기 위해 패쇄형으로 개발되었습니다.
누텔라는 냅스터와 달리 중앙에서 개입하는 부분이 전혀 없었습니다.
아무도 사용자를 추적할 수 없을 뿐만 아니라 사용자들이 교환하는 파일의 목록을 만들 수도 없습니다.

유저는 먼저 커뮤니티사이트에 가입한후 다른 그누텔라유저의 IP 주소를 알아야 합니다.
그다음에 그누텔라 프로그램을 이용해서 상대방 그누텔라유저의 컴퓨터에 접근한다음 엑세스에 대한 질의(query)를 던집니다.

파일점 주세요?!! 제발!? 플리즈!!~~~@@@
이런식으로 구걸을 해야합니다;;

초창기엔 사용자들이 그냥 파일을 공유했지만 나중에 사람들이 자료를 그냥 나누어주는게 아니라 받을려는 사람의 자료를 보고서 원하는게 없다면 주지를 않습니다.
자료가 없는 분은 구걸을 할수 밖에 없습니다. 더구나 1:1공유라서 파일공유에 시간이 많이 걸리죠.
이런 문제점이 누적되어 유저들이 당나귀에게 갈아타게 되었죠.

당나귀는 냅스터을 개량해서 파일분할방식을 추가한후 등장합니다. 당나귀의 등장에 유저들은 열광했고 폭발적으로 성장합니다.
하지만 저작권단체가 가만히 있었리는 없고 지루한 소송전이 시작되었죠.
당나귀개발자들은 저작귄에 취약한 클라이언트-써버 모델(client-server model)을 버리고 클라이언트-클라이언트 모델(client-client model)인 오버넷이 개발됩니다.

하지만 저작권단체도 이에 맞추어 다시 소송을 걸고 당나귀개발자의 사망함에 당나귀프로젝트가 중단되고 맙니다.

비트토렌트는 브램코헨은 이런 저작권의 소송에 주목하고 자신의 토렌트프로젝트에 그누텔라의 보안성에 접목시킵니다.
그리고 당나귀의 공개형방식과 그누텔라의 비공개형방식의 개념을 통합한 새로운 프로그램인 비트토렌트를 개발합니다.

비트토렌트는 당나귀의 파일분할방식을도입하고 서버통제방식과 서버리스방식을 상황에 따라 바꿀수 있도록 설계했으며
유저들이 파일을 접근하는것을 검색이 아닌 그누텔라방식으로 접근하도록 설계했습니다.


유저들의 파일액세스의 동선
당나귀유저:
프로그램가동 → 검색 → 파일액세스

그누텔라유저
커뮤니티사이트에서 서버주소확보 → 프로그램가동 → 파일액세스권한을 질의 → 허가를 받은후 액세스

비트토렌트유저
비공개:커뮤니티사이트에서 초대장을 확보 → 사이트의 회원이 되어 토렌트파일다운권한 획득 → 사이트에서 인덱스가 담겨있는 토렌트파일다운 → 프로그램가동 → 토렌트파일가동으로 파일액세스
공개: 커뮤티티사이트에서 자유롭게 토렌트파일다운 → 프로그램가동 → 토렌트파일가동으로 파일액세스


비트토렌트는 즉 공개형P2P와 비공개형P2P를 합친 혼합형P2P입니다.
공개트래커로 공개형으로 될수 있고 비공개트래커로 비공개형P2P가 될수있죠.
보안성이 거의 없었던 당나귀,이뮬은 몰락하였고 토렌트는 상황에 따라 공개사이트로 유저의 편리함을 비공개사이트로 사이트의 보안성을 추구하는 편리한 프로그램으로 각광받게 되었습니다.

현재 공개토렌트는 저작권단체의 소송으로 서서히 쇠락하고 있지만 비공개토렌트는 폭발적으로 성장하고 있습니다.
토렌트의 앞으로의 행보가 기대됩니다.

일본은 위니,쉐어,퍼닥같은 오버넷과 비슷한 서버리스방식의 P2P가 유행하였으나 일본정부의 추적에 헤비업로드들이 그누텔라방식의 우타타네로 숨어버렸습니다.
앞으론 일본에서 보안성을 강조한 그누텔라방식의 우타타네가 유행하지 않을까 조심스럽게 예상해봅니다.
 
 
 
출처 : http://blog.naver.com/joju1200/ 영원한 아웃사이더