(转)协议森林01 邮差与邮局 (网络协议概观)
2014-03-09 00:35
162 查看
协议森林01 邮差与邮局 (网络协议概观)
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!信号的传输总要符合一定的协议(protocol)。比如说长城上放狼烟,是因为人们已经预先设定好狼烟这个物理信号代表了“敌人入侵”这一抽象信号。这样一个“狼烟=敌人入侵”就是一个简单的协议。协议可以更复杂,比如摩尔斯码(Morse Code),使用短信号和长信号的组合,来代表不同的英文字母。比如SOS(***---***, *代表短信号,-代表长信号)。这样"***= S, ---=O"就是摩尔斯码规定的协议。然而更进一层,人们会知道SOS是求助信息,原因是我们有“SOS=求救”这个协议存在在脑海里。所以"***---***=SOS=求救"是一个由两个协议组成的分层通信系统。
计算机之间的通信也要遵循不同层次的协议,来实现计算机的通信。
物理层(physical layer) |
连接层(link layer) |
以太网(Ethernet)和WiFi是现在最常见的连接层协议。通过连接层协议,我们可以建立局域的以太网或者WiFi局域网,并让位于同一局域网络中的两台计算机通信。连接层就像是一个社区的邮差,他认识社区中的每一户人。社区中的每个人都可以将一封信(帧)交给他,让他送给同一社区的另一户人家。
网络层(network layer) |
通过路由连接的WiFi和以太网
整个通信过程如下:
WiFi上的计算机1 -> 路由WiFi接口 -> 路由以太网接口 -> 以太网上的计算机2
在连接层,我们的一个帧中只能记录SRC和DST两个地址。而上面的过程需要经过四个地址 (计算机1,WiFi接口,以太网接口,计算机2)。显然,仅仅靠连接层协议无法满足我们的需要。由于连接层协议开发在先,我们无法改动连接层协议,只能在连接层的数据(payload),也就是信纸内部下功夫了。IP协议应运而生。
计算机1,路由器和计算机2都要懂得IP协议。当计算机1写信的时候,会在信纸的开头写上这封信的出发地址和最终到达地址 (而不是在信封上),而在信封上写上要送往邮局。WiFi网的邮差将信送往邮局。在邮局,信被打开,邮局工作人员看到最终地址,于是将信包装在一个新的信封中,写上出发地为邮局,到达地为计算机2,并交给以太网的邮差,由以太网的邮差送往计算机2。
(IP协议还要求写如诸如校验等信息,交通状况等信息,以保护通信的稳定性。)
在连接层,邮差只负责在本社区送信,所以信封上的地址总是“第一条街第三座房子”或者说“中心十字路口拐角的小房子”这样一些本地人才了解的地址描述,这给邮局的工作带来不便。所以邮局要求,信纸上写的地址必须是一个符合官方规定的“邮编”,也就是IP地址。这个地址为世界上的每一个房子编号(邮编)。当信件送到邮局的时候,邮局根据邮编,就能查到对应的地址描述,从而能顺利改写信封上的信息。
每个邮局一般连接多个社区,而一个社区也可以有多个邮局,分别通往不同的社区。有时候一封信要通过多个邮局转交,才能最终到达目的地,这个过程叫做route。邮局将分离的局域网络连接成了internet,并最终构成了覆盖全球的互联网。
传输层(transport layer) |
传输层协议,比如TCP和UDP,使用端口号(port number)来识别收信人(某个进程)。在写信的时候,我们写上目的地的端口。当信到达目的地的管理员手中,他会根据传输层协议,识别端口号,将信送给不同的人。
TCP和UDP协议是两种不同的传输层协议。UDP协议类似于我们的信件交流过程。TCP协议则好像两个情人间的频繁通信。一个小情人要表达的感情太多,以致于连续写了好几封信。而另一方必须将这些信按顺序排列起来,才能看明白全部的意思。TCP协议还有控制网络交通等功能。
应用层(application layer) |
总结 |
本地地址(邮差)、邮编(邮局)、收信人(管理员)、收信人行业(用语规范)这些概念。
这些概念最终允许互联网上的分布于两台计算机的两个进程相互通信。
写信人必须按照各层的协议,封装好整个信封 (encapsulation);而收信人则按照相反的顺序,来拆开这个信封。整个过程是可读信息 -> 二进制 -> 可读信息。计算机只能理解和传输0/1序列,而计算机的用户则总是输入和输出可读信息。网络协议保证了可读信息在整个转换和传输过程中的完整性。
计算机协议本身还有更多的细节需要深入。这篇文章只是从分层的角度描述各个层次所实现的功能。
相关文章推荐
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局 (网络协议概观)
- 网络协议01 邮差与邮局 (网络协议概观)
- 协议森林01 邮差与邮局(protocol)
- 邮差与邮局——网络协议概观(转载)
- TCP-IP协议详解(1)邮差与邮局 (网络协议概观)
- 网络协议概观(邮差与邮局)
- (转载)邮差与邮局——网络协议概观
- 邮局协议(pop)--网络大典
- IOS Socket 01-网络协议基础知识
- (一)网络协议概观
- 01-计算机网络概述之协议分层(七层、四层)01-lh
- Linux工具开发[01]---网络协议中常见编码的原理及其解码函数的实现