CN100403721C - 用于网络中的数据冲突检测的方法和装置 - Google Patents
用于网络中的数据冲突检测的方法和装置 Download PDFInfo
- Publication number
- CN100403721C CN100403721C CNB018098339A CN01809833A CN100403721C CN 100403721 C CN100403721 C CN 100403721C CN B018098339 A CNB018098339 A CN B018098339A CN 01809833 A CN01809833 A CN 01809833A CN 100403721 C CN100403721 C CN 100403721C
- Authority
- CN
- China
- Prior art keywords
- signal
- expression
- network
- respect
- reflection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000001514 detection method Methods 0.000 title description 12
- 238000005070 sampling Methods 0.000 claims description 56
- 238000003860 storage Methods 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 20
- 230000001360 synchronised effect Effects 0.000 claims description 11
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 8
- 230000015654 memory Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 230000006855 networking Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000011514 reflex Effects 0.000 description 4
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000001771 impaired effect Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Air Bags (AREA)
- Radar Systems Or Details Thereof (AREA)
- Facsimiles In General (AREA)
- Non-Adjustable Resistors (AREA)
- Golf Clubs (AREA)
Abstract
用于网络中的数据冲突检测的方法和装置,其中发送第一信号到网络中;获得从网络接收的第二信号的一个表示,所述第二信号包含第一信号的反射;发送第三信号到网络中;获得从网络接收的第四信号的一个表示,所述第四信号包含第三信号的反射;将第二信号的表示与第四信号的表示相比较;以及根据第二与第四信号的表示相比较相对于第三信号产生一个正冲突指示或负冲突指示。由此可以提高网络设备使用介质的能力。
Description
技术领域
本发明涉及到网络领域。本发明具体涉及到在网络中检测数据冲突的方法和装置。
背景技术
使用计算机的人的数量和所使用的计算机用品的种类每一天都在不断增加。计算机可能会象电话和电视一样变成日常生活中的普通用品。即使在今天,一个典型家庭或小商户也可能有不只一台计算机。联网的计算机合起来具有许多优点。例如,即使是在一个家庭或小商户中,联网的计算机也能共享存储空间并共享对打印机和互联网连接等资源的访问。然而,传统的联网方案在价格或复杂性上对实现家庭或小商户用户的普及构成了限制。
近来已经有了专门针对家庭和小商户联网的产品。这些小规模网络的一种方案是采用现有的电话线或电力线连接一个家庭或办公室内的两台以上计算机。当今的多数家庭在不只一个房间内有电话插座。一般是将所有电话插座连接到引入室内的一条电话线上。如果将一台计算机插入一个房间内的电话插座,并将另一台计算机插入另一个房间内的另一个电话插座,电话连线在计算机之间提供网络介质或物理连接,通过它可以发送和接收数据。如果两个墙面出口是在同一个电路上,也能按同样的方式使用电力线。
当然,提供物理网络连接只是第一步。让计算机彼此间通过网络连接实现对话是一件相当复杂的任务。网络通信的一个基本方面是要确定哪一台机器在何时通过网络发送数据。一般来说,机器可以“收听”网络上的数据交换,并且在交换有间歇时发送数据。然而,如果不只有一台计算机在等待交换的间歇,在检测到间歇时就可能有不只一台计算机在同时发送数据。这种状态就是“数据冲突”。一台计算机发送的数据会与另一台计算机发送的数据发生混合,导致所有数据都难以解读。
为了制止数据冲突,首先需要检测数据冲突。在Ethernet(以太)网络中就用到了传统联网方案对数据冲突检测的一个例子。当一台机器向Ethernet网络上发送数据时,机器还要对网络“收听”。就是说机器要发送数据并且收听从网络返回的数据反射。如果机器“听到”从网络返回的还有机器所发送数据以外的东西,机器就认为是因为另外的机器同时向网络发送数据在网络中造成数据冲突而产生了预料之外的反射。在这种情况下,机器就会停止发送数据,等待一定的时间周期后再次尝试。
为了精确预测信号反射的样子,物理网络介质必须具有已知和可预测的特性。如果不知道网络物理介质的特性,或是这种特性随不同的网络有急剧的变化,就无法精确预测反射的信号。在这种情况下,传统的冲突检测方案例如是上述用于Ethernet网络的方案在未知或“粗糙的”网络环境中就不可靠了。
电话线或电力线都是粗糙网络介质的例子。这些介质的特性随不同的家庭和不同的商户可能有很大的变化。电话和电力线不是为网络数据传输设计的。建筑物代码随不同地域和时间会有很大的变化。线路年久失修会劣化。一栋房子中的线路可能有五十年了,而邻居家中的线路可能是崭新的。有些线路特别是老线路可能易受温度和湿度等环境变化的影响。考虑到粗糙网络中物理介质特性变化的所有可能性,来自这种网络介质的信号反射是无法精确预测的,造成传统的数据冲突检测没有用,这样就限制了网络设备使用这种介质的能力。
发明内容
为克服以上缺点,本发明提供一种数据冲突检测方法,包括:发送第一信号到网络中;获得从网络接收的第二信号的一个表示,所述第二信号包含第一信号的反射;发送第三信号到网络中;获得从网络接收的第四信号的一个表示,所述第四信号包含第三信号的反射;将第二信号的表示与第四信号的表示相比较;以及根据第二与第四信号的表示相比较相对于第三信号产生一个正冲突指示或负冲突指示。
优选地,第二与第四信号的每一个具有同步起始点,并且其中获得第二信号的表示包括从第二信号选择第一组多个数据采样,在相对于第二信号中的同步开始点的采样位置上取得各所述第一组多个数据采样;和其中获得第四信号的表示包括选择第二组多个数据采样,在与相对于第四信号中的同步开始点的采样位置相同的采样位置上取得各第二组多个数据采样。
第二信号的表示与第四信号的表示的比较可以包括:确定来自第一和第二组多个数据采样中的对应的采样位置的特定成对的数据采样之间的差的一个绝对值;将各绝对值与第一门限值相比较;以及为超过门限值的各绝对值增进计数器值。
产生的正冲突指示或负冲突指示可以包括:如果计数器值超过了第二门限值,就产生正冲突指示。
获得第二信号的表示可以进一步包括:将第一组多个数据采样各自的值与一个预定值相比较;并且记录那些仅处在预定值的门限范围内的第一组多个数据采样的位置和数值。
优选地,预定值是零或者小于各数据采样的饱和值的一个值当中的一个。各成对的一个位置和一个对应值包括一个数据点,并且其中的记录包括记录第二信号表示的数据点的数量。
如果相对于第三信号产生的是正冲突指示,该方法还可以包括:发送第五信号到网络中;从网络获得第六信号的一个表示,所述第六信号包含第五信号的反射;将第六信号的表示与第四信号的表示相比较;将第六信号的表示与第二信号的表示相比较;根据第六信号的表示与第四信号表示的比较和第六信号的表示与第二信号表示的比较相对于第五信号产生一个正冲突指示或负冲突指示;如果相对于第五信号产生的是负冲突指示,就存储第六信号的表示;并且如果相对于第五信号产生的是正冲突指示,就存储第六信号的表示和存储第四信号的表示与第二信号的表示中至少之一。
优选地,如果第六信号的表示与第四信号的表示和第二信号的表示中的至少一个相符,就产生相对于第五信号的负冲突指示。
有益的是,如果相对于第三信号产生的是负冲突指示,该方法还包括:发送第五信号到网络中;从网络获得第六信号的一个表示,所述第六信号包含第五信号的反射;将第六信号的表示与第四信号的表示相比较;根据第六信号的表示与第四信号的表示相比较相对于第五信号产生一个正冲突指示或负冲突指示;如果相对于第五信号产生的是负冲突指示,就存储第六信号的表示;并且如果相对于第五信号产生的是正冲突指示,就存储第六信号的表示和第四信号的表示。
优选地,正冲突指示指示出网络上的一个数据冲突和网络中的一种信道特性变化的至少之一。
相应地,本发明提供一种数据冲突检测装置,包括:获得电路,获得从网络接收的第一信号表示和从网络接收的第二信号表示,所述第一信号表示包含先前传送到网络中的第三信号的反射和所述第二信号表示包含先前传送到网络中的第四信号的反射;第一比较器,将第一信号的表示与第二信号的表示相比较;以及控制逻辑,根据第一比较器上产生的结果相对于第四信号产生一个正冲突指示或负冲突指示。
优选地,获得电路包括:第二比较器,将从第一信号取得的多个数据采样各自的值与一个预定值相比较;以及寄存器,存储由第二比较器指示出的处在预定值门限范围内的多个数据采样中的各个数据采样的位置和数值。
优选地,第一比较器确定来自第一信号表示和第二信号表示的同步数据采样中的差的一个绝对值,并且将该绝对值与一个门限值相比较,该装置进一步包括:一个计数器连接在比较器和控制逻辑之间,所述计数器按照第一比较器的指示对超过门限值的每一个绝对值增进一个计数值。
优选地,如果相对于第四信号产生的是正冲突指示,获得电路获得第五信号的表示,所述第五信号包含先前传送到网络中的第六信号的表示,该装置还包括:第二比较器,将第五信号的表示与第一信号的表示相比较,而上述第一比较器将第五信号的表示与第二信号的表示相比较;上述控制逻辑根据第一和第二比较器的结果相对于第六信号产生一个正冲突指示或负冲突指示。
所述装置可以进一步包括:多个寄存器,如果相对于第六信号产生的是负冲突指示,就存储第五信号的表示,如果相对于第六信号产生的是正冲突指示,就存储第五信号的表示及第一信号的表示和第二信号的表示中的至少一个。
优选地,如果相对于第四信号产生的是负冲突指示,获得电路获得第五信号的表示,所述第五信号包含先前传送到网络的第六信号的反射,所述第一比较器将第五信号的表示与第二信号的表示相比较,并且所述逻辑控制根据第一比较器的结果相对于第六信号产生正冲突指示或负冲突指示,该装置进一步包括:多个寄存器,如果相对于第六信号产生的是负冲突指示,就存储第五信号的表示,如相对于第六信号果产生的是正冲突指示,就存储第五信号的表示和第二信号的表示。
附图说明
在附图中表示了本发明的例子。然而,附图并不能限制本发明的范围。在附图中用相同的编号代表相同的元件。
图1表示网络的一个实施例。
图2表示冲突检测器的一个实施例。
图3表示信号反射的一个实施例。
图4表示本发明的一个实施例。
图5表示硬件系统的一个实施例。
图6表示一种机器读取存储介质的一个实施例。
具体实施方式
在以下的说明中,为了能透彻地理解本发明而提供了许多具体说明。然而,本领域的技术人员没有这些细节也能实现本发明,本发明不仅限于具体的实施例,本发明还能按各种各样的变型实施例来实现。在各情况下并没有具体解释广泛公知的方法,程序,部件和电路。
说明书部分用本领域技术人员普遍采用的术语来描述,以便将本发明的实质传授给本领域的技术人员。说明书部分还能用通过执行程序指令完成的操作来描述。正如本领域的技术人员所知,这些操作往往采取电,磁或光信号的形式,能够存储,传送,组合,并且能通过电气装置来控制。
以下要按照用一种方法依次执行的许多分散步骤来解释各种操作,有助于理解本发明。然而,即使是连贯的顺序所表示的顺序也并不一定是说必须按所述的顺序执行。另外,本文中常用的说法“在一个实施例中”并不是特指某一个实施例。
正如下文所要说的,本发明执行的数据冲突检测是将当前的反射信号与先前反射信号的表现相比较。本发明可以用来检测包括粗糙联网环境在内的任何类型网络中的数据冲突,网络的信道特性是未知且不可预料的,并且随时间而改变。
图1表示按照本发明提供的一种网络100的一个实施例。用电话线110将四台个人计算机(PC)101-104耦合到一起。电话线110可以连接到家庭,公寓,办公楼等等。四个网络接口121-124将四台PC耦合到电话线110。每个网络接口包括为了使PC能与网络100内的其他PC通信所需的所有功能。通过将PC联网使PC能够共享资源,例如是通过PC104访问互联网130并通过PC103访问打印机140。
每个网络接口包括一个本发明的冲突检测器150。每当网络接口121-124向互联网100发送一个信号时,信号中包括一些相同的信号成分。例如在一个实施例中,信号以数据帧的形式发送给网络100,并且每一帧包括作为数据前缀的一种特定波形。
向网络100发送信号的那个网络接口中的冲突检测器接收一致信号成分的反射,并且将反射与先前反射的一致信号成分的表现相比较。假设网络特性还没有从先前反射的信号时发生变化,并假设没有其他网络设备在同时向网络100发送信号,当前一致信号成分的反射就应该与先前一致信号成分的反射基本一致。如果反射不一致,本发明的冲突检测器150就能指示出已检测到数据冲突。
已检测到数据冲突的指示不一定意味着实际上遇到了数据冲突。如果网络特性在反射之间发生了实质性变化,第二反射就可能与第一反射不匹配。例如是在网络中添加另一个网络设备,或者是从网络中去掉一个设备,或者是受损的网络介质会完全改变网络的特性,并且造成错误的冲突检测。然而,在下文所述本发明的各种实施例中,本发明的冲突检测器能适应网络特性随时间的变化。
一致信号成分对一个特定网络接口不一定是唯一的,而特定网络接口也不一定始终使用同一种一致信号成分。例如,一个网络接口可能使用六种不同的帧前缀。在这种情况下,冲突检测器就要存储所有六种的表现供比较之用。
在另外的实施例中,可以将图1中所示的一或多个部件组合或取消,可以添加任意数量的额外部件,并且能用任意数量的网络介质按任意配置将这些部件联网。
图2具体表示了冲突检测器150的一个实施例。一般来说,对于冲突检测器150接收到的第一反射,没有先前反射可供与这一反射相比较,冲突检测器150没法作出确定。对于冲突检测器150接收到的第二反射,可以将该反射与第一反射相比较,但是,如果反射间不匹配,冲突检测器150还是不能得知在第一反射或第二反射期间有没有冲突。在这种情况下,图2的实施例就要同时处理多达三个反射并且按照三个反射当中至少有两个匹配,且对于匹配的反射不会发生数据冲突的假设来工作。这是一种恰到好处的假设,由于在网络上传输数据的复杂性和网络反射的复杂性,两个数据冲突会产生相互匹配的反射的可能性极小。在另外的实施例中,冲突检测器可以根据网络的特性仅仅用两个反射就能工作,冲突检测器也可以使用三个以上反射。
在图2中,在反射输入215接收最初反射。在一个实施例中,反射是一个模拟信号的一系列数字采样。图3表示反射模拟信号330的一个实施例。关于时间按照规则的间隔提取数字采样340。每个数字采样是模拟信号在该特定时刻的振幅表现。例如,每个采样可以由12位值构成。典型的采样速率是32MHz或每秒32,000,000个采样。
参见图2,最初反射被提供给零捕捉比较器210,比较器220和230,以及寄存器240,250和260。由于没有存储先前的反射,冲突寄存器150没有反射可供比较,不能确定有没有数据冲突。控制逻辑290按照错误的警告发出冲突指示295。冲突指示295被用来按照各种方式解决数据冲突。例如,网络设备可以响应发出的冲突检测指示按任意的时间周期后退,然后再次尝试发送数据。
在任何情况下都应该存储最初的反射,以用来与后续的反射相比较。存储完整的最初反射需要很大的存储容量。例如,即使仅仅需要存储一毫秒的数据,按照32MHz采样速率的12位采样,就需要存储32,000个12位采样。本实施例并不是存储所有采样,而是存储反射的表现。具体地说,零捕捉比较器210监视最初反射的“过零点”,例如是图3中的过零点350。也就是将每个数据采样的值与实质零做比较。如果数据采样值是实质零,零捕捉比较器210就指令寄存器260存储该采样。根据用途和所需的精确度,可以存储不同数量的过零点。例如在一个实施例中要存储前30个过零点来表现一个反射信号。在另一个实施例中是存储前60个过零点。
将数字采样与“实质”零相比较。也就是说,采样是按照特定的频率提取的。作为模拟信号接近零的振幅,可以在模拟信号实际过零点的前、后提取采样。例如在图3中,即便模拟信号多次过零,也没有数字采样是严格的零。在这种情况下,零捕捉比较器210将各个采样的绝对值与一个小门限值320相比较,以便捕捉到接近实际过零点的采样。
存储在寄存器260中的数据点包括过零点的位置和数值。位置能指示出该数据采样相对于所有反射信号的同步起始时间的位置。同步起始时间是一个网络接口相对于该信号最初发送的时间开始对一个反射信号采样的时间。也就是说,每当网络接口向网络上发送一个模拟信号时,网络接口就在开始发送之后的同时开始对反射采样。这样来对应来自两个不同反射信号的采样。例如在图3中,每个采样数字2在时间上相对于同步起始时间320处在相同的位置。由图3可见,过零点是按照采样数字2和采样数字10的位置存储在寄存器260中的。它们的值是这些采样的数字表现。
当然,数值范围可以以零以外的其他数值为中心来代表反射信号。例如可以将采样与一个正或负值范围相比较。然而在实践中反射信号经常会使反射输入215饱和。也就是网络上信号的模拟值超过了数字采样所能代表的最大值。例如在图3中,门限310代表一个12位数字采样所能代表的最大振幅。如果模拟信号超过门限310,所有数字采样都具有相同的值。如果用一个数值范围来比较处在数字采样饱和范围之外的数值,在饱和状态下就会丢失数据冲突。在这种情况下,采用较小的值例如是零可能更好。
参见图2,在寄存器260中记录好一组过零点时,控制逻辑290就停止发出冲突指示295并且准备接收第二反射,将一组过零点复制到寄存器240和250中。当第二反射到达时,零捕捉比较器再次检测过零点,并且指示寄存器260存储这些过零点供以后参考。
同时,比较器220从寄存器240取回最初一组过零点,并且将每个过零点的值与来自第二反射的对应的数字采样相比较。也就是说,由于每个反射信号的数据采样是在同步起始点上开始的,比较器220可以选择在第二反射中与先前存储的过零点具有相同位置的一个数据采样。如果位置是匹配的,比较器就提取两个采样值的差,并将该差的绝对值与一个门限值相比较。
用门限为采样中因网络上的低电平噪声,网络中由于温度和湿度等环境变化形成的渐变等造成的变化提供一个余量。如果数值之间的差小于该余量,比较器220就仅仅用下一个过零点执行相同的比较。如果该差大于门限值,比较器220就为计数器270指示出一个差异。
比较器220对每一个过零点执行相同的操作,用计数器270对差异的数量计数。比较器230用存储在寄存器250中的过零点执行相同的操作,用计数器280对差异的数量计数。由于有存储在两个寄存器240和250中的最初一组过零点,比较器有可能提供相同的结果。在此处实际上不需要第二次比较,在某些实施例中,可以在这一级禁止比较器230。如下所述,第二比较器更加重要。
控制逻辑290从计数器270和280接收差异的数量。如果差异的数量超过门限值,控制逻辑290就发出冲突指示295。如果差异小于门限值,就不发出冲突指示。差异的门限值同样为网络中因噪声,环境随时间的改变等提供了一个变化余量。
如果反射是匹配的,冲突检测器150就认为没有数据冲突。将存储在寄存器260中的一组过零点保存在寄存器240和250中用于与下一个反射相比较。如果在没有检测到数据冲突时仅仅存储最近的一组过零点,冲突检测器150就能适应网络特性的逐渐变化。也就是如上所述,各种门限值为网络中的变化提供了余量。如果始终采用最近的反射,冲突检测器就能适应随时间的变化,例如是一天中温度的变化。
如果最初信号和第二信号之间的反射不匹配,冲突检测器150就不能确定在第一或第二反射期间是否发生过数据冲突。在这种情况下,控制逻辑290就将来自第二信号的过零点复制到寄存器250中,但是将来自最初信号的过零点保存在寄存器240中。
在接收到第三反射时,零捕捉比较器210再次检测到过零点并且指令寄存器260存储该过零点数据。比较器220再次将反射与寄存器240中的一组过零点相比较,而比较器230再次将反射与寄存器250中的一组过零点相比较。如果对第二反射没有检测到数据冲突,冲突检测器150就象上述对第二反射那样处理第三反射,因为寄存器240和250包含相同的一组过零点。也就是说,如果第三反射相互匹配,就不会有冲突指示。如果第三反射不匹配,就指示有冲突,并将第三冲突的过零点存储在寄存器250中,而寄存器240保存来自先前反射的过零点。
然而,如果有关于第二反射的数据冲突指示,寄存器240和250就会包含不同组的过零点。在这种情况下,由计数器270和280向控制逻辑290提供的差异数量应该是不同的。控制逻辑290根据这种差异作出决定。
如果第三反射和哪一组过零点都不匹配,控制逻辑290就会发出冲突指示295。在这种状态下,一行中的三个反射都不匹配。这种指示可能是因为网络业务负担重或是网络特性有急剧的变化。在任何情况下都将第三反射的过零点从寄存器260复制到两个寄存器240和250。在下一个反射到达时按照上述对第二反射相同的方式来处理。也就是说,如果下一个反射相互匹配,就指示没有冲突,并且用最近的过零点更新所有寄存器。如果下一个反射不匹配,就指示冲突,并将一个寄存器更新,而一个寄存器维持先前的过零点。
再参照第三反射,在此时相对于第二反射已指示出有数据冲突,如果第三反射根据比较与两组过零点之一是匹配的,控制逻辑290就认为第三反射不是数据冲突,并且将存储在寄存器260中的第三反射的过零点复制到寄存器240和250中用于以后的比较。这是一种安全的设想。两个数据冲突反射相互匹配的可能性极小。这就意味着与第三反射相匹配的早先的反射确实不是数据冲突,但是在当时无法确定。这样可能会不必要地阻止发送一帧数据,但是为可靠的数据冲突检测所付出的代价很小,可以在包括粗糙网络环境在内的任何实际网络中使用。
采用如上所述的三-反射方案,冲突检测器150不仅能适应网络随时间的渐变和边际变化,还能适应增加或拆除设备,网络受损等等大的变化。也就是说,冲突检测器150会一直将反射视为冲突,直至获得两个匹配的反射。比最近三个反射更早的任何反射都不予考虑。在网络有变化时,即使对少数几帧数据不满意,冲突检测器也能快速适应这种变化。
图4表示本发明的一个实施例。在框410中接收一个最初反射。存储这一反射(或是如上所述存储该反射的表现)并且指示出一个冲突。可能是实际发生了冲突,但是没有为了比较而存储先前的反射,因而无法知道实情。
在框420中接收下一个反射并与先前的反射相比较。在框430中,如果反射是匹配的,就将当前的反射存入框440并且让程序返回,在框420中接收下一个反射。然而,如果反射在框430中不匹配,就指示出冲突并在框450中存储这两个反射。
在框460中接收下一个反射并与两个存储的反射相比较。在框470中,如果当前反射与两个先前存储的反射之一相匹配,就在框440中存储当前的反射并且让程序返回到框420中接收下一个反射。如果当前的反射在框470中与先前存储的反射都不匹配,就在框480中指示出冲突,在框440中存储当前的反射,并让程序返回到框420接收下一个反射。
图5表示用来代表主要种类的计算机系统例如是个人计算机,工作站和/或嵌入式系统的一种硬件系统的一个实施例。在图示的实施例中,该硬件系统包括耦合到高速总线505的处理器510,总线505通过总线桥530耦合到输入/输出(I/O)总线515。临时存储器520被耦合到总线505。永久存储器540被耦合到总线315。I/O设备550也耦合到总线505。I/O设备550可以包括显示装置,键盘,一或多个外部网络接口等等。
有些实施例还可以包括附加部件,可能不需要所有的上述部件,或是能组合一或多个部件。例如,临时存储器520可以和处理器510在一个芯片上。或者是可以去掉永久存储器540并且用电擦除可编程只读存储器(EEPROM)代替临时存储器520,执行来自EEPROM的软件程序。有些实施例可以采用单一总线,可以将所有部件耦合到总线上,或是采用一或多个附加总线和总线桥,在上面可以连接各种附加部件。本领域的技术人员都熟悉各种内联网的变化,这其中包括基于具有存储器控制中心和I/O控制器中心的高速系统总线的内联网。其他部件还包括额外的处理器,CD ROM驱动器,额外的存储器以及现有技术中公知的其他外围部件。
在一个实施例中,上述的冲突检测器是用一或多台计算机例如是图5的硬件系统实现的。如果使用一台以上计算机,可以通过诸如局域网(LAN)和IP网络等外部网络来连接系统以实现通信。在一个实施例中,本发明是用在计算机内部执行一或多个执行单元的软件程序来实现的。对于给定的计算机可以将软件程序存储在永久存储器540等存储装置中。或者是如图6所示用任何机器读取的存储介质620存储能够由机器执行指令610的软件程序,例如有磁盘,CD-ROM,磁带,数字视频或通用盘(DVD),激光盘,ROM,闪存器等等。不一定要在本地存储一系列指令,可以通过图5的I/O设备550从远程存储器上接收,例如是网络上的服务器,CD ROM装置,软盘等等。
无论哪一个来源,都能将指令从存储装置复制到临时存储器520中并且接入处理器510并且执行。在一个实施例中,这些软件程序是用C编程语言编写的。然而可以看出,这些程序也可以用各种各样的程序语言来编写。
在另一个实施例中,本发明是用离散的硬件实现的。例如,可以用冲突检测器的一或多种上述功能为一或多个专用集成电路(ASIC)编程。在另一个例子中,可以在附加电路板上的一或多个ASIC中实现冲突检测器的一或多种上述功能,而电路板可以插入上述的计算机中。在再一个实施例中,可以用现场可编程门阵列(FPGA)或开关门阵列(SPGA)实现本发明的一或多种功能。在又一个实施例中,可以用硬件和软件的组合实现本发明的一或多种功能。
以上描述了用于数据冲突检测的方法和装置。本领域的技术人员阅读过说明书之后就能实现本发明的许多修改和变更,应该意识到为说明而提供的这些具体实施例不应该被视为是一种限制。因此,有关具体实施例的细节不应对权利要求书的范围构成限制。
Claims (17)
1.一种方法,包括:
发送第一信号到网络中;
获得从网络接收的第二信号的一个表示,所述第二信号包含第一信号的反射;
发送第三信号到网络中;
获得从网络接收的第四信号的一个表示,所述第四信号包含第三信号的反射;
将第二信号的表示与第四信号的表示相比较;以及
根据第二与第四信号的表示相比较相对于第三信号产生一个正冲突指示或负冲突指示。
2.按照权利要求1的方法,其特征是第二与第四信号的每一个具有同步起始点,并且:
其中获得第二信号的表示包括从第二信号选择第一组多个数据采样,在相对于第二信号中的同步开始点的采样位置上取得各所述第一组多个数据采样;和
其中获得第四信号的表示包括选择第二组多个数据采样,在与相对于第四信号中的同步开始点的采样位置相同的采样位置上取得各第二组多个数据采样。
3.按照权利要求2的方法,其特征是第二信号的表示与第四信号的表示的比较包括:
确定来自第一和第二组多个数据采样中的对应的采样位置的特定成对的数据采样之间的差的一个绝对值;
将各绝对值与第一门限值相比较;以及
为超过门限值的各绝对值增进计数器值。
4.按照权利要求3的方法,其特征是产生的正冲突指示或负冲突指示包括:
如果计数器值超过了第二门限值,就产生正冲突指示。
5.按照权利要求2的方法,其特征是获得第二信号的表示进一步包括:
将第一组多个数据采样各自的值与一个预定值相比较;并且
记录那些仅处在预定值的门限范围内的第一组多个数据采样的位置和数值。
6.按照权利要求5的方法,其特征是预定值是零或者小于各数据采样的饱和值的一个值当中的一个。
7.按照权利要求5的方法,其特征是各成对的一个位置和一个对应值包括一个数据点,并且其中的记录包括记录第二信号表示的数据点的数量。
8.按照权利要求1的方法,其特征是,如果相对于第三信号产生的是正冲突指示,该方法还包括:
发送第五信号到网络中;
从网络获得第六信号的一个表示,所述第六信号包含第五信号的反射;
将第六信号的表示与第四信号的表示相比较;
将第六信号的表示与第二信号的表示相比较;
根据第六信号的表示与第四信号表示的比较和第六信号的表示与第二信号表示的比较相对于第五信号产生一个正冲突指示或负冲突指示;
如果相对于第五信号产生的是负冲突指示,就存储第六信号的表示;并且
如果相对于第五信号产生的是正冲突指示,就存储第六信号的表示和存储第四信号的表示与第二信号的表示中至少之一。
9.按照权利要求8的方法,其特征是,如果第六信号的表示与第四信号的表示和第二信号的表示中的至少一个相符,就产生相对于第五信号的负冲突指示。
10.按照权利要求1的方法,其特征是,如果相对于第三信号产生的是负冲突指示,该方法还包括:
发送第五信号到网络中;
从网络获得第六信号的一个表示,所述第六信号包含第五信号的反射;
将第六信号的表示与第四信号的表示相比较;
根据第六信号的表示与第四信号的表示相比较相对于第五信号产生一个正冲突指示或负冲突指示;
如果相对于第五信号产生的是负冲突指示,就存储第六信号的表示;并且
如果相对于第五信号产生的是正冲突指示,就存储第六信号的表示和第四信号的表示。
11.按照权利要求1的方法,其特征是正冲突指示指示出网络上的一个数据冲突和网络中的一种信道特性变化的至少之一。
12.一种装置,包括:
获得电路,获得从网络接收的第一信号表示和从网络接收的第二信号表示,所述第一信号表示包含先前传送到网络中的第三信号的反射和所述第二信号表示包含先前传送到网络中的第四信号的反射;
第一比较器,将第一信号的表示与第二信号的表示相比较;以及
控制逻辑,根据第一比较器上产生的结果相对于第四信号产生一个正冲突指示或负冲突指示。
13.按照权利要求12的装置,其特征是获得电路包括:
第二比较器,将从第一信号取得的多个数据采样各自的值与一个预定值相比较;以及
寄存器,存储由第二比较器指示出的处在预定值门限范围内的多个数据采样中的各个数据采样的位置和数值。
14.按照权利要求12的装置,其特征是第一比较器确定来自第一信号表示和第二信号表示的同步数据采样中的差的一个绝对值,并且将该绝对值与一个门限值相比较,该装置进一步包括:
一个计数器连接在比较器和控制逻辑之间,所述计数器按照第一比较器的指示对超过门限值的每一个绝对值增进一个计数值。
15.按照权利要求12的装置,其特征是,如果相对于第四信号产生的是正冲突指示,获得电路获得第五信号的表示,所述第五信号包含先前传送到网络中的第六信号的表示,该装置还包括:
第二比较器,将第五信号的表示与第一信号的表示相比较,而上述第一比较器将第五信号的表示与第二信号的表示相比较;
上述控制逻辑根据第一和第二比较器的结果相对于第六信号产生一个正冲突指示或负冲突指示。
16.按照权利要求15的装置,其特征是进一步包括:
多个寄存器,如果相对于第六信号产生的是负冲突指示,就存储第五信号的表示,如果相对于第六信号产生的是正冲突指示,就存储第五信号的表示及第一信号的表示和第二信号的表示中的至少一个。
17.按照权利要求12的装置,其特征是如果相对于第四信号产生的是负冲突指示,获得电路获得第五信号的表示,所述第五信号包含先前传送到网络的第六信号的反射,所述第一比较器将第五信号的表示与第二信号的表示相比较,并且所述逻辑控制根据第一比较器的结果相对于第六信号产生正冲突指示或负冲突指示,该装置进一步包括:
多个寄存器,如果相对于第六信号产生的是负冲突指示,就存储第五信号的表示,如相对于第六信号果产生的是正冲突指示,就存储第五信号的表示和第二信号的表示。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/541,449 US6848010B1 (en) | 2000-03-31 | 2000-03-31 | Data collision detection in networks |
US09/541,449 | 2000-03-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1439212A CN1439212A (zh) | 2003-08-27 |
CN100403721C true CN100403721C (zh) | 2008-07-16 |
Family
ID=24159642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB018098339A Expired - Fee Related CN100403721C (zh) | 2000-03-31 | 2001-02-21 | 用于网络中的数据冲突检测的方法和装置 |
Country Status (10)
Country | Link |
---|---|
US (1) | US6848010B1 (zh) |
EP (1) | EP1269692B1 (zh) |
CN (1) | CN100403721C (zh) |
AT (1) | ATE285148T1 (zh) |
AU (1) | AU2001245309A1 (zh) |
CA (1) | CA2403320C (zh) |
DE (1) | DE60107826T2 (zh) |
HK (1) | HK1049561B (zh) |
TW (1) | TWI223525B (zh) |
WO (1) | WO2001076152A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003904169A0 (en) * | 2003-08-08 | 2003-08-21 | Clipsal Intergrated Systems Pty Ltd | Collision detection in a non-dominant bit radio network communication system |
US8000341B2 (en) * | 2006-03-08 | 2011-08-16 | Alcatel Lucent | Methods and systems for detecting collisions in access/utilization of resources of contention |
US8155140B1 (en) * | 2008-11-25 | 2012-04-10 | Qualcomm Atheros, Inc. | Collision avoidance for a network system |
CN103048681B (zh) * | 2011-10-15 | 2016-06-22 | 山西晋明海科技开发有限公司 | 阈值可设置的地震数据采集启动器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5657326A (en) * | 1994-12-20 | 1997-08-12 | 3Com Corporation | Radio based collision detection for wireless communication system |
US5940400A (en) * | 1996-11-06 | 1999-08-17 | Motorola, Inc. | Method, device, wireless transceiver and computer for providing collision detection in wireless carrier sense multiple access systems |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4745596A (en) | 1985-07-16 | 1988-05-17 | Honda Giken Kogyo Kabushiki Kaisha | Multiplex communication system |
US4751701A (en) * | 1985-11-14 | 1988-06-14 | Hughes Network Systems, Inc. | TDM collision detector |
GB2187367B (en) * | 1986-01-09 | 1990-03-28 | Ricoh Kk | Control system for local area network |
KR100202716B1 (ko) | 1996-12-17 | 1999-06-15 | 이종수 | 엘리베이터의 신호 전송장치 |
ATE130145T1 (de) * | 1990-08-27 | 1995-11-15 | Canon Kk | Optisches kommunikationsnetz. |
US6169744B1 (en) * | 1998-01-07 | 2001-01-02 | 3Com Corporation | Method and protocol for a medium access control layer for local area networks with multiple-priority traffic |
-
2000
- 2000-03-31 US US09/541,449 patent/US6848010B1/en not_active Expired - Lifetime
-
2001
- 2001-02-21 DE DE60107826T patent/DE60107826T2/de not_active Expired - Lifetime
- 2001-02-21 CN CNB018098339A patent/CN100403721C/zh not_active Expired - Fee Related
- 2001-02-21 AU AU2001245309A patent/AU2001245309A1/en not_active Abandoned
- 2001-02-21 EP EP01918207A patent/EP1269692B1/en not_active Expired - Lifetime
- 2001-02-21 AT AT01918207T patent/ATE285148T1/de not_active IP Right Cessation
- 2001-02-21 CA CA002403320A patent/CA2403320C/en not_active Expired - Fee Related
- 2001-02-21 WO PCT/US2001/005678 patent/WO2001076152A1/en active IP Right Grant
- 2001-03-14 TW TW090105896A patent/TWI223525B/zh not_active IP Right Cessation
-
2003
- 2003-03-07 HK HK03101677.5A patent/HK1049561B/zh not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5657326A (en) * | 1994-12-20 | 1997-08-12 | 3Com Corporation | Radio based collision detection for wireless communication system |
US5940400A (en) * | 1996-11-06 | 1999-08-17 | Motorola, Inc. | Method, device, wireless transceiver and computer for providing collision detection in wireless carrier sense multiple access systems |
Also Published As
Publication number | Publication date |
---|---|
WO2001076152A1 (en) | 2001-10-11 |
CA2403320C (en) | 2006-08-01 |
CA2403320A1 (en) | 2001-10-11 |
EP1269692A1 (en) | 2003-01-02 |
DE60107826D1 (de) | 2005-01-20 |
CN1439212A (zh) | 2003-08-27 |
HK1049561B (zh) | 2005-06-03 |
EP1269692B1 (en) | 2004-12-15 |
TWI223525B (en) | 2004-11-01 |
AU2001245309A1 (en) | 2001-10-15 |
ATE285148T1 (de) | 2005-01-15 |
DE60107826T2 (de) | 2006-01-19 |
US6848010B1 (en) | 2005-01-25 |
HK1049561A1 (en) | 2003-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8792385B2 (en) | Method and device for auto-generating goose signal connection topology from substation level | |
CN108984389B (zh) | 一种应用程序测试方法及终端设备 | |
CN101616174B (zh) | 一种存储系统io处理路径动态跟踪实现优化系统性能的方法 | |
JPH06503932A (ja) | 離れた場所から複写機を自動的にモニターするためのシステムにおける改良 | |
CN106021136A (zh) | 一种基于Linux或Unix内核操作系统的串口映射方法及装置 | |
CN100403721C (zh) | 用于网络中的数据冲突检测的方法和装置 | |
CN109558297A (zh) | 内存管理方法及装置 | |
Herman | Phase clocks for transient fault repair | |
Bause et al. | SDL and Petri net performance analysis of communicating systems | |
US5784594A (en) | Generic interactive device model wrapper | |
US6892171B2 (en) | Method for modeling a reflected electrical wave in a digital simulation | |
CN107993659A (zh) | 应用于机器人的翻页方法、机器人翻页系统及服务器 | |
Insam | TCP/IP embedded internet applications | |
CN108875374A (zh) | 基于文档节点类型的恶意pdf检测方法及装置 | |
CN100511011C (zh) | 用于检测单元安装在成像装置中的位置的设备和方法 | |
CN110401586B (zh) | 一种总线通信方法、装置、设备及可读存储介质 | |
Bai | The windows serial port programming handbook | |
CN113326046A (zh) | 获取编译时长的方法和装置 | |
Romijn et al. | Analysing industrial protocols with formal methods | |
CN107360199B (zh) | 僵尸网络识别方法及装置 | |
Meyer | Computation-based reliability analysis | |
Woodward et al. | Comparing throughput of substation networks | |
CN114153453A (zh) | 限制代码行数的方法及装置 | |
CN117234988A (zh) | 编码器数据采集方法、装置、设备及存储介质 | |
SU1522217A1 (ru) | Устройство дл сопр жени К процессоров с группой абонентов |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080716 Termination date: 20180221 |