(仅仅是基础)网络通信的工作原理

        大学是什么,忘了;大学教了什么,忘了;大学学了什么,也忘了。工作了,才知道,大学虽然教了过时的东西,但却是基础;工作了,才知道,书到用时方恨少,郁闷的一笔。现在后悔,只能是在浪费时间,还是找个时间把大学浪费掉的补回来吧。废话少说吧,牢骚的话留给以后吧。

        今儿先总结点东西吧--网络通信的工作原理。仅仅是基础。

        网络的三大主要功能能够得以实现,其最基本的保证在于网络中计算机之间的数据能够得以传输。

       (网络的三大主要功能:

     计算机网络有很多用处,其中最重要的三个功能是:数据通信、资源共享、分布处理。 

     数据通信 
     数据通信是计算机网络最基本的功能。它用来快速传送计算机与终端、计算机与计算机之间的各种信息,包括文字信件、新闻消息、咨询信息、图片资料、报纸版面等。
利用这一特点,可实现将分散在各个地区的单位或部门用计算机网络联系起来,进行统一的调配、控制和管理。 

     资源共享 
    “资源”指的是网络中所有的软件、硬件和数据资源。“共享”指的是网络中的用户都能够部分或全部地享受这些资源。例如,某些地区或单位的数据库(如飞机机票、
饭店客房等)可供全网使用;某些单位设计的软件可供需要的地方有偿调用或办理一定手续后调用;一些外部设备如打印机,可面向用户,使不具有这些设备的地方也能使用这些硬件设备。如果不能实现资源共享,各地区都需要有完整的一套软、硬件及数据资源,则将大大地增加全系统的投资费用。 

     分布处理 
     当某台计算机负担过重时,或该计算机正在处理某项工作时,网络可将新任务转交给空闲的计算机来完成,这样处理能均衡各计算机的负载,提高处理问题的实时性;
对大型综合性问题,可将问题各部分交给不同的计算机分头处理,充分利用网络资源,扩大计算机的处理能力,即增强实用性。对解决复杂问题来讲,多台计算机联合使用并构成高性能的计算机体系,这种协同工作、并行处理要比单独购置高性能的大型计算机便宜得多。

        数据是如何传输的,我们先看看我们常见的邮政系统中信件是如何传送的

 

       我们可以想象一下我们平时的写信寄信的一个过程。首先我们写好信后,要让这封信能寄出去,我们就得贴邮票。而邮票,就是我们和邮政局的约定,我交8毛钱给你邮政局,那么你要负责帮我把信送到。而邮政局呢,也和运输部门有个类似的约定。通过这一系列的约定,我们可以保证我们所写的信能送到我们想要送到的目的地。但是这里注意一个问题:邮票做为约定不是一成不变的。比如说,刚刚解放前,也许送信只需要几分前。而现在人民的生活富裕了,相应的,一封信是8毛钱。也就是说,协议,或者约定完全是按照当时的情况做出的适当的处理。如果情况出现变化,协议一样可以随着情况而做出改变,这是因为,协议完全是人为约定的。

      同样在计算机网络通信中,也需要有一种规范,将过程分为几个步骤,大家都必须遵守相应的规定。

      实际上,网络上数据的传输过程和现实中是非常类似的,我们可以来想象一下:

  我现在有一批水果,准备运到罗马。如果我想实现这个目标,我需要什么条件?

  (1)       首先我要有一条路,不管是马路还是铁路,这条路要能从出发点连接到目标点。       第一层:物理层

  (2)       路是有了,我要保证这条路是通畅的,不能说走进死胡同,我要保证这条路能够通车,假设我是用火车来运的话,不会出现半路出轨的现象             第二层:数据链路层

  (3)       路永远不会只有一条。条条道路通罗马,那么,我要保证我要走的道路能最快,最省钱的到达目的地。因此,我要选择一条近路。                    第三层:网络层

  路已经有了,基本条件已经具备,我们现在可以开始送东西了,但是是不是有了路就万无一失了。我们还需要有什么?

  (4)       路是有了,我们现在坐火车把东西送过去,结果送到半中间被强盗打劫了,或者是被人偷了,所以我们要保证在送过去的途中要原封不动的送到,少一个都不行                   第四层:传输层

  (5)       好象一切都准备好了,现在我们准备出发了,但是等等,这条路上只能通一辆火车,万一罗马那正好也有一辆火车从那边开过来,路上撞到了怎么办,那么我们要和他们先沟通好。               第五层:会话层

  (6)       沟通好了,现在发货,我们坐着火车到了罗马,决定送过去,但是发现,我们听不懂罗马人的话,罗马人也不知道我们在说什么,这个时候我们非常有必要带一个翻译官,当然这并不是最好的选择,如果我们和罗马人说的是同样的语言就好了。不管怎么样,来接纳的人总算能和我们沟通了,当然,这是人和人的沟通,不是人和货物的沟通。                第六层:表示层

  (7)       真正的货物终于送到了,完成了。          第七层:应用层

这就是网络中一种通用的概念模型——OSI模型即开放系统互联参考模型(OSI(Open System Interconnection),开放式系统互联


应用层:在网络应用程序之间传递信息

       表示层:处理文本格式化,显示代码转换

       会话层:建立、维持、协调通信

       传输层:确保数据正确发送

       网络层:决定传输路由,处理信息传递

       数据链路层:编码、编址、传输信息

       物理层:管理硬件连接

     
      因特网模型出现在OSI之前,所以它的模型不遵循OSI的结构,他是传说中的4层模型即TCP/IP四层模型。因为因特网强调的是网络互连,所以它的最底层叫主机一网络层,泛指主机必须用某个协议连接到网络上。它的第2层互联网层(internet)也称网际层,是因特网的核心功能层。

     两者之间的对比


      下面已我们经常玩游戏来解释7层模型,我们就可以了解了一个游戏运作的原理。:

      首先,我要有一个游戏,这个游戏外表上看起来华丽无比,这就是第7层,应用层,也就是我们平时所用的所有的网络上的软件,游戏等等。

  接下来到第6层,游戏有了,在玩的过程中,我们要想把数据发送到服务器去,但是服务器不可能用眼睛看着我们玩游戏,因此我们要把游戏里的数据打包,包装好,用统一的格式发出去,这个叫“封包”。这就是第6层,表示层

  我们在玩游戏的时候,有一个人从屏幕边上跑过来,我的游戏上为什么会显示?原因在于服务器把数据发给我,告诉我有一个人从那边过来了。因此,不光是我发数据给服务器,同时服务器也把数据发给我了。在这个时候,我们就需要控制一下路线,是服务器先发呢,还是我这先发,当然了,这个交换的情况是非常快的,而且新的技术可以同时发,但是我们还是要有一个能保证沟通的机制,保证不会出什么大问题。这就是第5层,会话层

  万一网络上延迟得厉害怎么办,万一有游戏这卡住了怎么办,我就需要有第4层,传输层,我要保证我的数据是正确的,完整的,如果有问题,随时纠正和重新发送,把上面3层传下来的东西,交到下一层网络层去传送。

  上面四层称之为网络上前四层,下面我们来看看下三层,也就是基础的部分

  我们游戏之中有南方的玩家,也有北方的玩家,一般情况下南方都是电信的路线,北方都是网通,不管是什么路线,我走啊走啊总能让封包走到服务器那。这就是我们的网络层。我要知道我走哪条路能到达目的地,也就是一个路由的作用。

  再往下,我把数据发出去了,我怎么知道数据到没到服务器,或者说我在玩游戏的时候,如果出现卡了的状态,游戏怎么知道我卡了,服务器怎么知道我卡了?大家都有用QQ的经历,现在的网络都不错了,不会出现连接超时了,但是在网络不太好的时间里,就会出现超时。实际上,在这里有一个计时器,比方说,我发一个数据包出去,30秒内没有返回,我就告诉你,超时了。这就是数据链路层,控制着我们数据的发送接收。

  最后的最后,不管怎么样,我们要有一根网线,并且有网卡,或者猫。这就是物理层

  所有的这些,都是协议,有同学可能会说,这个网卡或者猫明明是硬件,怎么会是协议,是硬件没错,但是硬件设计的规格是根据协议来设计的,也许以后协议变了,硬件就不是这样设计了。

      不同层之间定义接口,同层之间定义协议。

      最后总结下两台计算机之间的程序通信流程:

      通过 OSI 层,信息可以从一台计算机的软件应用程序传输到另一台的应用程序上。例如,计算机 A 上的应用程序要将信息发送到计算机 B 的应用程序,则计算机 A 中的应用程序需要将信息先发送到其应用层(第七层),然后此层将信息发送到表示层(第六层),表示层将数据转送到会话层(第五层),如此继续,直至物理层(第一层)。在物理层,数据被放置在物理网络媒介中并被发送至计算机 B 。计算机 B 的物理层接收来自物理媒介的数据,然后将信息向上发送至数据链路层(第二层),数据链路层再转送给网络层,依次继续直到信息到达计算机 B 的应用层。最后,计算机 B 的应用层再将信息传送给应用程序接收端,从而完成通信过程。下面图示说明了这一过程。


OSI网络结构的七层模型

        这里只讲了个大概,要想仔细了解网络间通信,还得回去把大学的书啃一啃。

 
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值