计算机网络是个什么鬼?

还记得本科的时候上计算机网络课的时候,老师在上面用一条直线的声音念课本,自己在下面玩儿手机,考试过了但是对于计算机网络到底是个啥还是没咋整明白,现在可能依然很多不明白的地方,但是通过自己的学习和思考,对计算机网络有了一个大概的认识,希望能够用一些简单通俗易懂的生活例子告诉大家什么是计算机网络。

一提到网络世界,人们都会觉得那是虚拟的,的确,计算机网络其实就是一个真实世界的映射,你访问的每一个网站,背后都有一台或多台的服务器在地球上某个角落里运行着。在真实世界里,我们每个人都可以去到自己想去的地方,通过走路,汽车,飞机等等(但是一定要遵守交通规则哦),现在我们把数据想象成一个人,那么同样的,只要数据遵守网络世界中的“交通规则”(TCP/IP协议族),那么它也可以去到自己想去的地方。

一次网络传输过程可以想象成一次装箱拆箱的快递过程。想象一下你在淘宝上买了一件动物园爆款加长绒衣(用户发出请求),卖家接收到消息后马上开始配货,打包发货(服务器响应请求并返回结果),这里我们先解释一下什么是IP地址和端口,在现实世界中,每个人都有家,每个家都有一个地址,使人们能够通过地址来找到你家,同样的我们通过IP地址就可以访问到对应的网站,那么对于端口,每个人的家中都有不同的房间,爸妈的卧室,我的卧室,洗手间,厨房,都有不同的功用,你可以把端口理解为不同的房间,服务器把端口分配给不同的应用来供他们使用,想像一下,如果没有端口梳理分工,吃喝拉撒都在自己的房间里面解决,那绝对会乱套的。回到正题,如下图的TCP/IP参考模型所描绘的,“数据”先被“卖家”(服务器)在应用层封装,在头部添加一些信息比如说“买家”的姓名,地址。货包装好了之后,“卖家”也不能亲自带着货给人家送过去吧,所以他十分机智的敲开了“圆通大师”的房间(传输层),说:“大师,我想寄个快递。” “圆通大师”淡定道:“搜噶,那施主你是想走TCP协议呢还是UDP协议啊?” “额。。。这个这个,大师我也不太懂,侬给厄解释下伐?” “简单的来讲呢就是使用TCP的话,如果在运送途中发生货件丢失(也就是丢包了)那么我们会重新再发送一次,只有当用户满意的点击了确认收货之后才算是结束,如果是用UDP呢,那么对不起啦,如果这件货中途丢掉的话,我们也只会淡淡一笑,let it go了,totally不关心用户最后有没有签字确认收货。欢迎您下次继续使用本快递”(正儿八经版解释:TCP采用三次握手协议来传输,简单的说就是发送方和接受方两方都要达成共识了才可以开始传输数据,TCP多用于信息传播,比如Email,文件传输等,因为他们都需要内容要一字不落一字不改的传输给对方。而UDP,则是不顾及接收方消化处理信息的能力,一股脑儿的都发过去,如果接收方处理消化的速度赶不上发送的速度,那么就会有一些数据被之后传送来的新数据覆盖掉,也就会造成数据丢失,具体可以回想感受一下小学的时候老师在课堂上听写念超快,自己写字速度根本跟不上的情况。但UDP也是很有用的,因为并不是所有的数据都是有用的,当我们和家人用facetime或者微信QQ视频聊天的时候,由于网络传输信号或其他原因,会出现短暂的卡顿延时,这时如果是使用TCP协议的话,那么你就需要挂断电话然后再重新拨号连接了,很傻是不是,但如果是UDP,只要把旧的来不及处理的数据淹没覆盖掉就可以继续保持通话顺畅了。所以会根据不同应用的不同需求,来选择不同的传输协议,当然TCP和UDP是最主要的两大协议,我们也还有其他协议,这里先不谈了。)

在快递公司把东西寄出去之后,作为“卖家”就一身轻松了,而负责送货的“圆通大师”此时就会根据目的地来选择经过那个中转站,使用什么运输工具来运送货物了,把这些问题的考虑抽象化以后就是网络层的一个重要协议-IP协议了。我们的数据经过一个又一个的中转站(路由)之后,终于要送到客户的手中了,那这时所要做的当然就是拆包了,就算包装上写的是动物园爆款加长绒衣,也要拆开以后穿在身上才能实实在在的有作用。网络接口层(或称链路层)的存在就是将我们之前被诸多协议一层一层封装的数据解析出来。所以通俗的来讲,你可以把一次网络传输的过程看作是一个对“数据”装箱——传输——拆箱的过程。

最后再说一些有的没的:我们经常听到有许多单身狗会把10086的姓名存成亲爱的,也有许多脚踏N条船的人怕被男/女朋友发现会把暧昧的男生女生姓名备注为10086这样,其实我们的DNS就是这样一个网络的电话簿,它把看起来不知所云的IPV4, IPV6地址比如192.168.121.0(IPV4地址),2603:a000:be42:a00:4c2d:3b15:64e5:7355(IPV6)转化成易于我们理解和记忆的域名,想www.baidu.com这样。当我们在浏览器中输入一个网址的时候,就会把我们输入的地址交给DNS来解析,转化成对应的IP地址,这样我们就可以访问到了,但是如果DNS失效或者是被篡改,那么可能就算你的电脑网络正常也访问不了你想要访问的网址了,除非你记得它的IP地址……

就说这么多了,当然计算机网络里面的概念何其繁多,我们可以以后继续讲

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,667评论 5 472
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,361评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,700评论 0 333
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,027评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,988评论 5 361
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,230评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,705评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,366评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,496评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,405评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,453评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,126评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,725评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,803评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,015评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,514评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,111评论 2 341

推荐阅读更多精彩内容

  • 1. OSI,TCP/IP,五层协议的体系结构,以及各层协议 OSI分层 (7层):物理层、数据链路层、...
    iCaptain阅读 2,446评论 0 4
  • 简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者...
    保川阅读 5,939评论 1 13
  • 名词延伸 通俗的说,域名就相当于一个家庭的门牌号码,别人通过这个号码可以很容易的找到你。如果把IP地址比作一间房子...
    杨大虾阅读 20,579评论 2 57
  • 作者:Poll的笔记博客出处:http://www.cnblogs.com/maybe2030/本文版权归作者和博...
    wshxj123阅读 2,391评论 0 19
  • #include 这是最原始的C语言中的导入头文件的方法。其中根据系统寻找头文件路径的不同而有两种语法: #inc...
    dalianer阅读 761评论 0 0