编辑: 木头飞艇 2012-12-21

以太网上的计算机2 在连接层,一个帧中只能记录起点SRC和终点DST两个地址.而上面的过程需要经过四个地 址(计算机1,WiFi接口,以太网接口,计算机2).显然,仅仅靠连接层协议无法满足我们的需 要.由于连接层协议开发在先,我们无法改动连接层协议,只能在连接层的数 据 (payload) ,也就是信纸内部下功夫了.IP协议应运而生. 计算机1,路由器和计算机2都要懂得IP协议.当计算机1写信的时候,会在信纸的开头写上这 封信的出发地址和最终到达地址(注意,这里是信纸,而不是在信封上),信封上写要送往的邮 局.WiFi网的邮差将信送往邮局.在邮局,信被打开,邮局工作人员看到最终地址,于是将 信包装在一个新的信封中,写上出发地为邮局,到达地为计算机2,并交给以太网的邮差,由 以太网的邮差送往计算机2. (IP协议还要求写如诸如校验等信息,交通状况等信息,以保护通信的稳定性.) &

邮局柜台交接 在连接层,邮差只负责在本社区送信,所以信封上的地址总是 第一条街第三座房子 ,或者 说 中心十字路口拐角的小房子 这样一些本地人才了解的地址描述,这给邮局的工作带来不 便.所以邮局要求,信纸上写的地址必须是一个符合官方规定的 邮编 ,也就是IP地址.这个 地址为世界上的每一个房子编号(邮编).当信件送到邮局的时候,邮局根据邮编,就能查到对 应的地址描述,从而能顺利改写信封上的信息. 协议森林

6 邮差与邮局 每个邮局一般连接多个社区,而一个社区也可以有多个邮局,分别通往不同的社区.有时候 一封信要通过多个邮局转交,才能最终到达目的地,这个过程叫做路由 (routing) .邮局将 分离的局域网络连接成了互联,并最终构成了覆盖全球的互联网. 传输层(transport layer) 上面的三层协议让不同的计算机之间可以通信.但计算机中可能运行了许多个进程,每个进 程都可能有自己的通信需求.比如我们打开firefox浏览网页,与此同时,又用outlook来接收 邮件.一个计算机里的多个进程就像是住在一所房子里住的好几个人, 我们之前的通信协议,足以让我们把信息从一所房子发送到另一所方法.但如何将信精确的 送到某个人手里呢?遵照之前相同的逻辑,我们需要在信上增加新的信息,比如收信人的姓 名,才可能让信送到.所以,传输层就是在信纸的空白上写上新的 收信人 信息.每一所房子 会配备一个管理员(传输层协议).管理员从邮差手中接过信,会根据 收信人 ,将信送给房子 中的某个人. &

大楼管理员分发信件 传输层协议,比如TCP和UDP,使用端口号(port number)来识别收信人(某个进程).在写信的 时候,我们写上目的地的端口.当信到达目的地的管理员手中,他会根据传输层协议,识别 端口号,将信送给不同的人. TCP和UDP协议是两种不同的传输层协议.UDP协议类似于我们的信件交流过程.TCP协议 则好像两个情人间的频繁通信.一个小情人要表达的感情太多,以致于连续写了好几封信. 而另一方必须将这些信按顺序排列起来,才能看明白全部的意思.TCP协议还有控制网络交 通等功能. 应用层(application layer) 通过上面的几层协议,我们已经可以在任意两个人(进程)之间进行通信.但人们显然还不满 足.每个人从事的是不同的行业.有的人是律师,有的人外交官.律师之间的通信,要严格 的律师术语,以免产生纠纷.外交官之间的通信,必须符合一定的外交格式,以免发生外交 误会.再比如间谍通过暗号来传递加密信息.应用层协议是对信件内容进一步的用语规范. 应用层的协议包括用于Web浏览的HTTP协议,用于传输文件的FTP协议,用于Email的IMAP 等等. &

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题