我在想,我们的路由没有插卡是不能上网的,但是我手机的数据却可以到达路由。于是我产生了一个疑问,那就是:为什么没有网络也可以进行通信
于是我突然意识到,通信本来就不需要网络,你能发送无线电波,我能接收无线电波,那我们就可以通信。就好像是声音,你能发出声音,我就能接收声音。
那我又产生了一个疑问,既如此,我们为何需要买流量,手机卡,才可以上网?直接无线电波初步就可以上网了?
于是我又问了deepseek,明白了互联网传输数据的本质。那就是,如果你能发出声音,那其他人也能发出声音。那样非常混乱,就是信号干扰;另一方面,我距离你2公里,我是听不到你的声音的。
于是我突然明白,手机连接wifi是通过小范围的无线电波,到达路由器之后就变成了光纤传播,传输距离远、抗干扰、并且经过路由器时会有程序判断ip地址,有选择地送至目的地
但是,我有产生了一个疑问,为什么要收费,因为光纤、基站、公网ip分配,这都是成本,那流量是怎么统计出来的呢,也是程序。这里我突然又明白了流量的真正面目,其实就是发送出去的数据大小,1MB既是内存空间单位,又是运营商收费的流量单位,那么路由器作为数据的转发设备自然是能统计发出的数据大小的,路由器会将发送的总数据大小上报给运营商,运营商就会收你的费用了。
那如何管控流量速率呢,这个问题困惑了我多年,研究生毕业的时候,我就在想运营商怎么控制流量速率,我觉得这是一个很宏观的概念。直到今天我才明白。
因为前段时间我处理了一个bug,就是禁用网络功能失败了,我研究禁用网络的底层逻辑,就是把要发送到网口的数据包全部丢掉,那就相当于速率为0。仔细一想了不就是这样吗,发送速率就是 (总量/t),那限制速率是怎么实现的呢,就是丢弃部分数据,以达到速率控制的效果。