1. OSI参考模型的分层与数据封装的通俗解释
如果将OSI参考模型中两个进程之间的数据传输过程和邮政信件传递过程进行类比,可以得到以下解释。
·物理层:运输工具,像火车或汽车。
·数据链路层:相当于货物核对单,表明里面有些什么东西,接收时确认是否正确(CRC检验)。
·网络层:相当于邮政局或快递公司地址(IP地址),保证能正确到达对方。
·传输层:信封(TCP协议是挂号信,是可靠的;UDP协议是平信,尽力送达对方,不保证一定送达对方)。
·会话层:相当于邮票,每寄一封信都需要贴上邮票,并加盖邮戳以确定签发。
·表示层:在信封上填写地址内容是用中文还是其他语言(如英语)等。
·应用层:表示在信件上所写的内容。
信件在传递过程中的封装过程为:
·第一,应该有需要表达的内容(应用层)。
·第二,需要有一种合适的表达语言(表示层)。
·第三,要把信纸装进一个信封,贴上一张邮票(一封信就是一个会话)。
·第四,要选择用什么方式寄信(挂号信或平信,即TCP或UDP)。
·第五,选择一个快递公司或邮政局,告知地址,快递公司或邮政局根据地址选择运输方式(根据IP地址选择路由)。
·第六,邮政局对货物进行再包装,填好装箱单,供接收地的邮政局核对(货物总是先送到对方邮政局,对方邮政局的地址就相当于MAC地址,装箱单就相当于CRC校验码)。
·第七,货物通过具体的运输工具发送(汽车、火车、飞机等)。
2. 无线局域网
在TCP/IP协议中,网络接口层除了有Ethernet 802.3、Token Ring 802.5、X.25、帧中继、HDLC和PPP等协议以外,在1997年IEEE发布了802.11协议,这也是在无线局域网领域内第一个国际上被认可的协议。
在1999年9月,802.11b“High Rate”协议被提出,用来对802.11协议进行补充。802.11b在802.11的1Mbps和2Mbps速率下又增加了5.5Mbps和11Mbps两个新的网络传输速率。利用802.11b协议,移动用户能够获得同Ethernet一样的性能、网络传输速率、可用性。这个基于标准的技术使得管理员可以根据环境选择合适的局域网技术来构造自己的网络,以满足他们的商业用户和其他用户的需求。802.11协议的主要工作是在ISO协议的最低两层上,并在物理层上进行了一些改动,加入了高速数字传输的特性和连接的稳定性。
(1)802. 11工作方式
802.11定义了两种类型的设备,一种是无线站,通常是通过一台PC机加上一块无线网络接口卡构成;另一个称为无线接入点(Access Point, AP),其作用是提供无线和有线网络之间的桥接。一个无线接入点通常由一个无线输出口和一个有线的网络接口(802.3接口)构成,桥接软件应符合802.1d桥接协议。
这里所说的接入点就像是无线网络的一个无线基站,将多个无线的接入站聚合到有线的网络上。无线的终端可以是802.11 PCMCIA卡,PCI接口、ISA接口型的,也可以是在非计算机终端上的嵌入式设备(如802.11手机)。
(2)802. 11物理层
802.11最初定义的三个物理层包括了两个扩散频谱技术和一个红外传播规范。无线传输的频道定义在2.4GHz的ISM波段内,该频段在各个国际无线管理机构中,如欧洲的ETSI和日本的MKK都是非注册使用频段。这样,使用802.11的客户端设备就不需要任何无线许可。扩散频谱技术保证了802.11的设备在这个频段上的可用性和可靠的吞吐量,并使得使用同一频段的设备之间互不影响。
802.11无线标准定义的传输速率是1Mbps和2Mbps,可以使用FHSS(FrequencyHopping Spread Spectrum)和DSSS(Direct Sequence Spread Spectrum)技术。需要指出的是,FHSS和DSSS技术在运行机制上是完全不同的,所以采用这两种技术的设备之间没有互操作性。
(3)802. 11b的增强物理层
802.11b在无线局域网协议中最大的贡献在于其在802.11协议的物理层增加了两个新的速率:5.5Mbps和11Mbps。
为实现这个目标,DSSS被选作该标准的唯一的物理层传输技术。这个选择使得802.11b标准可以与1Mbps和2Mbps的802.11 DSSS系统之间实现互操作。最初802.11的DSSS标准使用11位的chipping-Barker序列来将数据编码并发送,每一个11位的chipping代表一个一位的数字信号1或者0,这个序列被转化成波形(称为一个Symbol),然后在空气中传播。这些Symbol以1MSps(每秒1M的Symbol)的速度进行传送,传送的机制称为BPSK(Binary Phase Shifting Keying)。而在2Mbps的传输速率中,使用了一种更加复杂的传输方式,称为QPSK(Quadrature Phase Shifting Keying),QPSK中的数据传输速率是BPSK的两倍,以此提高了无线传输的带宽。
在802.11b标准中,采用了一种更先进的编码技术,该编码技术摒弃了原有的11位Barker序列技术,而采用了CCK(Complementary Code Keying)技术。该编码技术的核心编码中有一个由64个8位编码所组成的集合,在这个集合中的数据拥有特殊的数学特性使得它们能够在经过干扰或者由于反射造成的多方接收问题后还能够被正确地互相区分。
5.5 Mbps传输速率使用CCK串来携带4位的数字信息,而11Mbps传输速率则使用CCK串来携带8位的数字信息。两个传输速率的传送过程都利用QPSK作为调制的手段,不过信号的调制速率为1.375MSps。这也正是802.11b获得高速传输的原理,表1-4列举了这些数据。
为了支持在有噪声的环境下能够获得较好的传输速率,802.11b标准采用了动态速率调节技术,来允许用户在不同的环境下自动使用不同的连接速度来弥补环境的不利影响。在理想状态下,用户能够以11Mbps的全速进行网络传输,然而当用户移动出理想的11Mbps速率传送的位置时或受到了干扰时,将会把传输速率自动按序降低为5.5Mbps、2Mbps、1Mbps。同样,当用户返回到理想环境时,传输速率也会以反向增加直至11Mbps。速率调节机制是在物理层自动实现的而不会对用户和其他上层协议产生任何的影响。
(4)802. 11数字链路层
802.11协议的MAC和802.3协议的MAC非常相似,都可以在一个共享媒体上支持多个用户共享资源,均由发送者在发送数据之前进行网络的可用性确认。在802.3协议中,是由一种称为CSMA/CD(Carrier Sense Multiple Access with Collision Detection)的协议来完成调节的,但在802.11无线局域网协议中,冲突的检测则存在一定的问题,这个问题称为“Near/Far”现象。这是因为如果要检测冲突,设备必须能够一边接收数据信号一边传送数据信号,而这在无线系统中是无法办到的。鉴于这个差异,在802.11中对CSMA/CD进行了一些调整,采用了新的协议CSMA/CA(Carrier Sense Multiple Access with Collision Avoid-ance)或DCF(Distributed Coordination Function)。CSMA/CA利用ACK信号来避免冲突的发生,也就是说,只有当客户端收到网络上返回的ACK信号后才确认送出的数据已经正确到达目的地。CSMA/CA通过这种方式来提供无线的共享访问,这种显式的ACK机制在处理无线问题时非常有效。然而,无论是对于802.11还是802.3来说,这种方式都增加了额外的负担,所以802.11网络和类似的Ethernet网进行比较时在性能上总是稍逊一筹。
另一个无线MAC层问题是“隐藏节点”(Hidden Node)问题。两个相反的工作站利用一个中心接入点进行连接,这两个工作站都能够监测到中心接入点的存在,但两个工作站互相之间则可能由于障碍或者距离原因无法感知到对方的存在。为了解决这个问题,802.11在MAC层上引入了一个新的Request To Send/Clear To Send(RTS/CTS)(请求发送/允许发送)协议选项。RTS/CTS协议是被802.11无线网络协议采用的一种用来减少由“隐藏节点”问题所造成的冲突的机制。相当于一种握手协议,主要用来解决“隐藏节点”问题。“隐藏节点”是指,基站A向基站B发送信息,基站C未侦测到A也向B发送,故A和C同时将信号发送至B,引起信号冲突,最终导致发送至B的信号都丢失了。“隐藏节点”多发生在大型单元中(一般在室外环境),这将带来效率损失,并且需要错误恢复机制。当需要传送大容量文件时,尤其需要杜绝“隐藏节点”问题的发生。802.11提供了如下解决方案。在参数配置中,若使用RTS/CTS协议,同时设置传送上限字节数,一旦待传送的数据大于此上限值时,即启动RTS/CTS握手协议:首先,A向B发送RTS信号,表明A要向B发送若干数据,B收到RTS后,向所有基站发出CTS信号,表明已准备就绪,A可以发送,而其余欲向B发送数据的基站则暂停发送;双方在成功交换RTS/CTS信号(完成握手)后才开始真正的数据传递,避免了冲突发生。
当该选项打开后,一个发送工作站传送一个RTS信号,随后等待访问接入点回送RTS信号。由于所有网络中的工作站能够“听”到访问接入点发出的信号,所以CTS能够让它们停止传送数据。这样发送端就可以发送数据和接收ACK信号而不会造成数据的冲突,从而间接解决了Hidden Node问题。由于RTS/CTS需要占用网络资源从而增加了额外的网络负担,所以一般只是在那些大数据报上采用该选项方法(重新传输大数据报耗费较大)。
最后,802.11协议MAC子层还提供了另外两个功能:CRC校验和包分片。在802.11协议中,每一个在无线网络中传输的数据报都被附加上了校验位以保证它在传送的时候不出现错误,这和Ethernet中通过上层TCP/IP协议来对数据进行校验有所不同。
包分片的功能则允许大的数据报在传送的时候被分成较小的部分分批传送。这在网络十分拥挤或者存在干扰的情况下(大数据报在这种环境下传送非常容易遭到破坏)是非常有效的。这项技术大大减小了许多情况下数据报被重传的概率,从而提高了无线网络的整体性能。MAC子层则负责将收到的被分片的大数据报进行重新组装,而对于上层协议这个分片的过程是完全透明的。