半双工通信系统中的碰撞避免 I.发明领域
本发明涉及数据传送。更具体地,本发明涉及一个新颖的和改进的方法以防止在半双工通信系统中的消息碰撞。
II.有关技术的描述
在半双工通信系统中,多个通信设备连到单个通信通道中,一个那样的系统是一个传真通信系统,其中两个传真机通过一根电话线发送消息。如传真机那样的半双工设备能在特定时刻仅发送消息或仅接受消息。这些设备不能同时发送和接受数据。若两个设备同时相互发送数据且无设备在接收,这些设备将不能接受另一个设备的消息。这种情况就称为消息碰撞。
大多数半双工通信系统设计成尽可能减小消息碰撞以改善通信质量。这些系统使用各种各样的方案来避免消息碰撞。这些方案中某些需要一定质量的通信通道。当通信通道变坏,可能是消息碰撞增加的迹象。另外一些方案使用专门的定时和同步以避免消息碰撞。对这些方案,增加了通信通道的延时,可能引起系统失效。
传真系统是一个半双工通信系统的例子,它依赖于两个通信传真机之间的定时和同步来避免消息碰撞。传真机通过一个标准的公共交换电话网(PSTN)通道互相通信,后者具有已知的通道质量和延时特征。当一个非标准PSTN通道,如数字通信系统或卫星通信线路,被插入到两个传真机之间,增加了的传输延时可能由于消息碰撞而引起传真交互失败。
一个数字通信系统或卫星通信线路结合半双工通信系统扩大了覆盖地范围,允许通信设备的可动性,并增加了不同通信设备之间的互连性。一个能用于连接传真通信系统的示例性数字通信系统是一个无线码分多址(Code DivisionMultiple Access-CDMA)系统,它在网状(Cellular)或个人通信系统(PCS)上或在GLOBALSTAR卫星通信系统中运行。这些数字通信系统具有由于大量数字信号处理和传输延时引起的内在的处理延时。这些数字通信系统也使用中心基站来组合或多路复用从许多通信设备来的信号成为一个公共的传输信号。最终的总体延时既是不可容忍地长,且是不可预计的。
在本发明的整个说明中保持一个辞法结构以便更清楚地讨论本发明。在叙述两个设备之间的通信时,用术语“消息”表示从源设备到目标设备之间的通信。此“消息-messege”可以或不可以由源设备发送。术语“响应-response”用于表示从目标设备到源设备的通信,作为以前发送的“消息”的结果。
在使用定时和同步方案以避免消息碰撞的半双工通信系统中,希望与目标设备在同一通道通信的源设备借助于发出一个消息并等待从目标设备来的响应来起动通信过程。在预定时间长度过去后,若未收到响应,该源设备重发此消息。此过程重复规定的次数或直到收到响应为止。
对于一个Group 3标准的传真系统,在传真机之间的定时与同步符合于“ITU-T推荐T.30:在一般交换电话网络中文件传真过程”中的规定,后面称为T.30传真协议。T.30传真协议使用若干调制技术来传输前面的消息数据。特别地,在传真机之间的参数协高和握手使用在“CCITT推荐V.21:用于一般切换电话网络(GSTN)的300bps双工调制解调器标准”中规定的调制技术完成。握手建立了传真机之间合适的通信模式。
对于一个T.30传真系统,一个呼叫传真机器借助于向被呼叫的传真机拨号并发出一个呼叫音调(CNG)来发出呼叫。该被呼叫传真机检测入局呼叫并发回一个被呼台识别音调(CED)到呼叫传真机器。该被呼叫传真机然后给呼叫传真机发出其数字识别信号(DIS),向呼叫传真机通知它的能力。在检测到DIS信号以后,呼叫传真机发出一个数字命令信号(DCS),通知被呼叫传真机前者计划使用的能力。
除了上述初始化信号以外,呼叫期间在传真机之间还发生其他消息。例如,训练信号,信息消息和终止消息也是典型的传真呼叫的部分。
在呼叫期间,呼叫传真机和被呼叫传真机之间发送许多消息。在传真呼叫中的各个阶段,从呼叫传真机或被呼叫传真机发送消息。因为呼叫传真机与被呼叫传真机均能触发消息,下面的讨论借助于源传真机(触发消息到目标传真机的传真机)和目标传真机(对源传真机作出响应的传真机)来叙述,而不再称呼叫传真机或被呼叫传真机。如果未收到对这些消息的响应,则必须重复发送由源传真机发送的某些消息。
T.30传真协议规定了在传真机之间触发一个呼叫时必须遵守的规程。例如,专门规定了CNG,CED,DIS和DCS的顺序和格式。T.30传真协议还规定了哪些消息在未收到响应前必须重复发送。因此,借助于监控消息格式和具备既定的信令顺序的知识,可能确定哪些消息将重复发送。按照T.30传真协议可通过分析消息和接收的传真呼叫的状态来确定重复发送的消息。
为了适应不令人满意的通道状态,T.30传真协议需要某些未应答的消息在传真机之间重复发送。若源传真机发送那样一个消息到目标传真机,该源传真机期望在指定时间间隔内收到目标传真机的响应。若在指定时间间隔后未收到响应,T.30传真协议要求源传真机重发消息。重发一直持续到收到从目标传真机来的响应或重发次数超过一个极限值。
若未检测到响应,在传真机之间以一定的重复间隔重复DIS和某些消息。T.30传真协议定义了重发之间的最短重复间隔。例如,T.30传真协议规定,以自动方式操作的一个传真机的重复间隔是3.0秒±0.45秒。这就意味着,一个符合T.30传真协议的传真机在发出消息后2.55秒内不会重发消息。因此,如果那样的传真机在最短重复间隔2.55秒内收到响应,则不发生碰撞。
在此T.30传真定时方案下,在通信通道中长的传送延时可能导致消息碰撞。在一种情况下,发送的传真机发送消息到接收传真机,且由于发送延时,从接收传真机来的响应占据的重复间隔更长的时间再到达发送传真机。因为发送传真机未能及时收到响应,它重发消息。若从接收传真机来的响应在发送传真机重发消息的同时到达,则导致消息碰撞,且响应将不被发送传真机接收。
未能顾及到不可预见的和长的延时,使得在Group 3传真机之间在非标准PSTN通信通道上的通信变得不可靠。需要一种方法,不论通道延时多少都能防止消息碰撞。
发明概述
本发明是一个新颖的和改善的方法,用于防止在半双工通信系统中的消息碰撞。
本发明的一个目的是借助于使用一个基于定时器的碰撞防止方法和线路来防止在半双工通信系统中的消息碰撞。在从发送传真机收到一个消息以后,碰撞防止线路中的控制器确定,根据T.30传真协议的知识该消息是否要重复发送。若该消息需重发,该控制器将一个递减计数碰撞定时器设置到一个比该消息最短重复间隔更短的预定时间间隔。传向发送传真机的响应只有在预定时间间隔内发送到发送传真机。一旦该预定时间间隔走完,直到该从发送传真机来的消息重发且递减计数碰撞定时器复位,该控制器储存未转送的响应。控制器然后发送任何储存的响应。由于发送响应仅在最短的重复间隔之中,消息碰撞被防止。
本发明的另一个目的是借助于使用缓冲器防止在半双工通信系统中的消息碰撞。从发送传真机来的消息被分析以确定该消息是否被重发。从接收传真机来的响应存入缓冲器,并根据碰撞定时器,只有在确定未发生消息碰撞以后再发送到源传真机。
本发明的上述说明和其他目的、特征和优点将参照下面的说明、权利要求和附图变得更加明确。
附图简述
本发明的特征、目的和优点将根据下面结合附图的详细描述变得更加明确,图中相应的参照号前后一致。
图1是用现有技术的一个标准半双工PSTN通信系统的方框图。
图2是一个包含与PSTN16连接的CDMA无线数字通信系统的通信系统的方框图。
图3是基于定时器的碰撞防止线路的方框图。
图4是本发明的基于定时器的碰撞防止方法的流程图。
最佳实施例的详细描述
现有技术的一个示例性半双工通信系统如图1所示。一个那样的系统是标准的传真通信系统。在此传真通信系统中,传真机A2与传真机B10通过公共交换电话网(PSTN)6经由通信通道4和8通信。传真机A2经由通信通道4连接到PSTN6。PSTN6经由通信通道8连接到传真机B10。PSTN 6起着切换作用,将通信通道4连到通信通道8使传真机之间能够通信。通信通道4和8典型地是标准RJ-11接口。RJ-11接口和PSTN 6的特征和延时已被很好地定义,并考虑了T.30传真协议。
使用数字通信系统的通信系统在图2中说明。在该通信系统中,一个数字通信系统串行地连接到传真机A12和传真机B30之间的通信通道14,18,20和24。该数字通信系统可能是陆地上的无线CDMA系统或如GLOBALSTAR系统那样的卫星通信系统。传真机A12通过通信通道14与单个用户系统(SSS)电话16通信。在较佳实施例中通信通道14是RJ-11接口。SSS电话16数字地处理数据并通过空中的通信通道18发送结果输出。空中通信通道18可以是卫星线路或一个陆地无线线路。基站22接收此空中信号,处理此信号并通过通信通道24将数据送到PSTN 26。通信通道24典型地是一个标准的T1/E1线或其他类似的发送介质。PSTN 26通过通信通道28将数据发送到传真机B30。
在SSS电话16和基站22中的数字信号处理延时了传真机A12和传真机B30之间的通信。通过空中通信通道18和20的信号传输增加了整个延时。总的延时使从源传真机发出的消息在较后时刻被目标传真机收到。类似地,从目标传真机的响应在较后时刻到达源传真机。
在示例性的实施例中,使用基于定时器的碰撞预防方法和线路防止在半双工通信系统中的消息碰撞。参照图2,传真机A12试图发送一个消息到传真机B30。传真机A12连接到SSS电话16并发送消息到SSS电话16。SSS电话16检测该消息并确定根据由T.30传真协议定义的消息状态是否需跟随重复消息。若该消息不被重发,SSS电话16不完成任何专门的功能,因为无潜在的碰撞。若消息要被重复,SSS电话16将仅在不发生消息碰撞的时间间隔内发送响应到传真机A12。
装在半双工通信系统中的基于定时器的碰撞防止线路40a和40b被用于防止在传真机A12和传真机B30之间的消息碰撞。碰撞防止线路40a装在SSS电话16中而碰撞防止线路40b装在基站22中。在该较佳实施例中,图3的碰撞防止线路40分别装在两个通信传真机的每一个中。
在传真机之间的一个呼叫中,一个传真机对某些消息表现作为源传真机而对另一些消息作为目标传真机。在本发明中,只需要描述在源传真机与碰撞防止线路之间的通信,而不必涉及目标传真机。将讨论限于源传真机与碰撞防止线路将允许集中讨论本发明而不会丧失精确性。
在图3中示出一个示例性基于定时器的碰撞防止线路40。传真机50是源传真机,它发送消息到碰撞防止线路40。在从传真机50收到消息以后,碰撞防止线路40确定该消息是否将重发。碰撞防止线路40根据刚收到的消息类型和它对过去消息的先验知识作出此决定。若消息需重发,碰撞防止线路40考虑到传真机50将在晚一些时间重发消息,但不会早于T.30传真协议所规定的最短2.55秒的重复间隔。因此,碰撞防止线路40在2.55秒之后期待传真机50的重发消息。知道这一点,碰撞防止线路40将仅在小于2.55秒的预定超时时间间隔内发送响应到传真机50。在最佳实施例中考虑到其他系统处理延时预定超时时间间隔是2.40秒。在该消息先前发送后的2.55秒内由传真机50收到的响应将不与重发消息碰撞。
从传真机50来的消息由装在碰撞防止线路40内的控制器42收到。控制器42可以在微处理器、一个微控制器、一个数字信号处理(DSP)芯片或一个ASIC中编程完成所述功能。在确定消息需要重复以后,控制器42将碰撞定时器设成预定超时间间隔。此预定超时时间间隔必须小于最短重复间隔。在最佳实施例中,虽然任何短于2.55秒的超时时间间隔都是可以接受的,依赖处理延时对以自动方式工作的传真机选择2.40秒的预定超时时间间隔。控制器42监控碰撞定时器44。若控制器42需要发送响应到传真机50,控制器42首先检查碰撞定时器44。若碰撞定时器44尚未走完,控制器42将响应发送到传真机50。否则,若碰撞定时器44已经走完且控制器42没有响应要发到传真机50,控制器42在发送响应到传真机50前等待传真机50重发消息。以此方式,控制器42中在最短的重复间隔内发送响应到传真机50,以避免消息碰撞。
数据存储60包含SSS电话16和基站22之间的通信。这样,数据存储60包含在传真机50和传真机50与其通信的对方传真机(图3中未示出)之间的消息。若由于潜在的消息碰撞或其他系统考虑直接的消息发送不可能,则在传真机50和对方传真机之间的通信存入缓冲器46中。数据存储60和缓冲器46可以用任何存储单元或任意数量的记忆装置来实现,如RAM存储器、锁存器或本专业所熟知的其他类型存储装置。
图4中示出描述本发明的基于定时器的碰撞防止方法的操作的流程图。流程图的讨论集中在传真机和碰撞防止线路之间的通信。开始,传真机可以是源传真机或目标传真机。
本发明从起始状态100开始,在步骤102空操作等待传真机消息时,本发明不断地询问(poll)是否收到从传真机来的消息。若无消息收到,在步骤103本发明然后确定是否有发送到传真机的消息。若有消息要发到传真机,在步骤132本发明发送消息。发消息以后,本发明回到起始状态100。若没有消息发送到传真机,本发明回到步骤102继续询问从传真机来的消息。
若本发明确定从传真机收到一个消息,在步骤104等待接收完整消息。于是该传真机被认为是该消息的源传真机。在接收到整个信息以后,在步骤106借助于根据T.30传真协议分析消息的状态本发明确定消息是否由该传真机重发。若消息不被重发,本发明不完成任何专门的功能且回到步骤102。若本发明确定该消息是重发的,在步骤108本发明将碰撞定时器设成短于最短重复间隔的预定时间间隔。在较佳实施例中,碰撞定时器设成2.30秒到2.55秒之间的时间间隔。在最佳实施例中,碰撞定时器设成2.40秒,短于对自动方式操作的传真机的2.55秒的最短重复间隔。该碰撞定时器从设定时间递减计数至0。
设置定时器后,本发明进入另一个循环。此循环中在步骤110本发明首先检测碰撞定时器是否走完(达到0)。若该碰撞定时器未走完,则在步骤120本发明确定是否需要发送一个响应到传真机。若有一个响应需发送,本发明在步骤122发送响应。在发送响应以后,本发明回到起始状态100。
若没有响应需发送,本发明回到步骤110并继续询问碰撞定时器。若碰撞定时器走完,本发明知道,该源传真机在其后任何时刻将重发消息。本发明期待一个重复消息,然后在步骤112等待收到从传真机来的完全的重复消息。一旦收到重复消息,本发明进到步骤106。然后在步骤106本发明确定新消息是否将重复。
在示例性实施例中,一旦碰撞定时器走完,本发明在进入下一步前等待接收重复消息。若由于任何原因期待的重复消息未收到,本发明可能无限期地处在此状态下。在第二个实施例中,一旦碰撞定时器走完,设置一个超时定时器。本发明在等待重复消息时不断地询问超时定时器。若超时定时器走完而所期待的重复消息未到,则本发明放弃等待且回到起始状态100。
该示例性实施例的流程图假设,在重复消息之间只有一个响应被发送到传真机。在碰撞定时器时间间隔内有多个响应发送到传真机的实施例也在本发明的范围内。可以容易地修改图4中的流程图来表示此实施例。
基于定时器的图3中碰撞防止线路和图4中的流程图能以多种方式实现。发明的概念可以使用一个状态机,一些存储器和一个时钟从硬件上实现。本发明也能借助在微机上或数字信号处理器上运行的微码以固件方式实现。其他实现方法或混合组合的实现方法也属本发明的范围。
虽然该示例性实施例是以在PSTN以半双工方式运行的传真通信系统为目标的,本发明的概念也能用于任何使用半双工通信系统的多个设备之间的通信。例如,本发明也能用于计算机、传真机、扫描仪、绘图仪和打印机、复印机、测试设备及诊断设备之间的通信。
该较佳实施例的以上叙述使本专业的任何人能使用本发明。对这些实施例的各种修改对熟悉本专业的人是十分明白的,而且这里定义的一般原则可应用到其他实施例中而不需任何创新技能。因此本发明无意限于这里提出的实施例,而是符合与这里发现的原理和新颖特征相一致的更广泛的范围。