快速回顾

出席: alpaca\_, bogobot, cervantes, duck, hobbs, hypercubus, jrandom, jteitel, mihi, mrflibble, mule, mule2p, Nightblade, oOo, protok0l

会议记录

14:05 <jrandomi2p> 0) 嗨 14:05 <jrandomi2p> 1) 0.3.4 状态 14:05 <hypercubus> 我保证在 PDforge 上你的项目几乎会立刻通过确认 ;-) 14:05 <jrandomi2p> 2) 0.3.4.1 的计划项 14:05 <jrandomi2p> 3) 新的 web 控制台 / I2PTunnel 控制器 14:05 <jrandomi2p> 4) 0.4 的事项 14:05 <jrandomi2p> 5) 其他开发活动 14:05 <jrandomi2p> 6) ??? 14:05 <jrandomi2p> 0) 嗨 14:05 * jrandomi2p 挥手 14:05 <mihi> lla ih 14:05 * oOo 搞怪 14:06 <mihi> 大家好 14:06 <jrandomi2p> 每周状态说明已发布至 http://dev.i2p.net/pipermail/i2p/2004-August/000388.html 14:06 <jrandomi2p> 直接进入 1) 0.3.4 状态 14:07 <jrandomi2p> 网络整体看来可用,无论是 irc 还是 eepsites 14:07 <jrandomi2p> 你们在 eepsite 上看到的可靠性/故障是怎样的? 14:07 * jrandomi2p 在这边可以看到 irc 的故障,比如有人断线等 14:08 <mule2p> 整体不错,大约在 25MBytes 后内存不足 14:08 <mule2p> 但那应该已经在 cvs 里修复了,就像你说的 14:08 <jrandomi2p> 啊好,那是单个 25MB 下载对吧? 14:09 <mule2p> 是 14:09 <jrandomi2p> 好的 14:10 <jrandomi2p> 大文件传输似乎仍有问题(过一段时间会断开,但不是数据损坏)。我觉得之前提到的修改可能会修好,但不确定 14:11 * jrandomi2p 忘了说,oOo 的 roundtrip/connections_reliability.php 把这里的两个 irc 服务器都算进去了,不只是 i2p,所以目前数据不太准确 14:11 <jrandomi2p> oOo——把 bogobot 代码改成忽略 @irc.metropipe.net 需要做些什么? 14:12 <duck> 踢 hypercubus 一脚 14:12 <duck> 还有踢我升级去 14:12 <oOo> 需要很少的编码,hypercubus 做个同行评审,然后由 duke 更新 bogobot 14:13 <jrandomi2p> 好的,酷 14:13 <hypercubus> duke? 14:13 <oOo> duck,抱歉 :p 14:13 * jrandomi2p 认为这种统计汇总会很有帮助 14:13 <jrandomi2p> duke duck 14:14 <oOo> 统计是用 PHP 做的,也可以交给 duck 14:14 <jrandomi2p> 好的,有没有要就 0.3.4 提出来讨论的? 14:14 <jrandomi2p> w3rd 14:15 <jrandomi2p> 好,我们继续 2) 0.3.4.1 14:15 <jrandomi2p> 除了邮件里提到的,我也没什么别的要说 14:16 <jrandomi2p> StreamSinkServer 和 StreamSinkClient 应用是用于 ministreaming 的简洁演示应用(给想在 i2p 上写流式传输的 Java 开发者) 14:16 <jrandomi2p> 哦,另外 StreamSinkServer 有点像 aum 的 dropbox Python 应用(它会把任何人发给它的数据写到一个文件里) 14:17 <jrandomi2p> (StreamSinkClient 发送固定大小的随机数据,所以不太有用 ;) 14:17 <jrandomi2p> 关于 0.3.4.1 有什么想法/顾虑/问题吗? 14:18 * jrandomi2p 估计一两天内就会发布 14:19 <jrandomi2p> 好,加快进度到 3) 新的 web 控制台 / I2PTunnel 控制器 14:20 <jrandomi2p> 如邮件所述,我们的新 web 控制台基本可用了,还有一个简单的 web 界面用于控制/编辑/创建 i2ptunnel 实例 14:21 <protok0l> protok0l 从哪儿能拿到它 14:22 <protok0l> 还有我需要怎么处理 jetty 14:22 <jrandomi2p> 现在都在 cvs 里了,不过我需要写些文档说明如何配置 14:22 <protok0l> 好的 14:23 * jrandomi2p 几天前在频道里写过并发了大约 5 步的流程,但我们需要更简单(或者至少更清晰)的流程 14:23 <protok0l> 我听说 CVS 很烂 14:23 <mule2p> 好的,等我拿到文档就可以告诉你 :) 14:23 <protok0l> 而且有个比 CVS 更好的玩意儿 14:23 * oOo 在断线前只记录了前两步 :p 14:24 <protok0l> Vi 也是一样 14:24 <protok0l> lol 14:24 <jrandomi2p> 我们最终会把这个新控制台作为“标准”,但可能要等到把所有东西与 hypercubus 的新 installer 集成好 14:26 <jrandomi2p> 实际上 14:26 <jrandomi2p> 给勇士们,这是之前那套丑陋的步骤: 14:26 <jrandomi2p> 20:19 <jrandom> w3rd hyper - 你能从 cvs 拉取最新代码,执行 'ant dist',抓取 build/*jar 并把它们放进你的 lib 目录,mkdir $instDir/webapps/;cp build/routerconsole.war $instDir/webapps/;然后编辑你的 router.config 取消注释 clientApp.3.* 行并更新你的 classpath 14:26 <jrandomi2p> 20:19 <jrandom> (在 classpath 中,设置为: lib/i2p.jar:lib/router.jar:lib/mstreaming.jar:lib/heartbeat.jar:lib/i2ptunnel.jar:lib/netmonitor.jar:lib/sam.jar:lib/timestamper.jar:lib/ant.jar:lib/jasper-compiler.jar:lib/jasper-runtime.jar:\ 14:26 <jrandomi2p> 20:19 <jrandom> lib/jnet.jar:lib/org.mortbay.jetty.jar:lib/routerconsole.jar:lib/xercesImpl.jar:lib/xml-apis.jar:lib/javax.servlet.jar 14:26 <protok0l> 好吧,不干了 14:27 <jrandomi2p> 除此之外,还有一个新的 i2ptunnel.war——把它放到 $instDir/webapps/,然后访问 http://localhost:7657/i2ptunnel/ 14:27 <jrandomi2p> 是啊,如我所说,挺折腾的 14:27 <jrandomi2p> 但它“能用”,而且我确实没有时间或足够的专长把它做得更好 14:27 <oOo> 就这些步骤就行了? 14:28 <jrandomi2p> 是的 14:28 <oOo> 好的,谢谢 14:28 <jrandomi2p> (当你访问 http://localhost:7657/config.jsp 时,会看到类似 http://dev.i2p.net/~jrandom/config.webp 那样的东西 14:29 <jrandomi2p> 总之,就是这样 14:29 <jrandomi2p> 如果大家能多试试它,并想出改进办法,我会很感激 :) 14:30 <jrandomi2p> mihi:对整个 web 界面的想法有什么看法吗? 14:30 <duck> 布局不错 14:31 <jrandomi2p> 我就知道你会喜欢,duck ;) 14:31 <mrflibble> 不错 14:31 * mihi 也喜欢这个布局 14:31 <mihi> web 界面总是很棒 14:32 <jrandomi2p> 我为 i2ptunnel.war 拼的那个界面挺普通的……能用,但很普通 14:33 <jrandomi2p> 好,就这样——如果大家想进一步讨论,我们有 irc 和邮件列表等 :) 14:33 <mule2p> jrandomi2p:对我来说 clientApp.3 是 netmonitor 14:34 <jrandomi2p> 啊好的 mule2p——看看 cvs 里的 router.config—— 14:34 <jrandomi2p> #clientApp.3.main=net.i2p.router.web.RouterConsoleRunner 14:34 <jrandomi2p> #clientApp.3.name=webConsole 14:34 <jrandomi2p> #clientApp.3.args=7657 127.0.0.1 ./webapps/ 14:34 <jrandomi2p> 显然把 3 改成 4 并取消注释 :) 14:35 <jrandomi2p> 如果想远程访问,就把 127.0.0.1 换掉 14:35 <jrandomi2p> (7657 也可以换成别的端口) 14:36 <mule2p> 好的,谢谢,我在 checkout 的 i2p 树里找过新的 router.config,但可能在 cvs 的别处 14:36 <jrandomi2p> 啊抱歉,是 i2p/installer/java/src/router.config.template 14:37 <mule2p> 好 14:37 <jrandomi2p> 好,除非还有别的,我们转到 4) 0.4 的事项 14:38 <jrandomi2p> 嗯,我不确定还有什么能补充到邮件里那一段的 14:38 <jrandomi2p> 基本上就是我待办清单上的一堆条目 :) 14:39 <jrandomi2p> 对那里提到的内容有任何问题/担忧吗? 14:40 <oOo> installer 进展如何?^^ 14:40 <jrandomi2p> hypercubus? que tal? 14:40 <hypercubus> 耐心点,danielsan……好事多磨……呃,等等 ;-) 14:40 <jrandomi2p> 呵呵 14:41 <jrandomi2p> 不着急,就是想问问进展怎么样 14:41 <jrandomi2p> 有遇到什么问题吗?有什么我们能帮忙的? 14:41 <mihi> danielsan 是谁? 14:41 <hypercubus> 没问题,只是目前测试很枯燥 14:42 <jrandomi2p> w3rd 14:42 <hypercubus> 我本该先写单元测试的,不过算了 ;-) 14:42 <jrandomi2p> 呵呵 14:43 <hypercubus> Java 所谓的平台无关性在安装任务这块儿真是不好使 14:44 * jrandom 察觉到一波集体断线 14:45 <oOo> 呃哦 14:45 <hypercubus_> 嗯,真棒……我最后说的是什么? 14:45 <oOo> <hypercubus> Java 所谓的平台无关性在安装任务这块儿真是不好使 14:46 <hypercubus> 好吧,谁破坏了会议? ;-) 14:46 * jrandom 把锅甩给 jebus 14:46 <hypercubus> 可能是 duke 14:46 <mule> 你不会是想告诉我我的 router 有那么重要吧 :) 14:46 <jrandom> 呵 14:47 <mihi> [23:46] * jrandomi2p 退出了 IRC(客户端退出) 14:47 <mihi> 呵呵…… 14:47 <mule> 要是这样,抱歉。 14:47 <hypercubus> 总之,installer 的进度不用担心,我完全预计等 0.4 就绪时它也会准备好 14:47 <jrandom> duck:你在 irc.duck.i2p 上监听了多少 inbound tunnels? 14:47 <hypercubus> 我没有遇到让人挠头的问题 14:47 <jrandom> 不错,hypercubus 14:47 <hobbs> 提醒我了——有没有命令行方式能从 router.config.template 生成一个新的 router.config? 14:47 <jrandom> 没有 14:48 <jrandom> 据我所知没有 14:48 <mihi> 跑一遍 installer 然后把它拷贝出来 14:48 <jrandom> 除了 java -jar install.jar 14:48 <jrandom> 呵 14:48 <mihi> 我的意思是拷到一个新目录 14:48 <cervantes> 至少不是你们想的那种“挠头” 14:48 <jrandom> 哦,妙啊,我的 router 崩溃转储了 14:48 <duck> jrandom:提醒我一下,怎么查 irc.duck.i2p 的哈希 14:49 * hypercubus 想知道 cervantes 是什么意思 14:49 <jrandom> cd lib ; java -cp i2p.jar net.i2p.data.TestData display Destination ../irc.privKey 14:49 <cervantes> hyper:你可能对“strunking”这个词更熟悉 :) 14:49 <hypercubus> duck:试试增加到 3 条或更多 inbound tunnels……对我有些帮助 14:50 <duck> *** Building a seperate global context! 14:50 <duck> Log file logger.config does not exist 14:50 <duck> 23:49:47.387 ERROR [main ] net.i2p.util.LogManager : Log file logger.config does not exist 14:50 <duck> 23:49:49.589 CRIT [ 1 shutdown ] net.i2p.util.LogManager : Shutting down logger 14:50 <jrandom> 啊,呃 14:50 <hypercubus> 看来它处理不了你的日志呢 *咳* 14:51 <mihi> 把你的 logger.config 到处拷一份 ;) 14:51 <mihi> 至少在你运行任何 i2p 应用时可能的工作目录里都放一份 14:51 <duck> 不,我不会 14:51 <jrandom> ok, echo logger.record.net.i2p.data.TestData=INFO>> logger.config 14:52 <jrandom> 其实这就是我说(cd lib)的原因,不过我忘了我在 cvs 里把默认从 DEBUG 改成了 ERROR 14:52 <duck> 4 条 inbound 14:52 <jrandom> 4 条当前且就绪? 14:52 <jrandom> 还是 2 条未就绪(或刚过期)+ 2 条就绪? 14:53 <duck> 现在变成 3 条,其中 1 条未就绪 14:53 <jrandom> 好的,那大概是在 tunnel 过期/替换期间 14:54 <jrandomi2p> 如果你把 router.config 里设置为 3 条 inbound tunnels,应该有助于可靠性 14:54 <jrandomi2p> (或者你可以用新的 i2ptunnel web 界面来做 ;) 14:54 <hypercubus> 或许对于拥有多条 tunnels 的单个客户端,tunnel 的过期应该错开 14:55 <jrandomi2p> 一般是错开的——在 tunnel 过期前 60 秒会分配新 tunnels 并创建新的 leaseSet 14:55 <hypercubus> 哦 14:55 <jrandomi2p> 不过,在 tunnel 失效时它得即时创建新的 leaseSet,而这不会立刻传播开去 14:56 <jrandomi2p> (嗯,它会发到 netDb 上,但客户端可能要几秒才会拿到) 14:57 <jteitel> !who 14:57 <alpaca_> #i2p 的用户列表: [hobbs] [Iakin3] [duck] [pwk__] [Sonium] [jar] [alpaca_] [interrupt] [protok0l] [mihi] [aum] [Shaun-Away] [cervantes] [jrandom] [deer] [hirvox] [Bladenight] 14:57 <bogobot> #i2p 的用户列表: [shendaras] [duck] [josh] [mule2p] [aum] [mrflibble] [hypercubus] [TrueSeeker] [laggybot] [bogobot] [ion_] [mihi] [ion] [mule] [jteitel] [ant] [oOo_] [jrandomi2p] [dm] [ugha2p] [Ch0Hag] [jnk] [oOo] [soros] [bob] [revival] [DrWoo] [thetower] 14:57 <jrandomi2p> 对 tunnel 池还有一些可以做的优化,但我不确定目前有多大用处 14:57 <jrandomi2p> 好,回到正题——还有谁对 4) 0.4 的事项有要说的吗? 14:57 <oOo> 关于 0.4 的“大规模仿真”,有什么准备方式吗?需要“新的”特定应用/工具吗?(要不要过渡到第 5 点?;)) 14:58 <jrandomi2p> 其实,对这个仿真来说,如果有人能帮忙改造 heartbeat(或一个基于 sam 的应用),让它变成可脚本化的客户端/服务器,那就太好了 14:59 -!- Bladenight 改名为 Nightblade 14:59 <jrandomi2p> (例如,不是现在的“每 30 秒给节点 X 发送 20KB”,而是“持续 10 分钟向节点 X 请求一个 1MB 文件,然后暂停 60 分钟,再向节点 Y 请求 1KB 文件”等等) 15:00 <jrandomi2p> 但如果有人有兴趣帮忙,请告诉我,我们可以在 chan 15:00 <jrandomi2p> 呃,chat 15:00 <jrandomi2p> 顺着这个话题,我们跳到 5) 大家正在做的事儿 :) 15:01 <jrandomi2p> 不太确定怎么展开,不如就按邮件里(任意的)顺序逐个更新? 15:01 <jrandomi2p> 我没看到 sunshine,aum 大概还没起床吧 ;) 15:02 <jrandomi2p> nightblade——战况如何? 15:02 <Nightblade> 我打算把 libsam 接口做得像 BSD sockets 那样 15:02 <Nightblade> 不过我还没在那部分写代码 15:02 <duck> 改成了 tunnels.numInbound=3 15:03 <jrandomi2p> 不错,duck(最好等会议结束再重启你的 tunnel ;) 15:03 <duck> 哦,它不会检测到这些更改吗? 15:03 <jrandomi2p> 说得好,nightblade——现在的方式有什么问题吗? 15:03 <hypercubus> 除非你把它写成会检测 ;-) 15:03 <jrandomi2p> 不,duck,clientApp 行只会在启动时读取 15:04 <jrandomi2p> (clientApp 其实不在 router 的控制范围内——这就是 i2ptunnel web 应用存在的意义) 15:04 <Nightblade> 不,现在的方式没有问题……我要做的是在现有接口之外再提供一种(开发者可以选择他们想用的) 15:04 <jrandomi2p> 太棒了 15:05 <jrandomi2p> 好的,你做主。多样性是好事,尽管这意味着要维护更多代码等,但需要权衡 15:06 <jrandomi2p> 好,继续往下——mule2p——outproxy 进展如何? 15:07 <mule> 除了你手上的补丁之外没做什么 15:07 <jrandomi2p> 啊好,我以为你在做进一步修改 15:07 <mule> 需要找点空闲时间做真正的负载均衡 15:07 <jrandomi2p> w3rd 15:08 <jrandomi2p> 那我就把那个补丁合进去 15:08 <mule> 谢了。把我的 outproxy 也加进 client app 里吧 :) 看起来更快 15:08 <jrandomi2p> 呵,当然你的代理对你来说更快,它是本地的 :) 15:09 <oOo> 而且没人用它 ^^ 15:09 <mule> 不,不是 15:09 <jrandomi2p> 哦,它在另一个 router 上?酷 15:09 <mule> 是的,在一家 ISP 的一台独立服务器上 15:10 <jrandomi2p> i2ptunnel 的 web 界面有一个字段可以让大家指定 outproxies 列表,所以调整起来应该挺容易的,不过我们会在下一个版本和发行说明里提到它 15:10 <jrandomi2p> 不错 15:11 <jrandomi2p> 好,nickster 现在好像不在线 15:12 <jrandomi2p> 还有其他活跃的客户端开发在进行吗? 15:12 <jrandomi2p> (或者以前暂停的有没有活过来,等等?) 15:13 <jrandomi2p> 好的,如果有人想在这方面再说点啥,照旧我们有邮件列表和频道 :) 15:13 <jrandomi2p> 转到 6) ??? 15:13 <jrandomi2p> 还有谁想提点什么? 15:14 <Nightblade> 没有 15:15 <mihi> duck 有什么要带下来的吗 ;) 15:15 <mihi> s/any/some/ 15:15 * jrandomi2p 对 mihi 进行 ping 洪泛 15:15 <jrandomi2p> 好,就此打住 15:15 * jrandomi2p 蓄势 15:15 * jrandomi2p *baf* 地宣布会议结束