快速回顾
出席人员: BrianR, _cervantes\_, deer, duck, fvw, human, jar, jrandom, jteitel, Masterboy, Nightblade, ugha_node, wilde
会议记录
14:07 <jrandom> 0) 嗨 14:07 <jrandom> 1) 测试网状态 14:07 <jrandom> 2) SAM 14:07 <jrandom> 3) 路线图更新 14:07 <jrandom> 4) MyI2P 14:07 <jrandom> 5) ??? 14:07 <jrandom> 0) 嗨 14:07 * jrandom 挥手 14:08 <Nightblade> 嗨 14:08 * jteitel 回挥 14:08 <jar> 嗨 14:08 <duck> 哈喽 14:08 <Masterboy> :P 14:08 <jrandom> 每周状态说明已发布到 http://dev.i2p.net/pipermail/i2p/2004-May/000239.html 14:09 <jrandom> 抱歉我今天有点不在状态,作息比平时更乱 14:09 <jrandom> 总之,继续到 1) 测试网状态 14:10 <duck> 网络更大时多样化会自动发生,对吧? 14:10 <jrandom> 是的,和/或减少偏斜的节点选择阈值 14:11 <jrandom> 比如,如果速度阈值用中位数而不是平均数,我们获得的高速节点数量将是可靠节点的一半 14:11 <jrandom> 而不是像今天这样速度高度偏态的情况 14:12 <Masterboy> 嗯,网络自愈了,这还不坏 14:12 <jrandom> 是的,不过花的时间比应有的长,也暴露出可改进的地方 14:13 <jteitel> 网络自愈了吗? 我依然无法稳定连接 I2P IRC 14:13 <jrandom> 节点档案衰减得不够快,也没能高效提升新候选 14:14 <jrandom> 这也引发了一连串次生事件——让无法承载负载的 router 过载(由于画像不足),导致一些过载的 router 内存耗尽并关闭 14:15 <human> 哎呀呀呀! 14:15 <jrandom> 这是逐步恢复的 jteitel——我们看到的一些问题与 netDb 故障有关 14:15 <jrandom> 嗨呀 human 14:15 <jteitel> 哦,好的 14:16 <_cervantes_> 有问题的 router 不能把 tunnels 转交给另一个节点吗? 14:16 <ugha_node> 哇,Lifetime rate: 8.87KBps sent 8.35KBps received. 14:16 <Nightblade> jteitel:我刚刚试了好几次才连上……还在等我的 /join 生效 14:16 * BrianR 环顾四周。 14:16 <jrandom> 不能——不过 router 可以直接丢弃一个 tunnel(如果一开始就不该接受的话) 14:16 <ugha_node> (而且我半小时前重启了我的 router) 14:16 <BrianR> 该死。我迟到了。 14:17 <BrianR> jrandom:(谢谢把 myi2p 安排在议程靠后的位置) 14:17 <jrandom> ugha> 是啊,你们都得替那三个快的顶上空缺 14:17 <jrandom> 呵呵 :) 14:18 <duck> 漂亮的一次攻击 14:18 <ugha_node> jrandom: 显然如此。 14:18 <_cervantes_> 那是不是更严苛些更好,在更低阈值就拒绝 tunnels 14:19 <jrandom> 是的 cervantes——目前 routers 除非无法到达下一跳,否则从不拒绝一个 tunnel 14:19 <jrandom> 我们会想在里面加某种节流,或许基于 jobQueue 的大小/平均时延等 14:20 <jrandom> 另外,我们得确保不会一次构建太多 tunnels,就像当大量它们失败时那样 14:20 <_cervantes_> 或者干脆允许用户根据自己已知可用的硬件/带宽设置阈值 14:20 <jrandom> (由于 fast+reliable 的节点离线) 14:20 <_cervantes_> 至少在这个阶段 14:20 <jrandom> 哦,这是个好点子——允许人们显式设置参与转发的 tunnels 的最大数量。 14:21 <jrandom> 我们会把它放进下一个版本。好建议。 14:21 <ugha_node> 这听起来就像模糊逻辑。 14:21 <jrandom> 我们必须处理过载,而单纯在内存里排队消息显然行不通 14:21 <duck> (嗨 fvw) 14:21 <_cervantes_> 最好能有关于 tunnel 性能的汇总统计……比如对基准处理器可能造成的负载 14:22 <_cervantes_> 顺便说,我把服务器下线了……它收到一大堆 tunnels,而我还没编译 jbigi ;-) 14:22 <jrandom> 见 http://localhost:7655/routerStats.html#Tunnels 14:23 <jrandom> 啊! 对,jbigi 是我们希望大家都使用的东西 14:23 <BrianR> 对于 tunnels 的带宽预算有什么想法吗? 14:24 <jrandom> 目前计划在 3.0(在 0.4.1 为整个 router 提供总带宽限制) 14:24 <jrandom> 不过更早加入按 tunnel 的带宽限制也无妨 14:25 <fvw> 如此之早在这上面花精力是否明智?当前大多数用户/测试者所用的操作系统内核里做会更容易、更精确。 14:25 <_cervantes_> 我想看到的是每个 tunnel 的深度设置(也许已经可以了) 14:25 <_cervantes_> 例如我已经知道可以信任我的服务器……所以我不想必须经过 _x_ 跳才能到它 14:25 <jrandom> fvw> 说得好,尤其是我们目前并不“吞噬”太多带宽 14:26 <jrandom> 嗯 cervantes——是的,每个客户端可以指定其 tunnels 的长度,但我不确定这正是你想要的 14:26 <_cervantes_> 不是 14:26 <jrandom> cervantes——我想你要的是 QoS(服务质量),让你可以为某个特定节点缩短连接 14:26 <_cervantes_> 比如说…… 14:26 <_cervantes_> 对 14:27 <jrandom> (这原本计划在 I2P 4.0,不过那是一年以后 == 无限) 14:27 <_cervantes_> 在这种情况下也能按 I2P 主机选择深度 14:27 <BrianR> fvw:是的,但一个 I2P 需要大致知道潜在 tunnel 成员可用的带宽,才能做出明智的建 tunnel 决策… 14:27 <_cervantes_> 啊好 14:27 <_cervantes_> :) 14:27 <jrandom> 不过这是个好主意,技术上可行,欢迎补丁 :) 14:28 <_cervantes_> 补丁已经寄出……还附上了 5000 根 e-gold 金条的支票 14:28 <_cervantes_> ;-) 14:28 <jrandom> BrianR:或许可以折中——跟踪它参与了多少 tunnels,以及这些 tunnels 使用了多少带宽,把这些作为是否接受或拒绝 tunnel 创建请求的决策的一部分? 14:28 <jrandom> 嘿 14:30 <jrandom> 好的,关于测试网状态还有别的吗? 14:30 <Masterboy> 我的悖论呢? 14:30 <Masterboy> :) 14:30 <jrandom> 我的计划是周四或周五发布带这些更新的 0.3.1.3 14:31 <jrandom> Masterboy:我还没来得及看你的日志,但我们会解决的 14:31 <_cervantes_> 2005 年的周五? 14:31 <_cervantes_> 酷 14:31 <Masterboy> k 14:31 <jrandom> 好,转到 2) SAM 14:31 <Masterboy> 现在我们知道是谁在跑过期的 router 了.. 14:32 * jrandom 把话筒交给我们勇敢的 SAM.pm 开发者 14:33 <jrandom> (就是你,BrianR :)) 14:33 <BrianR> 稍等一下.. :) 14:33 * duck 欢呼 14:33 <jrandom> 同时,dm 或 firerabbit 在吗? 14:33 -!- Irssi: #i2p: Total of 26 nicks [0 ops, 0 halfops, 0 voices, 26 normal] 14:33 * jrandom 检查了 /names,没有。 算了 14:33 <jrandom> (那么就没有 .net/C# SAM 库更新了) 14:34 <duck> .py 的东西还是最新的吗? 14:34 <duck> 还是因为 SAM 的改进被弃用 14:34 <jrandom> 不确定 14:34 <BrianR> 好了。我回来了。 14:34 <Nightblade> 我的 C 库似乎能工作……不过我还没写用它的应用 14:34 <jrandom> 太棒了 nightblade! 14:35 <Nightblade> 这里有人在 Windows 下做过 GTK+/C 编程吗? 14:35 <human> duck:客户端库需要一个小改动以支持版本 14:35 <_cervantes_> “hello world”? 14:35 <human> duck:其余应该没问题 14:35 * jrandom 建议做个类似 tftp 的数据报测试,作为 SAM 的理想测试 :) 14:35 <Nightblade> 嗯,随便啥……GTK 在 Windows 下表现好吗…..? 14:35 <jrandom> (甚至用 SAM 流式代替 datagram 或 raw) 14:36 <jrandom> 不错 BrianR——.pm 和 samcat 进展如何? 14:36 <BrianR> Net::SAM 已经进 CVS 了,但大多仍不可用。 14:36 <BrianR> 我希望在周末前把所有 bug 都抹平,让 datagram 和 raw 可用。 14:37 <BrianR> 要把 streams 做成不错的面向对象(OO)封装还需要多做些工作。 14:37 <Nightblade> 哦对,我没管 datagram 或 raw……只做了 stream 14:37 <Nightblade> 反正我也只会用它 14:37 <fvw> human:你考虑过 wxWindows 吗?它做那类东西很有用(不过我不认为有 Windows 的 GTK 目标) 14:37 <jrandom> 很棒 BrianR 14:38 <BrianR> 太太催我去吃饭了。我可能赶不上回来说 myi2p 了。我把威胁模型和一些愚蠢的文件服务器资料发在 208 号节点上了 14:38 <human> fvw:GTK 的 Windows 端口是有的(GIMP 也能在 Windows 上跑) 14:38 <jrandom> 不错 nightblade,先实现需要的东西最好 14:38 <human> fvw:s/client/port/ 14:38 <jrandom> 呵 ‘k BrianR,谢谢 14:38 <fvw> human:我是说给 wxWindows 用的 gtk windows target(我建议你用 wxWindows) 14:38 * fvw 向 BrianR 挥手。用餐愉快。 14:38 <human> fvw:啊……嗯,我不太了解 vxWidgets(vxWindows 的新名字 :-) 14:39 <human> fvw:不过说 GTK+ 的是 Nightblade,不是我 :-) 14:40 <fvw> 哎呀,我眼花了,忽略我吧。 14:40 <Nightblade> 我对 C++ 没有像对 C 那么熟 14:40 <Nightblade> 据我所知,GTK 是唯一跨平台的 C 图形界面库 14:40 <Nightblade> 并不是我特别喜欢 GTK 14:40 <fvw> 其实无所谓,wxWindows 从 C 来用也很容易上手。 14:40 <Nightblade> 嗯 14:40 <Nightblade> 那我也看看它 14:40 <Nightblade> 我会 C++,只是没写过大型程序 14:41 * fvw 也不是 C++ 程序员,不过我前阵子用它给一家运输公司做了个相当大的交易查看器,毫无困难。 14:42 <Nightblade> 我确信 wxWindows 的 Windows 端口更成熟 14:42 <Nightblade> 比 GTK 更成熟 14:42 <fvw> 很可能是的。 14:43 <Nightblade> (好吧继续开会)呵 14:43 <jrandom> :) 14:43 <jrandom> 好,跳到 3) 路线图更新 14:44 * jrandom 过去一个月一直疏于更新 http://www.i2p.net/roadmap 14:44 <jrandom> 不过现在已追上进度 14:44 <jrandom> 可惜的是显然下周无法发布 0.4 14:44 <duck> (1.1、2.0、3.0 也更新到最新了吗?) 14:45 <jrandom> 是的 14:45 * Masterboy 读过了,很喜欢——不急,我们又不是着火了.. 14:46 <duck> 也该有人去更新 Wikipedia/Infoanarchy :) 14:46 <jrandom> 哦,我大概该把 0.4 上的“已实现并测试的 SAM 桥接和客户端库”删掉 14:46 <jrandom> 呵,是啊,这就是为什么我之前 !thwapped 了 iA,因为他们只是复制了 wiki 页面 14:46 <jrandom> (他们应该直接指向 /roadmap,而不是复制内容) 14:47 <Masterboy> SAM 完成了? 14:47 <jrandom> 功能上可以用了,不过其他客户端库的工作还在进行中 14:47 <jrandom> s/are/is/ 14:48 <jrandom> 好的,除非还有更多关于路线图的问题/关注点,否则转到 4) MyI2P 14:50 <jrandom> 我自己虽然已经停止开发 myi2p,但我们把这项工作开放为一项赏金——http://www.i2p.net/node/view/216 14:50 <jrandom> 这也意味着我们需要把需求定准确,而关于需求也有些争论 14:51 <Masterboy> 想让我的朋友参与,他说活太多钱太少 ;P 嗯,他可是个资本家 ;) 14:51 <Masterboy> 我倒是提出要写代码.. 14:52 <jrandom> 欢迎为它写代码 :) 14:53 <jrandom> 不过当前尚未解决的架构问题是:如何处理无法一直运行自己 I2P router / MyI2P 节点的人 14:53 <Nightblade> 需要一些可信的 I2P ISP 14:53 <jrandom> 两个提议,要么用托管服务提供商,要么把系统拆成使用分布式后端存储 14:54 <_cervantes_> 后者是长期的理想方案 14:54 <_cervantes_> *latter 14:54 <duck> (而且还是另一项赏金) 14:55 <_cervantes_> 或者一个网页缓存代理服务… 14:55 <jrandom> 对——如果我们走托管服务提供商(或本地运行节点)路线,当 DHT/等可用时,我们可以把越来越多的内容推到 DHT 里 14:55 <jrandom> _cervantes_:那本质上就是分布式后端存储——不受信任的数据缓存 14:57 <deer> * Masterboy 想知道 bogobot 在哪儿 14:57 <jrandom> 难点在于实现需要的访问控制功能——在不受信任的数据缓存/分布式后端存储里,ACL(访问控制列表)本质上就是加密 14:57 <jrandom> 但这个讨论的“旁支”来自一位匿名者在 @ http://www.i2p.net/node/view/215#comment-105 提出的三点 14:57 <_cervantes_> 以及签名的内容 14:58 <jrandom> 对,两种方式都需要签名的内容 15:00 <_cervantes_> 这就是 hypercubus 的模型有其优点的地方……但绝不是“快速”的解决方案 15:00 <jrandom> 基于昨晚 IRC 的讨论,我们聚焦于“LiveJournal 的威胁模型”——LJ 用户关心哪些攻击,不关心哪些 15:01 <wilde> 先把最重要的事做了,先搞出一个基础版 MyI2P 15:02 <jrandom> 对,要实现基础版 myi2p,我们得确定部署架构 15:03 <jrandom> 针对无法运行自己节点的用户,按 LJ 的威胁模型,我觉得无需走不受信任数据缓存这条路 15:03 <jrandom> 如果他们只需要 LJ 的威胁模型,为什么要用 myi2p? 因为它是匿名的 15:04 <jrandom> 我们可以继续追求某种理想化系统,但有收益递减法则 15:04 -!- Irssi: #i2p: Total of 24 nicks [0 ops, 0 halfops, 0 voices, 24 normal] 15:05 <jrandom> 这就是我倾向于按目前的方向保留这项赏金的原因——基础系统出来后我们可以再添加替代方案 15:05 -!- duck_ is now known as duck 15:06 <jrandom> 不管怎样,我在 4) MyI2P 这部分就这些了,除非有人还有别的话题 15:06 <jrandom> 如果没有,就转到 5) ??? 15:07 <_cervantes_> 嗯,你需要一把大法槌 :) 15:07 <jrandom> 我忘了在会议记录里提 morph.i2p 的新 eepsite,而且 nickster.i2p 现在有公共 fproxy 可用了! 15:08 <jrandom> (还有 sungo.i2p 的网络摄像头已经上线运行了 :) 15:08 <_cervantes_> 呵… 15:08 <_cervantes_> i2pr0n 15:08 <jrandom> 还有谁要提什么吗? 15:10 <jrandom> 如果没有,我们就到 70 分钟了 15:10 <deer> <Masterboy> 没有 15:10 * jrandom 收尾 15:10 * jrandom *baf* 地宣布会议结束