一种实现校验和算法自适应选择的方法及装置的制作方法

文档序号:7701016阅读:142来源:国知局
专利名称:一种实现校验和算法自适应选择的方法及装置的制作方法
技术领域
本发明涉及通信系统中的流控制传输协议(SCTP),尤其涉及一种实现 SCTP中校验和算法自适应选择的方法及装置。
背景纟支术
SCTP是信令传输协议(SIGTRAN)协议簇中的组成部分,属于传输层协 议,主要用于在IP网络上可靠地传送公共交换电话网络(PSTN)的信令消息。 SCTP是一个面向连接的协议,SCTP提供了在两个SCTP端点之间的一组IP 地址间建立偶联的方法,通过这些已建立的偶联,SCTP端点可以发送SCTP 分组。这里,所述SCTP端点是SCTP分组逻辑的接收方或发送方;偶联是两 个SCTP端点间的一个对应关系,每个SCTP端点可对应一组IP地址,相应的, 偶联即是两组IP地址之间的对应关系。这里,所述偶联的建立过程如图1所示, 采用"四次握手"机制实现。为了保证SCTP分组的有效性,每个SCTP分组头 中都包含一个必备的验证标签字段和一个校验和字段,其中,所述校验和由 SCTP分组的发送方设置,接收方对包含无效校验和的SCTP分组予以丟弃。目 前,传统版本的校验和算法为Adler-32,为了进一步提高校验和算法的可靠性, 又提出了新版本的校验和算法,为CRC-32。
现有技术中,采用新版本校验和算法CRC-32的SCTP端点只能与采用校 验和算法CRC-32的SCTP端点建立偶联,而无法与采用校验和算法Adler-32 的SCTP端点建立偶联,即与采用老版本校验和算法的SCTP端点不兼容, 进而,无法与现有网络中的设备兼容,影响了新版本校验和算法的广泛使用。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现校验和算法自适应选择的方法及装置,使得采用不同校验和算法的SCTP端点之间可建立偶联。 为达到上述目的,本发明的技术方案是这样实现的 本发明提供了一种实现校验和算法自适应选择的方法,该方法包括 本端点选用第一校^r和算法计算收到的来自对方端点的消息的才L睑和,确
定计算所得的校一睑和与收到的消息中携带的校^^和不相等时,选用第二核z验和
算法并尝试与对方端点重新建立偶联。
其中,所述计算来自对方端点的消息的校验和之前,还包括判断是否收 到来自对方端点的消息,收到来自对方端点的消息时,选用第一校l^和算法计 算来自对方端点的消息的校j睑和;未收到来自对方端点的消息时,选用第二校 验和算法并尝试与对方端点重新建立偶联。
其中,所述本端点主动与对方端点建立偶联时,该方法具体为 向对方端点发送启动消息;
判断是否收到来自对方端点的启动证实消息,如果没有收到来自对方端点 的启动证实消息,则选用第二校验和算法并重新开始与对方端点建立偶联;如 果收到来自对方端点的启动证实消息,则选用第 一校验和算法计算启动证实消 息的校验和,如果计算所得的校验和与收到的启动证实消息中携带的校验和相 等,则向对方端点发送状态应答消息;如果计算所得的校验和与收到的启动证 实消息中携带的校验和不相等,则选用第二4交-验和算法并重新开始与对方端点 建立偶联;
向对方端点发送状态应答消息后,判断是否收到来自对方端点的状态证实 消息,如果没有收到来自对方端点的状态证实消息,则选用第二校验和算法并 重新开始与对方端点建立偶联;如果收到来自对方端点的状态证实消息,则选 用第一校验和算法计算状态_〖正实消息的校验和,如果计算所得的校验和与收到 的状态证实消息中携带的校验和相等,则结束当前偶联建立过程;如果计算所 得的校验和与收到的状态证实消息中携带的校验和不相等,则选用第二校验和 算法并重新开始与对方端点建立偶联。
其中,所述本端点被动与对方端点建立偶联时,该方法具体为选用第一校验和算法计算接收到的启动消息,如果计算所得的校验和与收
到的启动消息中携带的校验和相等,则向对方端点发送启动证实消息;如果计 算所得的校验和与收到的启动消息中携带的校验和不相等,则选用第二核z验和 算法并重新开始与对方端点建立偶联;
向对方端点发送启动证实消息后,判断是否收到来自对方端点的状态应答 消息,如果没有收到来自对方端点的状态应答消息,则选用第二校验和算法并 重新开始与对方端点建立偶联;如果收到来自对方端点的状态应答消息,则选 用第一4吏验和算法计算接收到的状态应答消息,如果计算所得的才交-睑和与收到 的状态应答消息中携带的校验和相等,则向对方端点发送状态证实消息,结束 当前偶联建立过程;如果计算所得的校验和与收到的状态应答消息中携带的校 验和不相等,则选用第二校验和算法并重新开始与对方端点建立偶联。
上述方案中,所述第一校验和算法为CRC-32校验和算法;所述第二校验 和算法为Adler-32校验和算法;或者,所述第一校验和算法为Adler-32校验和 算法;所述第二校-睑和算法为CRC-32校验和算法。
本发明还提供了一种实现校验和算法自适应选择的装置,该装置包括
收发模块,用于接收来自对方端点的消息并传输到存储模块存储;
存储模块,用于存储来自对方端点的消息;
计算比较才莫块,用于选用第一校验和算法计算收到的来自对方端点的消息 的校验和,并在确定计算所得的校-睑和与收到的消息中携带的核z睑和不相等时, 选用第二校验和算法,并触发收发模块重新与对方端点建立偶联。
其中,所述计算比较才莫块在确定计算所得的4L睑和与收到的消息中携带的 校验和相等时,进一步用于继续选用第一校验和算法计算后续来自对方端点的 消息的校验和,并触发收发4莫块继续与对方端点建立偶联。
进一步地,该装置还包括
判断处理;f莫块,用于确定收到来自对方端点的消息时,触发计算比较模块 进行校验和计算,确定未收到来自对方端点的消息时,通知计算比较^^块更改 校验和算法;相应的,所述计算比较才莫块,还用于在判断处理才莫块确定未收到来自对方 端点的消息时更改选用的校^^和算法,并触发收发才莫块重新与对方端点建立偶 联。
上述方案中,所述装置用于本端点主动建立偶联时,
所述^4^模块接收来自对方端点的消息并传输到存储模块存储,具体为
向对方端点发送启动消息或状态应答消息,接收来自对方端点的启动证实 消息或状态证实消息,并将启动证实消息或状态证实消息传输到存储模块存储;
所述计算比较才莫块选用第 一校验和算法计算收到的来自对方端点的消息的 校验和,并在确定计算所得的校验和与收到的消息中携带的校验和不相等时, 选用笫二校验和算法,并触发收发模块重新与对方端点建立偶联,具体为
选用第一校验和算法计算启动证实消息或状态证实消息的校验和,将计算 结果与启动证实消息或状态证实消息中携带的校验和作比较,确定与启动证实 消息中携带的校验和相等时,继续选用第一校验和算法计算后续来自对方端点 的消息的校验和,并触发收发模块向对方端点发送状态应答消息,确定与状态 证实消息中携带的4L验和相等时,结束偶联建立过程;确定与来自对方端点的 消息中携带的校验和不相等时,选用第二校验和算法计算,并触发收发模块向 对方端点发送启动消息。
上述方案中,所述装置用于本端点被动建立偶联时,
所迷收发模块接收来自对方端点的消息并传输到存储模块存储,具体为
接收对方端点发送的启动消息或状态应答消息,向对方端点发送启动证实 消息或状态证实消息,并将启动消息或状态应答消息传输到存储才莫块存储;
所述计算比较模块选用第 一校验和算法计算收到的来自对方端点的消息的 校验和,并在确定计算所得的校^r和与收到的消息中携带的校^r和不相等时, 选用第二校验和算法,并触发4t^模块重新与对方端点建立偶联,具体为
选用第一校Ji^和算法计算启动消息或状态应答消息的才t睑和,将计算结果 与启动消息或状态应答消息中携带的校验和作比较,确定与启动消息或状态应 答消息中携带的校验和相等时,继续选用第一校验和算法计算后续来自对方端点的消息的校验和,并触发收发模块向对方端点发送启动证实消息或状态证实
消息;确定与启动消息或状态应答消息中携带的4L验和不相等时,选用第二才交 验和算法计算后续来自对方端点的消息的校验和,并触发收发^t块与对方端点 建立偶联。
本发明提供的实现校验和算法自适应选择的方法及装置,本端点选用第一 校验和算法计算收到的来自对方端点的消息的校验和,确定计算所得的校验和 与收到的消息中携带的校验和不相等时,选用第二4交验和算法并尝试与对方端 点重新建立偶联。本发明可实现采用新版;^验和算法CRC-32的SCTP端点 与采用Adler-32或CRC-32校验和算法的SCTP端点均能建立偶联,进而实现 了网络中新旧设备的兼容。


图l为采用"四次握手"机制实现偶联建立的示意图; 图2为本发明本端点主动建立偶联的方法实现流程示意图; 图3为本发明本端点被动建立偶联的方法实现流程示意图; 图4为本发明实现校l^和算法自适应选择的装置结构示意图。
具体实施例方式
本发明的基本思想是本端点选用第一校验和算法计算收到的来自对方端 点的消息的校验和,确定计算所得的校验和与收到的消息中携带的校验和不相 等时,选用第二4L验和算法并尝试与对方端点重新建立偶联。
对于不同的通信系统,所述校验和算法可为多种不同种类,下面以笫一校 验和算法、第二校验和算法分别为CRC-32校验和算法和Adler-32校验和算法 为例对本发明的实现做详细说明。
本发明中,所述本端点和对方端点均指任一 SCTP端点,其中,所述对方 端点支持CRC-32校验和算法、Adler-32校验和算法中的一种。
下面针对本端点主动建立偶联和被动建立偶联两种不同情况对所述校验和算法自适应选择的方法及装置进行描述。
图2为本发明本端点主动建立偶联的方法实现流程示意图,如图2所示, 该流程包括以下步骤
步骤201:向对方端点发送启动(INIT)消息;
具体为本端点选用CRC-32校验和算法计算待发送的启动消息的校验和, 将计算所得的校验和填入启动消息中的校验和字段中,并将整条启动消息发送 到对方端点。
本发明中,本端点在主动和被动建立偶联的过程中均默认首先选用CRC-32 校验和算法尝试与对方端点建立偶联,也可首先选用Adler-32 4交验和算法尝试 与对方端点建立偶联。
步骤202:判断是否收到来自对方端点的启动证实(INITACK)消息,如 果收到来自对方端点的启动证实消息,则执行步骤203;如果没有收到来自对 方端点的启动证实消息,则执行步骤207。
本发明中,所述没有收到来自对方端点的消息,为在设定时间内没有收 到来自对方端点的消息;所述设定时间以秒为单位计算,如1秒、或2秒、 或0.1秒等;如果没有收到来自对方端点的消息,即对方端点没有回复消息, 可能是由于对方端点计算所得本端点发送的消息的校验和与本端点发送的消息 中携带的校验和不相等,则此次偶联的建立过程失败,选用另一种核^验和算法 并重新建立偶联。
步骤203:选用CRC-32校验和算法计算启动证实消息的校验和,如果计算 所得的校验和与收到的启动证实消息中携带的校验和相等,则执行步骤204; 如果计算所得的校验和与收到的启动证实消息中携带的校验和不相等,则执行 步骤207。
步骤204:向对方端点发送状态应答(COOKIE ECHO)消息;
具体为本端点选用CRC-32校验和算法计算待发送的状态应答消息的校
验和,将计算所得的校验和填入状态应答消息中的校验和字段中,并将整条状
态应答消息发送到对方端点。步骤205:判断是否收到来自对方端点的状态证实(COOKIEACK)消息, 如果收到来自对方端点的状态证实消息,则执^f亍步骤206;如果没有收到来自 对方端点的状态证实消息,则执行步骤207;
这里,所述没有收到来自对方端点的消息,原因可能为本端点的消息在 传输到对方端点的过程中,由于网络破坏造成了本端点消息数据的差错,使得 对方端点计算所得本端点发送的消息的校验和与本端点发送的消息中携带的校 验和不相等,则此次偶联的建立过程失败,选用另一种校验和算法并重新建立 偶联。
步骤206:选用CRC-32校验和算法计算状态证实消息的校验和,如果计算 所得的校验和与收到的状态证实消息中携带的校验和相等,则执行步骤208; 如果计算所得的校验和与收到的状态证实消息中携带的才交一验和不相等,则执行 步骤207;
这里,计算所得的校验和与收到的状态证实消息中携带的校验和不相等, 原因可能为对方端点的消息在传输到本端点的过程中,由于网络破坏造成了 对方端点消息数据的差错,使得两校验和不相等,则此次偶联的建立过程失败, 选用另 一种校验和算法并重新建立偶联。
步骤207:选用Adler-32校验和算法并执行与步骤201至206相同的操作, 如果没有收到对方端点返回的启动证实消息或状态证实消息,或计算所得的校 验和与收到的启动证实消息或状态证实消息中携带的校验和不相等,则均执行 步骤201,再次选用CRC-32校验和算法尝试与对方端点建立偶联,如果四次握 手均选用Adler-32校验和算法完成,则执行步骤208。
步骤208:偶联建立过程结束。
图3为本发明本端点被动建立偶联的方法实现流程示意图,如图3所示, 该流程包括以下步骤
步骤301:选用CRC-32校验和算法计算接收到的启动消息的校验和,如果
计算所得的才交验和与收到的启动消息中携带的校^^和相等,则执行步骤302; 如果计算所得的校验和与收到的启动消息中携带的較z睑和不相等,则执行步骤306。
步骤302:向对方端点发送启动证实消息;
具体为本端点选用CRC-32校验和算法计算待发送的启动证实消息的校 验和,将计算所得的校验和填入启动证实消息中的校验和字段中,并将整条启
动证实消息发送到对方端点。
步骤303:判断是否收到来自对方端点的状态应答消息,如果收到来自对 方端点的状态应答消息,则执行步骤304;如果没有收到来自对方端点的状态 应答消息,则执行步骤306;
这里,所述没有收到来自对方端点的消息,原因可能为本端点的消息在 传输到对方端点的过程中,由于网络破坏造成了本端点消息数据的差错,使得 对方端点计算所得本端点发送的消息的校验和与本端点发送的消息中携带的校 验和不相等,则此次偶联的建立过程失败,选用另一种才交验和算法并重新建立 偶联。
步骤304:选用CRC-32校验和算法计算接收到的状态应答消息的校验和, 如果计算所得的校一验和与收到的状态应答消息中携带的校验和相等,则执行步 骤305;如果计算所得的校验和与收到的状态应答消息中携带的校验和不相等, 则执行步骤306;
这里,计算所得的校验和与收到的状态证实消息中携带的校验和不相等, 原因可能为对方端点的消息在传输到本端点的过程中,由于网络破坏造成了 对方端点消息数据的差错,使得两校验和不相等,则此次偶联的建立过程失败, 选用另 一种校验和算法并重新建立偶联。
步骤305:向对方端点发送状态证实消息,结束当前偶联建立过程; 具体为本端点选用CRC-32校验和算法计算待发送的状态证实消息的校 验和,将计算所得的校验和填入状态证实消息中的校验和字段中,并将整条状
态证实消息发送到对方端点; 这里,认为向对方端点发送状态证实消息后,如果对方端点能收到,则偶 联建立过程结束。步骤306:选用Adler-32校验和算法并执行与步骤301至305相同的操作, 如果没有收到对方端点返回的状态应答消息,或计算所得的校验和与收到的启 动消息或状态应答消息中携带的校验和不相等,则执行步骤301,再次选用 CRC-32校验和算法尝试与对方端点建立偶联,如果四次握手均选用Adler-32 校验和算法完成,则偶联建立过程结束。
为实现上述方法,本发明还提供了 一种实现校验和算法自适应选择的装置, 如图4所示,该装置包括收发模块、存储模块和计算比较模块;其中,
所述收发模块,用于向对方端点发送消息,接收来自对方端点的消息并传 输到存储4莫块存储;
所述存储模块,用于存储来自对方端点的消息;
所述计算比较模块,用于选用第一校验和算法计算来自对方端点的消息的 校验和,将计算结果与来自对方端点的消息中携带的校验和作比较,确定两校 验和相等时,仍继续选用第一校验和算法计算后续来自对方端点的消息的校验 和,并触发收发模块继续与对方端点建立偶联,确定两校验和不相等时,选用 第二校验和算法,并触发收发模块重新与对方端点建立偶联;计算比较模块中 计算校验和的消息来自存储模块。
该装置进一步包括判断处理模块,用于判断是否收到来自对方端点的消息, 确定收到时,触发计算比较才莫块进行校验和计算,确定未收到时,通知计算比 较模块更改校验和算法;
相应的,所述计算比IM^块,还用于在判断处理it块确定收到来自对方端 点的消息时,仍选用现用的才t验和算法计算来自对方端点的消息的校验和;在 判断处理模块确定未收到来自对方端点的消息时,更改选用的校验和算法,并 触发4t^模块重新与对方端点建立偶联。
所述装置用于本端点主动建立偶联时,
所述收发模块向对方端点发送消息,接收来自对方端点的消息并传输到存 储模块存储,具体为
向对方端点发送启动消息或状态应答消息,接收来自对方端点的启动证实消息或状态证实消息,并将启动证实消息或状态证实消息传输到存储模块存储;
所述存储模块存储来自对方端点的消息,具体为
存储来自对方端点的启动证实消息或状态证实消息;
所述判断处理模块判断是否收到来自对方端点的消息,确定收到时,触发 计算比较模块进行校验和计算,确定未收到时,通知计算比较模块更改校验和 算法,具体为
判断是否收到来自对方端点的启动证实消息或状态证实消息,确定收到时, 触发计算比较模块进行校验和计算,确定未收到时,通知计算比较模块更改校 验和算法;
所述计算比较模块选用第一校验和算法计算来自对方端点的消息的校验 和,将计算结果与来自对方端点的消息中携带的校验和作比较,确定两校验和 相等时,仍继续选用第一校验和算法计算后续来自对方端点的消息的校验和, 并触发收发模块继续与对方端点建立偶联,确定两校验和不相等时,选用第二 校验和算法,并触发收发模块重新与对方端点建立偶联,具体为
选用第一校验和算法计算启动证实消息或状态证实消息的校验和,将计算 结果与启动证实消息或状态证实消息中携带的校验和作比较,确定与启动证实 消息中携带的校验和相等时,仍继续选用第一校验和算法计算后续来自对方端 点的消息的校验和,并触发收发模块向对方端点发送状态应答消息,确定与状 态证实消息中携带的校验和相等时,结束偶联建立过程;确定与来自对方端点 的消息中携带的校-验和不相等时,选用第二校^^和算法计算后续来自对方端点 的消息的校验和,并触发Jl^C模块向对方端点发送启动消息。
所述装置用于本端点被动建立偶联时,
所述收发模块向对方端点发送消息,接收来自对方端点的消息并传输到存 储模块存储,具体为
接收对方端点发送的启动消息或状态应答消息,向对方端点发送启动证实 消息或状态证实消息,并将启动消息或状态应答消息传输到存储才莫块存储;
所述存储模块存储来自对方端点的消息,具体为存储来自对方端点的启动消息或状态应答消息;
所述判断处理;f莫块判断是否收到来自对方端点的消息,确定收到时,触发 计算比较模块进行校验和计算,确定未收到时,通知计算比较模块更改校验和 算法,具体为
判断是否收到来自对方端点的状态应答消息,确定收到时,触发计算比丰支 模块进行校验和计算,确定未收到时,通知计算比较才莫块更改校验和算法;
所述计算比较才莫块选用第一校验和算法计算来自对方端点的消息的才L验 和,将计算结果与来自对方端点的消息中携带的校^r和作比较,确定两核z睑和
相等时,仍继续选用第一校验和算法计算后续来自对方端点的消息的校a^和, 并触发收发模块继续与对方端点建立偶联,确定两校-验和不相等时,选用第二 校验和算法,并触发收发模块重新与对方端点建立偶联,具体为
选用第一校验和算法计算启动消息或状态应答消息的校验和,将计算结果 与启动消息或状态应答消息中携带的校验和作比较,确定与启动消息或状态应 答消息中携带的校验和相等时,仍继续选用第一校验和算法计算后续来自对方 端点的消息的校验和,并触发收发模块向对方端点发送启动证实消息或状态证 实消息;确定与启动消息或状态应答消息中携带的校-验和不相等时,选用第二 校验和算法计算后续来自对方端点的消息的校验和,并触发收发模块与对方端 点建立偶联。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范 围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应 包含在本发明的保护范围之内。
权利要求
1、一种实现校验和算法自适应选择的方法,其特征在于,该方法包括本端点选用第一校验和算法计算收到的来自对方端点的消息的校验和,确定计算所得的校验和与收到的消息中携带的校验和不相等时,选用第二校验和算法并尝试与对方端点重新建立偶联。
2、 根据权利要求1所述的实现校验和算法自适应选择的方法,其特征在于, 所述计算来自对方端点的消息的校验和之前,还包括判断是否收到来自对方 端点的消息,收到来自对方端点的消息时,选用第一4交J睑和算法计算来自对方 端点的消息的4交验和;未收到来自对方端点的消二息时,选用第二才L睑和算法并 尝试与对方端点重新建立偶联。
3、 根据权利要求2所述的实现校验和算法自适应选择的方法,其特征在于, 所述本端点主动与对方端点建立偶联时,该方法具体为向对方端点发送启动消息;判断是否收到来自对方端点的启动证实消息,如果没有收到来自对方端点 的启动证实消息,则选用第二校验和算法并重新开始与对方端点建立偶联;如 果收到来自对方端点的启动证实消息,则选用第一校^r和算法计算启动证实消 息的校验和,如果计算所得的校验和与收到的启动证实消息中携带的校验和相 等,则向对方端点发送状态应答消息;如果计算所得的校验和与收到的启动证 实消息中携带的校验和不相等,则选用第二校验和算法并重新开始与对方端点 建立偶联;向对方端点发送状态应答消息后,判断是否收到来自对方端点的状态证实 消息,如果没有收到来自对方端点的状态证实消息,则选用第二校验和算法并 重新开始与对方端点建立偶联;如果收到来自对方端点的状态证实消息,则选 用第一校验和算法计算状态证实消息的校验和,如果计算所得的校验和与收到 的状态证实消息中携带的校验和相等,则结束当前偶联建立过程;如果计算所 得的校验和与收到的状态证实消息中携带的校验和不相等,则选用第二校验和算法并重新开始与对方端点建立偶联。
4、 根据权利要求2所述的实现校验和算法自适应选择的方法,其特征在于, 所述本端点;陂动与对方端点建立偶联时,该方法具体为选用第 一校^r和算法计算接收到的启动消息,如果计算所得的4L验和与收 到的启动消息中携带的校验和相等,则向对方端点发送启动证实消息;如果计 算所得的校验和与收到的启动消息中携带的校验和不相等,则选用第二校验和 算法并重新开始与对方端点建立偶联;向对方端点发送启动证实消息后,判断是否收到来自对方端点的状态应答 消息,如果没有收到来自对方端点的状态应答消息,则选用第二校验和算法并 重新开始与对方端点建立偶联;如果收到来自对方端点的状态应答消息,则选 用第一校验和算法计算接收到的状态应答消息,如果计算所得的校验和与收到 的状态应答消息中携带的校验和相等,则向对方端点发送状态证实消息,结束 当前偶联建立过程;如果计算所得的校验和与收到的状态应答消息中携带的校 验和不相等,则选用第二校验和算法并重新开始与对方端点建立偶联。
5、 根据权利要求1至4任一所述的实现校验和算法自适应选择的方法,其 特征在于,所述第一校验和算法为CRC-32校验和算法;所述第二校验和算法 为Adler-32校验和算法;或者,所述第一校验和算法为Adler-32校验和算法; 所述第二校验和算法为CRC-32校验和算法。
6、 一种实现校验和算法自适应选择的装置,其特征在于,该装置包括 收发模块,用于接收来自对方端点的消息并传输到存储模块存储; 存储模块,用于存储来自对方端点的消息;计算比较;f莫块,用于选用第一校-睑和算法计算收到的来自对方端点的消息 的校验和,并在确定计算所得的核z验和与收到的消息中携带的4交-睑和不相等时, 选用第二校验和算法,并触发 _模块重新与对方端点建立偶联。
7、 根据权利要求6所述的实现校验和算法自适应选择的装置,其特征在于, 所述计算比丰i冲莫块在确定计算所得的校验和与收到的消息中携带的校验和相等 时,进一步用于继续选用第一校验和算法计算后续来自对方端点的消息的校验和,并触发收发模块继续与对方端点建立偶联。
8、 根据权利要求6或7所述的实现校验和算法自适应选择的装置,其特征 在于,该装置还包括判断处理模块,用于确定收到来自对方端点的消息时,触发计算比较模块 进行校^r和计算,确定未收到来自对方端点的消息时,通知计算比轻j莫块更改 校验和算法;相应的,所述计算比较;f莫块,还用于在判断处理;f莫块确定未收到来自对方 端点的消息时更改选用的校验和算法,并触发收发模块重新与对方端点建立偶 联。
9、 根据权利要求7所述的实现校验和算法自适应选择的装置,其特征在于, 所述装置用于本端点主动建立偶联时,所述收发模块接收来自对方端点的消息并传输到存储模块存储,具体为 向对方端点发送启动消息或状态应答消息,接收来自对方端点的启动证实 消息或状态证实消息,并将启动证实消息或状态i正实消息传输到存储^f莫块存储; 所述计算比较模块选用第一校验和算法计算收到的来自对方端点的消息的 校验和,并在确定计算所得的校验和与收到的消息中携带的校-睑和不相等时, 选用第二校验和算法,并触发收发模块重新与对方端点建立偶联,具体为选用第一校验和算法计算启动证实消息或状态证实消息的校验和,将计算 结果与启动证实消息或状态证实消息中携带的校验和作比较,确定与启动证实 消息中携带的校^r和相等时,继续选用第一校验和算法计算后续来自对方端点 的消息的校验和,并触发收发模块向对方端点发送状态应答消息,确定与状态 证实消息中携带的校验和相等时,结束偶联建立过程;确定与来自对方端点的 消息中携带的校验和不相等时,选用第二校验和算法计算,并触发M模块向 对方端点发送启动消息。
10、 根据权利要求7所述的实现校验和算法自适应选择的装置,其特征在 于,所述装置用于本端点被动建立偶联时,所述收发模块接收来自对方端点的消息并传输到存储模块存储,具体为接收对方端点发送的启动消息或状态应答消息,向对方端点发送启动证实消息或状态证实消息,并将启动消息或状态应答消息传输到存储模块存储;所述计算比较才莫块选用第 一校验和算法计算收到的来自对方端点的消息的 校验和,并在确定计算所得的校^^和与收到的消息中携带的4交验和不相等时, 选用第二校验和算法,并触发收发模块重新与对方端点建立偶联,具体为选用第一校验和算法计算启动消息或状态应答消息的校验和,将计算结果 与启动消息或状态应答消息中携带的校验和作比较,确定与启动消息或状态应 答消息中携带的校验和相等时,继续选用第一校验和算法计算后续来自对方端 点的消息的校验和,并触发收发模块向对方端点发送启动证实消息或状态证实 消息;确定与启动消息或状态应答消息中携带的校验和不相等时,选用第二校 验和算法计算后续来自对方端点的消息的校验和,并触发收发模块与对方端点 建立偶联。
全文摘要
本发明公开了一种实现校验和算法自适应选择的方法,包括本端点选用第一校验和算法计算收到的来自对方端点的消息的校验和,确定计算所得的校验和与收到的消息中携带的校验和不相等时,选用第二校验和算法并尝试与对方端点重新建立偶联。本发明还同时公开了一种实现校验和算法自适应选择的装置,运用该方法和装置可实现采用新版本校验和算法CRC-32的SCTP端点与采用Adler-32或CRC-32校验和算法的SCTP端点均能建立偶联,进而实现了网络中新旧设备的兼容。
文档编号H04L1/16GK101588221SQ200910087389
公开日2009年11月25日 申请日期2009年6月19日 优先权日2009年6月19日
发明者波 王, 辉 王, 毅 高 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1