﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-darkstax-随笔分类-数据通信与网络教程</title><link>http://www.cnitblog.com/darkstax/category/3949.html</link><description>slackware linux</description><language>zh-cn</language><lastBuildDate>Mon, 26 Sep 2011 07:41:22 GMT</lastBuildDate><pubDate>Mon, 26 Sep 2011 07:41:22 GMT</pubDate><ttl>60</ttl><item><title>数据通信</title><link>http://www.cnitblog.com/darkstax/archive/2006/10/10/17819.html</link><dc:creator>darkstax</dc:creator><author>darkstax</author><pubDate>Tue, 10 Oct 2006 02:23:00 GMT</pubDate><guid>http://www.cnitblog.com/darkstax/archive/2006/10/10/17819.html</guid><wfw:comment>http://www.cnitblog.com/darkstax/comments/17819.html</wfw:comment><comments>http://www.cnitblog.com/darkstax/archive/2006/10/10/17819.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/darkstax/comments/commentRss/17819.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/darkstax/services/trackbacks/17819.html</trackback:ping><description><![CDATA[
		<p>数据通信<br /><br />前面讨论了传输的基础和信息传送所必需的各种机制，下面开始讨论通信。<br /><br />“传输和通信有什么区别呢？”<br /><br />用人的讲话来作一个比方。我们弄懂了人说话的内部机制，人的嘴巴如何巧妙处理这些声音，从而形成我们所称的语音－－但这还远远不能算是通信。你发出的单词必须加以组织以形成句子。如果你说得太快或者太慢，别人将无法理解。如果很多人同时说话，那也将一事无成。如果有人用一种你不懂的语言讲话，沟通也无法进行。如果句子中少掉了某些单词或者短语，也将会丢失一些含义。<br /><br />电子通信也存在相似的问题。为了理解报文，接收方必须知道信息比特的组织方式。为了解释报文，接收方必须清楚报文到达的速度。如果同时有许多人要使用同一媒体，那将出现什么情况？这在局域网中经常发生。有没有办法可以少传输几个比特，但仍然保持信息的完整含义？<br /><br />传输模式<br /><br />传输模式定义了比特组合从一个设备传到另一个设备的方式。它还定义了比特是可以同时在两个方向上传输，还是设备必须轮流地发送和接收信息。<br /><br />串行和并行传输<br /><br />首先，我们来区分串行和并行传输。并行传输指可以同时传输一组比特，每个比特使用单独的一条线路（导线）。这些线路通常被捆扎在一条电缆里。并行传输非常普遍，特别是用于两个短距离的设备之间。<br /><br />并行传输应用到长距离的连接上就无优点可言了。首先，在长距离上使用多条线路要比使用一条单独线路昂贵。其次，长距离的传输要求较粗的导线，从而降低信号的衰减。这时要把它们捆到一条单独电缆里相当困难。第三个问题涉及比特传输所需要的时间。短距离时，同时发送的比特几乎总是能够同时收到。但长距离时，导线上的电阻或多或少地阻碍比特的传输，从而使它们的到达稍快或稍慢，这将给接收端带来麻烦。<br /><br />串行传输提供了并行传输以外的另一种选择。它只使用一条线路，逐个地传送所有的比特。它比较便宜，用在长距离连接中也比并行传输更加可靠。因为它每次只能发送一个比特位，所以其速度也比较慢。<br /><br />这种传输方式给发送设备和接收设备增加了额外的复杂性。发送方必须明确比特发送的顺序。同样，接收方必须知道一个目标字节中收到的第一个比特位应该放在什么位置上。这个问题虽然看起来比较琐碎，但不同体系结构对字节内比特的编号各不相同，如果各协议在比特的顺序上无法取得一致的话，信息的传输将出现错误。<br /><br /><img src="file:///F:/Ebook/数据通讯与网络教程/cbx.jpg" /><br /><br />异步和同步传输<br /><br />有两种提供串行通信的方法：异步传输和同步传输。异步传输指比特被划分成小组独立传送。发送方可以在任何时刻发送这些比特组，而接收方从不知道它们会在什么时候到达。<br /><br />异步传输是一种典型的基于字节的输入输出。这是一个操作系统术语，指数据按每次一个字节进行传送。<br /><br />异步传输存在一个潜在的问题。注意接收方并不知道数据会在什么时候到达。在它检测到数据并作出响应之前，第一个比特已经过去了。这就像有人出乎意料地从后面走上来跟你说话，而你没来得及反应过来，漏掉了最前面的几个词。因此，每次异步传输都以一个开始位开头，它通知接收方数据已经到达了。这就给了接收方响应、接收和缓存数据比特的时间。在传输结束时，一个停止位表示一次传输的终止。按照惯例，空闲的线路实际携带着一个代表二进制1的信号，开始位使信号变成0。其他的比特位使信号随比特值而变化。最后，停止位使信号重新变回1，该信号一直保持到下一个开始位到达。<br /><br /><img src="file:///F:/Ebook/数据通讯与网络教程/ybcs.jpg" /><br /><br />异步传输被设计用于低速设备，比如键盘和某些打印机等。另外，它的开销较多。在上面的例子中，每8个比特就多传送两个比特。这样，总的传输负载就增加25％，对于数据传输量小的低速设备来说还好，对于那些数据传输量很大的高速设备来说，25％的负载增值就相当严重了。<br /><br />同步传输的比特分组要大得多。它不是独立地发送每个字符，每个字符都有自己的开始位和停止位，而是把它们组合起来一起发送。我们称这些组合为数据帧，或简称为帧。<br /><br />数据帧的具体组织形式随协议而定，数据帧有许多公共的特征。下图显示了一个数据帧的一般组织形式。方向是从右向左。<img src="file:///F:/Ebook/数据通讯与网络教程/tbcs.jpg" /><br /><br />数据帧的第一部分包含同步字符（SYN），它是一个独特的比特组合，用于通知接收方一个帧已经到达。SYN字符类似于前面提到的开始位，但它还能确保接收方的采样速度和比特的到达速度保持一致。<br /><br />接下来是控制位，可能包含下列这些元素：<br />源地址。指出数据帧从哪里来的。<br /><br />目的地址。指出数据帧到哪里去。这在数据帧需要经过几个节点才能到达目的地的网络中非常重要。<br /><br />序列号。它用于有很多帧被传送出去，但由于某种原因无法按顺序到达目的地的情况。接收方使用序列号对帧进行重组。<br /><br />帧类型。随协议而定。<br /><br />数据位定义了要发送的信息。字符之前不需要开始位和停止位。<br /><br />错误检查位。用来检查或校正传输错误。<br /><br />最后是一个帧结束标记。和SYN字符一样，它是一个独特的比特串，用于表示没有别的即将到达的比特了（至少在下一帧开始之前）。<br /><br />同步传输通常要比异步传输快速很多。它的开销也相应较少。注意随着数据比特量的增加，开销所占的百分比相应地较少。另一方面，数据域越大，缓存数据所需的缓冲区也越大，这就限制了一个帧的大小。另外，帧越大，它占据传输媒体的连续时间也越长。在极端的情况下，这将导致其他用户等的太久。<br /><br />单工、双工和全双工通信<br /><br /><img src="file:///F:/Ebook/数据通讯与网络教程/dsg.jpg" /></p>
		<p>接口标准<br /><br />前面描述了传送信息的几种方法。你可能由此推断说两台设备只要使用相同的机制收发信息，就能互相通信。其实不然。如果两人同时说话，谁都不去听对方在说些什么，那它们将无法沟通。常识告诉我们要实现沟通，就必须轮流倾听和发言。有序的讨论要求建立能够对发言个体作出认可的规则（协议）。设备间的通信同样也需要协议的引导。如果设备没有准备好对信号进行接收和解释，那么给它发送调制信号是没有用的。<br /><br />下面给出了一种设备连接的典型方案。集中讨论DTE-DCE接口标准。<br /><br /><img src="file:///F:/Ebook/数据通讯与网络教程/ddjk.jpg" /><br /><br />RS-232接口<br /><br />一个众所周知的接口标准是RS-232标准。我们这里只介绍于60年代晚期制定的RS-232-C标准，因为它是最常见的版本。<br /><br />该标准最为明显的一点是DTE和DCE之间的连线数（25）。如果标准被完全实现的话，DTE和DCE的连接使用一条25线的电缆（有时称为DB-25电缆），电缆与设备的接口是一个25针的连接器。<br /><br /><img src="file:///F:/Ebook/数据通讯与网络教程/rs232.jpg" /><br /><br /><img src="file:///F:/Ebook/数据通讯与网络教程/rs232dy.jpg" /><br /><br />//一个PC和一个调制解调器信号交换的例子。。。<br /><br />RS-232的子集<br /><br />如果观察一下PC机的背面，我们会发现连接RS-232端口的连接器并没有25针，而是8或9针。我们刚刚讨论了RS-232标准，生产商是否完全地实现了整个标准是另一回事。而实际的情况是很多接口只包含RS-232标准的一个子集。<br /><br />为了实现多种功能，很多调制解调器遵循完整的标准。但大多数用户并不需要RS-232的所有功能。它们的主要通信需求就像刚才的例子中描述的那样。因此，调制解调器端口通常只需要一个8至9针的连接器，其中包括刚才例子中提到的那七条线路，再加上一两条地线。作出这样的决定，通常是处于经济上的考虑。<br /><br />RS-232标准的一个缺点是它在带宽和距离上的限制。它一般用于50英尺的距离内每秒传输20k个比特。<br /><br />空调制解调器<br /><br />//一个空调制解调器的例子。。。<br /><br /></p>
<img src ="http://www.cnitblog.com/darkstax/aggbug/17819.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/darkstax/" target="_blank">darkstax</a> 2006-10-10 10:23 <a href="http://www.cnitblog.com/darkstax/archive/2006/10/10/17819.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>广域网</title><link>http://www.cnitblog.com/darkstax/archive/2006/10/09/17780.html</link><dc:creator>darkstax</dc:creator><author>darkstax</author><pubDate>Mon, 09 Oct 2006 12:17:00 GMT</pubDate><guid>http://www.cnitblog.com/darkstax/archive/2006/10/09/17780.html</guid><wfw:comment>http://www.cnitblog.com/darkstax/comments/17780.html</wfw:comment><comments>http://www.cnitblog.com/darkstax/archive/2006/10/09/17780.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/darkstax/comments/commentRss/17780.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/darkstax/services/trackbacks/17780.html</trackback:ping><description><![CDATA[广域网比局域网覆盖大的多的区域，在这种情况下，LAN协议将不再适用，必须制定新的协议。<br /><br />再用高速公路系统的例子来作一下类比。许多城市都有一条穿过中心的高速公路（公共总线）或环形公路（环形网络）。如果城市不大，这一设计将能相当妥善地应付大部分的公路交通。但对于更大的范围，采用这种架构显然是不合理的。取而代之的是一种复杂的连接策略，连接主要的高速公路、高架及省、市的公路系统。将这类系统列为总线、环形结构，或者是两者的结合都是不恰当的，它要复杂的多。<img src ="http://www.cnitblog.com/darkstax/aggbug/17780.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/darkstax/" target="_blank">darkstax</a> 2006-10-09 20:17 <a href="http://www.cnitblog.com/darkstax/archive/2006/10/09/17780.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>局域网</title><link>http://www.cnitblog.com/darkstax/archive/2006/10/08/17726.html</link><dc:creator>darkstax</dc:creator><author>darkstax</author><pubDate>Sun, 08 Oct 2006 10:00:00 GMT</pubDate><guid>http://www.cnitblog.com/darkstax/archive/2006/10/08/17726.html</guid><wfw:comment>http://www.cnitblog.com/darkstax/comments/17726.html</wfw:comment><comments>http://www.cnitblog.com/darkstax/archive/2006/10/08/17726.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/darkstax/comments/commentRss/17726.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/darkstax/services/trackbacks/17726.html</trackback:ping><description><![CDATA[现在讨论维护多个站点间的通信所必需的不同连接策略和协议。<br /><br />以太网：IEEE 802.3标准<br /><br />以太网有一个总线拓扑。竞争网段的站点使用一种带冲突检测的载波侦听多路访问（CSMA/CD）的竞争协议。局域网标准有三种：802.3，802.4，802.5。<br /><br />网络操作通常被最低的3层所定义：物理层、数据链路层和网络层。数据链路层立足于物理层之上为网络层提供服务。详细地说，数据链路层负责一个网络中两个节点间的精确通信。这牵涉到帧格式、错误检测和流量控制。这些主题是独立于网络拓扑的。例如，错误检测算法不会关心一个帧是迈过总线还是环被发送。<br /><br />因此，数据链路层被进一步分为两个子层：逻辑链路控制（LLC）和媒体访问控制（MAC）。<br /><br /><img src="F:\Ebook\数据通讯与网络教程\sjll.bmp" /><br /><br />逻辑链路控制处理两个站点之间的逻辑链接，而媒体访问控制控制对传输媒体的访问。逻辑链路控制也是一个标准（IEEE 802.2），并且是基于高级数据链路控制协议的（HDLC）。基本上，逻辑链路控制为网络层提供服务，并且为了具体的任务调用媒体访问控制。<br /><br />IEEE 802.3标准是一个媒体访问控制协议。令牌环和令牌总线标准也是媒体访问控制协议。<img src ="http://www.cnitblog.com/darkstax/aggbug/17726.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/darkstax/" target="_blank">darkstax</a> 2006-10-08 18:00 <a href="http://www.cnitblog.com/darkstax/archive/2006/10/08/17726.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通信基础</title><link>http://www.cnitblog.com/darkstax/archive/2006/10/07/17698.html</link><dc:creator>darkstax</dc:creator><author>darkstax</author><pubDate>Sat, 07 Oct 2006 09:06:00 GMT</pubDate><guid>http://www.cnitblog.com/darkstax/archive/2006/10/07/17698.html</guid><wfw:comment>http://www.cnitblog.com/darkstax/comments/17698.html</wfw:comment><comments>http://www.cnitblog.com/darkstax/archive/2006/10/07/17698.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/darkstax/comments/commentRss/17698.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/darkstax/services/trackbacks/17698.html</trackback:ping><description><![CDATA[
		<strong>▲ 通信媒体</strong>
		<br />
		<br />共有三种类型的传输媒体，每一种类型都有许多品种。第一种媒体是铜、铁等金属导体。第二种媒体是透明玻璃或塑胶绳，它们可以通过光波实现数据传输。第三种媒体根本不需要物理连接，而是依靠电磁波，正如无线电视和无线电广播一样。它们的生产成本都不一样。另外，它们连接的设备成本也有差别。<br /><br />各种媒体每单位时间传输的比特位有两个重要的指标：比特速率和带宽。比特速率是每单位时间传输比特位的量度标准，单位是bps。带宽就是媒体能够传输的最高频率和最低频率的差值。比如说，电话信号的频率是300～3300Hz，那么它的带宽就是3000Hz。从技术角度上说，带宽和比特速率是两个不同的概念，但是它们之间有重要的联系。<br /><br />要在两台设备之间传送比特位，通常需要一个物理连接，或是利用无线电和电视广播中使用的电磁波。下面介绍几种物理连接的方法及无线通信技术。<br /><br /><strong>金属导体：双绞线</strong><br /><br />双绞线由扭在一起的两根绝缘铜线组成。双绞线通常用于传输平衡信号。也就是说，每条导线都带有电流，但它们分别携带的信号相位相差180度。外界电磁干扰给两个电流带来的影响将相互抵消，从而使信号不至于迅速衰退。螺旋状结构有助于抵消电流流经导线过程中有可能增大的电容。<br /><br /><img src="F:\Ebook\数据通讯与网络教程\sjx.jpg" /><br /><br />双绞线的模拟信号带宽可以达到250kHz。数字信号的数据速率随距离而不同。比如说，快速以太网的局域网协议采用双绞线传输数据，速率可达100Mbps，每段长100米。<br /><br /><strong>金属导线：同轴电缆</strong><br /><br />同轴电缆由四个部分构成。最里层是铜质或铝质导体，和双绞线一样，裸线携带着信号。外面是一层绝缘体，防止金属导体碰到第三层材料。第三层通常是一层紧密缠绕的网状导线。这种编织导线起着屏蔽作用，保护裸线免受电磁干扰。同时它也能防止动物破坏裸线。最外层是起保护作用的塑料皮。<br /><br /><img src="F:\Ebook\数据通讯与网络教程\tzdl.bmp" /><br /><br />由编织导线构成的屏蔽层能够很好地隔离外来的电信号。因此，同轴电缆大约有100MHz的带宽，数据速率可达500Mbps。然后，同轴电缆要比双绞线昂贵的多。同轴电缆通常采用基带模式或宽带模式传输信息。<br /><br /><strong>光导纤维</strong><br /><br />光纤线的三个主要部分是核心、覆层和保护层。核心部分由纯净的玻璃或塑胶材料制成。覆层包围着核心部分，它也是玻璃或塑料的，但它的光密度要比核心部分低。<br /><br /><img src="F:\Ebook\数据通讯与网络教程\gdxw.jpg" /><br /><br /><strong>无线通信</strong><br /><br />有两种类型的无线通信十分重要：微波传输和卫星传输。微波传输一般发生在两个地面站之间。如果要实现长途传输，可以在中间设置几个中继站。卫星传输是微波传输的一种，只不过它的一个站点是绕地球轨道运行的卫星。<br /><br />以下是各种传输媒体的比较：<img src="F:\Ebook\数据通讯与网络教程\csmt.bmp" /><br /><br />▲ <strong>编码</strong><br /><br />无论媒体是使用光波、电流还是微波，都无法避开一个可能是最基本的通信问题：信息是怎样被编码成适合传输的格式的？计算机能够存储的最小单元是比特位，用0和1表示。0和1任意组合可以对应莫个确定的内容，这种联系称为编码。目前有很多种编码。比较讨厌的问题是如何在编码不同的设备之间建立通信。为了使通信容易一点，人们发明了一些标准的编码格式。然而即使是这些标准，也各不相同，互不兼容！通信领域里有一句更加深刻的话，“标准的唯一问题就是它们太多了。”。最广为流传的编码是ASCII码。第二种最常用的编码是EBCDIC码。另外还有博多码、莫尔斯码和BCD码。<br /><br /><strong>数字编码方案<br /></strong><br />数字信号和数位化编码的数据之间存在着自然的联系。数位化存储的数据表现为0和1的序列。由于数字信号能够在两个恒量之间交替变换，所以可以把0赋给一个恒量，1赋给另一个恒量。恒量的取值并不重要，为了保持论述的普遍性，我们把它们称为“高电平”和“低电平”。<br /><br /><strong>不归零法编码（NRZ）</strong><br /><br />不归零法编码可能是最简单的一种编码方案。它传送一个0时把电压升高，而传送一个1时把电压降低。这样通过高低电平的变换可以传送0和1的任何序列。NRZ指的是在一个比特位的传送时间内，电压是保持不变的（比如说，不回到零点）。图2－31描述了二进制串10100110的NRZ传输过程。<br /><img src="F:\Ebook\数据通讯与网络教程\nrz.bmp" /><br /><br />NRZ编码虽然简单，但是却存在一个问题。假设我们传送一个“0的序列”，到底是多少个0呢？对于这个问题，你会回答说着取决于一个比特位的持续时间。这会给数据传输带来什么样的影响呢？当一台设备传送一个比特的数字信号时，它将在一定的周期T内，产生一个持续的信号。一个内置的时钟负责定时。接收设备必须知道信号的周期，这样它才能在每个T时间单元内对信号进行采样。它也有一个负责定时的内置时钟。剩下的就是确保两个时钟使用同样的T。下一个问题是：所有的时钟总是能保持一致吗？几乎可以肯定的说不能。就像指挥家确保演奏者的同步一样，通信设备也需要某种机制以使它们的定时保持一致。不变的信号不具备同步机制。但如果信号可以改变的话，这种改变就可以用来保持设备的同步。有些强制信号改变的编码方案就是这个原因。<br /><br /><strong>曼彻斯特编码</strong><br /><br />曼彻斯特编码用信号的变化来保持发送设备和接收设备之间的同步。也有人称之为同步码。为了避免2－32中出现的情况，它用电压的变化来分辨0和1。它明确规定，从高电平到低电平的跳变代表0，从低电平到高电平的跳变代表1。图2－33给出了比特串01011001的曼彻斯特编码。<br /><br /><img src="F:\Ebook\数据通讯与网络教程\mtst.bmp" /><br /><br />如图所示，信号的保持不会超过一个比特位的时间间隔。即使是0或1的序列，信号也将在每个时间间隔的中间发生跳变。这种跳变将允许接收设备的时钟与发送设备的时钟保持一致。曼彻斯特编码的一个缺点是需要双倍的带宽。也就是说，信号的跳变频率是NRZ编码的两倍。<br /><br />这种编码的一个变形称为差分曼彻斯特编码。与曼彻斯特编码的区别是在每个时间间隔的开始处。0将使信号在时间间隔的开始处发生跳变，1将使信号保持它在前一个时间间隔尾部的取值。在这里我们通过检查每个时间间隔开始处信号有无跳变来区分0和1。检测跳变通常更加可靠，特别是线路上有噪音干扰的时候。如果有人把连接的导线颠倒了，也就是把高低电平颠倒了，这种编码仍然是有效的。<br /><br /><strong>模拟信号</strong><br /><br />模拟信号的处理给数据通信添加了复杂性。其中一个问题是数字计算机不兼容于模拟传输媒体。我们需要一种能够将数字信号转换为模拟信号（调制）的设备和一种能够将模拟信号转换为数字信号（解调）的设备。调制解调器实现了这两种功能。<br /><br />模拟信号以其频率、振幅和相移为特征。模拟信号要比一个简单的正弦波复杂的多。振幅、频率和相移的变化数不胜数。那么需要对不同的模拟信号的函数作单独的分析吗？答案是否定的。著名数学家傅立叶提出一个定理：任何一个周期函数都可以表示成无数个具有不同振幅、频率和相移的正弦函数的和。这个和称为傅立叶级数。它的重要性在于无论周期函数多么复杂，它们都包含有同样的成分。   现给出一个数学描述。假设s(t)是一个周期为P的周期函数。依据傅立叶变换的其中一种形式：<br /><br /><img src="F:\Ebook\数据通讯与网络教程\fly.bmp" /><br /><br />对我们来说，重要的是傅立叶变换告诉我们每一个周期信号都是具有不同频率和振幅的模拟信号的叠加。从中可以得出一个结论：媒体发送和分解一个模拟信号的能力取决于它能够处理的频率的范围（带宽）。<br /><br /><strong>傅立叶变换的应用</strong><br /><br />傅立叶变换是学习通信的基础。在一个带宽有限的媒体上传送一个复杂的模拟信号就和用傅立叶级数来近似一个函数一样。<br /><br />傅立叶变换也可以应用于硬件的设计。比如，一个滤波器可以挡住某一频率，而让其他频率通过。它有非常广泛的应用。<br /><br /><strong>▲ 比特率</strong><br /><br /><strong>尼奎斯特定理和无噪声通道</strong><br /><br />给定一种媒体，它能够传送多少个比特？我们使用比特率来描述一种媒体的容量，其单位为比特每秒（bps）。通信理论中有一个重要的定理给出了比特率和带宽的关系。很简单，媒体的带宽越大，比特率越高。<br /><br />比特率取决于两个要素：信号单元变化的频率（波特率）和比特串中比特的个数n。事实上，比特率＝波特率×n。但是一些经典的结论给出了数据速率的上限。尼奎斯特指出，如果媒体传输的最大频率为F,那么接收方只要以每秒2f次的频率进行采样，就能完整地重现信号（这是对于完全无噪声信道而言）。现假设发送方以1/(2f)的时间间隔改变信号。也就是说波特率为2f。根据尼奎斯特定理可以得到：<br /><br />比特率＝波特率×n＝2f×n＝2f×log2(B)；B是不同单元的个数<br /><br /><strong>噪声通道</strong><br /><br />到目前为止，似乎没有证据证明给定最大频率的数据速率存在一个上限。然而我们给出两个强有力的论据。首先，信号单元的个数越多，它们之间的差别就越小。另一个论据是很多通道都受噪声的影响，这意味着一个传输信号可能会发生畸变。<br /><br /><strong>香农定理</strong><br /><br />香农定理将最大的数据速率和频率以及信噪比联系在一起，明确指出<br /><br />比特率＝带宽×log2(1+S/N) bps<br /><br />这一公式表明带宽和信噪比越大，比特率就越高。<br /><br /><strong>▲ 数模转换</strong><br /><br />把数字信号转换成模拟信号并不困难。只需要为一组一个或多个的比特值分配一个特定的模拟信号。模拟信号有三种变化方式：频率，振幅和相移。<br /><br /><strong>频率调制</strong><br /><br />第一种方法称为频移键控（FSK），也叫频率调制，它给数字0和1分别分配一个模拟信号频率。频率调制也可以使用更多的频率，一般的，n个比特位可以有2^n个组合，每一个组合可以对应2^n个频率中的一个。这样的话，比特率就是波特率的n倍。<br /><br /><strong>调幅</strong><br /><br />幅移键控（ASK），也叫调幅（AM），类似于频移键控。<br /><br /><strong>相位调制</strong><br /><br />相移键控（PSK），也叫相位调制（PM），也是和前面类似的一种技术。信号的差异在于相移，而不是频率或振幅。通常，一个信号的相移是相对于前一个信号而言的。因此，它也经常被人们称为差分相移键控（DPSK）。如前所述，n个比特位的每一个组合可以对应于2^n个相移中的一个，从而使比特率n倍于波特率。<br /><br /><strong>正交调幅</strong><br /><br />信号模式的数目越多，意味着比特率相对于波特率的倍数越大。问题是要提高比特率就必须增加信号的个数，从而也将减小信号间的差别。一种普遍的解决方案是结合使用频移，振幅和相移，这样不但可以增加合法信号的数目，也能让信号之间保持较大的差异。一种常用的技术称为正交调幅（QAM），它为每个比特组合分配一个给定振幅和相移的信号。这样对于两种不同的振幅和4种不同的相移可以产生8种不同的信号，可以对应于一个3比特位组。注意相同的比特位（比如3个比特位011）所产生的信号并不总是一样的。当然，他们的振幅是一致的。但是相移是相对于前一个信号的终止位置而言的。因此，尽管两者的相移都是1/(4f)，它们的开始位置却不同。<br /><br />▲ <strong>模数转换</strong><br /><br />如果模拟信号的特征是不变的，那么只需要检查信号的振幅、频率和相移，并产生相应的数字信号即可。如果碰到特征不断变化的模拟信号时该怎么办呢？它们比数字数据产生的信号要复杂的多，并且需要另一种转换技术。<br /><br /><strong>脉冲幅度调制</strong><br /><br />数字化模拟信号的方式之一是采用脉冲幅度调制（PAM）。其处理过程相当简单：按一定的时间间隔对模拟信号进行采样，接着产生一个振幅等于采样信号的脉冲。<br /><br /><strong>脉码调制</strong><br /><br />由PAM产生的信号看起来似乎是数字式的，但由于脉冲的幅度和采样信号一样，所以其取值是随意的。使脉冲真正数字化的一种方法是为采样信号分配一个预先确定的振幅。这种处理方法称为脉码调制（PCM）。接收端重建模拟信号的精确度取决于两个要素。其一是采样的频率s。其二是可以选择的振幅的个数。根据尼奎斯特定理，如果原始信号的最大频率为f，那么不管s&gt;2f，还是s=2f，其效果都是一样的。采样信号的幅度如果和脉冲之间的相对差距较大的话，重建信号将出现畸变现象。<br /><br />还有其他调制技术。比如，脉冲宽带调制是通过产生振幅相等而宽度变化的脉冲来对信息进行编码。差分脉冲编码调制测量连贯的采样之间的差分。增量调制是差分脉冲编码调制的一种变形，它的每个采样只用一个比特位。<img src ="http://www.cnitblog.com/darkstax/aggbug/17698.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/darkstax/" target="_blank">darkstax</a> 2006-10-07 17:06 <a href="http://www.cnitblog.com/darkstax/archive/2006/10/07/17698.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通信、标准和协议</title><link>http://www.cnitblog.com/darkstax/archive/2006/10/06/17683.html</link><dc:creator>darkstax</dc:creator><author>darkstax</author><pubDate>Fri, 06 Oct 2006 09:16:00 GMT</pubDate><guid>http://www.cnitblog.com/darkstax/archive/2006/10/06/17683.html</guid><wfw:comment>http://www.cnitblog.com/darkstax/comments/17683.html</wfw:comment><comments>http://www.cnitblog.com/darkstax/archive/2006/10/06/17683.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/darkstax/comments/commentRss/17683.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/darkstax/services/trackbacks/17683.html</trackback:ping><description><![CDATA[通信技术最基础的问题是连接。但究竟怎样连接呢？用什么实现连接呢？是用导线、电缆还是光纤呢？不用他们可以吗？<br /><br />通信技术就像是一座大城市的交通建设。四通八达的道路通向四面八方，可以带你到任何想去的地方。这样它就必须要有应付巨大交通流量的能力，特别是在大城市里。设计者必须处理好流量和成本之间的平衡。一个10车道的环城公路当然比一个6车道的公路具有更高的交通流量，但车道越多，成本越高，这样是否值得呢？在大城市里答案或许是肯定的，但在小城市里就未必了。通信系统也是一样。它必须具有一定信息量的传输能力，但具体多少取决于实际的需要。需要传输的信息量将影响通信设备的连接方式。<br /><br />一旦建立了连接，就需要确定一些通信的标准。正如如果没有交通信号和交通法规，城市道路将难以发挥作用一样，不管是以电缆作为媒体还是在空中传播，都有很多信源想要发送信息，所以必须要建立一套标准用来防止信息发生冲突或者解决冲突。<br /><br />最后即使我们解决了以上所有的问题，建立起高效率、低成本、既安全又方便信息传递的计算机网络，还存在另一个问题：很多计算机系统都是不兼容的。有时候，从一台计算机传输信息到另一台去就像把一个变速器从一辆车换到另一辆车去一样。如果两辆车都是福特生产的Escorts，那没什么问题。但如果一辆是Escorts，另一辆是Grand Prix，那就麻烦了。<br /><br />为了解决这些问题，建立了OSI协议模型的7个层次，每一个层次都定义了各自的计算机网络通信协议，使上层与下层实现细节隔离。它们一起将用户和数据通信的具体细节隔离开来。如果充分实现的话，它们将允许不兼容的设备互相通信。<br /><br />较低的三个层次主要处理网络通信的具体问题。<br /><br />物理层负责发送和接收比特流，而不管其具体含义。它不知道这些数据代表什么，甚至不知道它们是否正确。物理层也包含连接策略：电路交换、报文交换和分组交换。电路交换在节点间建立和保持专有线路；报文交换经由网络传送报文，没有专有的线路连接特定的节点；分组交换把报文划分为多个分组，然后分别进行传送。<br /><br />数据链路层为物理层提供错误检测和竞争策略。错误检测技术包括奇偶校验位和其他检错码或纠错码。竞争策略包括冲突检测。冲突检测让多个同时发起传输的设备能够检测到冲突的存在。于是每个设备都等待一段随机时间后重新进行传输。而在令牌网中，随着令牌的传递，只有获得令牌的节点才能传输数据。<br /><br />网络层是底层三个层次的最高层。它包括路由策略。路由算法负责在两节点间寻找最便宜的路径，路径上的每个节点都知道它的后继节点。最便宜的路径可能随着网络情况的变化而变化，因此可以使用适当的路由策略来检测网络发生的变化，并相应的作出改动。<br /><br />顶部的四个层次为用户服务。<br /><br />其中的最低层是运输层。它提供缓冲、多路复用和连接管理功能。连接管理确保被延迟的报文不会给正常的连接建立或释放带来影响。<br /><br />会话层负责管理用户间的会话。在半双工的通信中会话层决定谁可以通话，谁必须收听。同时它还允许定义同步点，以应付在高层出现的故障。<br /><br />表示层解决数据表示中存在的差异问题。它允许两个信息存储方式不同的系统交换信息。表示层也提供数据压缩功能，以减少传输量。另外它还实现加密和解密。<br /><br />最后，也是最高层，即应用层，它包括许多用户服务。它直接与用户或应用程序通信。<br /><br />据说传送实物将是数据通信的最高境界！<br /><br /><img src ="http://www.cnitblog.com/darkstax/aggbug/17683.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/darkstax/" target="_blank">darkstax</a> 2006-10-06 17:16 <a href="http://www.cnitblog.com/darkstax/archive/2006/10/06/17683.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>