CN1505346A - 处理私有网路经ip切割的封包的闸道器***及方法 - Google Patents
处理私有网路经ip切割的封包的闸道器***及方法 Download PDFInfo
- Publication number
- CN1505346A CN1505346A CNA021543976A CN02154397A CN1505346A CN 1505346 A CN1505346 A CN 1505346A CN A021543976 A CNA021543976 A CN A021543976A CN 02154397 A CN02154397 A CN 02154397A CN 1505346 A CN1505346 A CN 1505346A
- Authority
- CN
- China
- Prior art keywords
- package
- cutting
- gateway
- project
- napt
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
处理私有网路经IP切割的封包的闸道器***及方法,当一闸道器由私有网路收到一资料流经IP切割的第一封包时,依一般NAPT转换规则处理,将封包的相关资料、转换的闸道器地址及转换后的来源接口记录至一NAPT表格的一NAPT项目录至一切割表格的一切割项目中,及将封包上的IP识别变更为对应封包的切割表格的切割项目的索引值;当同一组经IP切割的其他封包经过闸道器时,以封包上的资料来查询封包切割表格,以找出对应的切割项目,由切割项目所记录的NAPT索引值,撷取NAPT表格的对应NAPT项目,依据该NAPT项目记录,将封包来源地址转换为闸道器地址及将封包的IP识别变更为对应封包的切割表格的切割项目的索引值。
Description
技术领域
本发明是关于闸道器传递经IP切割的封包的技术,尤指一种处理私有网路经IP切割的封包的闸道器***及方法。
背景技术
一般在IP网路中,当一封包送到IP层时,若其封包长度大于最大传递单元(Maximum Transmission Unit,MTU)时,必须经过IP切割(IPFragmentation)后方能透过介面传递,图1A显示一封包经过IP切割后所形成的三个IP封包,图1B显示该三个IP封包的识别栏位(Identification)、及来源位置栏位(Source Address)为相同的值,以表示该三个IP封包是由同一封包经过IP切割而获得,而旗标栏位(Flags)中的MF(More Fragments)比特为“1”表该IP封包还有后续同一组被切割的IP封包,为“0”表该IP封包并无后续同一组被切割的IP封包,切割位移栏位(Fragment Offset)表该IP封包资料在该未经IP切割的封包内的位移,经切割后的一组封包中的第一IP封包的切割位移栏位为0,故由上述的栏位值,目的端的机器便能顺利地重组该封包。
由于网际网路上的机器迅速增加,合法的IP地址不敷使用,故一般在私有网路与网际网路之间是使用一NAPT闸道器(NAPT Gateway)来进行地址的转换,其在进行封包绕送时是采用NAPT(Network Addressand Port Translation)转换方式,来让私有网路中的多台机器共享一个合法的IP地址,然而,某些NAPT闸道器无法正确处理由私有网路送出经过IP切割的封包,或是当私有网路中的两台机器刚好同时送出经IP切割的封包具有相同的识别栏位(Identification)及目的地址时,由图2显示一位于私有网路的第一机器10欲传送一经过IP切割后所形的三个IP封包至第三机器30,该三个IP封包有相同的识别栏位(Identification)及来源地址栏位(Source Address)的值,以表示该三个IP封包是由同一封包经过IP切割而获得,而经由该NAPT闸道器50绕送该三个IP封包时,当该闸道器收到被IP切割的第一封包时,依一般NAPT转换规则处理,而将该封包的来源地址、来源接口、目的地址、目的接口、转换的闸道器合法地址及转换的来源接口予以记录至一NAPT表格的一NAPT项目中,将该封包的来源地址予以转换为该闸道器地址并转换来源接口。
然而,同时若有另一位于该私有网路的第二机器20欲传送一组经IP切割的封包至第三机器30,该组封包的识别栏位(Identification)是由该第二机器20所指定,若其识别栏位值恰巧与第一机器10欲传送至第三机器30的封包的识别栏位相同值时,经由该NAPT闸道器转换后,该组封包的IP标头(IP Header)将具有与机器10送出那组经IP切割的封包相同的来源位置栏位值及识别栏位值,该目的端的第三机器30将无法分辨机器10及机器20二者送出经IP切割的封包,做出正确的重组,亦无法对该第一机器10及第二机器20做出正确的反应,导致目的端机器在收到封包时会产生混淆而无法正确处理的情形,此时会产生问题,因此,故现有NAPT闸道器的设计实有予以改进的必要。
发明人爰因于此,本于积极发明的精神,亟思一种可以解决上述问题的“处理私有网路经IP切割的封包的闸道器***及方法”,几经研究实验终至完成此项发明。
发明内容
本发明的主要自的是在提供一种处理私有网路经IP切割的封包的闸道器***及方法,能解决前述现有技术的各种无法正确处理经IP切割的封包的缺点,及由私有网路的二机器同时发送具有相同识别栏位值的IP切割封包的问题。
依据本发明的一特色,是提出一种处理私有网路经IP切割的封包的闸道器***及方法,是能解决由私有网路的机器传递经IP切割封包到网际网路的问题,及由私有网路的二机器同时发送经IP切割且IP标头(IPHeader)具有相同识别栏位值的封包组到网际网路同一机器的问题,该方法其包括下述步骤:(A)当该闸道器收到由私有网路传来某一组被IP切割的第一封包时,依一般NAPT转换规则处理,而将该封包的来源地址、来源接口、目的地址、目的接口、转换后的来源接口、及闸道器的合法地址予以记录至一NAPT表格的一NAPT项目中,并将该封包的来源地址、IP识别及该NAPT项目的索引予以记录至一切割表格的一切割项目中;(B)将该封包上的IP识别变更为对应该封包的切割表格的切割项目的索引值;(C)当同一组经IP切割的封包经过该闸道器时,以该封包上的来源地址、IP识别来查询该封包切割表格,以找出对应的切割项目,由该切割项目所记录的NAPT索引值,撷取该NAPT表格的对应NAPT项目,再依据该NAPT项目,将该封包的来源地址予以转换为该闸道器的合法地址;以及(D)将该封包上的IP识别变更为对应该封包的切割项目的索引值。
其中,于步骤(A)中,还将该封包的存取时间记录至该NAPT项目中。
其中还包含一步骤(E)以将新的存取时间写入该NAPT项目。
其中,于步骤(D)中,是将该封包上的IP识别变更为对应该封包的切割项目的索引值加上一固定值。
其中还包含一步骤(E)以当同一组经IP切割的最后一个封包经过该闸道器处理后,或是该闸道器逾时未收到同一组经IP切割的其他封包时,将该封包切割表格中对应的切割项目予以回收。
依据本发明的另一特色,是提出一种处理私有网路经IP切割的封包的闸道器***,是能解决由私有网路的机器传递经IP切割封包到网际网路的问题,及由私有网路的二机器同时发送经IP切割且IP标头(IPHeader)具有相同识别栏位值的封包组到网际网路同一机器的问题,其主要包括:位于私有网路中第一机器、第二机器及位于一网际网路的第三机器,该第一机器及第二机器可将欲透过网路传送至该第三机器的封包经IP切割为一组复数个封包后,再予以传送;以及,至少一在该私有网路与纲际网路之间的闸道器,以将由一资料流所传送来的该组被IP切割的复数个封包导向该第三机器;其中,当该闸道器收到某一组被IP切割的第一封包时,依一般NAPT转换规则处理,而将该封包的来源地址、来源接口、目的地址、目的接口、转换的闸道器合法地址及转换后来源接口予以记录至一NAPT表格的一NAPT项目中,并将该封包的来源地址、IP识别及该NAPT项目的索引予以记录至一切割表格的一切割项目中,并将该封包上的IP识别变更为对应该封包的切割项目的索引值;之后,当同一组经IP切割的封包经过该闸这器时,以该封包上的来源地址、、IP识别来查询该封包切割表格,以找出对应的切割项目,由该切割项目所记录的NAPT索引值,撷取该NAPT表格的对应NAPT项目,依据该NAPT项目,将该封包的来源地址予以转换为闸道器合法地址,以及将该封包上的IP识别变更为对应该封包的切割项目的索引值。
其中,当收到被IP切割的第一封包时,该闸道器亦将该封包的存取时间记录至该NAPT项目中。
其中,当同一组经IP切割的封包经过时,该闸道器亦将新的存取时间写入该切割项目。
其中,当同一组经IP切割的封包经过时,该闸道器是将该封包上的IP识别变更为对应该封包的切割项目的索引值加上一固定值。
其中,当同一组经IP切割的最后一个封包经过该闸道器处理后,或是该闸道器逾时未收到同一组经IP切割的其他封包时,该闸道器将该封包切割表格中对应的切割项目予以回收。
由于本发明构造新颖,能提供产业上利用,且确有增进功效,故依法申请发明专利。
附图说明
图1A是一资料封包经由IP切割的示意图;
图1B是一该IP切割后的封包组IP标头各栏位示意图;
图2是已知NAPT闸道器所可能产生问题的示意图;
图3是本发明闸道器传递经IP切割封包的方法的流程图;
图4是本发明传递方法中NAPT表格及切割表格的格式示意图;
图5是本发明传递方法的封包传送过程栏位转换示意图。
具体实施方式
有关本发明的处理私有网路经IP切割的封包的闸道器***及方法的一较佳实施例,请先参照图5所示的***运用架构图,其中包括位于一私有网路中第一机器10及第二机器20、在该私有网路与网际网路之间使用本发明的NAPT闸道器(NAPT Gateway)50及位于一网际网路的第三机器30,该第一机器10及第二机器20可将欲透过网路传送至该第三机器30的封包经IP切割(IP fragmentation)为一组复数个封包后,再予以传送,该NAPT闸道器50将由一资料流所传送来的该组被切割的复数个封包导向该第三机器30。
图3是显示该闸道器50传递经IP切割的封包方法的流程图,首先,于步骤S301中,该闸道器50判断是否一资料流收到一被IP切割的封包,如是则再判断该收到的封包是否为一被IP切割的封包组中的第一封包(步骤S302),其中,如该封包的切割位移栏位(FragmentOffset)的值为0,且旗标(Flags)栏位中的MF(More Fragment)比特为1时,表该封包为该被IP切割的封包组中的第一封包,若切割位移栏位不为0时,则表该封包不是该被IP切割的封包组中的第一封包。
当步骤S302判定该封包为一被IP切割的封包组中的第一封包时,则执行步骤S303依一般NAPT转换规则处理,而将该封包的来源地址(Source Address)、来源接口(Source Port)、存取时间,转换的闸道器50的合法地址、转换后来源接口、目的地址、目的接口予以记录至一NAPT表格的一NAPT项目中,并于步骤S304将该封包的来源地址、IP识别、存取时间及该NAPT项目的索引予以记录至一切割表格的一切割项目中如图4所示。
于步骤S305将该封包上的IP识别变更为对应该封包的切割项目的索引值,该封包上的来源地址变更为该转换的闸道器50的地址,该封包上的来源接口变更为该转换后来源接口。
若于步骤S302中判定该封包不为一被IP切割的封包组中的第一封包时,则执行步骤S306以该封包上的来源地址、IP识别来查询该封包切割表格,以找出对应的切割项目,由该切割项目所记录的NAPT索引值,撷取该NAPT表格的对应NAPT项目,于步骤S307依据该NAPT项目,将该封包的来源地址予以转换为闸道器合法地址;于步骤S308将该封包上的IP识别变更为对应该封包的切割项目的索引值,并将新的存取时间写入该NAPT项目。
步骤S309判断该收到的封包是否为该被IP切割的封包组中的最后一个封包,其是以检视该封包的IP封包标头(IP haed)中的旗标(Flags)栏位的MF(More Fragments)比特,若该MF比特为“0”表该IP封包并无后续的IP封包而为最后一个封包,若步骤S309判定该收到的封包为该被IP切割的封包组中的最后一个封包时,则该闸道器50删除该组封包在切割表格的记录(步骤S310),若步骤S309判定该收到的封包不为该被IP切割的封包组中的最后一个封包,则至步骤S301继续等待接收封包。
又当步骤S301判定没有收到封包时,如已逾一时间仍未收到同一组IP切割的其他封包(步骤S311),则表示封包传递发生错误,故直接执行步骤S310,以删除该组封包在切割表格的记录。
图5是显示依据本发明的处理私有网路经IP切割的封包的闸道器的方法的封包传送过程示意图,在图5中第一机器10及第二机器20同时所传送经IP切割的封包其识别栏位的值相同,若由现有的NAPT闸道器传递该等封包至第三机器30时则会产生问题,然本发明的方法将第一机器10的识别栏位的值转成0001,第二机器20的识别栏位的值转成0002而传递至第三机器30时,则无上述的问题。
综上所述,本发明无论就目的、手段及功效,均异于现有技术的特征,为处理私有网路经IP切割的封包的闸道器的设计上的一大突破。惟应注意的是,上述诸多实施例仅是为了便于说明而举例而已,本发明所主张的权利范围自应以申请专利范围所述为准,而非仅限于上述实施例。
Claims (10)
1.一种处理私有网路经IP切割的封包的闸道器的方法,其特征在于,主要包括下述步骤:
(A)当该闸道器收到被IP切割的第一封包时,依一般NAPT转换规则处理,而将该封包的来源地址、来源接口、目的地址、目的接口、转换的闸道器合法地址及转换后来源接口予以记录至一NAPT表格的一NAPT项目中,并将该封包的来源地址、IP识别及该NAPT项目的索引予以记录至一切割表格的一切割项目中;
(B)将该封包上的IP识别变更为对应该封包的切割项目的索引值;
(C)当同一组经IP切割的封包经过该闸道器时,以该封包上的来源地址、IP识别来查询该封包切割表格,以找出对应的切割项目,由该切割项目所记录的NAPT索引值,撷取该NAPT表格的对应NAPT项目,依据该NAPT项目,将该封包的来源地址予以转换为闸道器合法地址;以及
(D)将该封包上的IP识别变更为对应该封包的切割项目的索引值。
2.如权利要求1所述的处理私有网路经IP切割的封包的闸道器的方法,其特征在于,其中,于步骤(A)中,还将该封包的存取时间记录至该NAPT项目中。
3.如权利要求2所述的处理私有网路经IP切割的封包的闸道器的方法,其特征在于,其中还包含一步骤(E)以将新的存取时间写入该NAPT项目。
4.如权利要求1所述的处理私有网路经IP切割的封包的闸道器的方法,其特征在于,其中,于步骤(D)中,是将该封包上的IP识别变更为对应该封包的切割项目的索引值加上一固定值。
5.如权利要求2所述的处理私有网路经IP切割的封包的闸道器的方法,其特征在于,其中还包含一步骤(E)以当同一组经IP切割的最后一个封包经过该闸道器处理后,或是该闸道器逾时未收到同一组经IP切割的其他封包时,将该封包切割表格中对应的切割项目予以回收。
6.一种处理私有网路经IP切割的封包的闸道器***,其特征在于,主要包括:
一位于网际网路的第一机器;
至少一位于私有网路的第二机器,其可向该第一机器传送经IP切割的封包;以及
一NAPT闸道器,其位于该私有网路与网际网路之间,以转换该第二机器所发经IP切割的封包,传向该第一机器;
其中,当该闸道器收到被IP切割的第一封包时,将该封包的来源地址、来源接口、目的地址、目的接口、转换的闸道器合法地址及转换后来源接口予以记录至一NAPT表格的一NAPT项目中,并将该封包的来源地址、IP识别及该NAPT项目的索引予以记录至一切割表格的一切割项目中,再将该封包上的IP识别变更为对应该封包的切割项目的索引值;之后,同一组经IP切割的封包经过该闸道器时,以该封包上的来源地址、IP识别来查询该封包切割表格,来找出对应的切割项目,由该切割项目所记录的NAPT索引值,撷取该NAPT表格的对应NAPT项目,并依据该NAPT项目,将该封包的来源地址予以转换为闸道器合法地址,且将该封包上的IP识别变更为对应该封包的切割项目的索引值。
7.如权利要求6所述的处理私有网路经IP切割的封包的闸道器***,其特征在于,其中,当收到被IP切割的第一封包时,该闸道器亦将该封包的存取时间记录至该NAPT项目中。
8.如权利要求7所述的处理私有网路经IP切割的封包的闸道器***,其特征在于,其中,当同一组经IP切割的封包经过时,该闸道器亦将新的存取时间写入该切割项目。
9.如权利要求6所述的处理私有网路经IP切割的封包的闸道器***,其特征在于,其中,当同一组经IP切割的封包经过时,该闸道器是将该封包上的IP识别变更为对应该封包的切割项目的索引值加上一固定值。
10.如权利要求6所述的处理私有网路经IP切割的封包的闸道器***,其特征在于,其中,当同一组经IP切割的最后一个封包经过该闸道器处理后,或是该闸道器逾时未收到同一组经IP切割的其他封包时,该闸道器将该封包切割表格中对应的切割项目予以回收。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021543976A CN1241369C (zh) | 2002-12-04 | 2002-12-04 | 处理私有网路经ip切割的封包的闸道器***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021543976A CN1241369C (zh) | 2002-12-04 | 2002-12-04 | 处理私有网路经ip切割的封包的闸道器***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1505346A true CN1505346A (zh) | 2004-06-16 |
CN1241369C CN1241369C (zh) | 2006-02-08 |
Family
ID=34235482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB021543976A Expired - Lifetime CN1241369C (zh) | 2002-12-04 | 2002-12-04 | 处理私有网路经ip切割的封包的闸道器***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1241369C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863158B (zh) * | 2005-10-31 | 2010-04-21 | 华为技术有限公司 | 一种ip报文分片缓存及转发方法 |
-
2002
- 2002-12-04 CN CNB021543976A patent/CN1241369C/zh not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863158B (zh) * | 2005-10-31 | 2010-04-21 | 华为技术有限公司 | 一种ip报文分片缓存及转发方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1241369C (zh) | 2006-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1887753B1 (en) | Device, system and method for analysis of segments in a transmission control protocol (TCP) session | |
EP1528743B1 (en) | Method and apparatus for datastream analysis and blocking | |
EP1497745B1 (en) | Processing a packet using multiple pipelined processing modules | |
CN101051891A (zh) | 一种安全网关中进行安全策略统一处理的方法及装置 | |
EP2316201B1 (en) | Processing of packet fragments | |
Tuexen et al. | Datagram transport layer security (DTLS) for stream control transmission protocol (SCTP) | |
US7171440B2 (en) | System and method for virtual packet reassembly | |
US20070291759A1 (en) | Apparatus and method of splitting a data stream over multiple transport control protocol/internet protocol (tcp/ip) connections | |
CN1193532C (zh) | 高延迟低带宽无线***中的稀疏反馈 | |
CN1968074A (zh) | 网络封包串流仿真方法 | |
CN104320378B (zh) | 拦截网页数据的方法及*** | |
CN1941732A (zh) | 一种无需ip分片重组实现动态流分类的装置和方法 | |
AU2007344308A1 (en) | Method of real-time transmission/reception of data in packets between a server and a client terminal, corresponding server and terminal | |
CN108370354B (zh) | 用于将发送数据从发送器转移到用于处理发送数据的接收器的方法和用于执行该方法的装置 | |
RU2004127594A (ru) | Изменения к tcp/ip | |
CN1505346A (zh) | 处理私有网路经ip切割的封包的闸道器***及方法 | |
CN1271833C (zh) | 无需ip重组分发分组的装置和方法 | |
CN1642142A (zh) | 使用软件和硬件协议栈的多媒体通信设备及其通信方法 | |
CN1303054A (zh) | 虚拟网络装置及其通信方法 | |
CN1848795A (zh) | 在实时通信***中实现大数据包快速转发的方法 | |
CN111988346B (zh) | 数据泄露防护设备及报文处理方法 | |
CN1192559C (zh) | 网络设备中基于接口的数据报类型报文的发送方法 | |
CN1450758A (zh) | 高性能网络入侵检测***和检测方法 | |
CN1471283A (zh) | 虚拟专用拨号网业务数据包的转发方法 | |
CN103067999B (zh) | 包转发方法及装置 |
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 | ||
CX01 | Expiry of patent term |
Granted publication date: 20060208 |
|
CX01 | Expiry of patent term |