关于网络数据的传输大体上可以分为两步:
- 找到想要给他数据的人
- 给他可以理解的数据
就像是小刘想要找到女朋友丽丽,跟她说"我爱你",而且想要女朋友同样对自己说"我也爱你"
但是如何做到呢?有人会说,好办呀,打开微信,找到丽丽,然后给她发,如果您看到这里觉得这样的回答简直完美的话,就可以关闭这个页面了...
找到想要给他数据的人
比如我要给丽丽邮寄个快递,我需要知道丽丽的具体地址,然后由专业的邮差小哥从我这里取走快递,然后带回到集中点,通过快递大飞机送到丽丽所在的城市,再通过快递小哥把快递送到我写的地址,敲敲门,丽丽开门,快递小哥核对下丽丽的身份,就可以把快递交给她
其实我们的网络世界也是这样子的
IP地址: 对应的是我们的发货/收货地址,每一个包裹都包含源IP地址,目标IP地址,通过这个我可以找到真实的位置
MAC地址: 对应我们的发货人/收货人,每一个包裹都包含源MAC地址,目标MAC地址,通过这个我可以确定把包裹给到谁的手里,比如上面说的,快递小哥敲门,开门的有两个人,打接收人的电话,一个人接听了,快递小哥才会把包裹给到接听电话的人手中
路由: 运输数据的路线,比如我们的快递需要从北京发出,转运到天津,再到保定,最后到石家庄,这个路线及其中的节点叫做路由,这个过程需要交换机,路由器等
给他可以理解的数据
接上文,小丽拿到手里的快递,看到是我寄的,打开发现是最新的iphone14pro,非常的开心,打开微信,给我发消息说"谢谢我的宝贝,礼物已收到❤️",我看到后就知道她已经收到快递了,她为什么打开快递会开心呢?为什么她发的消息,我能知道她收到了?如果您看到这里觉得"是个人就会觉得iphone好,是个人看了消息都知道他收到快递了",同上,请关闭这个页面....
其实上面两个问题,我们可以统一成一个,就是我干的事情她明白,她干的事情我明白,我们是相互可以理解的,如果对方是只猪,我觉得她不会高兴,也不会用手机给我发消息...
这个对应到网络世界中就是各种协议,我们人类交流沟通需要语言,网络也一样,各种协议就是他们的语言
各种协议保证了网络中数据的可读性,
比如TCP协议中,三次握手,哦,对方知道了,你要跟我进行安全通信
比如TCP协议中,发送多段数据,哦,对方知道多段数据的连接顺序,知道哪部分数据丢了,让你重新发一个
又比如HTTP协议中,Range: bytes=300-1460,哦,对方知道了,你需要300-1460字节的数据
...
这里各种的协议组成了网络世界的语言,双方使用一样的协议,就等于有一样的认知和理解水平,就可以相互沟通相互理解了.
看到这里想必大家对网络数据传输有了比较整体的了解,如果细化,其中每一点都有更多的内容,比如怎么从北京一步一步到达石家庄,这其中发生了什么,感兴趣的同学可以自己了解下
网友评论