eMule

eMule
eMule
EMule mascot.svg
Emule screenshot.png
eMule 0.50a
원저작자메르쿠르
개발자eMule-팀
초기 릴리즈2002년 5월 13일, 20년 전(2002-05-13)
최종 릴리즈0.50a(2010년 4월 7일, 12년 전(2010-04-07))[1] [±]
저장소
기입처C++[2]
운영 체제창문들
이용가능기간:43개[3] 언어
유형피어 투 피어 파일 공유
면허증.GNU GPLv2
웹 사이트에뮬프로젝트그물
eMule 커뮤니티
개발자폭스88
안정된 릴리스
2021년 11월 24일 0.60d, 8개월 전(2021-11-24)[4]
저장소github.com/irwir/eMule
웹 사이트포럼 커뮤니티 스레드

eMuleMicrosoft Windows용 무료 피어피어 파일 공유 응용 프로그램입니다.2002년 5월에 eDonkey2000의 대안으로 시작한 eMule은 현재 eDonkey 네트워크와 Kad 네트워크 양쪽에 접속하고 있습니다.eMule의 특징적인 기능은 클라이언트 노드 간의 소스 직접 교환, 손상된 다운로드의 신속한 복구, 빈번한 업로더에 대한 보상을 위한 크레디트 시스템 사용입니다.또한 eMule은 zlib 압축된 형태로 데이터를 전송하여 대역폭을 절약한다.

eMule은 Microsoft Foundation Class를 사용하여 C++로 코딩됩니다.2002년 7월부터 eMule은 GNU General Public License로 출시된 무료 소프트웨어입니다.그 인기에 힘입어 eMule의 코드베이스는 크로스 플랫폼클라이언트 aMule, JMule, xMule의 기반으로 사용되며 많은 eMule 모듈(원래 eMule의 변경)이 인터넷에 공개되었습니다.

2017년 8월 현재, SourceForge에서 6억 8500만 [5]건 이상의 다운로드로 네 번째로 많이 다운로드된 프로젝트입니다.

개발은 나중에 커뮤니티에 의해 eMule Community로 재개되었습니다.최신 안정 버전은 0.60d입니다.[4]

역사

eMule 프로젝트는 2002년 5월 13일 오리지널 eDonkey2000 클라이언트에 불만을 품은 Hendrik Breitkreuz(일명 Merkur)에 의해 시작되었습니다.시간이 지남에 따라 더 많은 개발자들이 이 노력에 동참했다.소스는 버전 0.02로 처음 출시되었으며 2002년 7월 6일 Source Forge에 게시되었습니다.

eMule은 2002년 8월 4일 버전 0.05a에서 바이너리로 처음 출시되었습니다.'크레딧 제도'는 2002년 9월 14일 0.19a 버전에서 처음으로 시행되었다.eMule 프로젝트 웹사이트는 2002년 12월 8일에 시작되었습니다.

Kad 네트워크의 노드

eMule의 현재 버전(v0.40+)에서는 Kad 네트워크에 대한 지원이 추가되었습니다.이 네트워크에는 Kademlia 프로토콜이 구현되어 있습니다.이것은 eDonkey 네트워크처럼 중앙 서버에 의존하지 않지만 분산 해시 테이블의 구현입니다.

또한 최근 버전에는 Unicode를 사용하여 검색할 수 있는 기능, 라틴어 이외의 알파벳으로 파일을 검색할 수 있는 기능 및 eDonkey 네트워크에서 완료되지 않은 파일의 완전한 소스를 가진 파일을 서버에서 검색할 수 있는 기능이 추가되었습니다.

새 버전에서는 "Bad source list"가 추가되었습니다.접속이 1회 실패하면, 애플리케이션은 이 리스트에 IP 주소를 추가합니다.「부정한 송신원목록」에 IP를 추가하면, 애플리케이션은 이 IP를 「데드」IP로 취급합니다.사용할 수 없는 IP는 15~45분 동안 금지됩니다.일부 사용자는 활성 소스가 손실되어 다운로드 속도가 느려진다고 불평했습니다.

기타 최근 추가된 기능으로는 제한된 권한으로 사용자 계정에서 eMule을 실행할 수 있는 기능(따라서 보안 강화), 지능형 손상 처리(손상된 청크를 완전히 다시 다운로드할 필요가 없음) 등이 있습니다.

0.46b 버전에서는 "eMule collection" 파일의 생성 및 관리가 추가되었으며, 여기에는 세트로 다운로드되는 파일에 대한 링크가 포함되어 있습니다.

2007년부터 많은 ISP가 통상의 P2P 포토에 대역폭 슬롯링을 사용하고 있기 때문에 퍼포먼스가 [6]저하되고 있습니다.0.47b 버전은 프로토콜 난독화를 추가하며 eMule은 시작 마법사에서 두 개의 포트 번호를 자동으로 선택합니다.

기본 개념

v.048a의 파일 전송 통계 정보

eMule을 사용하여 공유되는 각 파일은 MD4 알고리즘을 사용하여 별도의 9500 KiB 청크로 구성된 해시 목록으로 해시됩니다.최상위 MD4 해시, 파일 크기, 파일 이름 및 비트레이트 및 코덱 등의 몇 가지 세컨더리 검색 속성은 eD2000 서버서버리스 Kad 네트워크에 저장됩니다.

eMule v0.50a에서 매개 변수 검색

사용자는 서버/카드에서 파일 이름을 검색할 수 있으며 파일 이름과 파일의 최상위 MD4 해시 및 다운로드에 추가할 수 있는 파일 크기로 구성된 고유 식별자가 표시됩니다.그런 다음 클라이언트는 서버에 다른 클라이언트가 어디에서 해시를 사용하고 있는지 묻습니다.서버는 파일을 공유하는 클라이언트의 위치를 나타내는 일련의 IP/포트를 반환합니다.

그런 다음 eMule이 피어에 파일을 요구합니다.eMule은 업로드 슬롯을 사용할 수 있을 때까지 큐에 들어갑니다.

9,728,000 바이트(9500 KiB)의 완전한 청크가 다운로드 및 확인되면 이 데이터도 다운로더에 의해 공유되므로 다른 사람도 파일을 다운로드할 수 있습니다.

클라이언트가 같은 파일을 공유하고 있는 다른 클라이언트를 알고 있을 수도 있습니다.이 경우 클라이언트 간에 소스 교환이 이루어집니다.기존의 피어 교환은 피어 간에 직접 이루어집니다.

새로운 버전의 eMule은 AIH(Advanced Intelligent Corruption Handling)를 지원합니다.이는 eMule의 부패 처리를 BitTorrent와 경쟁적으로 만들기 위한 것입니다.180KiB 서브청크별로 SHA-1 해시를 계산하여 SHA-1 해시 트리 전체를 형성한다.AIH 는, 피어 투 피어 송신원교환만으로 처리됩니다.eMule은 SHA-1 해시에 대해 10개의 동의 피어가 필요하므로 일반적으로 희귀 파일은 AIH의 혜택을 받지 않습니다.

낮은 아이디

방화벽이 설치되어 있거나 포트가 올바르게 전송되지 않은NAT 디바이스의 배후에 있거나 IP 주소가 제로(예를 들어 123.45.67.0)[7]로 끝나는 사용자는 서버로부터 「낮은 ID」를 취득합니다.아직 업로드 및 다운로드가 가능하지만 다른 클라이언트가 서버 또는 기타 kad 클라이언트의 도움을 받아야 합니다.업로드 큐 앞에 있음을 알릴 수 없으므로 업로드 슬롯이 사용 가능한 경우 피어를 폴링해야 합니다.다른 Low ID 클라이언트에는 접속할 수 없기 때문에 High ID로 표시할 수 있는 클라이언트는 40~60% 뿐입니다.IP/포트는 다른 피어 간에 교환되지 않으므로 eMule의 순수 P2P 소스 교환을 통해 소스를 찾을 수 있는 가능성을 제한합니다.

또한 Low ID 클라이언트는 Lowidcallback으로 인해 High ID 클라이언트보다 서버상의 데이터를 훨씬 더 많이 소비합니다.또한 Low ID(hotel room, job)에서 동작하도록 강요된 MorphXT나 Xtreme 의 리셀러 모드를 사용하는 리셀러 또는 헤비 업로더도 서버가 각 클라이언트의 접속 전송에 제한을 두는 것처럼 보여 업로드 우선순위(특히 파워셰어)를 거의 제어할 수 없다는 것을 알게 되어 업로드를 q로 전환합니다.포워딩과 오픈슬롯을 최초로 찾을 수 있는 경합 상황에 대처합니다.

크레디트 시스템

크레딧은 글로벌하지 않고 2개의 특정 클라이언트 간에 교환됩니다.크레딧 시스템은 네트워크에 기여하는 사용자, 즉 다른 클라이언트에 업로드하는 사용자에게 보상하기 위해 사용됩니다.eMule의 완전 큐시스템은 사용자가 큐에서 보낸 대기시간에 기초하고 있습니다.크레딧 시스템은 두 클라이언트 간의 업로드 및 다운로드를 고려함으로써 이 대기 시간에 대한 주요 수정자를 제공합니다.사용자가 클라이언트에 더 많이 업로드할수록 이 클라이언트의 대기열에 더 빨리 진입합니다.수식자는 두 클라이언트 간에 전송된 데이터의 양으로부터 계산됩니다.사용된 값은 클라이언트의 세부 정보 대화 상자에서 볼 수 있습니다.이 정보를 표시하려면 임의의 사용자를 오른쪽 클릭하여 [View Details]를 선택합니다.

당신에게 업로드하는 모든 클라이언트는 신용 시스템에 의해 보상됩니다.고객이 신용 시스템을 지원하는지 여부는 중요하지 않습니다.지원되지 않는 클라이언트는 업로드 시 크레딧을 부여하지 않습니다.크레딧은 clients.met 파일에 저장됩니다.고유 사용자 해시는 클라이언트를 식별하기 위해 사용됩니다.당신의 신용은 당신에게 신용을 빚진 고객에 의해 저장됩니다.이렇게 하면 크레딧이 위조되는 것을 막을 수 있습니다.자신의 크레딧은 표시할 수 없습니다.

공식 신용 시스템의 계산식은 다음과 [10]같이 두 가지 비율로 구성됩니다.

그런 다음 두 비율을 비교하고 낮은 비율을 수식자로 사용합니다.몇 가지 조건이 있습니다.

  • Uploaded Total이 1MB 미만일 경우 수식자는 1로 유지됩니다.
  • 클라이언트가 데이터를 업로드하고 다운로드하지 않으면 수식자는 10으로 고정됩니다.
  • 수식자는 1 ~10까지만 지정할 수 있습니다.

이 규칙에 대한 예외는 클라이언트의 친구 목록에 추가된 후 피어에 "친구 슬롯"이 할당된 경우에만 적용됩니다.그러면 피어가 신용 등급에 관계없이 다운로드를 시작할 수 있도록 해당 피어에 예약된 업로드 슬롯이 자동으로 할당됩니다.업로드 [11]차별과 같은 어떠한 형태의 남용도 방지하기 위해 친구 슬롯을 하나만 예약할 수 있습니다.

다른 P2P 애플리케이션과 비교한eMule

eMule은 eD2k 프로토콜과 그 확장의[by whom?] 가장 완전한 구현으로 알려져 있습니다.eMule은 AIH를 지원하여 BitTorrent와 경쟁적으로 파손 처리를 하고 있습니다.eMule은 소스 교환도 지원하므로 서버 및 Kad의 부하를 크게 줄일 수 있습니다.높은 ID와 서버 및/또는 Kad에 의해 미리 취득된 소싱이 잘 된 다운로드를 통해 eMule은 eD2k 및 Kad와의 연결이 끊긴 후에도 이러한 파일의 피어 소스를 더 오래 독립적으로 유지할 수 있습니다.

eMule 모듈

인기 있는 오픈 소스 프로그램으로서, eMule에는 많은 변형이 있으며, 보통 mods라고 불립니다.일부 모드는 공식 eMule 버전에서 포크로 시작되어 새로운 공식 버전을 수정하는 대신 독립적으로 개발되었습니다.이러한 유형의 모드의 예로는 구식의 eMule Plus가 있습니다.eMule Plus는 첫 공식 버전인 v0.30이 출시되기 전에 출시되었기 때문에 eMule Plus는 프로젝트 개발이 약 4년 동안 중단되었기 때문에 이 기능을 지원하지 않습니다.다른 최신 모드는 공식 eMule 릴리스를 따르고 공식 버전의 새로운 릴리스를 기반으로 자체 릴리스를 만듭니다.분산형 모드는 GNU General Public License에 의해 소스 코드를 공개적으로 공유해야 하기 때문에 mod 개발자에 의해 작성된 유용한 기능은 공식 버전에 빠르게 통합될 수 있습니다.

가짜 eMule 사이트 및 악성 프로그램

eMule의 인기와 오픈 소스 특성으로 인해 일부 서드파티에서 수정된 버전을 만들었는데, 여기에는 스파이웨어 및 기타 악성 프로그램들이 자주 포함되어 있습니다.일부 가짜 사이트들은 신용카드 정보를 요구하거나 사용자에게 유료 회원 가입을 요구한다.공식 eMule은 무료이며 이러한 정보를 요구하지 않습니다.

이러한 버전은 보통 합법적인 [12][13]사이트에 게시되는 순환 광고를 통해 확인할 수 있습니다.

eMule 클라이언트의 중국어 모드

VeryCD의 easyMule은 중국 사용자들에게 인기 있는 eMule 클라이언트입니다.인터페이스는 단순하고 표준 eMule 클라이언트에서 사용할 수 있는 고급 설정은 없습니다.버전 1.1에서는 VeryCD 데이터베이스 검색만 지원하지만 외부 eD2k 링크는 허용됩니다.일부에서는 VeryCD의 잘못된 이름인 "Dianlv"(중국명: Dianlv; 병음:Diann Li; light. 'Electronic Donkey; 일반적으로 eDonkey 또는 eMule의 중국어 이름) 및 사이트 emule.org.cn.는 "Dianlv (eMule) Chinese Site"(Dianlv (eMule)[14][15]라는 이름입니다.

커뮤니티 버전

2017년 7월 29일 공식 포럼 이용자들이 관리하는 eMule의[16] "커뮤니티 버전"이 출시되었습니다.이 버전은 GitHub 저장소에서 다운로드할 수 있으며 최신 정식 릴리스 또는 베타 버전을 기반으로 하지만 커뮤니티에 의해 만들어진 추가 기능과 버그 수정이 포함되어 있어 보다 최신 [17]버전을 우선합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "The eMule Project at SourceForge.net". eMule.SourceForge.net. 2010-04-07. Retrieved 2010-07-11.
  2. ^ Lextrait, Vincent (January 2010). "The Programming Languages Beacon, v10.0". Archived from the original on 30 May 2012. Retrieved 14 March 2010.
  3. ^ eMule 0.50a 출처: /srchybrid/lang/
  4. ^ a b "Releases". 2021-05-13. Retrieved 2021-06-01.
  5. ^ "Top Project Listings". sourceforge.net.
  6. ^ "Archived copy". Archived from the original on 2009-09-16. Retrieved 2009-08-08.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  7. ^ forum.emule-project.net Low ID 계산 방법
  8. ^ "Low Id clients increasing - Official eMule-Board". emule-project.net.
  9. ^ RazorBack의 Low ID 및 High ID 클라이언트의 직접 및 부수 업스트림 대역폭 소비에 대한 forum.emule-project.net의 기술 게시물( 예에서는 오버헤드가 20배 증가)
  10. ^ "eMule-Project.net - Official eMule Homepage. Downloads, Help, Docu, News..." emule-project.net.
  11. ^ "eMule-Project.net - Official eMule Homepage. Downloads, Help, Docu, News..." www.emule-project.net.
  12. ^ "The Spyware Infested Filesharing Programs List". 10 November 2006. Archived from the original on 26 February 2009. Retrieved 2009-03-11.
  13. ^ "Fraudulent sites to eMule". 11 December 2008. Retrieved 2009-03-16.
  14. ^ 陈佼"每周一蛋疼":诚恳建议"电驴"改名 (in Chinese). cnBeta. Archived from the original on 2010-07-20. Retrieved 2010-07-20.
  15. ^ "VeryCD对eMule/电驴/电骡/VeryCD/EasyMule等词的混淆性宣传分析与证据" (in Chinese). Archived from the original on 2010-07-05. Retrieved 2009-09-17.
  16. ^ "Release eMule_v0.50b-unofficial: .: Fixed: minimize to tray after display scaling change". irwir/eMule. 29 July 2017. Retrieved 7 April 2021.
  17. ^ "eMule-Project.net". Archived from the original on 9 August 2020. Retrieved 7 April 2021.

외부 링크