여러분, 현황 업데이트할 시간이에요

색인:

  1. Net status
  2. Streaming lib
  3. 0.4.2
  4. Addressbook.py 0.3.1
  5. ???

1) 네트워크 상태

지난주 23일간 꽤 혼잡했던 기간 이후, 네트워크는 정상 궤도로 돌아왔다(아마도 BitTorrent 포트에 대한 부하 테스트를 중단했기 때문일 듯 ;)). 그 이후로 네트워크는 꽤 안정적으로 동작하고 있다 - 3040일 이상 계속 가동 중인 routers도 몇 대 있지만, IRC 연결은 여전히 간헐적으로 끊김이 있었다. 한편…

2) 스트리밍 라이브러리

지난 일주일가량 우리는 네트워크에서 streaming 라이브러리에 대한 실환경 테스트를 훨씬 더 많이 진행해 왔고, 결과가 꽤 좋아 보였습니다. Duck은 그것으로 사람들이 그의 IRC 서버에 접속할 수 있는 tunnel을 구성했으며, 며칠 동안 불필요한 연결 끊김이 두 번뿐이었고(그 덕분에 몇몇 버그를 추적하는 데 도움이 되었습니다). 또한 사람들이 시험해 볼 수 있도록 squid outproxy(외부 프록시)를 대상으로 하는 i2ptunnel 인스턴스도 운영해 왔고, 기존 라이브러리와 나란히(동시에) 운용하며 비교했을 때 처리량, 지연시간, 신뢰성이 모두 크게 향상되었습니다.

전반적으로 streaming lib(스트리밍 라이브러리)는 첫 릴리스를 내기에 충분히 괜찮은 상태로 보입니다. 아직 마무리되지 않은 부분이 몇 가지 남아 있지만, 이전 라이브러리에 비해 상당한 개선이 되었고, 그리고 나중에 업그레이드할 이유도 남겨둬야 하잖아요, 그렇죠? ;)

사실, 약간 놀리려는 마음에서(아니면 아마도 당신이 몇 가지 해결책을 떠올리도록 자극하려는 의미에서) 말씀드리자면, streaming lib(스트리밍 라이브러리)에 앞으로 도입될 것으로 보이는 주요 항목은 다음과 같습니다: - 스트림 전반에 걸쳐 혼잡 및 RTT(왕복 지연 시간) 정보를 공유하는 몇 가지 알고리즘(타깃 목적지별? 소스 목적지별? 모든 로컬 목적지 전체에 대해?) - 대화형 스트림에 대한 추가 최적화(현재 구현의 초점은 대부분 대량 스트림에 맞춰져 있음) - I2PTunnel에서 새로운 streaming lib의 기능을 보다 명시적으로 활용하여 tunnel당 오버헤드를 줄이는 것. - 클라이언트 단의 대역폭 제한(스트림에서 한 방향 또는 양방향, 또는 여러 스트림 간에 공유될 수도 있음). 물론 이는 router의 전체 대역폭 제한에 추가되는 것입니다. - 목적지가 수락하거나 생성하는 스트림 수를 조절하기 위한 다양한 제어(기본적인 코드는 있으나 대부분 비활성화됨) - 액세스 제어 목록(특정한, 이미 알려진 다른 목적지로/로부터의 스트림만 허용) - 웹 제어와 다양한 스트림의 상태 모니터링, 그리고 명시적으로 닫거나 속도를 제한할 수 있는 기능

여러분도 아마 다른 것들을 더 생각해낼 수 있겠지만, 그건 제가 streaming lib(스트리밍 라이브러리)에 반영되면 좋겠는 것들을 간단히 적어본 목록일 뿐이고, 0.4.2 릴리스를 미루면서까지 기다리진 않을 겁니다. 그중 어느 것에라도 관심 있는 분이 계시면 꼭 알려 주세요!

3) 0.4.2

그렇다면 streaming lib 상태가 괜찮다면, 릴리스는 언제 하게 되나요? 현재 계획은 이번 주말까지 출시하는 것이고, 빠르면 내일일 수도 있습니다. 먼저 정리하고 싶은 다른 몇 가지 일이 진행 중이고, 물론 그것들도 테스트가 필요하고, 어쩌구 저쩌구.

0.4.2 릴리스에서의 가장 큰 변화는 물론 새로운 스트리밍 라이브러리입니다. API 관점에서는 이전 라이브러리와 동일합니다 - I2PTunnel과 SAM 스트림은 자동으로 이를 사용하지만, 패킷 관점에서는 하위 호환되지 않습니다. 이는 흥미로운 딜레마를 남깁니다 - I2P 자체에는 0.4.2를 필수 업그레이드로 만들어야 한다고 요구하는 것이 없지만, 업그레이드하지 않는 사람들은 I2PTunnel을 사용할 수 없게 됩니다 - eepsites(I2P Sites)도, IRC도, outproxy(외부 프록시)도, 이메일도 사용할 수 없습니다. 업그레이드를 강제해서 오랫동안 사용해 온 사용자들을 소외시키고 싶지는 않지만, 그렇다고 유용한 것들이 모두 작동하지 않게 되어 그들을 소외시키고 싶지도 않습니다 ;)

저는 어느 쪽이든 설득될 준비가 되어 있어요 - 코드 한 줄만 바꾸면 0.4.2 릴리스가 이전 릴리스들과 통신하지 않도록 만드는 건 충분히 쉽고, 아니면 그냥 놔두고 사람들이 모든 게 망가졌다고 웹사이트나 포럼에 불평하러 올 때마다 업그레이드하게 둘 수도 있죠. 여러분은 어떻게 생각하세요?

4) AddressBook.py 0.3.1

Ragnarok이 자신의 주소록 앱을 위한 새 패치 릴리스를 배포했습니다 - 자세한 정보는 http://ragnarok.i2p/를 참고하세요 (아니면 회의에서 직접 업데이트를 제공해 줄 수도 있겠죠?)

5) ???

활동이 훨씬 더 활발해졌다는 건 알고 있어요—비트토렌트 포트, susimail, slacker의 새로운 호스팅 서비스 등을 포함해서요. 추가로 논의할 사항이 있나요? 그렇다면 평소의 IRC 서버에 있는 #i2p에서 약 30분 후 열리는 미팅에 들러 주세요!

=jr