【网络编程】网络原来这么简单(更新中)

故事背景:有一天小胖和他的朋友细狗出去吃饭,聊着聊着就聊到了网络,小胖是学校里的编程大佬,而细狗只是个空有求知欲的编程小白。

细狗:胖儿啊,你说计算机是怎么通信的我感觉好抽象啊。为啥别人给我发个消息,我就能收到呢?

小胖:靠网络呗?

细狗:网络是啥呢?

小胖:网络就是把很多终端设备,例如手机或者电脑,把他们连接起来相互通信。

细狗:那是怎么连接的呢?

小胖:我们平时有两种网络连接方式,有线网络和无线网络。你使用的WiFi就是无线网络通信技术的一种,此外还有蓝牙,Zigbee,Lora,NB-lot,4G等等。有线网络就是两个终端设备,直接通过网线连接传输数据。

细狗:有线网络我还能理解,毕竟还连了根线。那无线网络咋就凭空把数据发送给我了。

小胖:无线电波你应该听说过吧。这玩意你虽然看不见,但是平时不是老说信号吗,什么WiFi信号,手机信号原理都是类似的,空气中传播。

细狗:那无线电波哪来的啊?

小胖:那本来就有啊,咋的还能被谁发明出来啊。我记得高中时候不是学过,某个科学家发现了空气存在这种介质么。

细狗:嗷嗷,这样啊。就是我是想问,那无线电波是怎么被用到通信上来的啊?

小胖:(触及到知识盲区)······ 这个你现在先别管我给你说了你也听不懂。你就知道反正这种无线电波能用来通信就行。

细狗:这么吊,所以我们平时使用的WIFI都用到了无线电波?

小胖:对!我们国家不是有三大运营商么?你购买的任何网络服务就是他们其中之一提供的。他们在各地区搭建基站,并为用户提供服务。用户购买完他们的服务之后就可以与别人实现互相通信了。秉承着顾客就是上帝和盈利为第一准则的公司信条,为了保证良好的用户体验,运营商不断会增加、更新或者维护通信设备。这种通信设备就可以实现无线电收发,来保证我们的通信。

细狗:现在感觉网络通信不是那么抽象了,就是说通过某种物理方法进行数据收发。但是我发的是消息啊,比如我给女神如花发送“I love you”那无线电波或者网线还能把我的字母一个一个发送过去?

小胖:呆子!那玩意咋发,你太抽象了。谍战片看过没有?人家接头都不说大白话,说的都是暗号。

细狗:没看过。

小胖:啊这。你看到的“i love you”,只是计算机以某种方式给用户表现出来的。当你输入相应的字母时,CPU会开始工作并处理指令,你按下的按键在CPU看来就只是许多电脉冲罢了,电脉冲会被发送给屏幕,屏幕识别相应的电脉冲,然后在屏幕上转换成A,B,C这样的图形。所以当你发送消息时,你的设备相关硬件都会工作处理你输入的数据,然后转换成可以在物理层面传输的形式,比如光电信号或者无线电波,到达对方的终端设备后再转换成“i love you”给你女神表现出来。

细狗:这么神奇的吗?早说学物理去了。

小胖:6

细狗:我突然想到了一个问题,我知道他是我女神,那网络咋知道她是我女神呢?为啥数据就这么准确的发送到了她那?为啥发送到了她那消息就一定会被准确还原呢

小胖:挺会问呐。这个问题本质上就是一个终端寻找另一个终端的过程。所以就像你和如花一样,你们都有一个名字,其实你俩名字真挺奇葩的,估计都没人和你俩重名。我们在这个世界里细狗就是你,如花就是你女神,小胖就是我,我们都是独一无二的。在网络世界里面同样是,终端A和终端B也是独一无二的。当数据跑到目的终端后,目的终端识别数据就是给它的以后,它才会接收。

细狗:卧槽,难怪我发了这么多次消息她都没回我。也就是说我在发消息的时候还得问一下女神的手机序列号和出厂批次是吧?我还以为她每天都很忙呢?明天去她宿舍楼下等她,问一下设备信息。

小胖:有没有一种可能?我是说,大概、可能、也许手机厂商在手机生产的时候,就给每个手机就设置了名字。数据自己就能找到目的终端。

细狗:哈哈,这样好像是更方便啊!诶,不对啊?我发消息的时候没带她的终端信息啊?

小胖:

你可能感兴趣的:(Linux网络编程,网络,服务器,运维)