그루텔라

Gnutella

Gnutella피어피어 네트워크 프로토콜입니다.2000년에 설립된 이 네트워크는 동종 최초의 분산형 피어 투 피어 네트워크였으며, 이후 다른 네트워크에서도 이 [1]모델을 채택하게 되었습니다.

2005년 6월 Gnutella의 컴퓨터 수는 181만[2] 대였으며,[3] 2006년 1월까지 노드 수는 300만 대 이상으로 증가했습니다.2007년 후반에는 인터넷에서 가장 인기 있는 파일 공유 네트워크였으며 시장 점유율은 40%를 [4]넘었습니다.

역사

네트워크의 이름을[5][6] 얻은 최초의 클라이언트(Gnutella라고도 불린다)는 2000년 초 NullsoftJustin Frankel과 Tom Pepper에 의해 개발되었으며, 이는 회사가 AOL에 인수된 직후입니다.3월 14일, 이 프로그램은 Nullsoft의 서버에서 다운로드 할 수 있게 되었습니다.이 행사는 Slashdot에서 너무 일찍 발표되었고,[7][8] 수천 명이 그날 프로그램을 다운로드 받았다.소스 코드는 나중에 GNU General Public License(GPL)에 따라 공개될 예정이었지만 원래 개발자들은 이 목적을 [9]달성할 기회가 없었습니다.

다음 날 AOL은 법적 문제로 프로그램 이용을 중단하고 Nullsoft가 이 프로젝트에 대해 더 이상의 작업을 하지 못하도록 했습니다.이것은 Gnutella를 멈추지는 않았다; 며칠 후, 프로토콜은 리버스 엔지니어링되었고 호환성이 있는 자유 및 오픈 소스 [10]클론이 나타나기 시작했다.서로 다른 그룹에 의한 다양한 클라이언트의 병렬 개발은 오늘날 Gnutella 개발의 수법으로 남아 있습니다.

최초의 독립적인 Gnutella 선구자 중에는 Gene Kan과 Spencer Kimball이 있었는데, Gnutella에서 일하기[11][12] 위해 오픈 소스 커뮤니티를 모으는 것을 목표로 하는 최초의 포털을 개설하고 GNU-GPL(오픈 소스)[13][14][15] 프로그램 중 하나인 "GNubile"을 개발하기도 했다.

Gnutella 네트워크는 FastTrack(KaZaA) 및 오리지널 Napster와 같은 반집중형 시스템의 완전한 대체 수단입니다.이 네트워크의 초기 인기는 2001년 초 넵스터의 법적 종말 위기에 의해 촉진되었다.이러한 인기의 급상승은 초기 프로토콜의 확장성의 한계를 드러냈습니다.2001년 초에는 프로토콜의 변형(전유 및 폐쇄 소스 클라이언트에서 처음 구현됨)을 통해 확장성이 향상되었습니다.모든 사용자를 클라이언트 및 서버로 취급하는 것이 아니라 일부 사용자는 현재 접속된 사용자에 대한 검색 요구 및 응답을 라우팅하는 울트라피어로 취급되고 있습니다.

이것에 의해, 네트워크의 인기가 높아졌습니다.2001년 후반, Gnutella 클라이언트 LimeWire Basic은 무료 오픈 소스가 되었습니다.2002년 2월, 상용 파일 공유 그룹인 Morpheus는 FastTrack 기반의 피어 투 피어 소프트웨어를 포기하고 무료 오픈 소스 클라이언트 Gnutella에 기반한 새로운 클라이언트를 출시했습니다.

오늘날 Gnutella라는 단어는 하나의 프로젝트나 소프트웨어 조각이 아니라 다양한 클라이언트가 사용하는 개방형 프로토콜을 가리킵니다.

이름은 GNU와 Nutella합성어이며, 이탈리아 헤이즐넛 맛의 스프레드 브랜드 이름입니다.Frankel과 Pepper는 원래 프로젝트에서 작업하는 Nutella를 많이 먹었으며, GNU General Public License에 따라 완성된 프로그램을 라이선스하려고 했습니다.Gnutella는 GNU[16] 프로젝트 또는 GNU의 자체 피어 투 피어 네트워크인 GNUnet과 관련되어 있지 않습니다.

2010년 10월 26일, 유명한 Gnutella 클라이언트인 LimeWire는 미국 남부지방법원Kimba Wood 판사가 음반업계 원고와 LimeWire가 동의한 동의 법령에 서명했을 때 폐쇄 명령을 받았습니다.이 이벤트는 네트워크 크기가 현저하게 줄어든[17] 원인일 가능성이 높았습니다.는 LimeWire 직원이 금지 명령을 협상하는 동안 원격 비활성화 코드를 소프트웨어에 삽입했기 때문입니다.가처분 효력이 발생함에 따라 해당 버전(5.5.10보다 새로운 버전)을 설치한 사용자는 P2P 네트워크에서 차단되었습니다.LimeWire는 무료 소프트웨어였기 때문에 LimeWire 상표가 사용되지 않는 한 비활성화 코드를 생략한 포크의 생성을 막을 수 있는 것은 없었습니다.예를 들어 셧다운은 2004년에 작성된 LimeWire의 포크인 FrostWire에는 영향을 주지 않았습니다.FrostWire는 리모트 디세이블 코드도 애드웨어도 포함되어 있지 않습니다.

2010년 11월 9일, 라임와이어는 비밀 개발팀에 의해 부활하여 라임와이어 Pirate [18]Edition이라고 명명되었습니다.이것은 LimeWire 5.6 BETA에 기반을 두고 있다.이 버전에서는 서버 의존성이 제거되고 모든 PRO 기능이 무료로 활성화되었습니다.

설계.

A diagram of Gnutella nodes and their connections.
gnutella 검색 및 검색 프로토콜

Gnutella가 원래 어떻게 동작했는지를 상상하려면 Gnutella 클라이언트 소프트웨어를 각각 가지고 있는 대규모 사용자(노드라고 불린다)를 상상해 보십시오.초기 기동시에 클라이언트소프트웨어는 부트스트랩을 실시해, 적어도1개의 다른 노드를 검출할 필요가 있습니다.이를 위해 소프트웨어와 함께 출하되는 동작 가능한 노드의 기존 주소 목록, 기존 노드(Gnutella Web 캐시라고 함), UDP 호스트 캐시, 그리고 드물게는 IRC를 사용하는 등 다양한 방법이 사용되었습니다.접속이 완료되면 클라이언트는 작업 주소 목록을 요구합니다.클라이언트는 출하된 노드 및 특정 할당량에 도달할 때까지 다른 클라이언트로부터 수신한 노드에 접속하려고 합니다.이 경우 아직 시도하지 않은 주소를 로컬로 캐싱하고 유효하지 [citation needed]않은 것으로 판명된 주소를 폐기합니다.

사용자가 검색을 수행할 경우 클라이언트는 활성 상태로 연결된 각 노드에 요청을 보냅니다.프로토콜 버전 0.4에서는 클라이언트의 활성 연결 노드 수가 상당히 적었습니다(약 5개).이 버전의 프로토콜에서 각 노드는 요청을 능동적으로 연결된 모든 노드로 전송하고, 노드는 요청을 전송합니다.이것은, 패킷이 송신측으로부터 소정의 홉수(최대 7)[19]에 도달할 때까지 계속됩니다.

버전 0.6(2002[20]) 이후 Gnutella는 리프 노드와 울트라 노드(울트라 피어라고도 함)로 구성된 복합 네트워크입니다.리프 노드는 소수의 울트라 피어(일반적으로 3개)에 연결되어 있으며, 각 울트라 피어는 32개 이상의 다른 울트라 피어에 연결되어 있습니다.높은 아웃도에서는 쿼리가 이동할 수 있는 최대 홉카운트는 4로 낮아졌습니다.

Leave 및 Ultrapeer는 Query Routing Protocol을 사용하여 Query Routing Table(QRT), 64Ki-슬롯 및 해시된 키워드로 구성된 최대 2개의 Mi-슬롯을 교환합니다.리프 노드는 접속처의 각 울트라 피어에 QRT를 송신하고, 울트라 피어는 모든 리프(128Ki 슬롯으로 축소)의 QRT와 자신의 QRT(파일을 공유하는 경우)를 Marge 해, 자신의 네이버와 교환합니다.쿼리 라우팅은 쿼리의 단어를 해시하여 모든 단어가 QRT에서 일치하는지 여부를 확인하는 방법으로 수행됩니다.울트라 피어는 쿼리를 리프 노드로 전송하기 전에, 또한 쿼리를 피어 울트라 노드로 전송하기 전에 쿼리를 전송할 수 있는 마지막 홉을 확인합니다.

검색 요청이 결과를 발견하면 결과를 가진 노드가 검색자에게 연락합니다.기존의 Gnutella 프로토콜에서는 쿼리 자체에 노드에 대한 식별 정보가 포함되어 있지 않기 때문에 쿼리에 의해 취해진 경로를 따라 응답 메시지가 반환되었습니다.이 방식은 나중에 UDP를 통해 검색을 시작한 노드(일반적으로 노드의 울트라 피어)에 직접 검색 결과를 제공하도록 수정되었습니다.따라서 현재 프로토콜에서 쿼리는 어느 노드의 IP 주소와 포트 번호를 전송합니다.이것에 의해, Gnutella 네트워크를 개입시켜 라우팅 되는 트래픽의 양이 감소해,[citation needed] 확연히 확장성이 향상됩니다.

사용자가 파일을 다운로드하기로 결정하면 파일 전송을 네고시에이트합니다.요청된 파일을 가진 노드가 방화벽이 아닌 경우 쿼리 노드는 해당 노드에 직접 연결할 수 있습니다.다만, 노드가 파이어 월(fire wall)되어 있는 경우, 송신원노드가 착신 접속을 수신하지 않게 되면, 파일을 다운로드하는 클라이언트는, 리모트클라이언트가 접속을 개시(파일을 푸시 하기 위해서)하는 이른바 푸시 요구를 서버에 송신합니다.처음에 이러한 푸시 요청은 쿼리 전송에 사용된 원래 체인을 따라 라우팅되었습니다.루트가 끊어지는 경우가 많고 라우팅된 패킷은 항상 흐름 제어의 대상이 되기 때문에 이 방법은 신뢰성이 낮습니다.푸시 프록시가 이 문제에 대처하기 위해 도입되었습니다.이들은 보통 리프 노드의 초스피어이며 검색 결과에 발표됩니다.클라이언트는 HTTP 요청을 사용하여 이러한 푸시 프록시 중 하나에 연결하고 프록시는 클라이언트를 대신하여 리프(leaf)에 푸시 요청을 보냅니다.통상, UDP 경유로 푸시 요구를 푸시 프록시에 송신할 수도 있습니다.이것은 TCP 를 사용하는 것보다 효율적입니다.푸시 프록시에는 다음 두 가지 장점이 있습니다.우선, 울트라 피어 리프 접속은 루트보다 안정적입니다.이로 인해 푸시 요청의 신뢰성이 크게 향상됩니다.둘째, Gnutella 네트워크를 [citation needed]통해 라우팅되는 트래픽 양을 줄입니다.

마지막으로 사용자가 연결을 끊으면 클라이언트 소프트웨어는 알려진 노드 목록을 저장합니다.여기에는 클라이언트가 연결된 노드와 pong 패킷에서 학습한 노드가 포함됩니다.클라이언트는 다음에 시작할 때 시드 리스트로 이 리스트를 사용하여 부트스트랩서비스에 [citation needed]의존하지 않게 됩니다.

실제로 Gnutella 네트워크에서의 이 검색 방법은 신뢰할 수 없는 경우가 많습니다.각 노드는 일반 컴퓨터 사용자이기 때문에 항상 연결 및 연결 해제되므로 네트워크가 완전히 안정되지는 않습니다.또한 Gnutella에서 검색하는 대역폭 비용은 연결된 사용자 [21]수에 따라 기하급수적으로 증가하여 종종 접속을 포화시키고 느린 노드를 무용지물로 만들었습니다.따라서 검색 요구는 종종 폐기되고 대부분의 쿼리는 네트워크의 극히 일부에 도달합니다.이 관찰을 통해 Gnutella 네트워크가 확장성이 뛰어나지만 키워드가 아닌 정확한 일치 [citation needed]검색만 지원하는 분산 해시 테이블의 개발이 촉진되었습니다.

병목현상에 대처하기 위해 Gnutella 개발자는 울트라 피어이탈 계층화 시스템을 구현했습니다.모든 노드가 동등하다고 간주되는 대신 네트워크에 들어가는 노드는 리프로서 네트워크의 '엣지'로 유지되었습니다.Leave는 루팅을 제공하지 않습니다.메시지를 라우팅할 수 있는 노드는 울트라피어로 승격됩니다.울트라 피어는 리프 접속과 루트 검색 및 네트워크 유지보수 메시지를 받아들입니다.이것에 의해, 네트워크를 개입시켜 한층 더 검색을 전파할 수 있어 토폴로지를 변경할 수 있습니다.이를 통해 효율성과 [citation needed]확장성이 크게 향상되었습니다.

또한 gnutella는 트래픽 오버헤드를 줄이고 검색을 보다 효율적으로 하기 위해 많은 다른 기술을 채택했습니다.가장 주목되는 것은 Query Routing Protocol(QRP)과 Dynamic Quering(DQ)입니다.QRP를 사용하면 파일을 가지고 있을 가능성이 높은 클라이언트에 대해서만 검색이 이루어지기 때문에 희귀 파일 검색이 훨씬 효율적입니다.DQ를 사용하면 프로그램이 충분한 검색 결과를 획득하는 즉시 검색이 중지됩니다.이것에 의해, 일반적인 [citation needed]검색으로 발생하는 트래픽의 양이 큰폭으로 감소합니다.

Gnutella를 분산화함으로써 얻을 수 있는 장점 중 하나는 네트워크를 종료하는 것이 매우 어려워지고 사용자가 이용할 수 있는 콘텐츠를 결정할 수 있는 유일한 네트워크로 만들 수 있다는 것입니다.네트워크 전체가 중앙 서버에 의존했던 Napster와 달리 Gnutella는 노드 하나를 셧다운해도 셧다운할 수 없습니다.분산형 네트워크는 중앙 [22]서버를 제어함으로써 불량 행위자가 네트워크의 내용을 제어하거나 데이터를 조작하는 것을 방지합니다.

프로토콜 기능 및 확장

Gnutella는 한때 순전히 쿼리 플래딩 기반 프로토콜로 작동했습니다.오래된 Gnutella 버전 0.4 네트워크 프로토콜은 5가지 다른 패킷 유형을 사용합니다. 즉,[23] 다음과 같습니다.

  • ping: 네트워크상의 호스트 검출
  • pong: ping에 대한 응답
  • 쿼리: 파일 검색
  • 쿼리 히트: 쿼리에 대한 응답
  • push: 방화벽 서비스 다운로드 요청

이러한 패킷은 검색을 용이하게 합니다.대신에, 파일 [24]전송은 HTTP 에 의해서 처리됩니다.

Gnutella 프로토콜의 개발은 현재 Gnutella Developers Forum(GDF)에 의해 주도되고 있습니다.많은 프로토콜 확장 기능은 소프트웨어 벤더와 GDF의 무료 Gnutella 개발자에 의해 개발되어 왔습니다.이러한 확장 기능에는 인텔리전트 쿼리 라우팅, SHA-1 체크섬, UDP 경유 쿼리 히트 전송, UDP 경유 쿼리, TCP 경유 다이내믹쿼리, UDP 경유 파일 전송, XML 메타데이터, 소스 교환(다운로드 메쉬라고도 함) 및 슬라이스 병렬 다운로드(스위밍)[24]가 포함됩니다.

Gnutella 프로토콜 개발 웹사이트에서 Gnutella 0.6 규격에서 이러한 프로토콜 확장을 마무리하려는 노력이 있습니다.Gnutella 0.4 표준은 구식이지만, 지금까지의 모든 확장이 제안으로 존재하기 때문에 최신 프로토콜 사양으로 남아 있습니다.사실, 오늘날 0.4 악수로 연결하는 것은 어렵거나 불가능합니다.GDF의 개발자에 따르면 버전 0.6은 신규 개발자가 진행 중인 작업 [25]사양을 사용하여 추구해야 할 사항이다.

Gnutella 프로토콜은 아직 개발 중입니다.오래된 Gnutella 0.4에서 물려받은 복잡성을 완전히 해소하고 새로운 메시지 아키텍처를 설계하려는 시도에도 불구하고 지금까지 [citation needed]가장 성공적인 파일 공유 프로토콜 중 하나로 남아 있습니다.

소프트웨어

다음 표는 Gnutella 네트워크를 지원하는 여러 응용 프로그램의 일반 정보와 기술 정보를 비교한 것입니다.테이블은 Gnutella 클라이언트의 완전한 목록을 제공하지 않습니다.테이블은 현재 Gnutella 네트워크에 참여할 수 있는 클라이언트로 제한됩니다.

일반사양

이름. 플랫폼 면허증. 프로젝트가 활성 상태입니까?
(단종)
최신 릴리즈 유산
획득 MacOS 독자 사양 아니요. 2.2 (v223) (2010년 11월 19일, 11년 전 (2010년 11월 19일) [±] 라임와이어
베어플릭스 창문들 독자 사양 아니요. 5.2.6.0 베어쉐어
베어쉐어 창문들 독자 사양 아니요. 10.0.0.131462 (2013년 1월 29일, 9년 전(2013년 01월 29일) [±] 오리지널 작품
카보스 자바 GNU GPL 아니요. 0.8.2(2010년 2월 9일, 12년 전(2010-02-09)) [±] 라임와이어
CitrixWire 창문들 독자 사양 아니요. 2014년[26] 아닥스
코코넛 RISC OS 독자 사양 아니요. 1.21 (2005-06-21) 오리지널 작품
FilesWire (P2P) 자바 독자 사양 아니요. 베타 1.1 (2007) 오리지널 작품
giFT(Gnutella 플러그인) 크로스 플랫폼 GNU GPL 아니요. 0.0.11 (2006-08-06) 오리지널 작품
그누클러스-GnucDNA 창문들 GNU GPL, LGPL 아니요. 2.2.0.0(2005년 6월 17일, 17년 전(2005년 6월 17일) [±] 오리지널 작품
gtk-gnutella 크로스 플랫폼 GNU GPL 네. 1.2.0 (2020년 7월 9일, 2년 전(2020-07-09) [±] 오리지널 작품
KC 이지 창문들 GNU GPL 아니요. 0.19-rc1 (2008년 2월 3일, 14년 전 (2008-02-03) [±] 선물.
키위 알파 창문들 GNU GPL 아니요. 2.2.0.0(2005년 6월 17일, 17년 전(2005년 6월 17일) [±] GnucDNA
라임와이어 자바 GNU GPL 아니요. 5.5.16(2010년 9월 30일, 11년(2010-09-30)) [±] 오리지널 작품
모르페우스 창문들 독자 사양 아니요. 5.55.1 (2007년 11월 15일, 14년 전(2007년 11월 15일) [±] GnucDNA
펙스 자바 GNU GPL 아니요. 3.4.2.116(2009년 2월 1일, 13년 전(2009-02-01)) [±] 오리지널 작품
독살 MacOS GNU GPL 아니요. 0.5191 (2006년 8월 8일, 15년 전 (2006-08-08)) [±] 선물.
샤레아자 창문들 GNU GPL 네. 2.7.10.2(2017년 9월 18일, 4년 전(2017-09-18))[27] [±] 오리지널 작품
시멜라 심비안 GNU GPL 아니요. 오리지널 작품
WireShare(일명 LimeWire Pirate Edition) 자바 GNU GPL 네. 6.0.1 (2020-08-29) 라임와이어
줄트락스 창문들 독자 사양 아니요. 4.33 (2009년 4월) 오리지널 작품

중단된 프로젝트

Gnutella 기능

고객 해시 검색 채팅[i] 버디 리스트 대용량 파일 처리(4GB 이상) Unicode 호환 쿼리 라우팅 UPnP 포트[ii] 매핑 NAT 트래버설 NAT 포트 매핑 루드[iii] TCP 푸시 프록시 UDP 푸시 프록시 울트라 피어 GWeb[iv] 캐시 UDP 호스트 캐시 THEX TLS 다른.
베어쉐어 네. 네. 네. 아니요. 아니요. 네. 네. 네. 네. 네. 아니요. 네. 네. 아니요. 네. 아니요. -
giFT(코어 및 플러그인) 네. 아니요. 아니요. 아니요. 아니요. 아니요. 아니요. 네, 그렇습니다. 아니요. 아니요. 네. 아니요. 아니요. 아니요. -
GnucDNA [c] 네. 아니요. 아니요. 아니요. 아니요. 아니요. 아니요. 네. 아니요. 아니요. 네. 아니요. 아니요. 아니요. -
gtk-gnutella 네, 그렇습니다. 아니요. 아니요. 네. 네. 네. 네. 네. 네, 그렇습니다. 네. 네. 네. 아니요(드롭) 네. 네. 네. IPv6, DHT, GUESS, G2
라임와이어[f] 네, 그렇습니다. 네. GMail 또는 XMPP 네. 네. 네. 네, 그렇습니다. 네, 그렇습니다. 네. 네. 네. 네. 네. 네. 네. 네. DHT
와이어쉐어[f] 네, 그렇습니다. 네. GMail 또는 XMPP 네. 네. 네. 네, 그렇습니다. 네, 그렇습니다. 네. 네. 네. 네. 네. 네. 네. 네. DHT
펙스 네. 네. 아니요. 네. 네. 아니요. 네, 그렇습니다[i]. 아니요. 아니요. 네. 아니요. 네. 네. 네. 네. 네. I2P
샤레아자 네. 네. 아니요. 네. 아니요. 네. 네. 네. 아니요. 네. 네. 네. 네. 네, 그렇습니다[j]. 네. 아니요. G2, BT, eD2k, IRC

메모들

  1. ^ IRC 채팅이 아닌 클라이언트 간 직접 채팅을 말합니다.이 채팅은 대부분의 경우 임베디드 HTTP 브라우저 창을 통해 같은 응용 프로그램에서 사용할 수 있습니다.
  2. ^ UPnP 제어를 지원하는 라우터 또는 모뎀/게이트웨이 조합으로 포트 전송을 자동으로 설정합니다.
  3. ^ 신뢰할 수 있는 UDP 프로토콜은 사용자가 포트 포워딩을 수행할 수 없거나 수행할 수 없는 경우 NAT 간 전송(Firewall-to-Firewall 또는 "홀 펀칭"이라고도 함)을 제공합니다.
  4. ^ GWC는 트래픽 과부하 및 장기적인 신뢰성에 관한 문제를 안고 있었기 때문에 UDP 호스트 캐시가 권장되는 부트스트랩 방식이 되었습니다.단, 일부 GWC는 오래된 소프트웨어를 위해 사용 가능한 상태로 남아 있습니다.
  1. ^ 클라이언트 모드만, Ultrapeer 의존 리프로서.
  2. ^ a b 고차원이 아니므로 현재 형태로는 사용할 수 없습니다.
  3. ^ 버전 0.9.2.7
  4. ^ a b c LimeWire 및 gtk-gnutella에서만 지원되는 Kademlia 기반의 Mojito DHT 네트워크를 통해(버전 r15750 이후), 이는 대부분의 gnutella 클라이언트에서 지원되는 SHA-1 검색과는 완전히 다릅니다.
  5. ^ gtk-gnutella 버전 0.98.4 이후
  6. ^ a b LimeWire 클라이언트는 더 이상 사용할 수 없기 때문에 FrostWire와 같은 대부분의 LimeWire 코드 베이스를 공유하는 클라이언트가 대안을 제공할 수 있습니다.
  7. ^ a b 포트 트리거링 또는 방화벽에서 방화벽으로(FW2FW).
  8. ^ a b UPnP를 통한 자동 또는 LimeWire 방화벽 옵션에서의 수동 구성
  9. ^ SSH를 통해 터널링할 수 있는 SOCKS 프록시를 통해
  10. ^ 버전 2.2.4.0 이후
  • Morpheus는 크게 다르며 GnucDNA 엔진과는 완전히 독립된 코드를 가지고 있을 수 있습니다.Morpheus는 현대의 울트라 피어로서 기능할 수 있지만, 다른 GnucDNA 클라이언트는 기능할 수 없습니다.
  • Gnucleus와 Kiwi Alpha는 GnucDNA 엔진을 사용합니다.
  • BearShare 5.2 시리즈의 기능 제한 버전인 BearFlix는 이미지 또는 비디오만 검색할 수 있으며 공유 비디오는 비교적 짧은 길이로 제한됩니다.
  • giFTcurs, Apolon, FilePipe, giFToxic, giFTUI, giFTwin32, KCeasy, Poisen 및 Xfactor는 giFT 엔진의 GUI 프런트 엔드입니다.
  • etomi는 오래된 Shareaza 네트워크 코드를 사용합니다.
  • MP3 Rocket, 360Share, LemonWire, MP3Torpedo 및 DexterWire는 LimeWire의 변형입니다.
  • FrostWire(버전 4.21.8까지)는 LimeWire 4.18과 거의 동일하지만 5.00보다 이전 버전에서는 gnutella를 사용하지 않습니다.
  • Acquisition 및 Cabos는 LimeWire 엔진을 오버레이하는 사용자 지정 프론트 엔드입니다.
  • LimeWire Pirate Edition(5.6.2)은 출시되지 않은 LimeWire 5.6.1 alpha의 부활 버전이기 때문에 자동 업데이트(nags 포함)와 검색 및 다운로드 제거와 같은 핵심 기능을 비활성화하는 중앙 집중식 리모컨을 포함한 유사한 기능을 갖추고 있습니다.

그누텔라2

Gnutella2 프로토콜(종종 G2)은 이름에도 불구하고 Gnutella의 후속 프로토콜이거나 원래 Gnutella [28]프로젝트와 관련된 프로토콜이 아니라 원래 프로젝트와 분기하여 Gnutella 이름을 기반으로 하는 완전히 다른 프로토콜입니다.많은 Gnutella 개발자들의 단점은 Gnutella2의 이름이 업그레이드 또는 우월성을 전달하고, 이것이 불꽃전쟁으로 이어진다는 것입니다.G2 피어를 부트스트랩하기 위해 Gnutella 네트워크를 사용하는 것과 G2 프로토콜에 대한 문서화가 부족하다는 비판도 있었다.또한 초기 G2 클라이언트 중 하나인 Shareaza 클라이언트의 검색 재시도가 잦아지면 Gnutella [29]네트워크에 불필요한 부하가 걸릴 수 있습니다.

두 프로토콜 모두 2002년 분기 이후 상당한 변화를 겪어왔다.G2는 그누텔라에 비해 장단점이 있다.자주 인용되는 장점은 Gnutella2의 하이브리드 검색이 원래 Gnutella의 쿼리 플래딩보다 더 효율적이라는 것입니다.그러나 Gnutella는 2002년 Query Routing을 시작으로 쿼리 플래딩을 보다 효율적인 검색 방법으로 대체했습니다.이것은 2001년 라임와이어 [30][31][32]개발자들에 의해 제안되었다.Gnutella의 장점은 [3]수백만에 달하는 대규모 사용자 기반입니다.G2 네트워크는 대략적으로 크기[33]작습니다.현재 형태의 프로토콜을 비교하는 것은 어렵습니다.어느 네트워크에서도 클라이언트의 선택은 최종 사용자에게도 같은 영향을 미칠 수 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Kushner, David (January 13, 2004). "The World's Most Dangerous Geek". Rolling Stone. Archived from the original on June 30, 2012. Retrieved May 10, 2011.
  2. ^ Slick News - eDonkey2000, Wayback Machine 2018-01-29 아카이브 완료, 2005년 6월 2일 Thomas Menecke for Slyck.com.
  3. ^ a b 2층 Gnutella 오버레이의 장기적인 진화에 대하여Rasti, Stutzbach, Rejaie, 2006.그림 2a를 참조해 주세요.
  4. ^ Ars Technica Study: BitTorrent는 큰 성장을 전망.LimeWire는 여전히 최고의 P2P 앱 Eric Bangeman, 2008년 4월 21일.
  5. ^ "AOL's Nullsoft creates software for swapping MP3s". CNET. Retrieved 2017-04-13.
  6. ^ AfterDawn.com. "Gnutella". AfterDawn. Retrieved 2017-04-13.
  7. ^ "Open Source Napster: Gnutella - Slashdot". slashdot.org.
  8. ^ "CNN - Breaking News, Latest News and Videos". CNN.
  9. ^ "Regarding Gnutella - GNU Project - Free Software Foundation".
  10. ^ Schell, Bernadette Hlubik; Schell, Bernadette; Martin, Clemens (2006-09-05). Webster's New World Hacker Dictionary. John Wiley & Sons. ISBN 978-0-470-04752-1.
  11. ^ "Programmers help "Napster" clones take off". CNET. Retrieved 2017-04-13.
  12. ^ "Gnutella pioneer Gene Kan dies". CNET. Retrieved 2017-04-13.
  13. ^ "gnubile file listing". stearns.org. Retrieved 2017-04-13.
  14. ^ "The source code for Gnubile". underpop.free.fr. Retrieved 2017-04-13.
  15. ^ ftp://ftp.cs.umn.edu/pub/netbsd/NetBSD-current/pkgsrc/net/gnubile/README.html[영구 데드링크]
  16. ^ "Regarding Gnutella (www.gnu.org)".
  17. ^ Chloe Albanesius (18 July 2011). "Indie Labels Sue LimeWire Over Failed Copyright Deal". PC Magazine. Ziff-Davis. Retrieved 19 March 2012. In the wake of the LimeWire shutdown, the percentage of U.S. Internet users who access P2P file-sharing services dropped about 7 percent from [its] all-time high in 2007...
  18. ^ Chloe Albanesius (9 November 2010). "Report: LimeWire 'Resurrected' by Secret Dev Team". PC Magazine. Ziff-Davis. Retrieved 19 March 2012.
  19. ^ Moon, Jongbae; Cho, Yongyun (2011). "A point-based inventive system to prevent free-riding on p2p network environments". Computational Science and Its Applications - ICCSA 2011 Proceedings. Springer. p. 464. ISBN 978-3-642-21897-2.
  20. ^ "Gnutella Protocol Development". rfc-gnutella.sourceforge.net. Retrieved 2017-04-13.
  21. ^ Gnutella가 확장 불가능한 이유 아니요, 정말이에요.2001년 2월
  22. ^ Berkes, Jem (April 9, 2003). "Decentralized Peer-to-Peer Network Architecture: Gnutella and Freenet" (PDF). berkes.ca/. University of Manitoba. Archived from the original (PDF) on August 8, 2017. Retrieved October 26, 2019.
  23. ^ 염색해, 마크맥도날드, 릭Rufi, Antoon W., '네트워크 기초', Cisco Networking Academy, Cisco Press, Ch 3. p91
  24. ^ a b 염색해, 마크맥도날드, 릭Rufi, Antoon W., '네트워크 기초', Cisco Networking Academy, Cisco Press, Ch 3. p90
  25. ^ "Gnutella Protocol Development". rfc-gnutella.sourceforge.net. Retrieved 2022-07-21.
  26. ^ "CitrixWire". BrotherSoft. Archived from the original on 2017-04-14. Retrieved 2017-04-13.
  27. ^ "Shareaza download page on sourceforge Web site". SourceForge. Retrieved 2019-07-06.
  28. ^ Gnutella vs. Gnutella2, Part 2 Wayback Machine Thomas Menecke for Slyck.com, 2003년 2월 25일, 2012-07-28 아카이브 완료.
  29. ^ Gnutella vs. Gnutella2, Part 1 2016-03-05 Wayback Machine Thomas Menecke for Slyck.com, 2003년 2월 25일 아카이브 완료
  30. ^ Wayback Machine Dimitrios Tsoumakos, 2003에서 아카이브된 피어 투 피어 검색 방법 비교 2007-09-26
  31. ^ Gnutella 네트워크 제안용 쿼리 라우팅 Christopher Rohrs, 2001-12-18
  32. ^ Gnutella Network 1.0 Christopher Rohrs, 2002-05-16 쿼리 라우팅
  33. ^ G2 네트워크 통계 인구 2010년 1월 200,000명까지
  • 염색해, 마크맥도날드, 릭Rufi, Antoon W., '네트워크 기초', Cisco Networking Academy, Cisco Press, Ch 3. p91
  • 염색해, 마크맥도날드, 릭Rufi, Antoon W., '네트워크 기초', Cisco Networking Academy, Cisco Press, Ch 3. p90

외부 링크