一种新型的通信方式:计数器同步通信

2017-09-24 12:16:31 +08:00
 totalfee
先想象一条数轴:
0_________________+∞

计算机上的任何信息,都是二进制存储,都可以用一个自然数来表示,对应于数轴中某一个点。

通信的本质,就是把一个自然数从一个空间传递到另外一个空间。

因此我们可以在 A、B 两地分别放置一个同步计数器,当 A 给 B 传递某条信息时,A 先发送一个“开始计数”信号,A、B 两地的计数器便会同步开始计数:0、1、2、3...... 直到达到指定的自然数,A 再发送“停止计数”信号,此时 B 计数器显示的数字即为 A 传递的信息。

目前难题:
1. 计数器震荡频率提升。
2. 计数器位宽提升。
2. 计数器同步困难。
5471 次点击
所在节点    奇思妙想
38 条回复
zmj1316
2017-09-24 12:31:35 +08:00
你这就类似于一个定死的哈夫曼编码
churchmice
2017-09-24 12:40:14 +08:00
所以我发送一个 10000,双方时钟得跳 1000 下对吧?这效率得有多低下啊?
zgray
2017-09-24 12:43:43 +08:00
时序库
totalfee
2017-09-24 12:45:03 +08:00
@zmj1316 哈夫曼编码不是一种简单的压缩算法么,我这个通信方式不会传输数据本身,不用压缩。
平常的通信你看网卡信号灯都在不停再闪,那是有二进制数据不断流过了数据线。
我这种通信方式,只需要发送“开始”和“结束”两个信号,中途网线断了都不影响。
LxExExl
2017-09-24 12:52:38 +08:00
1. 如果开始 /结束两个信号能保证 CAP,为啥不直接发需要的信息?
2. 我要发个 Hello World, 计数器怎么编码,怎么保证 A 和 B 的计数器是同步的呢?

建议楼主了解一下 CAP 和分布式的相关概念
aheadlead
2017-09-24 12:55:15 +08:00
原谅我 我笑了一会 这有点像这个
https://zh.wikipedia.org/wiki/魯布·戈德堡機械

如果说我这个计数器最大的计数能力是 1 的话
有没有觉得逐渐的又回到现在的通讯方式了
nousername2030
2017-09-24 12:57:55 +08:00
查了下一台铯原子钟几十万......
totalfee
2017-09-24 12:59:18 +08:00
@churchmice 是的,同步跳动是关键。 至于效率我们就不讨论了,这个留给专家解决。
totalfee
2017-09-24 13:09:19 +08:00
@LxExExl 通信的本质是简单的,其他复杂的东西都是为了解决某个问题而衍生的。

至于你问我编码的问题,我给你举个容易理解的例子吧:
“今天我在这个帖子里面第一次回复了你,算作发了“开始”指令。
再过几天,也可能是好几年,具体好久取决于我要传给你的信息量,我会第二次在这个帖子里面回复你,算作发了“停止”命令。
到时候你计算下这两个回复时间经过的分钟数(用分钟是因为我们选择的计数器精度有限),转换为二进制,再转 ASCII,就知道我给你表达的意思了。”
LxExExl
2017-09-24 13:11:53 +08:00
你发的"开始"我没收到怎么办?
kifile
2017-09-24 13:19:34 +08:00
和摩斯电码有异曲同工之妙
totalfee
2017-09-24 13:23:59 +08:00
@zgray 强,一眼看穿本质。


@aheadlead 是的,可以认为现有通信方式是 位宽为 1 的计数器。
sujin190
2017-09-24 13:26:57 +08:00
跪了,现在的计算机通信本来就是这么设计的,而且经过无数人改进,还是应该多去读点书
vmebeh
2017-09-24 13:31:05 +08:00
温湿度传感器 DHT11 就是这样的
datasheet: http://www.micropik.com/PDF/dht11.pdf
中文版: https://cdn-shop.adafruit.com/datasheets/DHT11-chinese.pdf
用的时候也就是需要按说明书写驱动了

没学过通信,感觉大部分通信方式的底层都差不多吧,约定电压区间为 0 或 1,按特定频率和规则发送和接收
totalfee
2017-09-24 13:31:40 +08:00
@nousername2030 是啊,所以这个通信方式目前没有实用价值。
但是可以作为某些领域传输特殊信息,比如传输情报,监控只看到发了两个信号,没人会怀疑你在和外界通信。
totalfee
2017-09-24 13:33:27 +08:00
@sujin190 我说我 97 年就开始学电子通信了你信不?
ryd994
2017-09-24 14:31:33 +08:00
1.怎么保证同步
2.怎么保证延时(丢包等效于无限延迟)
做到这两点你可以重写 NTP
3.考虑相对论了么
做到这点你可以重写 GPS

传输情报人家早就用数字电台跳频了,信号强度比背景噪声更低


@vmebeh 这不一样,之前的 50us 是同步信号,可以假设同步信号之后,双方时钟没有大的变化
crazyneo
2017-09-24 15:39:19 +08:00
这不就是 ntp 协议的简化+昂贵版么-。-
zhujinliang
2017-09-24 18:37:25 +08:00
就是相当于
用 01 表示 0
用 001 表示 1
用 0001 表示 2
...
这样呗。。。
有没有考虑过 带宽 问题?
hst001
2017-09-24 18:49:33 +08:00
原子弹的原理大家都知道了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/393196

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX