또 그 시기가 돌아왔습니다! 우리는 I2P의 특정 측면을 한 단계 더 진전시키기 위해 이에 집중하는 여름 개발 프로그램을 시작합니다. 앞으로 석 달 동안, 신규 기여자와 기존 커뮤니티 구성원 모두가 작업을 하나 선택해 즐겁게 참여하도록 독려하겠습니다!
지난해 우리는 API 도구를 개선하고 I2P 위에서 실행되는 애플리케이션의 개선에 공을 들임으로써, 사용자와 개발자가 I2P를 활용하도록 돕는 데 집중했습니다. 올해는 모두에게 영향을 미치는 요소인 성능에 주력해 사용자 경험을 향상시키고자 합니다.
어니언 라우팅 네트워크는 종종 “저지연” 네트워크라고 불리지만, 추가적인 컴퓨터를 통해 트래픽을 라우팅하면 상당한 오버헤드가 발생합니다. I2P의 단방향 tunnel 설계 때문에 기본적으로 두 개의 Destination(I2P 목적지) 간 왕복에는 12명의 참여자가 관여합니다! 이러한 참여자들의 성능을 개선하면 종단 간 연결의 지연을 줄이고 네트워크 전반에서 tunnel의 품질을 향상시키는 데 도움이 됩니다.
속도를 더!
올해 우리의 개발 프로그램은 네 가지 구성 요소로 구성될 것입니다:
Measure
기준선이 없으면 성능이 향상되었는지 알 수 없습니다! 우리는 프라이버시를 보호하는 방식으로 I2P에 대한 사용 및 성능 데이터를 수집하기 위한 메트릭 시스템을 만들고, 다양한 벤치마킹 도구를 I2P 상에서 실행되도록 포팅할 예정입니다(예: iperf3).
측정
예를 들어 tunnels에 참여할 때의 오버헤드를 줄이는 등, 기존 코드의 성능을 개선할 수 있는 여지가 많습니다. 우리는 암호학적 기본 구성요소, 네트워크 트랜스포트(링크 계층과 종단 간 모두), 피어 프로파일링, 그리고 tunnel 경로 선택에서의 잠재적 개선 사항을 검토할 예정입니다.
최적화
I2P 네트워크의 확장성을 개선하기 위한 여러 건의 열려 있는 제안(예: Prop115, Prop123, Prop124, Prop125, Prop138, Prop140)이 있습니다. 우리는 이러한 제안들에 대해 작업을 진행하고, 최종 확정된 것들은 다양한 네트워크 router들에 구현을 시작할 것입니다.
진전
I2P는 그 위에서 동작하는 인터넷과 마찬가지로 패킷 교환 네트워크입니다. 이는 성능과 프라이버시 모두를 위해 패킷을 라우팅하는 방식에서 상당한 유연성을 제공합니다. 이러한 유연성의 대부분은 아직 탐구되지 않았습니다! 우리는 대역폭을 개선하기 위한 다양한 clearnet(일반 인터넷) 기술을 I2P에 어떻게 적용할 수 있는지, 그리고 그것들이 네트워크 참여자의 프라이버시에 어떤 영향을 미칠 수 있는지에 대한 연구를 장려하고자 합니다.
Take part in Summer Dev!
이 분야에서 우리가 해내고 싶은 일들에 대한 아이디어가 아직 많이 있습니다. 프라이버시와 익명성 소프트웨어를 개발하거나 개선하고, 프로토콜(암호학적이든 아니든)을 설계하거나, 향후 아이디어를 연구하는 데 관심이 있다면 IRC 또는 Twitter에서 저희와 대화해 보세요! 저희는 커뮤니티에 새로 오시는 분들을 언제나 환영합니다. 또한 참여하는 모든 신규 기여자에게 I2P 스티커를 보내드릴 예정입니다!
진행하는 대로 여기에도 계속 게시하겠지만, Twitter에서 #I2PSummer 해시태그로 우리의 진행 상황을 팔로우하고 여러분의 아이디어와 작업도 공유할 수 있습니다. 여름을 맞이합시다!