




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一部分通讯基础知识
一.串口通讯
1.串口的基本概念
串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线
UniversalSerialBus或USB混淆)。大多数计算机包含两个基于RS232的串口。
串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS232
口。同时,串口通信协议也可以用于获取远程采集设备的数据。
串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字
节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根
线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状
态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2
米;而对于串口而言,长度可达1200米。
典型地,串口用于ASCH码字符的传输。通信使用3根线完成:地线、发送
和接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线
上接收数。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、
数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:
(1)波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的
个数。例如300波特表示每秒钟发送300个bit,9600波特表示每秒钟发送9600
个bit。电话和传真(FAX)的波特率一般为14400、28800、36600和56000(即56K)0
波特率和传输距离成反比,波特率越高,可靠传输距离越短;反之,波特率越低,
可靠传输距离越远;电力系统保护、通讯设备中常用的波特率有:300、600、1200、
2400、4800、9600、和19200。
(2)数据位:这是衡量通信包中实际数据位的参数。当串口用异步方式发
送一个Byte时,包括启动位、数据位、奇偶校验位和停止位这几部分,其中数
据位可以是5、6、7或8位,根据通讯的需要而定,可用软件编程的方式对CPU
芯片或串口芯片的相关寄存器进行设置来选择所使用的数据位数。
(3)奇偶校验位:串口通信过程由于噪声干扰或不同步等原因会造成通讯
错误,因此需要有纠错措施,奇偶校验位就是其中最简单的一种,当然只要有其
它更有效的纠错措施(例如数据包中的校验字节),没有校验位也是可完全以的。
校验位算法有奇、偶两种,用一位值来确保传输的数据有偶个或者奇个逻辑高位
(就是1)。所谓奇校验就是包含校验位本身在内,数据位和校验位中含有奇数个
“1”,而偶校验就是包含校验位本身在内,数据位和校验位中含有偶数个“1”。
例如,如果数据位是DA(1101,1010),若采用奇校验,校验位为0,就保证了逻辑
高的位数是奇数个;如采用偶校验,校验位为1,就保证了逻辑高的位数是偶数
个。奇偶校验表明了一个重要思想:为了检测差错,通常随数据一起发送一小部
分附加信息,发送方根据数据计算附加信息的值,并且接收方进行同样的计算来
核对结果。
尽管上面讨论的奇偶校验机制能很好地检测一位差错,但它不能检测所有可
能的差错。为了理解其原因,我们考虑如果传输差错改变一个字符的两位时会发
生什么。例如,偶校验是指发送计算机传输的位,包括校验位,要有偶数个1。
如果传输差错改变两位,那么有三种情况:两个改变的位原来都是0,两个改变
的位原来都是1,或者一个改变的位原来是0而另一个改变的位原来是1。如果两
个0都变成1,那么1的总个数增加了偶数个,偶校验位保持不变。相似地,如果
两个1都变成0,偶校验位还是保持不变,因为I的总个数减少了偶数个。最后,
如果一个1变成0并且一个0变成I,那么偶校验位还是保持不变,因为I的总个数
也保持不变。上面的例子表明,奇偶校验不能检测改变两位的传输差错。事实上,
奇偶校验不能检测任何改变偶数位的传输差错。在最坏情况下,所有位是1的字
符变成全0,偶校验位还是保持不变!我们能概括为:为帮助检测传输差错而设
计的奇偶校验方案要求发送计算机为每个字符增加一个附加位,并要求接收计算
机证实这个附加位是正确的。尽管奇偶校验允许接收计算机确定是否有一位发生
改变,但是它不能检测改变偶数个位的传输差错。
为更有效的纠正数据传输过程中可能出现的错误,我们采用在报文中的特定
位置(通常在报文结尾)附加各种算法的校验字节的方法,常用的校验算法包括
求和(checksum)和CRC(CyclicRedundancyCheck下图是求和算法的例子:
HeIIo
|*65|6C,6c|6F:20|77:6F|72:6C|64:2E
4865♦6C6C+6F20+776F+726C+642E+carry=71FC
校验和方法既有优点也有缺点。主要的优点是计算的容易性与校验和的大小。大
多数网络应用16位或32位的校验和技术,为每一个包计算一个校验和。检验和的
小尺寸意味着传输校验和的费用比传输数据的费用小很多。另外,因为校验和只
要求加法,所以创建或核对校验和所需的计算量很小。校验和的缺点是不能检测
所有常见错误。例如,下图显示出当四个数据项中的某一位都取反时,校验和用
来检测这样的传输差错是不够的(把这个例子扩展到整个包时,我们可以想象这
四个改变的数据项多次发生)。尽管有这些改变,接收计算机还是认为包有正确
的校验和。
二进制数据项校验和的值二进制数据项校验和的值
O11o13
001O2o01O0
00113o0011
00O11O0013
0001
合计77
CRC算法能比校验和检测出更多的差错,尽管CRC机制可以用数学方法来分析,但
其简单和巧妙的特点只能通过理解其硬件实现来体会。计算CRC的硬件使用两个
简单的部件:一个移位寄存器(shiftregister)与一个异或(exclusiveor
或xor)单元。下图显示了硬件用来产生两个输入的异或输出所使用的图表。
ab输出
000
011
10
10
a)b)
a)计算异或的硬件图,
b)输入值四种组合所对应的输出值。这样的硬件单元用来计算CRC
第二个用来计算CRC的硬件设备是一个移位寄存器。我们能把移位寄存器看
成一个管道,一个文件的位串从左到右通过该管道移动。移位寄存器只能保存固
定数目的位(例如,移位寄存器可能有16位),所以每次一个新的位移入时,必
须有一位移出寄存器。我们可以假设每个移位寄存器都有一个输出,它就是最右
面的位的值。输出随着该位的变化而变化。理论上讲,一个移位寄存器有两个操
作:初始化(initialize)与移位(shift)。当初始化时,移位寄存器把所有
位置为0。结果是它的输出也是0。当移位时,移位寄存器瞬时把所有位向左移一
个位置,把最右面的位置作为当前的输入,把最左面的位作为输出。下图表明在
移位操作时位的值怎样移动以及输出怎样改变。
移位寄存器
a)移位操作前b)移位操作后。在移位时,每一位向左
移一个位置,最左面的位作为输出
理解改变移位寄存器的输入值不会使该值进入寄存器这一点是很重要的,一移位
寄存器仅仅在移位操作发生的一瞬间读它的输入。例如,图中a)表明尽管输入
是1,移位寄存器最右面的位还是保持0直到移位发生的那瞬间。
(4)停止位:用于表示单个包的最后一位。典型的值为1,L5和2位。由
于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中
两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提
供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍
程度越大,但是数据传输率同时也越慢。
用RS232传输字符时导线上的电压变化
2.异步通讯和同步通讯
“异步通信”是一种很常用的通信方式。异步通信在发送字符时,所发送的
字符之间的时间间隔可以是任意的。当然,接收端必须时刻做好接收的准备(如
果接收端主机的电源都没有加上,那么发送端发送字符就没有意义,因为接收端
根本无法接收)。发送端可以在任意时刻开始发送字符,因此必须在每一个字符
的开始和结束的地方加上标志,即加上开始位和停止位,以便使接收端能够正确
地将每一个字符接收下来。异步通信的好处是通信设备简单、便宜,但传输效率
较低(因为开始位和停止位的开销所占比例较大)。异步通信也可以是以帧作为
发送的单位。接收端必须随时做好接收帧的准备。这是,帧的首部必须设有一些
特殊的比特组合,使得接收端能够找出一帧的开始。这也称为帧定界。帧定界还
包含确定帧的结束位置。这有两种方法。一种是在帧的尾部设有某种特殊的比特
组合来标志帧的结束。或者在帧首部中设有帧长度的字段。需要注意的是,在异
步发送帧时,并不是说发送端对帧中的每一个字符都必须加上开始位和停止位后
再发送出去,而是说,发送端可以在任意时间发送一个帧,而帧与帧之间的时间
间隔也可以是任意的。在一帧中的所有比特是连续发送的。发送端不需要在发送
一帧之前和接收端进行协调(不需要先进行比特同步)。每个字符开始发送的时
间可以是任意的tO0110110起始位结束位t每个帧开始发送的时间可以
是任意的以字符为单位发送以帧为单位发送帧开始帧结束。
“同步通信”的通信双方必须先建立同步,即双方的时钟要调整到同一个频
率。收发双方不停地发送和接收连续的同步比特流。但这时还有两种不同的同步
方式。一种是使用全网同步,用一个非常精确的主时钟对全网所有结点上的时钟
进行同步。另一种是使用准同步,各结点的时钟之间允许有微小的误差,然后采
用其他措施实现同步传输。
上述内容可以很简单的概括为:异步传输时每个被传送的字符前有起始位,
后有停止位;整率慢,开销大,适用于低速设备。而同步传输时字符组合成数据
帧成组发送;数据帧包含一组同步字符使收发双方进入同步;传输速度快,开销
小。
异步传输实现简单,而同步传输在收发双方需要高度统一的时钟源。
3.RS232、RS422和RS485
(1)RS-232、RS-422与RS-485的由来
RS-232,RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协
会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业
标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为弥
补RS-232之不足而提出的。为改进RS-232通信距离短、速率低的缺点,RS-422
定义了一种平衡通信接口,将传输速率提高到10Mb/s,传输距离延长到4000英
尺(速率低于100kb/s时),并允许在一条平衡总线上连接最多10个接收器。
RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为
TIA/EIA-422-A标准。为扩展应用范围,EIA又于1983年在RS-422基础上制定
了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条
总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,
后命名为TIA/EIA-485-A标准。由于EIA提出的建议标准都是以“RS”作为前缀,
所以在通讯工业领域,仍然习惯将上述标准以RS作前缀称谓。
(2)RS232
RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用
于许多用途,比如连接鼠标、Modem等,同时也可以接工业仪器仪表。RS232的
可靠通讯距离为12-15米,而在实际应用中RS-232的传输距离常常超过标准值,
最远距离可达50英尺。RS-232只限于进行点对点的通信,可同时进行收发,全
双工。RS232口最常见的接口形式是9针或25针D型插头,每种又有针、孔(俗
称公、母)之分,使用时针插头和孔插头对接再拧紧小螺丝就可确保可靠连接。
DB-9针连接头的信号定义如下:
数据:
TXD(pin3):串口数据输出
RXD(pin2):串口数据输入
握手:
RTS(pin7):发送数据请求
CTS(pin8):清除发送
DSR(pin6):数据发送就绪
DCD(pin1):数据载波检测
DTR(pin4):数据终端就绪
地线:
GND(pin5):地线
其他
RI(pin9):铃声指示
RS232全双工通信所需的最少连线。虽然两条线路独立传输数据,
但它们共用一根接地线
(3)RS422和RS485
RS422是Apple的Macintosh计算机的串口连接标准,采用差分信号,而
RS-232采用的是非平衡参考地的信号。差分传输使用两根线发送(TX+和TX-)和
接收(RX+和RX-)信号,和RS232相比能更好的抗噪声和有更远的传输距离,在
工业环境中更好的抗噪性和更远的传输距离是一个很大的优点。RS232只能进行
点对点的通信,而422可以进行点对多点的通信,即形成1个小总线,一主多从,
允许的节点数较少,一般不超过10个。
RS485是RS422的改进,通讯线减少为2根(A和B,或数据线和地线),增
加了从设备的个数,从10个增加到32个,同时定义了在最大设备个数情况下的
电气特性,以保证足够的信号电压。RS485是典型的半双工通信模式,收发不能
同时进行,数据线分时地进行数据接收和发送,收发之间需要一定的切换时间,
通常为40毫秒。现场在进行RS485组网时通常需要在网络的尾端加一个终端电
阻来消除可能存在的信号反射,终端电阻一般为120欧。需要注意的是终端电阻
只能加一个,不能每个装置都加,否则电阻越并越小。RS485组网的优点:
▲组网简单,易于扩展;
▲抗干扰性好,适于长距离通信;
▲一主多从,易于操作控制,编程简单;
RS485组网的缺点:
▲主设备轮流依次查询从设备,从设备的突发数据无法及时上送;
▲一个设备损坏容易把整个总线拖死;
▲网络较大时需要分成多个子网;
▲通讯速度不够,最快为115.2Kb/s,达不到M级;
(4)握手
RS-232通行方式允许简单连接三线:Tx、Rx和地线。但是对于数据传输,
双方必须对数据定时采用使用相同的波特率。尽管这种方法对于大多数应用已经
足够,但是对于接收方过载的情况这种使用受到限制。这时需要串口的握手功能。
在这一部分,我们讨论三种最常用的RS-232握手形式:软件握手、硬件握手和
Xmodemo
▲软件握手:软件握手通常用在实际数据是控制字符的情况,类似于GPIB
使用命令字符串的方式。必须的线仍然是三根:Tx,Rx和地线,因为控制字符
在传输线上和普通字符没有区别,函数SetXModem允许用户使能或者禁止用户使
用两个控制字符XON和0XFF。这些字符在通信中由接收方发送,使发送方暂停。
例如:假设发送方以高波特率发送数据。在传输中,接收方发现由于CPU忙于其
他工作,输入buffer已经满了。为了暂时停止传输,接收方发送XOFF,典型的
值是十进制19,即十六进制13,直到输入buffer空了。一旦接收方准备好接收,
它发送X0N,典型的值是十进制17,即十六进制11,继续通信。输入buffer半
满时,LabWindows发送X0FF。此外,如果X0FF传输被打断,LabWindows会在
buffer达到75%和90%时发送X0FF。显然,发送方必须遵循此守则以保证传输
继续。
▲硬件握手:和Tx和Rx线一样,RTS/CTS和DTR/DSR一起工作,一个作
为输出,另一个作为输入。第一组线是RTS(RequesttoSend)和CTS(Clearto
Send)。当接收方准备好接收数据,它置高RTS线表示它准备好了,如果发送方
也就绪,它置高CTS,表示它即将发送数据。另一组线是DTR(DataTerminal
Ready)和DSR(DataSetReady)。这些现主要用于Modem通信。使得串口和Modem
通信他们的状态。例如:当Modem已经准备好接收来自PC的数据,它置高DTR
线,表示和电话线的连接已经建立。读取DSR线置高,PC机开始发送数据。一
个简单的规则是DTR/DSR用于表示系统通信就绪,而RTS/CTS用于单个数据包的
传输。
▲XModem握手:Xmodem握手就是文件传输协议。这个协议在Modem通信中
非常通用。尽管它通常使用在Modem通信中,只要PC和其他设备使用XModem
协议,就可以用该方法进行握手。XModem使用介于如下参数:start_of_data>
end_of_data、neg_ack、wait_delay>start_delay、max_tries>packet_size。
这些参数需要通信双方认定,标准的Xmodem对这些参数有一个标准的定义,但
还是能修改的。这些参数的使用方法由接收方发送的字符neg_ack确定。这通知
发送方其准备接收数据。它开始尝试发送,有一个超时参数start_delay;当超
时的尝试超过max_ties次数,或者收到接收方发送的start_of_data,发送方
停止尝试。如果从发送方收到start_of_data,接收方将读取后继信息数据包。
包中含有包的数目、包数目的补码作为错误校验、packet_size字节大小的实际
数据包,和进一步错误检查的求和校验值。在读取数据后,接收方会调用
wait_delay,然后想发送方发送响应。如果发送方没有收到响应,它会重新发送
数据包,直到收到响应或者超过重发次数的最大值max_tries。如果一直没有收
到响应,发送方通知用户传输数据失败。由于数据必须以pack_size个字节按包
发送,当最后一个数据包发送时,如果数据不够放满一个数据包,后面会填充
ASCH码NULL(0)字节。这导致接收的数据比原数据多。在XModem情况下一定
不要使用X0N/X0FF,因为XModem发送方发出包的数目很可能增加到X0N/0FF控
制字符的值,从而导致通信故障。4.串口各寄存器定义
(1)波特率因子低寄存器,基地址+0,条件是LCR的D7(DLAB)=1
波特率因子高寄存器,基地址+1,条件是LCR的D7(DLAB)=1
各种波特率下寄存器的取值具体如下:
波特率高寄存器取值低寄存器取值
3000180
60000C0
12000060
24000030
48000018
9600000C
192000006
384000003
576000002
1152000001
计算公式:寄存器取值=工作频率/(16X期望波特率)=1843200/(16X期望波
特率)
(2)发送寄存器(写)/接收发送寄存器(读),基地址+0,条件是LCR的D7
(DLAB)=0
(3)中断允许寄存器(InterruptEnableRegister),基地址+1,条件是LCR
的D7(DLAB)=0
D0=l允许接收中断
Dl=l允许发送中断
D2=l允许接收有错信息或间断条件中断
D3=l允许MODEM状态变化中断
D7-D4不用,清零
(4)中断状态寄存器ISR(InterruptStatusRegister),基地址+2
中断识别寄存器HR(InterruptIdentifierRegister),基地址+2
中断优先D3D2D1DO中断源
级
XXX1没有中断
10110接收奇偶校验错、超越错、帧格式错、间断条件
20100接收寄存器就绪
31100接收数据超时
40010发送保持器准备好,即发送空
50()00MODEM状态变化
D5和D4:没有使用。
D7和D6:当采用FIFO的接收和发送模式时,这两位都设置为1;反之,都设置
为0o
(5)线路控制寄存器LCR(LineControlRegister),基地址+3
D1和DO:发送和接收时的字节位数,具体如下:
D1DO发送和接收时的字节位数
005
016
107
118
D2:这一位与DO和D1共同定义了停止位的长度,具体如下:
D2发送和接收时的字节位数停止位数
05,6,7,81
151.5
16,7,82
D5—D3:奇偶校验定义,具体如下:
D5D4D3
000无奇偶
001奇校验
011偶校验
101奇偶位恒为0,即SPACE
111奇偶位恒为1,即MARK
D6=l,表示允许间断,即允许发送器寄存器保持一个完整帧时间以上的空号状态。
D7(DLAB),用于区分访问除数锁存寄存器还是访问接收缓冲/发送保持和中断允
许寄存器。
(6)MODEM控制寄存器MCR(ModemControlRegister),基地址+4
D0=l强制芯片引脚DTR=0,即有效
=0强制芯片引脚DTR=1,即无效
Dl=l强制芯片引脚RTS=O,即有效
=0强制芯片引脚RTS=L即无效
D2=l强制芯片引脚0Pl=0
=0强制芯片引脚0Pl=l
D3=l强制芯片引脚0P2=0
=0强制芯片引脚0P2=l
D4=l循环返回模式,可用于芯片自测
D7—D5:保留。
(7)线路状态寄存器LSR(LineStatusRegister),基地址+5
D0当接收移位寄存器接收到的字节完全移到接收缓冲寄存器时,该位置lo
如果读该寄存器,那么这一位被清零。
D1出现超越错时,这一位被置1。读该寄存器,这一位被清零。
D2出现奇偶校验错时,这一位被置1。读该寄存器,这一位被清零。
D3出现停止位不完整、丢失、空号时,这一位被置lo读该寄存器,这一位
被清零。
D4当接收寄存器检测到空号状态已持续一个完整帧传输时间时,这一位被置
lo读该寄存器,这一位被清零。
D5当发送的字节从发送保持寄存器移到发送移位寄存器时,该位置lo
D6当发送保持寄存器和发送移位寄存器都没用字节时,该位置lo
D7当奇偶校验错、帧格式错、空号错有一个出现时,该位置1。
(8)MODEM状态寄存器MSR(ModemStatusRegister),基地址+6
D3—D0=l时,表示自上一次单片机读MSR寄存器之后,分别反映MODEM控制逻
辑的四个输入信号的状态发生了变化。具体如下:
DO清除发送信号(CTS)已经发生了变化。
D1数据设备就绪信号(DSR)已经发生了变化。
D2振铃信号(RI)已经发生了变化。
D3载波信号(DCD)已经发生了变化。
D7—D4:分别反映MODEM控制逻辑的四个输入信号的当前状态。
D4清除发送信号(CTS)有效。
1)5数据设备就绪信号(DSR)有效。
D6振铃信号(RI)有效,即有振铃。
D7载波信号(DCD)有效,即有载波信号。
以太网通讯
1.网络拓扑结构(topology)
(1)星型拓扑
如果所有计算机都连在一个中心站点上,那么网络使用了星型拓扑(star
topology)o下图表明了这个概念。
因为星型网络象车轮的轮辐,所以星型网络的中心通常被称为集线器(Hub)。
典型的集线器包括了这样一种电子装置,它从发送计算机接收数据并把数据传输
到合适的目的地。上图表示了一个理想的星型网络。实际上,星型网络几乎没有
那种集线器与所有计算机都有相同距离的对称形状。相反,集线器通常安放在与
所连计算机相分离的地方。例如,第9章将表明计算机在各自的办公室里,而集
线器安放在网络管理员那里。
(2)环状拓扑
使用环状拓扑(ringtopology)的网络将计算机连接成一个封闭的圆环,
一根电缆连接第一台计算机与第二台计算机,另一根电缆连接第二台计算机与第
三台,以此类推,直到一根电缆连接最后一台计算机与第一台计算机。因为我们
能如下图所示想象出电缆把计算机连接成一个圆环,所以环状的名字由此产生。
一台计算机到下一
台计算机的连接
如同星型拓扑一样,需要理解环状拓扑是指计算机之间的逻辑连接而不是物
理连接,这是很重要的。环状网络中的计算机和连接不必安排成一个圆环。事实
上,环状网络中的一对计算机之间的电缆可以顺着过道或垂直地从大楼的一层到
另一层。另外,如果一台计算机远离环中其他计算机,那么连接远距离计算机的
两根电缆可以有相同的物理路径。
(3)总线拓扑
使用总线拓扑(bustopology)的网络通常有一根连接计算机的长电缆(实
际上,总线网络的末端必须被终止,否则电信号会沿着总线反射)。任何连接在
总线上的计算机都能通过总线发送信号,并且所有计算机也都能接收信号。下图
表明了该拓扑结构。由于所有连接在电缆上的计算机都能检测到电子信号,因此
任何计算机都能向其他计算机发送数据。当然,连接在总线网络上的计算机必须
相互协调,保证在任何时候只有一台计算机发送信号,否则会发生冲突。
总线供字电缆)
□□□□□□
每种拓扑结构都有优点与缺点。环状拓扑使计算机容易协调使用以及容易检
测网络是否正确运行。然而,如果其中一根电缆断掉,整个环状网络都要失效。
星型网络能保护网络不受一根电缆损坏的影响,因为每根电缆只连接一台机器。
总线拓扑所需的布线比星型拓扑少,但是有和环状拓扑一样的缺点:如果某人偶
然切断总线,网络就要失效。
2.以太网的历史
以太网(Ethernet)是一种使用广泛的、采用总线拓扑的网络技术。以太网
由Xerox公司PaloAlto研究中心在70年代早期发明。DEC、Intel和Xerox后来合
作制定了一个产品标准,该标准最初以这三家公司名称的首字母命名,称作DIX
以太网。现在由IEEE控制着以太网的标准。
最初的以太网硬件运行在10Mbps的带宽上。一种叫做快速以太网(Fast
Ethernet)的新版本运行在100Mbps的带宽上;而最新的一个版本运行在1000Mbps
或IGbps的带宽上,称为千兆以太网(GigabitEthernet)□
3.以太网的信息传输机制载波侦听与冲突检测
以太网不使用中央控制器来通知每台计算机怎样按顺序使用共享总线。相
反,所有连接在以太网上的计算机都参与一种叫做多路存取载波侦听(Carrier
SenseMultipleAccess,CSMA)的分布协调方案。这种方案使用总线上的电子
信号来确定状态。当没有计算机发送帧时,总线中不含有电子信号。然而在帧的
传输过程中,发送计算机传输用于对位串进行编码的电子信号,即载波信号。这
样,为了确定电缆当前是否正被使用,计算机可以检测载波。如果当前没有载波,
计算机就能传输一帧。如果当前存在载波,计算机必须等待其他计算机发送完成。
从技术上讲,检测载波叫做载波侦听,并且这种利用信号的存在性来确定何时
传输的想法叫做多路存取载波侦听(CSMA)。因为CSMA允许每台计算机分别确定
共享线路是否已被其他计算机使用,所以它能防止计算机打断一个正在进行的传
输。
然而CSMA不能防止所有可能的冲突。为了理解其中的原因,我们想象一下如
果两台分别位于空闲总线两端的计算机同时准备发送帧时会发生什么。两台计算
机将同时检测载波,同时发现电缆是空闲的,然后同时开始发送帧。电子信号的
传播速度大约为光速的70%,当两台计算机发送的电子信号在电缆上同一点相遇
时,它们将会相互干扰。两个信号的相互干扰称为冲突。尽管冲突不会损坏硬件,
但是它产生了混淆的传输,阻止了任何一个帧的正确接收。为了确保没有其他计
算机同时传输,以太网标准要求每个发送站监测总线上的信号。如果总线上的信
号不同于该站发送出去的信号,即意味着出现了冲突(为确保冲突在停止发送前
到达所有的计算机,以太网标准规定了最大的电缆长度和最小的帧尺寸)。当一
台正在发送的计算机检测到冲突,它立即停止传输。这种在传输的过程中监测总
线的方法称为冲突检测(CollisionDetect,CD),并且这种以太网机制称为载
波侦听多路存取/冲突检测。
CSMA/CD不仅仅只检测冲突一它也能从冲突中恢复。在一个冲突发生后,计
算机必须等待总线再次空闲后才能传输帧。然而,如果以太网一空闲计算机就开
始传输,那么另一次冲突就会发生。为了防止多次冲突,以太网要求每台计算机
在冲突后延迟一段时间才尝试传输。标准指定了最大延迟M并且要求每台计算
机选择一个小于用J随机延迟。在大多数情况下,当计算机随机选择一个延迟时,
它将选一个与其他计算机所选的值都不相同的值一选择到最小延迟的计算机将
开始发送帧,网络将恢复正常运行。如果有两台或多台计算机在冲突后恰好选择
几乎相同的延迟,那么它们将几乎同时开始传输,导致第二次冲突。为了防止一
连串的冲突,以太网要求每台计算机在每次冲突后把选择延迟的范围加倍。这样,
计算机在第一次冲突后从0到d之间选择一个随机延迟,在第二次冲突后从0到2d
之间选择,在第三次冲突后从0到4比间选择,依此类推。在几次冲突后,选择
随机值的范围变得很大,一些计算机选择了较短的延迟而无冲突传输的概率就变
得很大。
4.以太网布线
以太网在历史上曾使用过粗缆(同轴电缆)和细缆来布线,目前采用双绞线
以太网线(twistedpairEthernet)o双绞线是最廉价,也是最便于使用的一
种传输介质。它是由两根各自封装在彩色绝缘包皮内的铜线经相互扭绞而构成的
一对传输线。通常又可将对对双绞线外面套上一个外封皮而构成双绞线电缆。长
期以来,双绞线一直用于电话系统中传输模拟信号,当传输距离不太大时,也可
以在LAN中用来传输数字信号。双绞线又可分为以下两种类型:
(1)无屏蔽双绞线UTP(UnshieldedTwised-Pair)
由于在这种双绞线外没有包屏蔽套,所以称为无屏蔽双绞线。UTP已具有多
年的历史,有很多种类适用于不同场合,最常见的是电话线。到20世纪80年代
时UTP线已有很大改进,形成了3类UTP线(其所允许的最高信号频率为16Mbps)
和4类UTP线(其所允许的最高信号频率为20Mbps);塾90年代后又产生出5
类线,其所允许的最高信号频率为100Mbps。3类和4类UTP线用于10BASE-TLAN
中,而5类UTP线则可用于100BASE-T中。由于UTP电缆具有重量轻,体积小,
规格全,可靠性高,以及价格便宜,使用方便等一系列优点,所以能使它成为在
通信领域和计算机中最常用的一种传输介质,特别是5类UTP线已被广泛应用于
结构化布线系统中作为水平布线用。但它也存在着一些不足之处:其误码率高
(10-5^10-7),在传输时会向周围辐射,因而容易被窃听等。
(2)屏蔽双绞线STP(ShieldedTwised-Pair)
STP是指在外面包上一层网状金属套用作屏蔽的双绞线。它由于增加了屏蔽
层而使之抗噪声和抗干扰的能力较强,致使其误码率明显下降,约为
10-6~~10-8。利用屏蔽双绞线连接LAN设备,可加大LAN的最大传输距离及所能
连接网络设备的数量。STP的价格较高,不如UTP用的广泛。
采用双绞线布线要求每台计算机都有一块网络接口卡和一条从网卡到集线
器的直接连接。这一连接使用双绞线和RJ-45连接器,它类似于电话所使用的连
接器,但更大一些。连接器的一端插入计算机的网卡中,另一端插入集线器。这
样,每台计算机到集线器都有一条专用连接线,如下图所示:
集线器双绞线
一个更大的网络结构如下图所示:
显而易见,双绞线以太网形成一个典型的星型结构,每台计算机都有一条到
中心集线器的专用连接。尽管双绞线以太网的形状是星型的,然而它的功能像总
线。所有计算机共享一个通信介质。计算机必须竞争介质的使用,并且任何时候
至多只有一台计算机能传输。CSMA/CD的传输机制依然没有改变。
5.RJ45标准接线方法
两种压线方式,线序分别是(注意同一根线两头要用同一种方式):
T568B:白橙,橙,白绿,蓝,白蓝,绿,白棕,棕
T568A:白绿,绿,白橙,蓝,白蓝,橙,白棕,棕
记忆经验:关键是3是白绿,4是蓝,BA变化,橙绿换。
实际用到的是1、2发送数据,3、6接收数据
1568AK68B
若网线直接一对一连接,不按上述方法接,网络也可以通,但抗干扰能力差,
经常有网络中断现象。
以太网双绞线是由超五类双绞线、水晶头(RJ45接头)组成,制作中应保
证装配质量。具体步骤及要求:
序号制作要求使用工具
1将双绞线的外皮除去20〜25mm,注意双绞线绝双绞线剥线器(或其
缘皮不要破损。见图1他工具)
2将双绞线反向缠绕开,将裸露出的双绞线用专用
钳剪下,只剩约15mm的长度,并较齐线头,根
据标准排线方法及图2排线
3将双绞线的每一根线依序放入RJ45接头的引脚RJ45专用压线钳
内,确定双绞线的每根线已经放置正确之后,就
可以用RJ45压线钳压接RJ45接头,见图3、图
4。
4使用测试仪测试:打开电源,将网线插头分别插能手
入主测试器和远程测试器,主机指示灯从1至8
逐个顺序闪绿灯,确认无短路和开路现象
排线方法2一两台计算机网口的直接连接
图3:双绞线压接位置示意图
图4:压接示意图
6.光纤接头分类
单模:只传输单一波长,传输距离远(>20km)
多模:传输多个波长,传输距离<2km
尾纤和跳线区别在于尾纤只在一端有一个光纤头,另一端一般要于光缆进行
熔接使用,而跳线在两端各有一个光纤头,可直接与光电转换设备连接。
光纤头可分为:ST头、FC头、SC头三种,区别在于ST头采用圆头卡扣方
式;FC头采用圆头螺扣方式;SC头采用方头卡扣方式。
ST单模:
SC单模:
ST多模:
FC-FC:
FC-ST:
7.七层网络模型
以太网络遵循国际标准化组织(ISO)制定的开放系统互连参考模型
(OSI/RM),在0SI参考模型中所采用的基本结构技术是分层技术,它把OSI/RM分
为7层。
(1)物理层PhysicalLayer
该层为通信提供物理链路,实现比特流的透明传输。物理层定义了与传输线
以及与接口硬件的机械,电气,功能和过程有关的各种不同类型特性,以建立,
维护和拆除物理连接。
(2)数据链路层DataLinkLayer
该层用于提供相邻结点间透明,可靠的信息传输服务。透明,意味着对传输
数据的内容,格式及编码不做任何限制;可靠,意味着在该层设置有相应的差错
检测和纠正措施。数据传输的基本单位是帧。
(3)网络层NetworkLayer
该层用于提供在源站和目的站之间的信息传输服务。传输的基本单位是分组
(Packet)o信息在网络中传输时,由网络层提供路由选择,源和目标结点之间
的差错检测,顺序及流量控制。网络层还应向传输层提供数据报或虚电路服务。
TCP/IP中的IP协议就是网络层的协议。
(4)传输层TransportLayer
该层用于为不同系统内的会话实体建立端一端(EndtoEnd)之间透明,可
靠的数据传输,执行端一端差错控制,顺序和流量控制,管理多路复用等。数据
传输的基本单位是报文(Message)oTCP/IP中的基于连接的TCP协议和无连接
的数据包UDP协议都是传输层的协议。
(5)会话层SessionLayer
本层可为不同系统内的应用进程之间建立会话连接,使它们能按同步方式交
换数据;并能有序地拆除连接,以保证不丢失数据。可用令牌(Token)实现对
话时方向交换的管理,也可进行中断对话时的差错恢复管理。
(6)表示层PresentationLayer
本层向应用进程提供信息表示方法,对不同表示方式进行转换的管理等,使
采用不同表示方式的系统之间能进行通信,并提供标准的应用接口,共用通信服
务,如数据加密,正文压缩等。
(7)应用层ApplicationLayer
该层用于为本层中的应用进程访问0SI环境提供手段,管理和分配网络资
源。应用层以下的各层均通过应用层向应用进程提供服务。在本层中还提供了许
多非常有效的服务。我们的CSC2000协议及104远动协议都属于应用层的协议。
8.IP地址和子网掩码
(1)IP地址
在国际互联网(Internet)上有成千百万台主机(host),为了区分这些主机,
人们给每台主机都分配了一个专门的“地址”作为标识,称为IP地址,IP是
InternetProtocol(国际互联网协议)的缩写。各主机间要进行信息传递必须
要知道对方的IP地址。每个IP地址的长度为32位(bit),分4段,每段8位(1
个字节),常用十进制数字表示,每段数字范围为0~255,段与段之间用小数点
分隔,每个字节(段)也可以用十六进制或二进制表示,这样的表达方式称为“点
分十进制表示法(Dotteddecimalnotation)”。
每个IP地址包括两个ID(标识码),即网络ID和主机ID,同一个物理网络上
的所有主机都用同一个网络ID,网络上的一个主机(工作站、服务器和路由器等)
对应有一个主机ID,这样把IP地址的4个字节划分为2个部分,一部分用来标明具
体的网络段,即网络ID;另一部分用来标明具体的节点,即宿主机ID,这样的32
位地址又分为五类分别对应于A类、B类、C类、D类和E类IP地址,如下图所示:
区分各类地址的最简单方法是看它的第一个十进制整数。下图列出了各类地址的
起止范围,其中第一个十进制整数用加黑字体表示。
类型范围
A至IJ127255255.255
B至1|191.255.255255
C到223255.255.255
D到239255255255
E至ij加药观夜
▲A类地址
设计IPv4A类地址的目的是支持巨型网络,因为对规模巨大网络的需求很
小,因此开发了这种结构使主机地址数很大,而严格限制可被定义为A类网络的
数量。
一个A类IP地址仅使用第一个8位位组表示网络地址。剩下的3个8位位组表示
主机地址。A类地址的第一个位总为0,这一点在数学上限制了A类地址的范围小
于127,127是64+32+16+8+4+2+1的和。最左边位表示128,在这里空缺。因
此仅有127个可能的A类网络。A类地址后面的24位(3个点-十进制数)表示可能的
主机地址,A类网络地址的范围从1.0.0.0到126.0.0.0o
注意只有第一个8位位组表示网络地址,剩余的3个8位位组用于表示第一个8
位位组所表示网络中惟一的主机地址,当用于描述网络时这些位置为0。
注意技术上讲,127.0.0.0也是一个A类地址,但是它已被保留作闭环(look
back)测试之用而不能分配给一个网络。
每一个A类地址能支持16777214个不同的主机地址,这个数是由2的24次方再
减去2得到的。减2是必要的,因为IP把全0保留为表示网络而全1表示网络内的广
播地址。
▲B类地址
B类地址的目的是支持中到大型的网络。B类网络地址范围从128.L0.0到
191.254.0.0oB类地址蕴含的数学逻辑是相当简单的。一个B类IP地址使用两个8
位位组表示网络号,另外两个8位位组表示主机号。B类地址的第1个8位位组的前
两位总置为10,剩下的6位既可以是0也可以是1,这样就限制其范围小于等于191,
由128+32+16+8+4+2+1得到。最后的16位(2个8位位组)标识可能的主机地址。每
一个B类地址能支持64534个惟一的主机地址,这个数由2的16次方减2得到。B类
网络仅有16382个。
▲C类地址
C类地址用于支持大量的小型网络。这类地址可以认为与A类地址正好相反。
A类地址使用第一个8位位组表示网络号,剩下的3个表示主机号,而C类地址使用
三个8位位组表示网络地址,仅用一个8位位组表示主机号。
C类地址的前3位数为110,前两位和为192(128+64),这形成了C类地址空间
的下界。第三位等于十进制数32,这一位为0限制了地址空间的上界。不能使用
第三位限制了此8位位组的最大值为255-32等于223。因此C类网络地址范围从
192.0.1.0至223.255.254.0。最后一个8位位组用于主机寻址。
每一个C类地址理论上可支持最大256个主机地址(0-255),但是仅有254
个可用,因为0和255不是有效的主机地址。可以有2097150个不同的C类网络地址。
注意在IP地址中,0和255是保留的主机地址。IP地址中所有的主机地址为0
用于标识局域网。同样,全为1表示在此网段中的广播地址。
越址类前缀位做最大网络数后缀位数每个网络最大主机故
A71282416777216
B14163841665536
C2120971528256
▲D类地址
D类地址用于在IP网络中的组播(multicasting,又称为多目广播)。D类组
播地址机制仅有有限的用处。一个组播地址是一个惟一的网络地址。它能指导报
文到达预定义的IP地址组。因此,一台机器可以把数据流同时发送到多个接收
端,这比为每个接收端创建一个不同的流有效得多。组播长期以来被认为是IP
网络最理想的特性,因为它有效地减小了网络流量。
D类地址空间,和其他地址空间一样,有其数学限制,D类地址的前4位恒为
1110,预置前3位为1意味着D类地址开始于128+64+32等于224。第4位为0意味着D
类地址的最大值为128+64+32+8+4+2+1为239,因此D类地址空间的范围从
224.0.0.0到239.255.255.254。这个范围看起来有些奇怪,因为上界需要4个8
位位组确定。通常情况下,这意味着用于表示主机和网络的8位位组用来表示一
个网络号。这其中是有原因的!因为D类地址不是用于互联单独的端系统或网络。
D类地址用于在一个私有网中传输组播报文至IP地址定义的端系统组中。因
此没有必要把地址中的8位位组或地址位分开表示网络和主机。相反,整个地址
空间用于识别一个IP地址组(A、B或C类)。现在,提出了许多其他的建议:不需
要D类地址空间的复杂性,就可以进行IP组播。
▲E类地址
E类地址虽被定义但却为IETF所保留作研究之用。因此Intejrnet上没有可用
的E类地址。E类地址的前4位恒为1,因此有效的地址范围从240.0.0.0至
255.255.255.255,考虑到E类地址作研究之用且仅在IETF内部使用,因此,在这
里没有必要作进一步讨论了。
▲特殊IP地址
前缀后银始址类型用途
全。全。本机启动时使用
网络全。网络标识一个网络
网络全1直接广播在特定网上广播
全1全1有限L播在本地网上广播
127任意回送恻试
▲系统的低效
历史上,不同类IP地址之间巨大的差异已经浪费了大量的地址。举例来说,
一个中等规模的公司需要300个IP地址。一个C类地址(254个地址)不够用。使用
两个C类地址,提供的地址有富余,但是这样一来,一个公司就有两个不同的域,
增加了路由表的尺寸一每一个地址空间需要一个路由表项(即使它们属于同一个
组织)。另一种选择是,B类地址提供了所有需要的地址,而且在一个域中。但
是这样却浪费了65234个地址,当一个网络有多于254个主机时就提供一个B类地
址,这种情况太常见了。因此,B类地址比其他地址更容易耗尽。或许最浪费的
是分配的地址比所需的地址多。任何组织只希望一个地址空间。这些组织不会验
证需求量,因此他们会把大部分不用的地址保留,以备将来之用。
(2)子网掩码netmask
使用子网掩码可以部分解决IP地址不够用的问题。
子网和主机地址是由原先IP地址的主机地址部分分割成两部分得到。因此,
用户分子网的能力依赖于被子网化的IP地址类型。IP地址中主机地址位数越多,
就能分得更多的子网和主机。然而,子网减少了能被寻址主机的数量。实际上,
是把主机地址的一部分拿走用于识别子网号。子网由伪IP地址,也称为子网掩
码标识。
子网掩码是可用点-十进制数格式表示的32位二进制数,掩码告诉网络中的
端系统(包括路由器和其他主机)IP地址的多少位用于识别网络和子网。这些位
被称为扩展的网络前缀。剩下的位标识子网内的主机,掩码中用于标识网络号的
位置为1,主机位置为0。举例来说,掩码Hill111.11111111.11111111.11000000
(255.255.255.192)能在子网产生64个可能的主机地址。因此,可以在子网内惟
一地标识64个设备。实际上只有62个地址是可用的,另两个主机地址是保留的,
第一个主机号总保留为识别子网自身,另一个主机号保留作为子网的广播地址。
因此当得到子网内最大可用的主机数时总要减去2,才能得到可用的主机数。
从数学上讲,可以得到的子网数依赖于被子网化的IP地址所属的类别。每
一类地址使用不同的位数识别网络,因此,每一类地址用于子网化的位数也不同。
下表例示了一个A类IP地址子网和子网内主机数的情况。
子网数量主机数量撞码子网位数主机位数
24194302222
62097150255.22400321
141048574255.24000420
30524286255.24800519
6226214225525200618
126131070717
25465534255.25500816
51032766915
102216382255.25519201014
204681901113
4094409425525524001212
81902046255.25524801311
163821022255255252.01410
32766510255.255.2540159
65534254168
131070126255.255.255128177
2621426292186
52428630255.255255224195
10485741440204
20971506255.255.255248213
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年统计学考试相关数据处理试题及答案
- 吸引力与技术的美容师考试试题及答案
- 二手车现场评估准备工作试题及答案
- 宠物营养师考试知识点解析试题及答案
- 2024年美容师诚信经营考量试题及答案
- 2024年小自考行政管理考试重点试题试题及答案
- 汽车美容器械的维护与保养试题及答案
- 2024-2025学年内蒙古巴彦淖尔一中高一下学期第一次学业诊断生物及答案
- 2024年计算机基础考试知识整合试题及答案
- 关于宠物营养师职业伦理的讨论试题及答案
- 【基于单片机的电子密码锁设计(论文)10000字】
- 湖南省长沙市2024年中考地理试题
- 蜘蛛开店第二课时 教案
- 模拟试卷:2023-2024学年八年级下学期语文期中模拟考试(考试版A4)【测试范围:1-3单元】(广东深圳专用)
- 零星维修工程投标方案(技术方案)
- DBJ04∕T 390-2019 基坑工程装配式钢支撑技术标准
- 痕迹检验练习题
- 佛山市2023-2024学年高二下学期7月期末英语试题(解析版)
- 人教版数学四年级下册3运算定律《解决问题策略的多样性》说课稿
- 注射相关感染预防与控制(全文)
- GB 31825-2024制浆造纸单位产品能源消耗限额
评论
0/150
提交评论