网络连接设备的制作方法

文档序号:2925611阅读:691来源:国知局
专利名称:网络连接设备的制作方法
技术领域
本发明一般涉及用于促进两种不同类型网络之间的虚拟连接的设备和方法,所述不同类型网络中的每一个使用不同的分组传送方案。
背景技术
如通常所知,以太网和因特网协议(IP)是用于在通信网络的不同点之间传送分组的系统。这些交换系统称作“基于争用”的系统。即,所有发送方争用网络资源。所有发送方可能同时发送。如果它们这样做,则网络资源可能被超额预订。当发生这种情况时,数据可能被延迟或丢失,这致使网络受损。
如图1所示,四个分组流是分组交换机112的输入,交换机112基于包含在每个分组中的寻址信息将分组路由到一个或多个输出。分组可能在不可预测的时刻到达交换机,这导致必须处理的输入突发。交换机典型地维持能够存储少量分组的分组队列114。(在一些设备中,为每个输出端口提供一个队列,以便在存在八个端口的情况下可以存在八个所提供的队列)每个队列可以包括按照分组优先级而安排的多个队列,以便例如优先级为3的分组优先于优先级为1的分组。如果输入太过突发,则队列填满,并且一些分组可能被丢弃。较高优先级的队列典型地在较低优先级队列之前被清空,以便较低优先级的队列更可能首先丢失数据。
IP系统遭受到例如分组丢失和抖动的损害。这种情况的发生是因为对在任意给定时刻到达路由器的分组数目不存在任何控制。如果去往同一端口的两个分组同时到达路由器,则一个将不得不被延迟。两个不能被同时发送。分组中的一个将被保存在队列中直到第一个分组完全被发送。
图2示出了包括端点100、101、102和103的计算机网络。所述网络包括经由107的路由器104。如图中所示,如果端点100和101同时与端点102和103通信,则路由器105和106之间可能形成瓶颈。这种情况可能发生,因为太多分组可能同时在路由器之间被传送,这导致所述路由器丢弃溢出的分组。这甚至可能在较低的平均网络利用级别的情况下发生。
各种方法已被开发以克服以太网和IP网络上的数据丢失。主要方法是使用附加协议来替换丢失的数据。这是一种事后解决方案。例子是已知的传输控制协议(TCP)。TCP能够检测数据丢失,并且它致使数据的重传,直到完整数据文件的准确副本被递送给接收设备。
一种用于提供可靠首次传送的方法是,通过在不同时间段内首先发送测试分组以及在评估每个时间段的延迟和/或丢失分组率之后选择具有有利传输特性的一个或多个时间段,来凭经验确定网络中的分组的最优调度。由于过载路由器队列而被丢弃或延迟的分组将指示不利的调度条件,并且发送节点可以为发送将来的分组而选择更有利的调度以最小化分组丢失的可能性。该方法在之前提交的美国专利申请10/663,378(于2003年8月17日提交)中进行了描述,其在下面结合本发明原理而被详细描述(参见下文中命名为网络分组的经验调度的标题)。利用这个方法,虚拟连接可以在网络中的两个节点之间被建立,所述网络例如是包括路由器的WAN。
另一类型的分组拥塞问题可能在包括LAN交换机的局域网(LAN)中发生。如图3所示,例如,传统网络包括多个局域网(LAN)端点,例如连接到以太网LAN的计算机。端点被耦合到一个或多个LAN交换机302,该交换机通过网络的另一部分连接到一个或多个额外的LAN端点303。当端点301向端点303发送分组时,分组通过LAN交换机302被发送,该LAN交换机还处理来自其他LAN端点的分组。如果太多分组被其他端点同时发送到303,则LAN交换机302可能使队列溢出,这导致分组被丢弃。(“分组”一词是指LAN或广域网(WAN)环境中的数据报。在LAN环境中,分组有时称为“帧”。在分组交换WAN环境中,分组交换设备一般称作“路由器”。)
图4示出了图3网络中的丢弃分组问题的本质,该问题会在LAN环境以及WAN环境中发生。在多个端点同时在网络上发送分组的时间段内,LAN交换机302可能变得过载,以致一些分组被丢弃。这种情况的发生典型地是因为LAN交换机中的内部队列变满并且因此变得不能接受新分组,直到输出分组已从该队列中被移除。这产生了问题,因为发送端点不能保证其分组会到达,这需要其他解决方案,例如使用保证传输协议的使用,所述保证传输协议例如是传输控制协议(TCP)。这种解决方案可能不适于不能等待分组重传的流式视频或其他实时应用。
另一种用于提供图3所示类型的网络中的可靠首次传送的方法是,使网络中的发送节点和接收节点就与这两个节点都相容的传输调度达成协议。例如,当发送节点需要与网络中另一节点建立虚拟连接时,该发送节点可以向该接收节点发送所建议的调度,其指示了它建议发送将来的分组的时间间隔位置。所述接收节点可以将该建议的“发送图”与该接收节点处的其它调度传送比较,并且要么接收该建议的传输调度,要么建议最小化网络中的分组拥塞的不同的传输调度。该方法在2003年10月31日提交的美国专利申请10/697,103中被描述,并且在下面结合本发明的原理而被描述(参见命名为协商分组传送的标题)。利用该方法,虚拟连接可以在网络中的两个节点之间被建立,所述网络例如是包括LAN交换机的LAN。
可能有必要建立具有不相容分组调度算法的不同类型网络之间的虚拟连接。例如,如图5所示,第一端点501可以关联于采用上面讨论的协商分组调度技术的LAN 504(即,LAN 504中的端点协商“发送图”以避免网络504上的拥塞)。第二端点502可以位于另一LAN 508之上,其中必须通过采用上面讨论的经验分组调度技术的WAN 503来接入该LAN 508(即,WAN 503中的端点相互发送测试分组以凭经验确定发送分组的最有利的时间段)。如果端点501需要向端点502发送分组,则由于不相容的协议被用于在网络上传送分组而可能出现困难。

发明内容
根据本发明的一方面,提供了一种使得不相容网络(例如经验调度网络和协商调度网络)上的端点能够相互通信的设备和方法。在一个变型中,网络连接设备(NCD)充当在网络之间建立虚拟连接的代理设备。该设备可以执行握手功能来建立和拆除网络之间的连接,并且可以可选地包括防火墙组件和网络地址转换(NAT)功能。根据本发明的方法包括这样的步骤建立连接用于在不相容网络之间传输分组以及用于根据不同网络协议路由分组。


图1示出了突发分组问题,其产生了分组交换机处的溢出条件,这导致分组丢失;图2示出了网络拥塞如何导致瓶颈,其中两组端点在突发条件下共享公共网络资源;图3示出了四个LAN端点,其通过LAN交换机与另一LAN端点通信,这可能导致该交换机中的拥塞;图4示出了由于图3的LAN交换机中的拥塞而导致的分组(帧)丢失问题;图5示出了两个互连的网络,其包括使用凭经验调度的分组调度技术的WAN 503和使用协商分组调度技术的LAN 504。
图6示出了一种用于分配不同的优先级给被调度数据(实时级别)、测试分组(发现级别)和其他网络业务(数据级别)的方法;图7示出了一种帧结构,在该帧结构中,传送调度可以被分解为主帧、子帧和次子帧;图8示出了具有用于在例如WAN的网络上执行经验调度的步骤的流程图;图9示出了一种系统,其使用针对从第一端点到第二端点的测试分组的传送调度;图10示出了一种系统,其中,用于实时业务(优先级为3)的队列在一个分组交换机处几乎为满,但该业务仍然通过网络;图11示出了用于协调协商传送调度的一个方法,该协商传送调度用于在例如LAN的网络上在发送节点和预期接收节点之间进行传输;图12示出了用于协调传送调度的第二方法,该传送调度用于在发送节点和预期接收节点之间进行传输;图13示出了用于协调传送调度的第三方法,该传送调度用于在发送节点和预期接收节点之间进行传输;图14示出了对于给定传输间隔的一种可能的接收图;图15示出了一种用于同步网络节点之间的传送调度的方案;图16示出了如何通过使用本发明的原理来避免网络拥塞,其导致网络中更高效的分组调度;图17示出了一种包括根据本发明一个变型的网络连接设备(NCD)的系统;图18示出了用于启动在协商分组传送网络中的端点与凭经验调度的分组传送网路中的端点之间的连接的方法步骤;图19示出了网络连接设备(NCD)的一种可能配置;图20示出了两个端点如何涉及到时间间隔,该时间间隔是通过参考具有不同相位但参考公共时钟的帧而被指定的。
具体实施例方式
在描述本发明的各种原理之前,下面解释了分组是如何根据凭经验确定的调度技术或协商调度技术在网络中被传输的。应当清楚,这两种技术都可以用于任意类型的网络。
A.网络分组的经验调度对于利用经验方法调度分组的网络,优先级方案可以被用于为网络中的数据分组分配优先级,以便用于实时或接近实时传送(例如电话呼叫、视频帧或被转换为IP分组的TDM数据分组)的分组传送在网络中被分配以最高优先级。第二高优先级被分配给用于测试的数据分组(即所谓的测试分组)。第三高优先级被分配给系统中的剩余数据分组,例如web浏览器所用的TCP数据。图6示出了该方案。可以通过实现已经在许多路由器中可用的分组优先级方案来分配这些优先级。
也可以提供这三个级别之上和之下的其他优先级。例如,实时级别之上的优先级可以被分配用于紧急情况或用于网络级消息(例如,指示路由器或其他设备执行不同功能的消息)。
图7示出了如何将一秒(主帧)的任意传送时间段分解为每个持续100毫秒的子帧,以及,如何将每个子帧再分解为每个持续10毫秒的次子帧。每个次子帧还被划分为持续1毫秒的时间间隔,并且所述分解可以继续到任何期望的粒度级别。根据一个变型,每秒传输带宽的传送时间段是利用例如图7所示的方案而被分解的,并且根据该方案将分组分配给一个或多个时间间隔位置,以发送测试分组并利用本发明原理来传送数据。在这个意义上,所述方案类似于传统的TDM系统。然而,不同于TDM系统,没有任何端点可以被保证拥有特定的一个或多个时隙。替代地,网络上的节点利用这样的间隔位置进行发送该间隔位置基于测试分组在两个端点之间的在先发送而凭经验被确定为有利的。(注意用术语“间隔位置”或“时间间隔位置”来区别TDM系统,而不是用“时隙”)图8示出了方法步骤,其可以被用于利用凭经验确定的分组传送方案来调度例如WAN的网络中的分组。开始于步骤801,进行关于网络(例如以太网或IP网)上的两个端点想要进行通信的确定。该确定可以是电话听筒被摘起并且电话号码被拨出的结果,这指示两个节点需要启动基于IP的语音(voice-over-IP)连接。可选地,单向连接可能需要在发送视频数据的节点和接收节点之间被建立。可以期望所述连接类型中每一个在网络上施加特定量的数据分组业务。例如,基于IP的语音连接可能需要64千比特每秒的传送速率,其使用每10毫秒发送分组的80字节分组有效负荷(不包括分组报头)。视频流典型地在网络上施加更高的带宽需求。
应当指出,对于双向通信,两个分离的连接必须被建立一个用于节点A向节点B发送,而另一个用于节点B向节点A发送。尽管本发明原理将就单向传输进行描述,然而应当理解,在期望双向连接的情况下在另一端点重复相同的步骤。
在步骤802中,递送调度根据例如图7所示的方案被划分为间隔位置。(该步骤可以提前被完成,并且需要每次在两个端点之间建立连接时被重复)。所述传送调度可以根据例如由全球定位系统(GPS)提供的时钟而被导出。作为一个实例,任意一秒的时间段可以针对主帧而被建立,该主帧可以继续被分解为子帧和次子帧,其中每个子帧由每个持续10毫秒的10个间隔组成,而每个次子帧由每个持续1毫秒的10个间隔组成。当然可以使用其他时间段,并且本发明不旨在限于任意特定的定时方案。
在步骤803中,两个端点之间的所需带宽被确定。例如,对于单个基于IP的语音连接,可能需要64千比特每秒的带宽。假设80字节或640比特的分组大小(暂时忽略分组开销),这意味着必须发送每秒100个分组,就是说(平均)每10毫秒一个分组。返回图7所示的例子,这意味着在该图底部的次子帧中的至少一个时间间隔期间发送分组。(每个间隔对应于一毫秒)。
在步骤804中,多个测试分组以对于支持期望的带宽所需的速率、在不同时间间隔期间被发送。每个测试分组是利用“发现”级优先级(见图6)而被发送的,该“发现”级优先级高于根据正常数据分组(例如TCP分组)的优先级,但低于被分配给实时数据业务(将在下面讨论)的优先级。例如,简短地转向图9,假设调度已被划分为一毫秒时间间隔。测试分组可以如所示地在时间间隔1、3、5、7、9、11和12期间被发送。每个测试分组优选地包含“发现”级优先级;用于指示何时发送分组的时间戳;唯一序列号,该分组可以在被发送之后根据该序列号而被识别;以及一些用于识别哪个时间间隔被用于发送分组的装置。(时间间隔可以从序列号中推断)。接收端点当接收到测试分组时可以将该分组返回给发送方,这使得发送方能够(a)确认实际接收了多少发送的分组;以及,(b)确定每个分组的延迟。代替返回分组,接收端点可以发送总结测试分组的统计数据的总结分组。当然可以使用用于确定延迟的其他方法。评估可以由发送方、接收方或这二者的组合来完成。
在步骤806中,发送方评估测试分组以确定哪个或哪些时间间隔对于实现连接是最有利的。例如,如果确定使用时间间隔#1发送的分组经历了比其他时间间隔低的平均丢失分组率,则该间隔是优选的。类似地,导致最低分组延迟(从发送方往返)的时间间隔会优选于具有较高延迟的其他时间间隔。原理是,开始被施压的分组交换机具有开始填满的队列,这导致延迟、抖动和丢失分组的增长。因此,根据本发明原理,可以使用其他时间间隔,以避免在可能增加那些交换机中的队列长度的时间段中发送分组。在一个变型中,时间间隔可能“过压(overstressed)”以扩展该系统。例如,如果实际上仅需要80字节的分组,则160字节的分组可以在代表过载条件的测试阶段中被发送。该过载条件可能揭示了正常的80字节分组所没有揭示的瓶颈。
接收方可以实施对所收集测试分组的统计,并且发送回标识了与每个时间间隔关联的延迟和丢失分组率的报告,而不是接收方发送回时间标记的分组。
如上面所说明的,分组报头开销已被忽略,但典型地包含于评估过程中(即,80字节的分组会增加分组报头的大小)。对测试分组的间隔选择可以随机地被确定(即,时间间隔的随机选择可以针对测试分组而被选择),或者它们可以基于先前使用的时间间隔而被确定。例如,如果发送节点已经在时间间隔3中发送,它会提前知道该时间间隔对于第二连接可能不是期望的选择。作为另一实例,如果发送节点已经在间隔3中发送,则测试分组可以在离间隔位置3最远的时间间隔位置被发送,以尽可能地扩展分组分配。
在步骤806中,在两个端点之间建立连接,并且利用较高的“实时”优先级并利用被确定为更有利于传输的一个或多个间隔来发送分组。由于使用了较高优先级,连接不受跨越网络所发送的测试分组的影响,其中所述测试分组处于较低的优先级。在一个变型中,IP分组报头中的IP优先级字段可以被用于建立不同的优先级。
图9示出了采用本发明各个原理的系统。如图9所示,两个端点每个都依赖于用于准确时钟同步(例如为了时间标记和延迟确定)的GPS接收器。IP网络可以由多个路由器和/或能够最终将分组(例如IP或以太网分组)从一个端点路由到另一端点的其他网络设备组成。假设配置网络的组织具有控制该网络上所用优先级的能力,以防止其他节点使用发现优先级和实时优先级。
应当认识到,可以测试单个时间间隔位置,然后测试另一个,等等,直到发现合适的间隔位置用于传输,而不是在不同时间间隔位置期间同时发送测试分组。这会增加建立连接所需的时间。同样,如上面所描述的,对于双向连接,两个端点都执行用于建立连接的步骤。
由于经验方法检测到正接近丢弃条件,因此该方案也对路由器队列中的“早期丢弃”设置起作用。换句话说,它能够检测可能发生丢弃的情形,例如如果更多业务在该时间点被添加则可能发生所述情形。
在另一变型中,分组延迟、抖动和分组丢失率可以在端点之间的连接期间被监控,并且,基于检测到任一参数的下跌趋势,额外的测试分组可以被发送以找到向其移动连接的更好的时间位置。
图10示出了一种系统,其中第一端点1001通过多个分组交换机1003到1005与第二端点1006通信。每个分组交换机维持多个分组队列。(如上面所指出的,在一些设备中,分离的队列可以针对每个输出端口而被维持)。为了进行说明,示出了四个不同的优先级,其中4是最高级别,而1是最低级别。假设端点1001试图启动经由网络与端点106的连接。端点1001发送多个使用优先级2的“测试”分组。如可以看到的,分组交换机1003被轻度加载,并且队列跟上业务没有任何困难。
分组交换机1004被重度加载。在该交换机中,用于优先级为1的业务的队列是满的,这导致丢失的分组和延迟。类似地,由端点1001以优先级2发送的测试分组导致该队列溢出,这导致丢失的分组和更长的延迟。然而,优先级为3的队列(现有实时业务)还未满,因此那些分组通过未受影响的网络在给定时刻被传输。根据本发明的一个变型,当检测到在特定时间间隔位置中所发送的测试分组被丢弃和/或遭受高延迟时,端点1001选择具有最低丢失率和/或最低延迟的那些时间位置,并且使用那些位置来调度分组(该分组然后利用优先级3而被发送)。
假设图10中的每个端点包括这样的节点(即具有网络接口的计算机),该节点包括用于实施上述一个或多个功能的计算机可执行指令。
B.协商分组传送在使用协商分组传送发送分组的网络中,发送节点向预期的接收节点发送队列。该接收节点以接收图作出响应,该接收图指示了哪些传输时间间隔位置已被其他发送节点分配(或者可选地,哪些传输时间间隔位置为可用)。所述发送节点然后向接收节点建议发送图,这考虑了先前所分配的任意时间位置。接收节点接受所建议的发送图,或者建议替换的发送图。当节点之间达成协定时,发送节点开始根据所建议的发送图进行发送,并且接收节点将所建议的发送图并入其分配表中。因为所建议的传送调度已在两个端点之间被协定,避免了可能使端点附近的网络交换机溢出的不协调争用。(因为,在一些设备中,每个端口具有其自己的一个或多个队列,不同队列上的业务不冲突)。因为该调度被两个端点确定,因此不需要任何网络仲裁器来在网络资源之间进行协调。在一个实施例中,协商仅发生在单一LAN交换机之间。
在一个实施例中,发送节点向预期的接收节点发送带宽需求,以指示它为支持所建议的发送(例如流式视频分组)所需的带宽。预期的接收节点在评估先前分配给其他发送方的时间间隔位置之后,以建议的传送调度作出响应,其指示了其中发送方应当发送分组的时间位置,从而在维持该发送方的必要带宽的同时避免与先前已调度的其他分组的争用。发送方然后根据所建议的传送调度发送分组。
在又一变型中,发送节点向预期接收方发送所建议的传送调度,以指示与它建议发送分组的时刻相对应的时间间隔位置。预期的接收方同意所建议的传送调度,或者建议考虑了发送方带宽需求的替换的传送调度。当节点之间达成协定时,根据协定的传送调度进行传输。所述调度可以在传输结束时被释放。
简短地返回图7,传输间隔可以被划分为时间单元和(可选地)时间子单元,其中可以发送数据分组。在图7的例子中,任意发送间隔一秒(主帧)可以被分解为每个持续100毫秒的子帧,并且每个子帧可以被再分解为每个持续10毫秒的次子帧。每个次子帧又被划分为持续1毫秒的时间间隔位置。(如先前描述的,可以以任何期望的粒度级别来实施所述时间分解,并且本说明书并不旨在限于此。)根据一个变型,调度的传送方案应用于网络中的优先分组,其他非优先分组不包括在该方案中。因此,在仅支持优先级业务和非优先级业务的系统中,所述调度的传送方案被应用于所有优先级业务,并且自组织(adhoc)网络业务继续在非优先级的基础上被传送。换句话说,所有优先级分组在任意非优先级分组被传送之前被传送。
返回图11,在步骤1101中,发送节点向网络中的预期接收节点发送对接收图的查询。接收图(见图14)是一种数据结构,其指示了已被分配给其他发送方用于由接收节点接收的时间间隔位置(或者可选地,还未被分配的时间位置,或者可选地,候选用于传输的时间位置)。更一般地,接收图是这样一种数据结构,其以一种形式或另一种形式来指示其中至预期接收节点的发送不与其他发送方冲突的时间间隔位置。尽管存在许多表示这种图的方法,然而一种方法是使用位图,其中每一位对应于一个时间间隔位置,并且“1”指示已被分配给发送节点的时间位置,而“0”指示还未被分配的时间位置。图11因而示出了传送调度的25个时间位置,以及已被分配给其他发送方的特定时间间隔位置(在图14中用“x”指示)。
在步骤1102中,预期接收节点以例如图14所示的接收图而作出响应,其指示了哪些时间位置已被分配给其他发送方。如果是第一个发送方向该接收节点进行发送,则接收图是空的。还有可能时间位置已在之前被分配给相同的发送方以支持较早期的发送(即,同一发送方需要建立至同一接收方的第二连接)。
在步骤1103中,发送方向预期接收节点发送所建议的发送图。所建议的发送图优选地考虑了接收自预期接收节点的已分配时间位置,以便避开先前分配的时间位置。发送方在避开先前分配的时间间隔位置的同时分配足够时间位置来支持发送所需的带宽。
假设虚拟连接要在网络上的两个节点之间被建立以支持电话语音连接。基于IP的语音连接可能需要64千比特每秒的传输速率,其使用每10毫秒80字节分组有效负荷(不包括分组报头)。视频流典型地对网络施加了更高的带宽需求。在以太网LAN上,每个分组包括多达1500个字节。
在步骤1104中,预期接收方查看所建议的发送图并且同意它或建议替换的发送图。例如,如果在发送方正在协商带宽的时间期间预期接收方已将所建议时间位置中的一些分配给另一发送方,则新近建议的传送调度可能出现冲突。在该情况下,预期接收节点可以建议维持发送方带宽需求的替换的图。
在步骤1105中,发送方根据协定的传送调度向预期接收方重复进行发送。为支持基于IP的语音连接,例如,发送方可以每10毫秒发送80字节分组。对于视频连接,发送方可以更频繁地进行发送。最终,在步骤1106中,当发送方不再继续发送时,接收方的图被解除分配(deallocation)。解除分配可以通过通知业务不再被发送而被隐含地实现。
注意,对于双向通信,两个分离的连接必须被建立一个用于节点A向节点B发送,另一个用于节点B向节点A发送。尽管本发明原理将就单向传输进行描述,然而应当理解,在期望双向连接的情况下,在另一端点重复同样的步骤。
图12示出了用于协商分组传送时间的可选方法。在步骤1201开始,发送方向预期接收方发送带宽需求。例如,发送方可以指示分组大小和/或带宽,并且预期接收方可以确定哪些时间位置应当被分配用于支持该带宽。在步骤1202中,预期接收方以考虑了先前分配的时间位置的所建议发送图而作出响应。
在步骤1203中,发送方同意所建议的发送图,这致使预期接收方“锁定(lock in)”所协定的时间位置(该步骤可以省略),并且在步骤1204,发送方根据所协定的调度而发送分组。最终,在步骤1205,当连接终止时对发送图解除分配。
图13示出了用于协商分组传送的另一变型。在步骤1301中,发送节点向预期接收方发送建议的发送图。在步骤1302中,预期接收方同意所建议的发送图(如果它与任何先前分配的图相容),或者建议满足发送方带宽需求的可选图,所述带宽需求可以从所建议的发送图中推断。例如,如果发送方已建议在时间位置1、11、21、31、41等等发送,显然该发送方需要每十个时间间隔发送一次。如果所请求的位置不可用,则预期接收方可以建议时间位置2、12、22、32等等。
在步骤1303中,发送方根据所协定的传送调度来发送分组,并且在步骤1304中,当传输终止时对所述发送图解除分配。
在另一变型中,发送方可以请求带宽(例如每10毫秒1000字节分组),并且接收方以安排消息(例如在第75个时间位置开始)作出响应。接收方还可以以多个可选方案作出响应(例如在第75、第111或第376个时间位置开始)。发送方以其预期使用的时间间隔位置(例如第111个)作出响应并开始发送。当这里使用那些术语时,该变型是在发送“发送图”和“接收图”的范围内。
为使每个发送方和接收方对传送调度达成协定,期望开发和维持节点之间的某种时间同步。图15示出了用于同步网络中节点之间的传送调度的一种可能的方法。
如图15所示,所述网络包括通过交换机1502连接的各个端点。根据本发明的一个变型,时钟源1504(例如GPS导出的时钟)通过电线1505耦合到参与调度的传送方案的每个网络节点。所述时钟源生成脉冲,该脉冲被发送到每个节点并且是用于导出传送调度的基础。每个节点可以包括计时卡或能够使用定时信号来建立公共参考帧的其他机构(例如中断驱动的操作系统)。所述用于同步的装置因而可以包括通过其将同步信号传送给每个节点的物理线路(分离的并且远离网络)。它还可以包括每个节点中用于检测和解码同步信号的硬件卡和/或软件。
时钟脉冲可以包括按照协定的间隔(例如一秒)的脉冲,该脉冲被每个节点所使用以生成与该脉冲的开始同步的时间位置。可选地,所述时钟源可以生成高频信号,该高频信号然后被每个节点分为时间位置。其他方法当然是可能的。作为又一可选方案,每个节点可以包含它自己的(通过GPS或其他装置)与公共参考信号同步的时钟源,该公共参考信号例如是由美国政府发送的无线信号。线路1505可以包括同轴电缆或将所述时钟源连接到节点的其他装置。在一个变型中,所述连接是距离足够短的(几百英尺),以避免传输效应和时延。用于同步的任何这些装置都可以独立地被使用。
同步节点之间的时间位置和传送调度的另一方法或手段是,使一个节点周期性地发送(例如通过组播)同步分组到网络上的节点。每个节点接收该分组并用它来同步内部时钟用于参考。作为组播方法的可选方案,一个网络节点可以被配置为向每个参与的网络节点单独发送同步分组,这考虑了这种传输中所涉及的交错的时延。例如,同步节点向网络上的第一节点发送同步分组,然后向网络上的第二节点发送相同的分组,该分组之后被该第二节点所接收。时间上的差别可以被量化,并且被用于校正回公共参考点。其他方法当然是可能的。
图16示出了协商的分组传送方案如何通过在发送方和接收方之间更高效地调度数据分组来减小拥塞。如图16所示,由于每个发送节点在不与由其他节点发送的分组相冲突的时间期间调度用于传送的分组,因此没有任何分组丢失。
C.网络连接设备已经检查了使用凭经验调度的分组传送方案的网络的原理和使用协商分组传送方案的网络的原理,再次参考图5,该图示出了在两个端点501和502必须通过不同类型的网络通信的情况下的问题。根据本发明的一个变型,网络连接设备(NCD)被提供用于促进跨越不同网络的端点之间的虚拟连接。
图17示出了一种系统,其包括根据本发明一个变型的一个或多个网络连接设备(NCD)1707、1708和1710。网络连接设备1708桥接第一网络(在该情况下是使用协商分组调度技术来向其他节点发送分组的LAN)和第二网络1703(在该情况下是使用经验调度技术的WAN)。在这一方面,NCD 1708充当网络1704和网络1703之间的代理,其转换分组传送协议以实现不同分组调度技术之间的通信。NCD 1710还通过路由器1701和1706连接LAN 1704和WAN 1703。类似地,NCD 1707桥接LAN 1709和WAN 1703。
尽管每个NCD被视为分离的设备,如下面描述的每个NCD的功能可以利用软件或被添加到例如路由器或其他单元的现有网络设备中的硬件(例如PLD、PAL等)来实现。所述NCD功能还可以在例如DSLAM(DSL接入多路复用器)的接入聚合设备中被实现,该接入聚合设备是将多个DSL线路聚合到更大网络结构中的设备。因此,术语“网络连接设备”或NCD应当被理解为执行类似NCD的功能的设备,而与其中实现那些功能的特定硬件、软件或网络单元无关。
当端点1701需要与端点1702通信时,其试图发起与端点1702的协商分组传送调度。LAN 1704中的传送协议可以基于所请求端点1702的IP地址来确定端点1702并没有驻留在LAN 1704中,并且因此确定其必须通过经NCD 1708路由请求而被接入。因此,所述协议将该请求路由到NCD1708,该NCD 1708确定端点1702必须通过NCD 1707而被接入,该NCD1707是在凭经验调度的WAN 1703上。于是,NCD 1708发起与WAN 1703上的NCD 1707的凭经验确定的协议(见上面的小节A)。换句话说,它向NCD 1707发送测试分组,并且凭经验确定哪些时间位置是最有利于避免过载通向NCD 1707的路径上的路由器。NCD 1708然后将这些凭经验确定的时间位置返回给端点1701作为按照协商分组传送协议(见上面的小节B)的替换的发送图。类似地,NCD 1707建立与端点1702的协商时间位置传送调度,以完成LAN 1709上的路径。
在一个实施例中,所述端点必须遵照凭经验确定的时间间隔位置,这是因为强制WAN接受不是凭经验期望的时间间隔可能是困难的。然而,可以不必在所有系统中遵守该限制。
除了充当网络之间的代理之外,每个NCD可以执行其他可选功能,例如(1)保护每个网络以免于已被不适当地引入该网络中的未授权的较高优先级业务;(2)分组的加密/解密;(3)网络地址转换(NAT);(4)代理IP寻址;(5)防火墙保护;以及(6)通过带宽、类型等控制所有及每个流,以防止网络阻塞点的过载。在一些实施例中,路由器可以被置于NCD 1708侧,或者所述NCD功能可以被并入路由器中。下面详细讨论的这些功能中的一些或全部可以在执行于通用计算机上的软件中被实现。
图18示出了方法步骤,其用于启动协商分组传送网络中的端点与另一网络中的端点之间的连接,所述另一网络必须穿过凭经验调度的分组网络,例如WAN 1703。
在步骤1801中,协商传送端点(例如LAN 1704中的端点1701)请求至端点的虚拟连接(例如基于IP的语音电路),该端点位于仅经由凭经验调度网络(例如端点1702经由WAN 1703)才可到达的网络中。基于所请求端点的IP地址,LAN 1704中的网络协议能够确定该端点并不位于LAN 1704中,但必须通过NCD 1708来接入。于是,它将请求发送到NCD1708(例如通过图17中未示出的路由器)。
在步骤1802中,NCD 1708接收请求,其中该请求如上面的小节B中所描述的那样可能包括所建议的发送图,或针对要由预期接收方提供的关联发送图的带宽请求。此后,NCD 1708利用上面在小节A中描述的凭经验调度的传送方案来启动与NCD 1707的连接。换句话说,NCD 1708在不同的时间位置向NCD 1707发送测试分组,并且凭经验确定哪些时间位置是有利于传输的。此外,NCD 1707发起与端点1702的协商传送调度,其与NCD 1707和1708之间的凭经验确定的时间位置相一致。
在步骤1803中,NCD 1708获得经验数据,并且将它转换为协商发送图(参见例如图14)并将它返回给端点1701。如果端点1701已建议了与有利的经验数据一致的特定发送图,则NCD可以指示所建议的发送图被接受。如果端点1701已建议了与凭经验确定的有利时间位置不一致的特定发送图,则NCD 1708返回与经验数据一致的替换的发送图。如果端点1701已请求了带宽,则NCD可以建议满足带宽需求并且与经验调度确定相一致的发送图。
在步骤1804中,协商的端点此后按照接收自NCD 1708的发送图向端点1702进行发送。
在步骤1805中,当一个或另一个端点请求终止电路时,连接被NCD1708拆除。
对于双向连接,经验调度网络中的端点可能需要建立至协商传送网络中的端点的连接。因此,图18所示的步骤将被反向重复(从端点1702到端点1701),以建立双向通信,例如基于IP的语音连接所需要的双向通信。
图19示出了NCD的一种可能配置。单元1901可以包括存储器、CPU和I/O电路。CPU被用软件编程以实现上面描述的且图18中示出的功能。I/O电路可以耦合到交换机1903,该交换机1903又耦合到例如IP电话的各种设备,其可以被用于利用上面概述的原理来建立双向连接。设备1901可以接收来自上行链路和/或外部时钟源的定时,例如来自GPS或蜂窝CDMA源。
还应当理解,所有帧的相位可能是相互独立的;它们仅需要根据或结合公共时钟来导出。不同的端点不需要具有在相位上相互同步的帧。换句话说,只要时间间隔保持相对同步性,每个时间间隔就不需要在不同端点之间被唯一地标识。参考图20说明了这个原理,该图示出了两个端点如何涉及到时间间隔,该时间间隔是参考具有不同相位但参考公共时钟的帧而被指定的。(端点实际上不必与公共时钟同步,尽管这在图20中对于每个理解而被显示)。
如图20所示,假设端点A(图20的底部)需要通过引入分组时延的WAN而与端点B(图20的顶部)通信。每个端点具有处理与WAN的连接的关联NCD。还假设穿过图20顶部的时间线和穿过图20底部的时间线代表“绝对”时间;即,图20顶部的时间间隔1与图20底部的时间间隔1出现在绝对时间中相同的时刻。还假设NCD A在间隔1中发送穿过网络的第一测试分组X,以及在间隔3中发送穿过网络的第二测试分组Y。由于由WAN引入的分组时延,测试分组X将直到端点B察觉到是时间间隔4时才到达端点B。类似地,测试分组Y将直到端点B察觉到是时间间隔6时才到达端点B。端点A和B(通过其各自的网络连接设备NCD A和NCD B)还需要就在哪个时间间隔发送将来的分组而达成协定。
简言之,当NCD B确定测试分组X以最小时延被接收时,它通知NCDA标识为“分组X”的测试分组凭经验是有利于将来的传输的。因此,NCDA标识相关时间间隔为间隔1,而NCD B标识相关时间间隔为间隔4。类似地,NCD A将分组Y的相关时间间隔标识为间隔3,而NCD B将分组Y的相关时间间隔标识为间隔6。只要图20顶部的时间线和图20底部的时间线相对于彼此不移动,所述系统就可以调节分组时延,并且可以就哪些时间间隔位置应当被用于发送分组而达成协定。当然可以使用其他方法。
尽管上面未明确示出,然而网络可以包括一个或多个软电话交换机(实质上是耦合到该网络的小型计算机),该软电话交换机维持电话号码数据库并将它们映射到IP地址。为向预期接收方进行电话呼叫,联系电话交换机以确定对应于接收方电话号码的IP地址。本发明的系统和方法还可以用于视频终端以发送跨网络的视频级数据;用于计算机终端以发送计算机数据;或任何其他类型的数据。
这里描述的任一方法步骤都可以被实现在计算机软件中,并且被存储在计算机可读介质上,该计算机可读介质用于在通用或专用硬件或处理器(PLD、PGA、路由器、交换机等)或计算机中执行,并且这种计算机可读介质包括在本发明的范围内。这里使用的术语“处理器”应当被理解为包括这些不同类型设备中的任一种。权利要求中的方法或过程步骤的编号仅为了方便,并且不应当被解读为要求特定的排顺或顺序。
权利要求
1.一种穿越第一网络传送数据分组的方法,该方法包括以下步骤(1)从所述第一网络上的发起节点接收请求,该请求用于按照协商分组传送方案建立连接,以穿越所述第一网络传送数据分组;(2)确定所述数据分组是穿越第二网络而去往目的节点的,其中该第二网络使用凭经验调度的分组传送机制;以及(3)响应于步骤(2),启动使用所述凭经验调度的分组传送机制的所述第二网络上的连接。
2.根据权利要求1所述的方法,该方法还包括以下步骤(4)生成与所述凭经验调度的分组传送机制相容的协商分组传送调度;以及(5)按照所述协商分组传送调度从所述发起节点发送数据分组。
3.根据权利要求2所述的方法,其中,所述第一网络包括局域网,以及其中,所述第二网络包括广域网。
4.根据权利要求1所述的方法,其中,步骤(3)包括以下步骤(a)在不同的时间间隔位置在所述第二网络上发送多个测试分组;(b)评估与所述测试分组相关联的分组延迟率或丢失率;以及(c)选择具有有利的分组延迟率或丢失率的一个或多个时间间隔位置。
5.根据权利要求1所述的方法,其中,步骤(1)包括接收建议的发送调度用于在所述第一网络中传送分组。
6.根据权利要求1所述的方法,其中,步骤(1)包括接收带宽请求用于在所述第一网络中传送分组。
7.根据权利要求1所述的方法,其中,步骤(3)是在所述第一网络外部的设备中被执行的。
8.根据权利要求1所述的方法,该方法还包括这样的步骤对位于耦合到所述第二网络的第三网络上的第二发起节点重复步骤(1)到(3)。
9.根据权利要求1所述的方法,该方法还包括这样的步骤对所述第一和第二网络上所传送的分组建立时间相位同步。
10.根据权利要求9所述的方法,其中,所述建立时间同步的步骤包括使用全球定位系统(GPS)接收器。
11.一种包括计算机指令的计算机可读介质,所述计算机指令在被处理器执行时执行以下步骤(1)从第一网络上的发起节点接收对连接的请求,用于按照协商分组传送方案穿越所述第一网络而传送数据分组;(2)确定所述数据分组是去往跨越第二网络而设置的目的节点,其中所述第二网络使用凭经验调度的分组传送机制;以及(3)响应于步骤(2),启动使用所述凭经验调度的分组传送机制的所述第二网络上的连接。
12.根据权利要求11的计算机可读介质,其中,所述计算机指令还执行以下步骤(4)生成与所述凭经验调度的分组传送机制相容的协商分组传送调度;以及(5)按照所述协商分组传送调度从所述发起节点发送数据分组。
13.根据权利要求12所述的计算机可读介质,其中,所述计算机指令还执行以下步骤(a)在不同的时间间隔位置、在所述第二网络上发送多个测试分组;(b)评估与每个不同的时间间隔位置相关联的分组延迟率或丢失率;以及(c)选择具有有利的分组延迟率或丢失率的一个或多个时间间隔位置。
14.根据权利要求11所述的计算机可读介质,其中,步骤(1)包括接收建议的发送调度用于在所述第一网络中传送分组。
15.根据权利要求11所述的计算机可读介质,其中,步骤(1)包括接收带宽请求用于在所述第一网络中传送分组。
16.根据权利要求11所述的计算机可读介质,其中,所述计算机指令还执行这样的步骤对位于耦合到所述第二网络的第三网络上的第二发起节点重复步骤(1)到(3)。
17.根据权利要求11所述的计算机可读介质,其中,所述计算机指令还执行这样的步骤建立与位于所述第二网络上的设备的时间相位同步,以便在所述第二网络上所发送的数据分组可以在所述网络上相对地在时间上同步。
18.一种设备,其包括存储器和处理器,所述处理器被编程以执行以下步骤(1)从第一网络中的发起节点接收用于与跨越第二网络而设置的目的节点建立连接的请求,其中所述第一网络具有通过相互协商以建立其中发送分组的时间间隔位置来创建连接的节点,所述第二网络具有通过凭经验确定其中发送分组的时间间隔位置来创建连接的节点;(2)响应于步骤(1),穿越所述第二网络传送多个分组,并且由此凭经验确定期望用于发送数据分组的所述第二网络上的一个或多个时间间隔位置;以及(3)向所述发起节点发送响应,以与所述目的节点建立连接。
19.根据权利要求18所述的设备,其中,所述处理器通过同时在多个候选时间间隔位置上发送多个分组来执行步骤(2)。
20.根据权利要求18的设备,其中,所述处理器通过在多个候选时间间隔位置上顺次发送多个分组来执行步骤(2)。
21.根据权利要求18所述的设备,其还包括用于将时间间隔位置与耦合到所述第二网络的第二设备同步的装置。
22.根据权利要求21所述的设备,其中,用于同步的所述装置包括全球定位系统(GPS)接收器。
23.根据权利要求18所述的设备,其中,所述处理器和存储器位于可配置为在网络中路由数据分组的路由器中。
24.根据权利要求18所述的设备,其中,所述处理器和存储器位于可配置为聚合来自多个网络单元的数据的网络聚合设备中。
全文摘要
一种网络连接设备(505)桥接使用协商分组传送调度方案的第一网络(504)和使用凭经验确定的分组传送调度方案的第二网络(503)。网络连接设备(505)将用于在第一网络(504)上通信的请求转换成用于在第二网络(503)上通信的请求,由此桥接这两个网络。协商分组传送调度方案允许端点(501、502)协商分组的调度传送时间,而凭经验确定的分组传送方案测试网络中的不同时间间隔位置以确定用于传输的有利时间位置。这两个协议通过找到两个网络中时间间隔位置之间的相容重叠而被桥接。这可以提供具有分组之间的低抖动的无差错传送。
文档编号H01J3/22GK101069374SQ200580037396
公开日2007年11月7日 申请日期2005年9月14日 优先权日2004年10月13日
发明者S·A·罗杰斯 申请人:瑞福利特通信公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1