快速回顾

出席: jrand0m, dm, thecrypto, sisr, co, godmode0, mihi

会议记录

[22:59] <dm> 那这次会议到底是什么时候? [23:00] <jrand0m> 现在。 [23:00] <jrand0m> 0) 欢迎 [63] [23:00] <jrand0m> 1) 路线图: (Link: http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap)http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap [23:00] <jrand0m> 2) 0.2 待办: [23:00] <jrand0m> - 长时间通信测试 [23:00] <jrand0m> - Lease 重建相关的 bug [23:00] <jrand0m> 3) prng(耶) [23:00] <jrand0m> 4) 应用 / 问题 / 等等 [23:00] <jrand0m> 0) 嗨 [23:00] <jrand0m> 抱歉我犯傻,忘了夏令时 [23:00] <jrand0m> 欢迎来到第 63 次会议 [23:01] *** darl_mcbride 已离开 #iip-dev [23:01] <jrand0m> 1) 路线图 [23:01] <jrand0m> 路线图在上面的 URL,必要时会更新。 [23:02] <jrand0m> 是的,日期比以往更靠后,这主要反映了:1)我不想发布糟糕的软件 2)我之前的估算忽略了细节 [23:02] <jrand0m> 但当然,如路线图所说,“如果你参与进来帮忙写些代码,进度会更快” :) [23:03] <jrand0m> 0.2 本身将带来真正有用的功能 [23:03] *** 签出:thecrypto(Ping 超时) [23:03] <dm> 好消息。 [23:03] <jrand0m> 好,项目 2)0.2 待办 [23:04] <jrand0m> 过去一周左右我一直在对 0.2 版本做 QA,定位一些难以发现的 bug [23:04] <jrand0m> 不过我想我几分钟前找到了根源,目前正在后台跑测试验证。 [23:04] <jrand0m> (问题在于使用几个小时后,与某个 router 或某个 destination 的通信会失败) [23:05] <dm> 你用的是什么测试架构?目前全是本地吗? [23:05] <jrand0m> 本地三个 router,远端三个 router [23:05] <sisr> 0.2 是否包含这样一个功能:当某个 router 在一定次数内无法联系到时就停止尝试? [23:05] <jrand0m> 是的 [23:06] <jrand0m> 每个 router 每隔 N(目前为 2)分钟向它已知的所有节点发布自己的联系信息。 如果某个 router 在每 2.5*N 分钟内没有收到新的联系信息,就会丢弃对该节点的引用。 [23:06] <jrand0m> 不过,如果它想要找到一个新的 router(即通过一个 Lease(I2P 的“租约”)获得了对它的引用),它可以随时进行搜索找到它 [23:07] <jrand0m> 然而,在本地同时跑三个 router 再加两个活跃的 destination,呃,对 CPU 压力山大。 [23:08] <jrand0m> 我加了个挺糟糕的功能,我自己都觉得不太光彩,但它允许你通过添加一个环境变量,基本上关闭 ElG 和 AES 加密。 这只在和同样关闭加密的其他节点通信时才有用(否则你没法互相通信) [23:09] <jrand0m> 好的,0.2 待办就这些 [23:09] <dm> 是为了你的测试吗? [23:09] <jrand0m> 对,基本是。 [23:09] <jrand0m> (以及/或者给其他做自测、添加新功能的人用 / 等等 ;) [23:10] <jrand0m> 理论上,两个 destination(比如 atalk)也可以设置 -Di2p.encryption=off 标志来工作(不过就没有端到端加密了) [23:10] *** thecrypto (~thecrypto@anon.iip) 加入了频道 #iip-dev [23:10] <jrand0m> 但我认为这是个坏主意。 [23:11] <jrand0m> 一旦 AES+SessionTag 的方案准备就绪,这个功能肯定会被移除 [23:11] <jrand0m> 好,3)prng [23:11] <sisr> 有建议的最低 CPU 和内存需求吗? [23:12] <sisr> 抱歉 [23:12] <jrand0m> 嗯,内存占用很小(Sun 的 JVM 需要 7-10Mb,kaffe 16-22Mb) [23:13] <jrand0m> 目前 CPU 肯定是瓶颈,不过我没有很多不同的机器可以测试 ;) [23:14] <jrand0m> 这么说吧:在同一台机器上跑三个 router 和两个指向外部 Squid 的 i2ptunnel,基本把我的 P4 1.7Ghz 盒子给榨干了 [23:14] <thecrypto> 如果你想让我说点什么h,我可能会更活跃些。 [23:14] <dm> 好啊,说点什么吧。 [23:15] <jrand0m> 哈喽 thecrypto :) [23:15] <sisr> 为什么会有人在同一台电脑上跑多个 router? [23:15] <jrand0m> sisr> 只有开发者才会这么做。 [23:16] <sisr> 好的,那么 CPU 应该不至于太糟,我们这几周可以跑一些测试 [23:16] <jrand0m> 对 [23:17] <jrand0m> 好,prng 的问题结果是 kaffe 里的一个 bug,现在已经修复了。 [23:17] <jrand0m> 这样一来,我们就不必非得弄一个 yarrow 的实现了,因为它们使用的是 sha1prng [23:18] <jrand0m> (不过如果以后能有也不错) [23:18] <jrand0m> 好,4)应用 / 问题 / 等等 [23:18] <jrand0m> 我没有别的要说的,所以……嗨 :) [23:19] <jrand0m> 还有其他问题 / 想法 / 评论吗? [23:19] <sisr> 命名服务器进展如何?我很久没见到 co 了 [23:19] *** co (anon@anon.iip) 加入了频道 #iip-dev [23:19] <jrand0m> 说曹操曹操到 [23:19] <jrand0m> 嗨,co [23:19] <sisr> 哈哈 [23:19] <co> 你好。 [23:20] <jrand0m> 我们已经到了议程上除了提问外没啥可说的阶段了 [23:20] <jrand0m> [23:19] <sisr> 命名服务器进展如何?我很久没见到 co 了 [23:20] <jrand0m> [23:19] *** co (anon@anon.iip) 加入了频道 #iip-dev [23:20] <jrand0m> 然后就发生了这事儿 :) [23:20] *** 签出:godmode0(客户端发来 EOF) [23:21] <co> 这方面没有进展。我只写了很小一部分客户端,服务器端还没动。 [23:22] <jrand0m> 酷 [23:22] * dm 把羞耻棒指向 co。 [23:22] <sisr> 我认为 HTTP i2p tunnel 现在工作得不错 [23:22] <sisr> 我把 mihi 出色的 httpclient 做了适配,这样你把它填到代理设置里就行 [23:23] <jrand0m> 太棒了! [23:23] <sisr> 它还对非 i2p 站点做了一些简单的过滤 [23:23] <sisr> 我想 jrand0m 已经提交了这个,对吧? [23:23] <jrand0m> 我们知道它适配哪些浏览器吗? 我知道 moz... [23:23] <jrand0m> 嗯,我想我提交过那些东西……我查一下 [23:23] * co 表示适当的羞愧。 [23:23] <sisr> 它能在 Mozilla 和 Konqueror 上工作 [23:24] *** godmode0 (~enter@anon.iip) 加入了频道 #iip-dev [23:24] <jrand0m> 别担心,co,我已经落后计划两个月了 [23:24] <sisr> 我会尝试让 mihi 的 I2P Tunnel 本周能与电子邮件服务器一起工作 [23:24] <sisr> 另外,许多 wiki 页面已经更新 [23:24] <jrand0m> 哦对! 谢谢你的工作 [23:25] * jrand0m 今天下午实际上给其中一个 FAQ 加了条警示 :) [23:25] * dm 决定把他强大的分析脑力用来判断 sisr 来自哪里。 [23:25] <dm> “另外,许多 wiki 页面已经更新” [23:25] <sisr> 好,请开始 [23:25] <dm> 嗯嗯嗯.....嗯嗯嗯嗯.....嗯嗯嗯嗯... [23:26] <dm> 啊,又一个线索? [23:26] <sisr> 但即使你猜对了我也不能告诉你 [23:26] <dm> “……has commit this already, yes?” [23:26] <co> jrand0m:如果之前没人问过,你是想把 I2P 框架和应用一起打包同时发布吗? [23:27] <jrand0m> 我发现我想要的和实际发生的并不总是一回事 [23:27] <co> 我是说一起发布它们。 [23:27] <sisr> 轮到 co 之后我有个问题 [23:27] <jrand0m> 当前的计划在 (Link: http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap)http://wiki.invisiblenet.net/iip-wiki?I2PRoadmap [23:28] <jrand0m> i2p 本身会包含 router 和 sdk,但会把任何已经准备好的应用一起捆绑发布,何时准备好就何时捆绑。 [23:28] <jrand0m> (当前的安装程序会捆绑 router、sdk、phttprelay、atalk 和 i2ptunnel) [23:29] *** 签出:dm(Ping 超时) [23:29] <jrand0m> 怎么样,sisr? [23:29] <co> 那个页面很有帮助。谢谢。 [23:30] <sisr> I2P 很强大,可以用来浏览 WWW,浏览通过 I2P Tunnel 连接的程序和网页,而且如果有人写出直接基于 I2P 的 web 服务器和客户端,就可以不通过 tunnel [23:30] <jrand0m> 绝对没错。 [23:30] <sisr> 我的疑问是 I2P 的开发者定位是怎样的?是不是要让一切都通过 I2P Tunnels 运作,这样用户就能使用他们已经熟悉的程序,比如 IE 或者 [23:31] <sisr> 还是说更好的是去做 I2P 的 web 服务器程序、I2P 的 web 浏览器 一切都为 I2P 特制? [23:31] *** dm (~as@anon.iip) 加入了频道 #iip-dev [23:32] <jrand0m> 就我个人而言,我很希望前者能实现。 然而,专为 i2p 设计原生应用会带来性能提升 [23:32] <mihi> Unix 原则:一件事,一个工具。所以不要写新的浏览器。 [23:32] <jrand0m> 对 [23:32] <sisr> I2P Tunnel 的开销有多大? 那我们应该专注于用 I2P Tunnel 让现有程序跑起来 [23:32] <dm> 一件事,一个工具?愚蠢的原则。 [23:33] <sisr> 我认为我们需要编写教程,教大家如何设置 Squid 和电子邮件代理去访问常规 WWW。这很有价值,而且需要不止一两个示例,也就是说要提供易于操作的说明,方便别人自行搭建 [23:33] <jrand0m> sisr> i2ptunnel 的唯一显著开销在于它依赖 i2p 的“保证送达”模式,这要求每发一条消息都等待一个 ack 消息(通过一对 tunnel 完成完整的往返,并使用所有相应的加密) [23:34] <sisr> 哈哈,好吧,sisr 用的是一台很老的电脑 [23:34] <sisr> 因此在我看来真的很慢 [23:34] <dm> 前几次真实测试的延迟如何?就好奇问问。 [23:35] <jrand0m> 我在大约 30-60 秒内就能把 news.google.com 连同所有图片拉下来 [23:35] <dm> 好 [23:36] <sisr> 在 I2P 之上搭一个类似 Freenet 的内容分发系统会有多难?是个大工程还是小工程? [23:36] <co> 那如果不经过 tunnel,需要多长时间? [23:37] <jrand0m> sisr> 如果我全职做,我估计大约 1 个月能在 i2p 之上弄出一个 DHT(分布式哈希表) [23:37] <jrand0m> co> 约 10-15 秒 [23:38] <co> 所以 i2ptunnel 慢了大约 3 倍。 [23:39] <jrand0m> 嗯,确切地说是 i2ptunnel 加上 routers。 但这不是线性时间——在 i2p 上传 10 字节和上传 100k 所花的时间差不多 [23:39] *** 签出:thecrypto(Ping 超时) [23:39] <co> 至少对你来说是这样。 [23:39] <jrand0m> 开销主要在消息封装上 [23:39] <sisr> 如果 I2P Tunnel 将成为大多数 I2P 应用的核心,那么我们应该把重点放在用户界面上,提供易于点击的选项来设置 tunnel [23:40] <sisr> 比如复选框来设置带端口的 I2P Tunnel web 服务器,以及电子邮件服务器的复选框,这样就非常简单 [23:40] <jrand0m> sisr> 我个人真的非常喜欢它现在的界面 :) [23:40] <jrand0m> 哦,当然。 其实 [23:40] * sisr 从没见过界面,不过想象中就是个文本框 [23:40] <sisr> 也许有人可以截一下 I2P Tunnel 的图做教程 [23:41] <jrand0m> 我之前计划让安装器创建一组 .bat 和 .sh 脚本来自动完成这些(例如:java .... I2PTunnel -e 'config basdfawer' -e 'server ...' ) [23:42] <sisr> 我们现在该为 I2P 做些什么 [23:42] <jrand0m> 这是个大问题。 简短的答案是“你能做什么就做什么” [23:43] <jrand0m> 如果有人直接去更新安装器,让它生成那些 .sh 和 .bat 脚本,那就太棒了 [23:43] <jrand0m> 如果有人有时间做做 i2proadmap 上的一些事项,也很棒 :) [23:44] <jrand0m> 我认为 0.2 一出,文档和 QA 会有大量需求(也就是“马上就好”的意思) [23:44] <sisr> 安装器会是什么样?InstallShield 还是 Java? [23:45] <jrand0m> 当前的安装器是一个单独的 “install.jar”,会引导用户回答几个问题 [23:45] <jrand0m> 这是个很烂的安装器 [23:45] <jrand0m> 但它已经尽可能地做到跨平台 [23:48] <jrand0m> 好,酷,routers 还在工作,我想这个 bug 修复可能真的解决了问题。 [23:48] <jrand0m> 哦对了。 [23:48] <jrand0m> 邮件列表会在某个时候恢复 [23:48] <jrand0m> 如果到 0.2 准备好时还没恢复,我会创建一个新的邮件列表 [23:49] <co> 我还有一个问题。 [23:49] <jrand0m> 说吧 [23:50] <co> 现在有没有可用的 I2P 节点列表? [23:50] <jrand0m> 没有。 [23:50] <jrand0m> 没有公开的 i2p 节点开放 [23:50] <co> 我明白。 [23:50] <jrand0m> 不过,其中一个会在 0.2 发布后通过 HTTP 提供它的对等节点列表 [23:50] <jrand0m> (该列表的 URL 会在安装器里) [23:50] <jrand0m> s/will be/is/ [23:52] <mihi> 它也在我的书签里…… [23:52] <jrand0m> 呵,坏蛋 [23:52] <mihi> 顺便说:size=777 超了 111 字节 ;) [23:53] <jrand0m> 笑翻 [23:53] <jrand0m> 我完全没注意到。 [23:53] <jrand0m> 它们以前是 384 [23:53] <jrand0m> 但后来我在 routerInfo 里加了一些 router 软件版本信息 [23:53] <sisr> 我觉得 nop 可以用 I2P Tunnel,配合 0.2 的 router 搭一个测试 IRC 服务器? [23:54] <jrand0m> 那就太酷了 [23:54] <sisr> 如果 nop 那样做,我想知道跟现在这个 IIP 相比延迟会怎样 [23:54] <jrand0m> 不过我们没法 dcc [23:54] <jrand0m> i2p 的延迟会高很多 [23:54] <jrand0m> (因为我们还没有 AES+SessionTag,每次发送都要几秒) [23:57] <jrand0m> 好的,在列表恢复之前,如果有人有话要说,要么在这里聊,要么丢到 wiki 上 [23:57] <dm> 好,晚安 [23:57] *** dm 已离开 #iip-dev [23:57] * jrand0m 将会议 *baf* 地宣布结束