[发明专利]一种ICMP差错报文快速生成方法有效
申请号: | 201410360267.1 | 申请日: | 2014-07-25 |
公开(公告)号: | CN104135439B | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 李静玲;周诠;黎军;呼延烺;张怡;崔涛;魏佳圆;粱薇 | 申请(专利权)人: | 西安空间无线电技术研究所 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 中国航天科技专利中心11009 | 代理人: | 安丽 |
地址: | 710100 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 icmp 差错 报文 快速 生成 方法 | ||
技术领域
本发明涉及一种ICMP差错报文快速生成方法,属于卫星通信中差错报文生成的技术领域。
背景技术
IP提供了无连接、不可靠和无确认的数据报交付机制,在有效利用网络资源的同时也带来了两个问题,一是缺少差错控制机制;二是没有设计辅助的主机管理和查询机制。为了解决这两个问题,ICMP(Internet Control Message Protocol,即Internet控制报文协议)被提出,用以对网络中的源路由器报告差错信息或提供需要查询的信息。ICMP是互联网控制报文协议,在发送方与接收方之间传递出错信息及查询报文信息,ICMP协议根据其功能可以分为两大类:一类是ICMP差错报文,一类是查询报文。其中ICMP差错报文是如果IP数据报文在互联网传输过程中出错,用以给发送方报告错误,在IP交换系统中,如果查表失败,则需要给发送方报告ICMP目的地不可达报文。
在高速查表的交换网络中,需将不定长的IP数据报拆分为几个甚至几百个数量不等的定长信元数据进行高速查表,若信元数据查表失败,则需生成ICMP目的地不可达差错报文,按照现有的处理方法:一、将信元数据重组为拆分前的原始IP数据报,由IP数据报提取生成ICMP报文所需信息,按照ICMP目的地不可达报文格式生成ICMP报文,该方法额外增加了信元重组处理流程,不仅不能及时对错误报文进行响应,且需要较多的软硬件资源;二、由于ICMP目的地不可达报文仅需要原始IP数据报的部分信息,可以在IP数据报拆分前将IP数据报中生成ICMP报文所需信息单独存储,若查表失败可直接提取该信息,该方法可以快速响应,但在交换网络中,一般情况下IP数据报查表失败的概率不大,若每一个IP数据报都存储部分信息,所需缓存空间太大,降低了系统的资源利用率;三、将信元数据视作特殊IP数据报,对每个错误信元都生成ICMP报文,由于信元数据不一定包含原始IP数据报的全部信息,因此生成的ICMP报文无法准确反馈错误信息,且如果每个信元都生成ICMP报文,大大增加错误报文数量,使链路中正常通信的IP数据报传输效率降低,导致链路吞吐率下降。因此,在高速查表网络中需要研究一种针对查表异常情况快速生成ICMP差错报文的方法。
发明内容
本发明的技术解决问题:针对高速查表网络中信元数据查表失败生成ICMP差错报文时需进行信元重组的问题,提出一种ICMP差错报文快速生成方法,根据信元数据的首部信息直接进行判断,提取所需的信元数据载荷中的原始IP数据报信息,生成ICMP目的地不可达差错报文。
本发明的技术解决方案:一种ICMP差错报文快速生成方法,步骤如下:
(1)从IP交换网络中接收IP数据报;
(2)对步骤(1)接收的IP数据报的首部信息进行判断,将步骤(1)中首部信息正确的IP数据报拆分为适用于高速查表的固定长度的信元数据;
(3)根据高速查表网络的转发表信息,对步骤(2)所得到的信元数据进行查表,若在转发表中无法查找到信元数据中目的IP地址所对应的信息,转到步骤(4),若在转发表中可以查找到信元数据中目的IP地址所对应的信息,转到步骤(5);
(4)对步骤(3)在转发表中无法查找到的信元数据进行路由表查表,若在路由表中无法查找到信元数据中目的IP地址所对应的信息,转到步骤(6),若在路由表中可以查找到信元数据中目的IP地址所对应的信息,转到步骤(5);
(5)根据转发表或路由表中查找到信元数据中目的IP地址所对应的信息,将步骤(3)或步骤(4)中查表成功的信元数据输出
(6)记录信元数据在步骤(4)中查找路由表失败的具体错误类型,将与该错误类型相应的ICMP错误类型字段及代码字段填充至该信元数据的第63、64字节,转到步骤(7);
(7)接收步骤(6)中填充ICMP错误类型字段及代码字段后的信元数据,该信元数据包括首部信息、载荷及尾部信息,其中首部信息包括头标识、尾标识和拆分序号,对接收到的第1个信元数据首部信息进行判断,若该信元数据首部信息中头标识和尾标识同时为“1”,转到步骤(8),若信元数据首部信息中头标识和尾标识不同时为“1”,转到步骤(10);
(8)接收步骤(7)中满足条件信元数据,提取该信元数据第63字节和第64字节中的ICMP错误类型字段及代码字段和信元数据载荷中的IP首部信息中的首部长度字段,转到步骤(9);
(9)根据步骤(8)的首部长度字段,提取信元数据载荷中的IP首部信息、IP载荷前8字节信息,转到步骤(18);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安空间无线电技术研究所,未经西安空间无线电技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410360267.1/2.html,转载请声明来源钻瓜专利网。