一种基于LZW压缩算法对OSPF协议报文进行压缩和加密的方法与流程

文档序号:12132197阅读:302来源:国知局
一种基于LZW压缩算法对OSPF协议报文进行压缩和加密的方法与流程

本发明涉及路由协议领域,具体涉及窄带宽信道的专用网络的OSPF路由协议适用性技术。



背景技术:

该专用网络目前使用的传输链路主要为微波链路、卫星链路、超短波链路等窄带宽信道。网络交换路由设备之间采用OSPF协议进行组网。当网络规模较大或者路由表数量较大时,网络内部会产生大量的OSPF协议报文,导致网络带宽消耗过大。研究发现,标准的OSPF协议报文的内容重复度较高,特别是其Update报文和Query报文。此外,OSPF协议报文一般采用明文方式传输,即使采用MD5验证,也只能保证信息交换的可靠,不能保密,入侵者只要能够接收OSPF分组,就能根据路由器间交换的路由信息取得网络拓扑信息。因此,一种能够对OSPF协议报文内容进行无损压缩和加密的方法急需被研制。

LZW压缩算法是一种非常著名、基于字典的无损压缩算法,由Terry Welch在1984年开发。LZW在压缩和解压缩阶段字典都是自动生成的,它不需要对数据源进行分析或者传输额外信息给解压方,因此不会对压缩和解压缩产生大量的计算代价。为上述方法的研制提供了技术基础。



技术实现要素:

本发明公开了一种基于LZW压缩算法对OSPF协议报文进行压缩和加密的方法,通过压缩减少OSPF协议报文长度来降低协议报文对专用网络的窄带信道的占用,采用数据块交换规则对压缩内容的分块位置进行交换来实现加密。本发明采用的技术方案如下:

一种基于LZW压缩算对OSPF协议报文进行压缩和加密的方法,其特征在于包括如下步骤:

1) OSPF协议处理单元将发送内容送OSPF数据发送单元处理,生成含IP首部的标准OSPF协议报文;

2) OSPF数据发送单元将标准OSPF协议报文送OSPF报文处理单元处理;

3) OSPF报文处理单元调用LZW压缩单元对标准OSPF协议报文的内容部分进行压缩处理,生成压缩OSPF协议报文;

4) OSPF报文处理单元将压缩OSPF协议报文送底层数据发送单元;

5) OSPF数据接收单元接收底层数据接收单元的压缩OSPF协议报文,将其送OSPF报文处理单元处理;

6) OSPF报文处理单元调用LZW解压缩单元对压缩OSPF协议报文进行解压缩处理,生成标准OSPF协议报文;

7) OSPF报文处理单元将标准OSPF协议报文送OSPF协议处理单元。

步骤1)中还包括:

生成含IP首部的标准OSPF协议报文时,其IP首部的ID字段赋值为0,其IP首部的TOS字段赋值为0。这是因为报文长度小于出接口的MTU值,可保证该报文不会分片。

步骤3)中还包括:

调整OSPF协议报文的IP首部的长度字段;利用IP首部的ID字段来保存报文的原始长度;利用IP首部的TOS字段来标识该报文是否被压缩;重新计算IP首部的校验和;采用数据块交换规则对压缩内容的分块位置进行交换。

步骤6)中还包括:

利用IP首部的TOS字段来判断该报文是否被压缩;采用数据块交换规则对压缩内容的分块位置进行恢复;调整OSPF协议报文的IP首部的长度字段;利用解压缩的OSPF协议报文内容长度与IP首部的ID字段比对,判断OSPF协议报文的正确性。

本发明的有益技术效果是:采用无损压缩的方法减少OSPF协议报文的长度,降低了协议报文对专用网络的窄带信道的占用,节省了传输资源。采用数据块交换规则对压缩内容的分块位置进行交换来实现加密,提高了协议报文的保密性,可有效防止入侵者通过嗅探分析协议报文来获取网络拓扑信息或实施协议攻击。本发明提供的方法具有使用方便、处理速度快,技术容易实现等特点,在不改变现有网络状态和OSPF协议的情况下,可有效提高协议的收敛速度。

附图说明

图1、数据发送处理流程;

图2、数据接收处理流程;

图3、标准OSPF协议报文与压缩OSPF协议报文对比。

具体实施方式

如图1和图2所示该基于LZW压缩算法对OSPF协议报文进行压缩和加密的方法。需要说明的是,为了更加清楚、简要的描述本发明的实现方式,图中省略了设备的原有功能模块,仅仅示出与本发明相关的功能模块。

为使本发明的目的、技术方案及优点更加清楚明白,下面参照附图,对本发明作进一步详细说明。主要包括如下步骤:

1) OSPF协议处理单元将发送内容送OSPF数据发送单元处理,生成含IP首部的标准OSPF协议报文;

2) OSPF数据发送单元将标准OSPF协议报文送OSPF报文处理单元处理;

3) OSPF报文处理单元调用LZW压缩单元对标准OSPF协议报文的内容部分进行压缩处理,生成压缩OSPF协议报文;

4) OSPF报文处理单元将压缩OSPF协议报文送底层数据发送单元;

5) OSPF数据接收单元接收底层数据接收单元的压缩OSPF协议报文,将其送OSPF报文处理单元处理;

6) OSPF报文处理单元调用LZW解压缩单元对压缩OSPF协议报文进行解压缩处理,生成标准OSPF协议报文;

7) OSPF报文处理单元将标准OSPF协议报文送OSPF协议处理单元。

步骤1)中还包括:

生成含IP首部的标准OSPF协议报文时,其IP首部的ID字段赋值为0,其IP首部的TOS字段赋值为0。这是因为报文长度小于出接口的MTU值,可保证该报文不会分片。

步骤3)中还包括:调整OSPF协议报文的IP首部的长度字段;利用IP首部的ID字段来保存报文的原始长度;利用IP首部的TOS字段来标识该报文是否被压缩;重新计算IP首部的校验和;采用数据块交换规则对压缩内容的分块位置进行交换。

步骤6)中还包括:利用IP首部的TOS字段来判断该报文是否被压缩;采用数据块交换规则对压缩内容的分块位置进行恢复;调整OSPF协议报文的IP首部的长度字段;利用解压缩的OSPF协议报文内容长度与IP首部的ID字段比对,判断OSPF协议报文的正确性。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变压缩算法或数据块交换规则,都应涵盖在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1