检测转发循环的方法和设备的制作方法

文档序号:7677099阅读:211来源:国知局
专利名称:检测转发循环的方法和设备的制作方法
技术领域
本发明涉及通信网络的领域,并且更确切地说,本发明涉及检测
转发循环(forwarding loop)。
背景技术
会话初始化协议(SIP)协议是用于发起、修改和终止支持语音、 即时通信、视频、在线游戏等等的交互式用户会话的端到端客户端-服 务器信令协议。在诸如网际协议(IP)多媒体子系统(IMS)网络的下 一代网络中利用的SIP协议使得在分布式单元之间(例如,在SIP用 户代理(UA)之间)能够通信。使用SIP协议,在SIPUA之间交换的 SIP消息遍历一系列SIP网络单元(被称为代理)。不幸的是,由于不 正确配置的网络单元或恶意的网络攻击,转发循环可能形成,以致SIP 消息在SIP网络单元之间被重复转发,从而阻止将SIP消息递送到预 期的SIP UA并且引起高的消息处理负荷。由于转发循环可以出现在利 用SIP的网络(以及利用其他电信协议的网络)中,已经实现若干措 施来试图减少转发循环。
在一个潜在的解决方案中,例如,客户端设备可以将"最大转发" 头部字段添加到SIP消息的头部,以便限制在转发循环被检测先前转 发SIP消息的次数(即SIP消息可以在转发循环被检测先前仅仅被转 发N次(例如,N=70))。不利地,使用"最大转发,,头部字段可能 引起大量问题。如果"最大转发"头部字段值(N)被设置过低,则有 效服务提供可能被过度地限制。如果"最大转发"头部字段值(N)被 设置太高,则可能消耗重大的网络资源。此外,响应于检测转发循环 产生的转发循环错误消息可以沿着遍历的路径被转发,从而导致额外 地消耗网络资源。

发明内容
现有技术中的各种缺陷。该方法包括确定接收到的消息先前是否被第 一网络单元接收,以及如果接收到的消息先前被接收,则计算当前的 路由摘要和确定接收到的消息的头部是否包括先前的路由摘要。如果接收到的消息的头部包括先前的路由摘要,则确定转发循环是否存在。 如果接收到的消息的头部并不包括先前的路由摘要,则当前的路由摘 要被插入到接收到的消息的头部中,并且朝向第二网络单元转发该消 息。如果接收到的消息先前未被接收到,则朝向第二网络单元转发接 收到的消息。


通过结合附图考虑以下详细说明,本发明的教导能够容易被理解, 其中
图l描绘通信网络的高级框图; 图2描绘根据本发明的一个实施例的方法;以及 图3描绘适用于执行这里所描述的至少一部分功能的通用计算机 的高级框图。
为了便于理解,在可能的地方已经使用相同的附图标记来标明附 图共有的相同的要素。
具体实施例方式
本发明提供转发循环检测处理。本发明能够检测转发循环。本发
现折衷,从而提供有效的转发循环检测能力,同时显著地减少执行转 发循环检测处理所利用的网络单元处理资源。本发明消除了网络单元 在缺少转发循环时执行摘要计算的需要,而不是推迟摘要计算和插入, 直到网络单元检测到潜在的转发循环为止(即,如果消息先前由网络 单元接收和转发)。
本发明的转发循环检测处理比RFC3261的转发循环检测处理提供 明显的优点。如与RFC3261的转发循环检测处理相比,本发明的转发 循环检测处理能够成本更低地检测转发循环(在CPU处理方面)。在 一个实施例中,使用本发明的转发循环检测处理,转发循环被检测比 转发循环另外会使用RFC3261的转发循环检测处理被检测(例如,网 络单元第二次接收消息)迟一个转发步骤(例如,网络单元第三次接 收消息)。在一个实施例中,通过利用新头部字段(而不是如在RFC3261 中那样重新使用现有头部字段的部分),本发明的转发循环检测处理 可能在不干扰其他消息处理的情况下被执行。
图1描绘通信网络的高级框图。确切地说,通信网络100包括第一多个SIP用户代理(UA) 102A1-102AN (统称SIP UA 102A) 、 SIP网 络IIO和第二多个SIP用户代理(UA)102z广102zN(统称SIPUA 102z)。 SIP UA 102a和102z可以被统称为SIP UA 102。 SIP网络110包4舌多个 SIP代理服务器(SIP PS) 112,1124 (统称SIP PS 112)以及多个 SIP应用月l务器(AS) 114,1142 (统称SIP AS 114) 。 SIP PS 112 使用多个通信链路(CL) 113 (统称CL 113)进行通信。SIP PS 1122 和1123使用通信链路(CL) 115i和1152 (统称CL 115 )与SIP AS 114! 和1142进行通信。
如在图1中描述,SIPUA 102包括支持SIP信令的终端用户设备。 SIP UA 102可以作为SIP UA客户端(用于将SIP请求提供到SIP UA 服务器)以及SIP UA服务器(用于将SIP响应提供到SIP UA客户端) 操作。SIP UA 102A1- 102"和SIP UA 102Z1 - 102^分别使用相应的多个 通信链路(CL) 103A1-103AN (统称CL 103A)以及103Z1-103ZN (统称 CL 103z)与SIP PS 112,和1123进行通信。SIP UA 102可以使用有线 线路接入(例如,电缆接入、数字用户线路(DSL)接入、以太网接入 等等及其各种组合)、无线接入(例如码分多址(CDMA)接入、通用 分组无线电业务(GPRS)接入、无线局域网(WLAN)接入等等及其各 种组合)来接入SIP网络IIO。
如在图1中描绘的那样,SIP PS 112促进用于建立、修改和终止 SIP UA 102之间的多媒体连接的SIP UA 102之间的SIP信令。SIP PS 112促进与各种其他基于SIP的网络单元(作为例证的,SIP AS 114) 的SIP信令,所述各种其他基于SIP的网络单元用于支持与用于建立、 修改和终止SIP UA 102之间的多媒体连接的SIP UA 102之间的SIP 信令相关联的各种功能。例如,SIP PS 112支持用于建立、修改和终 止多媒体连接的SIPUA 102之间的SIP信令,所述多媒体连接适于支 持语音、即时通信、视频、游戏、存在(presence)等等及其各种组 合。SIP AS 114将各种功能(例如,呼叫等待、呼叫转移、电话会议 业务、即时通信业务等等及其各种组合)提供给SIP UA 102。
如这里所描述的那样,使用各种SIP消息执行SIP信令。作为SIP UA客户端操作的SIP UA 102发起的SIP消息是SIP请求。例如,SIP 请求消息包括"邀请"(INVITE) 、 ACK、"再见"(BYE)、"取消" (CANCEL)、"选项,,(OPTIONS)、"登记,,(REGISTER)等等。作为SIP UA服务器操作的SIP UA 102发起的SIP消息是SIP响应。例 如,SIP响应消息^括SIP lxx报告响应(informational response )、 SIP 2xx成功响应、SIP 3xx指向性响应、SIP 4xx客户端故障响应、 SIP 5xx服务器故障响应、SIP 6xx全局故障响应等等。SIP请求消息 和SIP响应消息以及适于支持建立、修改和终止SIP会话的其他SIP 消息通常在这里可以净皮称为SIP消息。
如这里所描述的那样,各种网络条件(例如,未正确配置的SIP 代理服务器(多个未正确配置的SIP代理服务器),恶意网络攻击等 等)可以导致转发循环在SIP网络110内的形成。例如,SIP邀请消息 可以从SIP UA 102a2朝向SIP UA 102zj皮发起。SIP UA 102"将该SIP 邀请消息转发给SIP代理112ls SIP代理112!将该消息转发给SIP代 理1122。 SIP代理1122将SIP邀请消息转发给SIP代理1123。但是, 由于网络条件(例如,SIP代理1123未被正确地配置),不是将SIP 邀请消息转发到SIP代理1124,以递送到SIP UA 102Z1,而是SIP代 理1123可以将SIP邀请消息转发回SIP代理1122。SIP代理1122将SIP 邀请消息重新转发给SIP代理1123。如这里所描述的那样,本发明(参 考图2可以更好地理解)能够有效地、节省成本地检测这些转发循环。
图2描绘才艮据本发明的一个实施例的方法。确切地i兌,方法200 包括用于在网络单元检测转发循环的方法。尽管这里主要相对于用于 检测与SIP消息相关联的转发循环的SIP代理服务器执行的处理来描 述,但是方法200可以通过分别检测与SIP和非SIP消息相关联的转 发循环的其他SIP和非SIP网络单元来执行。尽管在这里被描绘且被 说明为连续地执行,但是方法200的至少一部分步骤可以同时地或以 不同于图2中描绘的次序被执行。方法200在步骤202开始并进行到 步骤204。
在步骤204,在SIP代理服务器接收SIP消息(请求)。接收到的 SIP消息可以是任何SIP请求消息(例如,SIP邀请、SIP登记等等)。 可以从任何SIP网络单元(例如,SIPUA (客户端或服务器)、SIPPS、 SIP AS等等)接收SIP消息。在步骤206,确定接收到的SIP请求消 息先前是否被SIP代理服务器接收(即,接收到的SIP请求消息先前 是否通过SIP代理)。可以使用多个方法之一来执行确定接收到的SIP 请求消息先前是否被SIP代理服务器接收。在一个实施例中,确定接收到的SIP消息先前是否被SIP代理服
务器接收包括确定接收到的SIP消息的头部是否包括SIP代理服务器
插入的(即当接收到的SIP消息先前被SIP代理服务器处理时由SIP
代理服务器插入的)头部字段。在一个实施例中,确定接收到的SIP
消息的头部是否包括SIP代理服务器先前插入的头部字段包括搜索接
收到的SIP消息的头部的一个或多个头部字段以查找标识SIP代理的
头部字段值(例如,解析包括在接收到的消息的头部中的标识包括SIP
代理服务器的IP地址或主机名的SIP VIP头部字段的多个SIP VIA头
部字段)。示例性的包括SIP头部的SIP消息如下,该SIP头部具有
多个SIP VIA头部字段和会话描述协议(SDP)主体 INVITE sip:UAS@127.0.0.1:5060;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 135.85.65.214:5061 ;branch=z9hG4bK-1
V'旧SIP/2.0/UDP 135.85.65.214:5062;branch=z9hG4bK-2
Record-Route: <sip:135.85.65.214:5061 ;lr>
Route: <sip:127.0.0.1;lr>
Max-Forwards: 69
CSeq: 1 INVITE
Call-ID: 7a66e93e@135.85.65.214
From: "UAC"<sip:UAC@135.85.65.214>;tag=363e5a34
To: "UAS"<sip:UAS@127.0.0.1:5060;transport=UDP>
Contact: "UAC"<sip:uac_a@ 127.0.0.1:5062;transport=UDP>
Subject: Performance test
Route: <sip:proxy@127.0.0.1:5061 >
Content-Type: application/sdp
Content-Length: 101
v=0
o=- 0 0 IN IP4 lucent.com s=-
c=IN IP4 10,20.30.60 t=0 0
m-audio 5004 RTP/AVP 8 3 0 在一个实施例中,确定接收到的SIP消息先前是否被SIP代理服务器接收包括确定接收到的SIP消息的一个或多个头部字段是否包括 通过SIP代理服务器插入的(即,当接收到的SIP消息先前被SIP代 理服务器接收到时由SIP代理服务器插入的)头部字段值。在一个实 施例中,所述头部字段包括SIP VIA头部字段。在一个这样的实施例 中,确定接收到的SIP消息的一个或多个头部字段是否包括先前由SIP 代理服务器插入的头部字段值包括搜索接收到的SIP消息头部的一个 或多个头部字段以查找标识SIP代理的头部字段值(例如,解析包括 在接收到的消息的头部中的标识包括SIP代理服务器的IP地址的SIP VIA头部字段的多个SIP VIA头部字段)。
如在图2中描绘的那样,如果接收到的消息先前未曾被SIP代理 服务器接收,则方法200进行到步骤220,在该步骤转发接收到的SIP 消息。朝向另一 SIP网络单元(例如,SIPPS、 SIPAS、 SIPUA等等) 转发接收到的SIP消息。从步骤220,方法200进行到步骤226,方法 200在该步骤结束。如在图2中描绘的那样,如果接收到的SIP消息先 前被SIP代理服务器接收,则方法200进行到步骤208。在步骤208, 计算当前的路由摘要(CRD)。
在一个实施例中,通过在一个或多个以下头部和消息部分上对散 列函数的结果进行求和来计算路由摘要请求统一资源标识符(URI )、 最高路由头部、任何或全部要求(Require)和/或代理要求头部、任 何或全部授权和/或代理授权头部、呼叫-Id头部、来自(From)和/ 或到(To)头部(包括标签参数)以及CSeq头部等等及其各种组合。 通常,可以包括代理服务器路由判定能够基于的任何信息。通过计算 路由摘要,检测这种信息中的变化。假设如果自上次消息遍历所述 代理起该信息的任何部分都未被改变,则该代理将做出相同的路由判 定。如果所有代理遵循这种逻辑,则请求将最终再次到达当前代理, 因此形成循环。
在步骤210,确定接收到的SIP消息是否包括先前的路由摘要 (PRD) 。 PRD是先前被计算并且通过SIP代理服务器插入到接收到的 SIP消息中的路由摘要。在一个实施例中,确定接收到的SIP消息是否 包括PRD包括搜索接收到的SIP消息的至少一个消息头部字段(例如, 被标识为先前已经被SIP代理服务器插入到接收到的SIP消息中的消 息头部字段(例如,SIPVIA头部字段))。如果接收到的SIP消息并不包括PRD (先前被计算并且通过SIP代理服务器插入),方法200 进行到步骤212。如果接收到的SIP消息的确包括PRD (先前被计算并 且由SIP代理服务器插入),方法200进行到步骤214。
在步骤212, CRD被插入到接收到的SIP消息中。在一个实施例中, 使用CRD参数(这里表示为"循环检查"(即"lc,,)参数)将所述 CRD插入到接收到的SIP消息中。在一个实施例中,CRD被插入到接收 到的SIP消息的头部中。在一个实施例中,CRD作为现有SIP消息头部 字段的部分被插入。在一个实施例中,通过使用CRD参数值(例如, "Via: SIP/2. O/UDP 135.85.65.214: 5062 ; branch = z9hG4bK-2 ; 03abd87f,,,其中路由摘要值是十六进制)将CRD作为现有SIP消息 头部字段的部分而插入。在一个实施例中,通过使用CRD参数名(例 如,"lc")和相关联的CRD参数值(例如,"Via: SIP/2. O/UDP 135.85.65.214:5062; branch = z9hG4bK-2; lc = 03abd87f",其中路 由摘要值是十六进制)将CRD作为现有SIP消息头部字段的部分而插 入。在一个实施例中,CRD作为新的SIP消息头部字段被插入,该新的 SIP消息头部字段具有SIP消息头部字段名和相关联的SIP消息头部字 段值(例如,"Loop-Check: proxy.example.com; lc = 012345678")。 包括示例性的所计算的路由摘要(例如,PRD或CRD )的示例性SIP 消息如下。如在示例性SIP消息中所描述的那样,VIA头部字段之一包 括"循环检查,,参数(被表示为"lc" ) 。 "lc"参数可以包括"lc" 参数名(例如,被表示为"lc")和相关联的"lc"参数值。尽管被 描述为通过"lc"参数名进行标识,但是各种其他参数名可以被用来 标识路由摘要。尽管描述了特定的"lc"参数值,但是各种其他"lc" 参数值(例如,具有其他格式的"lc"参数值)可以被用于传送所计 算的路由摘要。INVITE sip:UAS@127.0.0.1:5060;transport=UDP SIP/2.0 Via: SIP/2.0/UDP 135,85.65.214:5061 ;branch=z9hG4bK-1;lc=012345678
Via: SIP/2.0/UDP 135.85.65.214:5062;branch=z9hG4bK-2 Record-Route: <sip:135.85.65,214:5061 ;lr> Route: <sip:127.0.0.1;lr> Max-Forwards: 69 CSeq: 1 INVITE
Call-ID: 7a66e93e@135.85.65.214
From: "UAC"<sip:UAC@135.85.65.214>;tag=363e5a34
To: "UAS"<sip:UAS@127.0,0.1:5060;transport=UDP>
Contact: "UAC"<sip:uac—a@127.0.0.1:5062;transport=UDP>
Subject: Performance test
Route: <sip:proxy@127.0.0.1:5061 > Content-Type: application/sdp
Content-Length: 101
v=0
o=- 0 0 IN IP4 lucent.com s=-
c=IN IP4 10.20.30.60 t=0 0
m=audio 5004 RTP/AVP 8 3 0 尽管被描述为VIA头部字段的参数,在一个实施例中,所计算的 路由摘要可以被实现为参数(例如,"lc"参数或一个或多个其他头 部字段的一个或多个其他参数)。尽管被描述为VIA头部字段的参数, 在一个实施例中,所计算的路由摘要可以被实现为单独的头部字段 (即,使用路由摘要头部字段,而不是被包括为诸如VIA头部字段的 现有头部字段的参数)。在一个实施例中,其中所计算的路由摘要被 实现为单独的头部字段,立即跟随与计算所计算的路由摘要的SIP网 络单元相关联的VIA头部字段,该单独的头部字段可以;波插入到SIP 消息头部中。
在步骤214,确定PRD。在一个实施例中,通过解析接收到的SIP消息的头部来确定PRD。在一个实施例中,通过识别路由摘要头部字段 名和识别相关联的路由摘要头部字段值来确定PRD。在一个实施例中, 通过识别路由摘要参数名(例如,头部字段的部分)和识别相关联的 路由摘要参数值来确定PRD。在一个实施例中,PRD被确定为用于确定 接收到的SIP消息是否包括PRD所执行的处理的部分。
在步骤216,比较CRD和PRD。 CRD和PRD被比较来以便确定转发 循环是否存在。在步骤218,确定转发循环是否被检测。在一个实施例 中,如果CRD和PRD是相同的,则检测转发循环(以及如果CRD和PRD 是不同的,则不检测转发循环)。在一个实施例中,如果CRD和PRD 基本上类似(例如,如果CRD与PRD之间的差落入阈值之内),则检 测转发循环。
如在图2中所描绘的那样,如果转发循环未被检测,则方法200 进行到步骤220,在该步骤转发接收到的消息。朝向另一SIP网络单元 转发接收到的消息。从步骤220,方法200进行到步骤226,方法200 在该步骤结束。如果转发循环被检测,则方法200进行到步骤"2。在 步骤222,产生循环错误。在步骤224,朝向至少一个SIP网络单元产 生循环4普误。从步骤224,方法200进^f于到步骤226,方法200在该步 骤结束。
图3描绘适用于执行这里所描述的功能的通用计算机的高级框图。 如在图3中所描绘的那样,系统300包括处理器单元302 (例如CPU)、 例如随机存取存储器(RAM)和/或只读存储器(ROM)的存储器304、 循环检测模块305和各种输入/输出设备306 (例如,包括但不局限于 磁带驱动器、软盘驱动器、硬盘驱动器或光盘驱动器的存储设备、接 收机、发射机、扬声器、显示器、输出端口和用户输入设备(诸如键 盘、小键盘、鼠标等等))。
应该注意到,本发明可以以软件和/或以软件和硬件的组合实现, 例如使用专用集成电路(ASIC)、通用计算机或任何其他硬件等同物 来实现。在一个实施例中,本循环检测模块或过程305能够被加栽到 存储器304中并通过处理器302执行,以实现以上讨论的功能。同样, 本发明的循环检测过程305 (包括相关联的数据结构)能够被存储在计 算机可读介质或载体上,该计算机可读介质或载体例如是RAM存储器、 磁或光驱动器或磁盘等等。在一个实施例中,本发明的转发循环检测处理可以以防止对其他 消息处理功能的影响的方式实现。在一个实施例中,例如,适于执行 本发明的转发循环检测处理功能的至少 一部分的过程呼叫可以被添加 到其中处理每个接收到的消息的代码路径中。尽管相对于特定的实施 方案来描述,但是本发明的转发循环检测处理可以使用各种其他设计 (例如,网络单元部件的配置、其他代码路径修改等等及其各种组合) 来实现,这些设计可能影响或可能不影响各种其他被支持的消息处理 功能。
在 一 个实施例中,本发明的转发循环检测处理可以被配置来使得 可以激活或去激活(例如,单独在每个单元的基础上、全局地在多个 单元上等等及其各种组合)本发明的转发循环检测处理功能。在一个 实施例中,可以自动地激活或去激活本发明的转发循环检测处理(例 如,每个网络单元可以根据每个网络单元(例如,从相关联的管理系 统)获得的预定调度来激活和去激活转发循环检测功能)。在一个实 施例中,可以手动地激活或去激活本发明的转发循环检测处理(例如, 每个网络单元可以手动地被配置,以便激活和去激活转发循环检测功 能)。
在一个实施例中,本发明的转发循环检测处理可以被配置来使得 通过使用至少一个转发循环检测准则来执行转发循环的检测。在一个 实施例中,例如,可以响应于确定消息中的特定头部的数目满足阈值 而仅执行本发明的转发循环检测处理。在一个这样的实施例中,例如,
可以响应于确定消息中的SIP VIA头部的数目满足阈值而仅执行本发 明的转发循环检测处理。尽管相对于多个SIP VIA头部来描述,但是
' 尽管这里主要相对于利用SIP消息的基于MP的网络进行了描绘 和说明,但是在各种其他实施例中,本发明的至少一部分功能可以被 用于在利用各种其他网络单元、信令协议、消息类型、消息格式等等 及其各种组合的各种其他网络中检测转发循环。本发明并无意图被限
制于利用SIP消息的基于SIP的网络。
例,^是本领域的4通技术人员能够容易地设计出仍然并入这些S导 的许多其他已变化的实施例。
权利要求
1. 一种用于在第一网络单元检测转发循环的方法,其包括(a)确定接收到的消息先前是否被第一网络单元接收;(b1)如果接收到的消息先前被第一网络单元接收,则计算当前的路由摘要和确定接收到的消息的头部是否包括先前的路由摘要以及执行以下步骤之一(b11)如果接收到的消息的头部包括先前的路由摘要,则确定转发循环是否存在;以及(b12)如果接收到的消息的头部并不包括先前的路由摘要,则将当前的路由摘要插入到接收到的消息的头部中并且朝向第二网络单元转发所述消息;以及(b2)如果接收到的消息先前未被第一网络单元接收,则朝向第二网络单元转发接收到的消息。
2. 根据权利要求1所述的方法,其中,确定接收到的消息先前是 否被第一网络单元接收包括确定接收到的消息的头部是否包括当接收到的消息先前被第 一 网 络单元接收时由第一网络单元插入的头部字段。
3. 根据权利要求1所述的方法,其中,确定转发循环是否存在包括..比较当前的路由摘要和先前的路由摘要以及执行以下之一 如果当前的路由摘要和先前的路由摘要匹配,则检测转发循环;和如果当前的路由摘要和先前的路由摘要并不匹配,则朝向第二网 络单元转发所述消息。
4. 根据权利要求1所述的方法,其中,计算当前的路由摘要包括 在接收到的消息的头部中,识别多个头部字段中与接收到的消息的路由相关联的所选择的头部字段;和使用头部字段中与接收到的消息的路由相关联的所选择的头部字 段来计算当前的路由摘要。
5. 根据权利要求1所述的方法,其中,使用头部字段中与接收到 的消息的路由相关联的所选择的头部字段来计算当前的路由摘要包 括和。
6. 根据权利要求1所述的方法,其中,当前的路由摘要作为接收 到的消息的头部的部分被插入到接收到的消息中。
7. 根据权利要求1所述的方法,其中,当前的路由摘要作为接收 到的消息头部的头部字段的部分被插入到接收到的消息中,其中当前 的路由摘要包括路由摘要参数名和路由摘要参数值。
8. —种用于在第一网络单元检测转发循环的设备,其包括 用于确定接收到的消息先前是否被第一网络单元接收的装置; 装置,用于如果接收到的消息先前被第一网络单元接收,则计算当前路由摘要和确定接收到的消息的头部是否包括先前的路由摘要, 该装置还包括装置,用于如果接收到的消息的头部包括先前的路由摘要, 则确定转发循环是否存在;和装置,用于如果接收到的消息的头部并不包括先前的路由摘 要,则将当前的路由摘要插入到接收到的消息的头部中并且朝向第二 网络单元转发所述消息;以及装置,用于如果接收到的消息先前未被第一网络单元接收,则朝 向第二网络单元转发接收到的消息。
9. 根据权利要求8所述的设备,其中,用于确定转发循环是否存 在的装置包括用于比较当前的路由摘要和先前的路由摘要的装置,该装置还包括装置,用于如果当前的路由摘要和先前的路由摘要匹配,则检测 转发循环;和装置,用于如果当前的路由摘要和先前的路由摘要并不匹配,则 朝向第二网络单元转发所述消息。
10. —种存储软件程序的计算机可读介质,当该软件程序被计算 机执行时,该软件程序使得计算机执行包括以下步骤的方法(a)确定接收到的消息先前是否被笫一网络单元接收; (bl)如果接收到的消息先前被第一网络单元接收,则计算当前 的路由摘要和确定接收到的消息的头部是否包括先前的路由摘要以及执行以下步骤之一(bll)如果接收到的消息的头部包括先前的路由摘要,则确定转发循环是否存在;和(bl2)如果接收到的消息的头部并不包括先前的路由摘要,则将当前的路由摘要插入到接收到的消息的头部中并且朝向第二网络 单元转发所述消息;以及(b2)如果接收到的消息先前未被第一网络单元接收,则朝向第 二网络单元转发接收到的消息。
全文摘要
本发明包括用于在网络单元检测转发循环的方法和设备。该方法包括确定接收到的消息先前是否被第一网络单元接收,以及如果接收到的消息先前被接收,则计算当前的路由摘要和确定接收到的消息的头部是否包括先前的路由摘要。如果接收到的消息的头部包括先前的路由摘要,则确定转发循环是否存在。如果接收到的消息的头部并不包括先前的路由摘要,则当前的路由摘要被插入到接收到的消息的头部中并且朝向第二网络单元转发该消息。如果接收到的消息先前未被接收,则朝向第二网络单元转发接收到的消息。
文档编号H04L12/56GK101449530SQ200780018701
公开日2009年6月3日 申请日期2007年5月11日 优先权日2006年5月22日
发明者J·范贝梅尔 申请人:卢森特技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1