CN101159694A - 一种ip共享的分布式系统避免分片重组失败的方法 - Google Patents
一种ip共享的分布式系统避免分片重组失败的方法 Download PDFInfo
- Publication number
- CN101159694A CN101159694A CNA2007101872341A CN200710187234A CN101159694A CN 101159694 A CN101159694 A CN 101159694A CN A2007101872341 A CNA2007101872341 A CN A2007101872341A CN 200710187234 A CN200710187234 A CN 200710187234A CN 101159694 A CN101159694 A CN 101159694A
- Authority
- CN
- China
- Prior art keywords
- distributed system
- veneer
- module
- message
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 239000012634 fragment Substances 0.000 title claims description 19
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000013467 fragmentation Methods 0.000 claims description 4
- 238000006062 fragmentation reaction Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 4
- 230000008521 reorganization Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种成本低、易于实现的IP共享的分布式系统避免分片重组失败的方法,包括以下步骤:将具有相同IP地址的业务处理单板归为一组单板;将所有属于同一组的单板依次编号,设为模块号,经过编号的单板设为模块;将IP ID字段划分成模块号和IP Used两部分,计算IP ID的初始值;各单板按照IP ID累加计数的方式依次发送IP报文;目的端接收到IP分片后重组报文。其中,IP ID初始值的计算公式为:ID_init=i<<(16-IdPfxlen),IdPfxlen为IP ID字段的前缀长度。本发明方法对报文传送路径上的转发设备和应用层以及终端应用层没有特别的要求,因而成本较低,易于实现。
Description
技术领域
本发明涉及IP共享的分布式系统领域,尤其涉及一种IP共享的分布式系统避免分片重组失败的方法。
背景技术
网络与通信是当今最热和发展最快的领域之一,为了应付日益繁忙的信息流,网络的速度由几年前的低速链路发展到目前的10Gb/s以上。同时通讯设备的处理能力不断提高,各种大容量节点设备不断出现,单CPU、集中式处理事务已经越来越不能适应市场的需求。如今,各制造商普遍采用分布式处理技术,将通讯业务的处理分散在多个模块、多个CPU上加以处理。
然而,为了给运营商和最终用户提供方便,同时也为了与现有的设备更好的兼容,制造商们仍然希望其分布式处理系统能够只对外暴露少数几个或者仅一个业务IP地址,对于客户端而言,只能见到这些对外暴露的IP地址,或者在客户端看来与之交互的是一台性能十分强劲的服务器。
通常,分布式处理系统可以同时处理多个业务流,每块处理单板预先约定好处理的业务范围;比如通过报文的端口范围来区分每块单板处理的业务;这样,分布式系统发送的报文即使源IP地址相同,也可以通过端口来区分;对于报文的接收处理,我们在分布式系统的外围接口单板上配置业务流分发表,根据IP地址、端口号(有时包括协议字段)来区分业务流,按照分发规则将报文分发到特定的处理单板上。
对于上述的共享IP的分布式处理系统,报文发送所至目的端可能是个纯粹的处理单元也可能是另一个分布式系统;这两种情况下都可能存在这样的问题:接收端接收到的报文可能来自分布式系统的不同业务流,这些来自分布式系统的不同业务流的报文有着相同的IP地址、不同的端口号,它们在源端或者路由转发至接收端的中途被分片,而分片报文除了第一个分片会包含端口信息外,后续分片都没有。因此这些拥有相同IP的分片报文无法在接收端正确重组。
为了避免和解决这个问题,人们常常在发送报文的时候先确定至目的端整条路径的最小mtu即路径mtu值,发送的报文长度小于该mtu值,从而避免发送报文在路径上被分片,这种方式的缺点是,沿该条路径上的所有转发设备都要求支持路径mtu机制,并且要求应用层支持报文按路径mtu封装、发送报文;此外,路由的变化会导致路径mtu的变化,这些变化必须让终端的应用层感知,实现起来会有一定的复杂度并且成本较高。
发明内容
本发明要解决的技术问题是提供一种成本低、易于实现的IP共享的分布式系统避免分片重组失败的方法。
为解决上述技术问题,本发明方法包括如下步骤:
步骤一,将具有相同IP地址的业务处理单板归为一组单板;
步骤二,将所有属于同一组的单板依次编号,设为模块号i,经过编号的单板设为模块;
步骤三,各个模块将IP ID字段划分成模块号和IP Used两部分,并根据公式ID_init=i<<(16-IdPfxlen)计算IP ID的初始值ID_init,式中IdPfxlen为IP ID字段的前缀长度,i的取值满足i<=2^IdPfxlen;
步骤四,各单板按照IP ID累加计数的方式依次发送IP报文;
步骤五,目的端接收到分布式系统发出的IP分片后重组报文。
在所述步骤一中,分布式系统可以分配多个对外IP地址,也可以只有一个IP地址;各个IP地址被多个业务处理单板共享或者被分配至一个业务处理单板。
所述步骤二中,同一组单板依次从1开始编号,不同组的单板允许具有相同的编号。
所述步骤三中,IP ID生成算法可以确保相同IP的不同模块发送的IP报文其IP ID值不会重叠。
本发明IP共享的分布式系统避免分片重组失败的方法,对报文传送路径上的转发设备和应用层以及终端应用层没有特别的要求,因而成本较低,易于实现。
附图说明
图1是本发明应用的分布式系统共享IP模块示意图;
图2是本发明中IP ID字段划分示意图;
图3是本发明中IP ID初始值生成算法流程图;
图4是本发明中分布式系统报文分片示意图;
图5是本发明中分布式系统报文重组示意图;
图6是本发明IP共享的分布式系统避免分片重组失败的方法流程图。
具体实施方式
下面结合附图对本发明的技术方案进行详细说明。
图1是本发明应用的分布式系统共享IP模块示意图,左图部分A1、A2、A3共享一个IP地址,模块编号依次是1、2、3;B1、B2共享一个IP,模块编号依次是1、2。
图2是本发明中IP ID字段划分示意图,协议中IP报头的ID字段共占用16位,IP ID被划分成两部分:高IdPfxlen位部分描述该报文所属模块号i,低位段是ID字段可变部分。
图3是本发明中IP ID初始值生成算法流程图,该算法中的i、bModPfxLen预先配置给各个模块,包括以下步骤:
步骤301,流程开始;
步骤302,读取所属模块号;
步骤303,读取配置的模块前缀长度;
步骤304,根据计算公式进行计算;
步骤305,获得IP ID初始值。
图4和图5是本发明中分布式系统报文分片和重组示意图;图4的B1、B2共享一个IP,编号分别是1、2;B1和B2发送的IP分片经过路由转发发送至M;虽然分片的源IP、目的IP相同,M仍然能够根据报文ID正确的重组。
本发明主要内容是在共享IP的分布式系统中提供有效的IP ID生成策略,解决多处理板的分片在接收端重组不正确的问题;该ID生成策略包括如下:
1)将分布式系统中共享IP的处理板归为一组单板,并依次编号,设为模块号i;每一组单板编号都从1开始;
2)每一组单板配置一个IP ID前缀长度IdPfxlen,IdPfxlen需要满足如下约束条件:
组中单板的模块号i不大于2的IdPfxlen次方,即i<=2^IdPfxlen;
3)单板在IP模块初始化时,按照图3的IP ID初始值生成算法计算出单板的IP ID初始值ID_init,该算法公式为:ID_init=i<<(16-IdPfxlen);
4)IP模块每发送一个IP报文,IP ID的IPUsed字段值加一,该IPUsed字段的初始值为0;
5)如果IP Used字段值溢出,则IP Used字段值重新从0开始计算;
该策略能保证分布式系统共享IP的多块处理单板发出的IP报文不会有IP ID值的重叠。
下面描述IP模块采用本发明的IP ID生成策略后报文的分片重组过程:
1)假设B1和B2是分布式系统中共享IP的两块单板,M是与之通讯的一台主机;分布式系统与M之间的路径mtu值是1500字节,如图4;
2)B1和B2配置的IP地址是201.1.1.1,模块号分别是1、2,两块单板的IP ID前缀长度配成5;M的IP地址是201.1.2.1;
3)按照上述的IP ID生成策略,B1发送的IP报文ID范围是(2048~4095),B2的IP ID范围是(4096~6143);
4)B1和B2向M发送IP报文,报文长度都是4000字节;B1发出的报文被分成3个分片,B2发出的报文同样被分成3片;
5)M收到B1和B2发来的分片报文,由于B1和B2发出的报文IP ID不会出现相同值;按照通用的IP重组算法,B1和B2的分片报文不会在一个重组队列重装;
6)经过重装后,B1和B2的IP报文交由相应模块处理。
图6是本发明IP共享的分布式系统避免分片重组失败的方法流程图,如图所示,本发明方法包括以下步骤:
步骤601,对共享IP的业务单板进行归类,将具有相同IP地址的业务处理单板归为一组单板;
步骤602,将所有属于同一组的单板依次编号,设为模块号i,经过编号的单板设为模块;
步骤603,各个模块将IP ID字段划分成模块号和IP Used两部分,并根据公式ID_init=i<<(16-IdPfxlen)计算IP ID的初始值ID_init,式中IdPfxlen为IP ID字段的前缀长度,IdPfxlen的取值满足i<=2^IdPfxlen;
步骤604,IP ID初始值配置结束,各单板按照IP ID累加计数的方式依次发送IP报文;
步骤605,目的端接收到分布式系统发出的IP分片后重组报文。
本发明所提出的共享IP分布式系统中IP ID分片策略,根据每块单板所属模块号和配置的IP ID前缀长度来计算IP ID的初始值,通过划分IP ID范围有效地避免单板发送的分片报文重组失败;这种IP ID生成策略只是调整IP ID,不需要改动其他协议模块的流程,并且对于报文接收端完全透明,具有很强的实用性。
以上所述的实施例只是本发明方法的一个实现方式描述,该部分的功能完全可以在其他物理实体中实现。在不脱离本发明的精神和范围的情况下,所有的变化和修改都在本发明的保护范围之内。
Claims (5)
1.一种IP共享的分布式系统避免分片重组失败的方法,其特征在于包括如下步骤:
步骤一,将具有相同IP地址的业务处理单板归为一组单板;
步骤二,将所有属于同一组的单板依次编号,设为模块号i,经过编号的单板设为模块;
步骤三,各个模块将IP ID字段划分成模块号和IP Used两部分,并根据公式ID_init=i<<(16-IdPfxlen)计算IP ID的初始值ID_init,式中IdPfxlen为IP ID字段的前缀长度,i的取值应满足i<=2^IdPfxlen;
步骤四,各单板按照IP ID累加计数的方式依次发送IP报文;
步骤五,目的端接收到分布式系统发出的IP分片后重组报文。
2.根据权利要求1所述的IP共享的分布式系统避免分片重组失败的方法,其特征在于:在所述步骤一中,分布式系统分配多个对外IP地址;各个IP地址分别被多个业务处理单板共享。
3.根据权利要求1所述的IP共享的分布式系统避免分片重组失败的方法,其特征在于:在所述步骤一中,分布式系统分配多个对外IP地址;各个IP地址分别被分配至一个业务处理单板。
4.根据权利要求1所述的IP共享的分布式系统避免分片重组失败的方法,其特征在于:在所述步骤一中,分布式系统分配一个对外IP地址,该IP地址被多个业务处理单板共享。
5.根据权利要求1、2、3或4所述的IP共享的分布式系统避免分片重组失败的方法,其特征在于:在所述步骤二中,同一组单板依次从1开始编号,不同组的单板允许具有相同的编号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101872341A CN101159694B (zh) | 2007-11-16 | 2007-11-16 | 一种ip共享的分布式系统避免分片重组失败的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101872341A CN101159694B (zh) | 2007-11-16 | 2007-11-16 | 一种ip共享的分布式系统避免分片重组失败的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101159694A true CN101159694A (zh) | 2008-04-09 |
CN101159694B CN101159694B (zh) | 2011-04-06 |
Family
ID=39307619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101872341A Expired - Fee Related CN101159694B (zh) | 2007-11-16 | 2007-11-16 | 一种ip共享的分布式系统避免分片重组失败的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101159694B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101860487A (zh) * | 2010-05-28 | 2010-10-13 | 中兴通讯股份有限公司 | 互联网协议ip分片报文的转发方法及接口板 |
CN101378549B (zh) * | 2008-09-27 | 2012-01-25 | 华为终端有限公司 | 一种确定标准短信所属长短信的方法、装置和系统 |
CN106101107A (zh) * | 2016-06-16 | 2016-11-09 | 中国科学院半导体研究所 | 一种基于ip地址跳变的碎片化传输技术的保密通信方法 |
US11411892B2 (en) | 2018-03-22 | 2022-08-09 | Huawei Technologies Co., Ltd. | Packet fragment processing method and apparatus and system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100499480C (zh) * | 2003-08-27 | 2009-06-10 | 中兴通讯股份有限公司 | 一种对分片式报文重组和业务分配的方法 |
CN100448225C (zh) * | 2005-09-28 | 2008-12-31 | 北京大学 | 一种无需ip分片重组实现动态流分类的装置和方法 |
CN100420238C (zh) * | 2006-04-12 | 2008-09-17 | 华为技术有限公司 | 一种ip报文分片重组的方法 |
CN101035082B (zh) * | 2007-04-28 | 2010-09-22 | 杭州华三通信技术有限公司 | 分片报文重组方法及接口板 |
-
2007
- 2007-11-16 CN CN2007101872341A patent/CN101159694B/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101378549B (zh) * | 2008-09-27 | 2012-01-25 | 华为终端有限公司 | 一种确定标准短信所属长短信的方法、装置和系统 |
CN101860487A (zh) * | 2010-05-28 | 2010-10-13 | 中兴通讯股份有限公司 | 互联网协议ip分片报文的转发方法及接口板 |
CN106101107A (zh) * | 2016-06-16 | 2016-11-09 | 中国科学院半导体研究所 | 一种基于ip地址跳变的碎片化传输技术的保密通信方法 |
US11411892B2 (en) | 2018-03-22 | 2022-08-09 | Huawei Technologies Co., Ltd. | Packet fragment processing method and apparatus and system |
Also Published As
Publication number | Publication date |
---|---|
CN101159694B (zh) | 2011-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ding | Communication systems | |
Paul et al. | Multicast transport protocols for high speed networks | |
CN102377666B (zh) | 具有平均速率和突发速率控制的基于泛洪的路由协议 | |
US20180176131A1 (en) | Apparatus and methods of routing with control vectors in a synchronized adaptive infrastructure (sain) network | |
US10313089B2 (en) | Method, apparatus, and system for transmitting data in ethernet | |
CN102263697B (zh) | 一种聚合链路流量分担方法和装置 | |
CN100471162C (zh) | 一种发布及处理虚线路信息的方法和供应商边缘设备 | |
CN108965157B (zh) | 数据传输方法、装置、设备及系统 | |
US8532114B2 (en) | Cluster router and cluster routing method | |
CN111711565B (zh) | 面向高速互连蜻蜓+网络的多路径路由方法 | |
CN1921440A (zh) | 检测路径最大传输单元的方法和系统 | |
CN101159694B (zh) | 一种ip共享的分布式系统避免分片重组失败的方法 | |
CN100531215C (zh) | 一种多台网络设备链路聚集的实现方法 | |
CN103916253A (zh) | 一种基于信息中心网络的信息传输方法及其系统 | |
WO2007076728A1 (fr) | Procede et dispositif pour service de transmission utilisant des bus de service de fond de panier | |
EP1104141A3 (en) | System for generating composite packets | |
CN101789949A (zh) | 一种实现负荷分担的方法和路由设备 | |
CN101202634B (zh) | 提高带宽利用率的单板和数据传输系统以及方法 | |
WO2005008965A1 (ja) | 通信システム | |
CN104285413B (zh) | 一种数据包转换装置及方法 | |
CN101102269A (zh) | 一种gprs网络中的数据负载均衡方法 | |
CN1925468B (zh) | 一种互联网组管理协议报告抑制方法和通信网络系统 | |
Cisco | Internetworking Terms and Acronyms | |
CN100550756C (zh) | 一种在spi4.2总线上实现组播的方法 | |
JP5116495B2 (ja) | 光通信システム及び局側装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110406 |