tuna / collection

idea collections from TUNA
263 stars 4 forks source link

康哥的消息广播实现有bug #134

Open nicholascw opened 7 years ago

nicholascw commented 7 years ago

Debian Stretch Release Party 结束,众dalao在南门外吃串.

席间在消息广播的过程中,大家逐渐发现康哥的消息广播实现有巨大缺陷:

康哥的实现 首先,包的header就很长, 会有一大段前情提要, 并且每次被打断就会重传. 除此之外,康哥的消息缓存模型是个队列,压入再输出之后如果没有及时重传成功就会被自动drop,而且无法再次压入.而此时消息重新Generate的过程又极其长,导致康哥在最终得到信道空闲的时候会....无话可说. 最后,当康哥的消息广播系统reboot的时候,并没有掉电记忆/断点续传功能,直接导致话题突然回到刚入座的时的话题.

综上所述,席间无论对康哥发出DDoS还是对康哥想听到的内容发DDoS都会有奇效,尤其是功率大,包长度短的消息,以及单一内容的重放.....

scateu commented 7 years ago

在下有一事想讲....

bigeagle commented 7 years ago

我有一言,请诸位静听,那是在1999年…… // 1999年我跟你说…… 我有一言,请诸位…… // 我说 1999 年啊,我才两岁…… 我有一言,请…… // 那会儿我都9岁了! 我有…… // 那会儿我8岁! 我有一句mmp不知…… // 1999年那一年有千年虫问题!

NSBlink commented 7 years ago

// 1999年,那年我两岁,是地球防卫军第13军24师12连的超能战士。每逢想起99年的那场人类浩劫,想起牺牲的战友们,我的眼眶都不禁湿润了。

scateu commented 7 years ago

1999年nano的作者...

啊!!你们自己看: https://nano-editor.org/dist/v2.8/faq.html

1.2. What is the history behind nano?

Funny you should ask!

In the beginning...

For years Pine was THE program used to read email on a Unix system. The Pico text editor is the portion of the program one would use to compose his or her mail messages. Many beginners to Unix flocked to Pico and Pine because of their well organized, easy to use interfaces. With the proliferation of GNU/Linux in the mid to late 90's, many University students became intimately familiar with the strengths (and weaknesses) of Pine and Pico.

Then came Debian...

The Debian GNU/Linux distribution, known for its strict standards in distributing truly "free" software (i.e. software with no restrictions on redistribution), would not include a binary package for Pine or Pico. Many people had a serious dilemma: they loved these programs, but the versions available at the time were not truly free software in the GNU sense of the word.

The event...

It was in late 1999 when Chris Allegretta (our hero) was yet again complaining to himself about the less-than-perfect license Pico was distributed under, the 1000 makefiles that came with it and how just a few small improvements could make it the Best Editor in the World (TM). Having been a convert from Slackware to Debian, he missed having a simple binary package that included Pine and Pico, and had grown tired of downloading them himself.

Finally something snapped inside and Chris coded and hacked like a madman for many hours straight one weekend to make a (barely usable) Pico clone, at the time called TIP (Tip Isn't Pico). The program could not be invoked without a filename, could not save files, had no help text display, spell checker, and so forth. But over time it improved, and with the help of a few great coders it matured to the (hopefully) stable state it is in today.

In February 2001, nano was declared an official GNU program by Richard Stallman. nano also reached its first production release on March 22, 2001.