CN101540729A - 数据传输方法和装置 - Google Patents
数据传输方法和装置 Download PDFInfo
- Publication number
- CN101540729A CN101540729A CN200910135071A CN200910135071A CN101540729A CN 101540729 A CN101540729 A CN 101540729A CN 200910135071 A CN200910135071 A CN 200910135071A CN 200910135071 A CN200910135071 A CN 200910135071A CN 101540729 A CN101540729 A CN 101540729A
- Authority
- CN
- China
- Prior art keywords
- message
- data message
- destination address
- physical link
- described data
- 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.)
- Pending
Links
Images
Abstract
本发明提供一种数据传输方法和装置。该方法包括:接收数据报文,该数据报文包括第一目的地址;若确定所述数据报文为通用路由封装报文,且传输数据报文的当前物理链路中断,则将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;根据该第二目的地址转发所述数据报文。通过本发明,当物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的端地址,从而使中断链路的数据从另一个未中断链路通过并最终到达用户,保证了数据传输的可靠性。
Description
技术领域
本发明涉及通信网络技术,特别涉及一种数据传输方法和装置。
背景技术
现有网络中,随着网络规模的扩大以及网络应用的不断深入,使用通用路由封装(GRE:Generic Routing Encapsulation)来构建虚拟个人网络(VPN:Virtual Private Network)的三层隧道(Tunnel),使隧道两端的用户能够通过公有网络传输私有信息的应用越来越广泛。
在两个网络之间启用GRE隧道,利用公有网络传输数据,用户的带宽必将受到限制。随着用户对信息传输的带宽需求越来越大,需要在两个网络间开启多条GRE隧道来保证用户数据通信的带宽。如图1所示,网络1中的用户通过路由器RouterA、RouterB、RouterC组建的两个GRE VPN隧道(Tunnel0与Tunnel1)与网络2中的用户进行通信。Tunnel0建立在RouterA与RouterB之间的实际物理链路0上,Tunnel1建立在RouterA与RouterC之间的实际物理链路1上。
但发明人在实现本发明的过程中发现现有技术的缺限在于:当某一物理链路,如物理链路1在某处断开的时候,整个Tunnel1的GRE隧道将中断,通过Tunnel1的数据将无法到达对端用户。
发明内容
本发明实施例的目的在于提供一种数据传输方法和装置,以提高数据传输的可靠性。
本发明实施例提供一种数据传输方法,该方法包括:接收数据报文,所述数据报文包括第一目的地址;若确定该数据报文为通用路由封装报文,且传输该数据报文的当前物理链路中断,则将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;根据该第二目的地址转发该数据报文。
本发明实施例提供一种数据处理装置,该装置包括:
数据接收单元,该数据接收单元用于接收数据报文,该数据报文包括第一目的地址;
判断单元,该判断单元用于确定该数据报文为通用路由封装报文,且传输该数据报文的当前物理链路中断;
地址转换单元,若该判断单元确定该数据报文为通用路由封装报文,且传输数据报文的当前物理链路中断,则该地址转换单元用于将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;
数据传送单元,该数据传送单元用于根据转换后的该第二目的地址转发该数据报文。
本发明实施例提供的技术方案,通过在某一物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的端地址,从而使中断链路的数据从另一个正常链路通过并最终到达用户的技术手段,提高了数据传输的可靠性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1是现有技术中GRE备份隧道示意图;
图2是本发明实施例1的数据传输方法流程图;
图3是本发明实施例2的数据传输方法流程图;
图4是本发明实施例3的数据传输装置构成示意图;
图5是本发明实施例4的数据传输装置构成示意图;
图6是本发明实施例4的数据传送单元的构成示意图;
图7是本发明实施例5的数据传输装置应用实例图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明实施例提供一种数据传输方法,如图2所示,该方法包括:接收数据报文,该数据报文包括第一目的地址(见步骤101);若该数据报文为通用路由封装(GRE:Generic Routing Encapsulation)报文,且传输该数据报文的当前物理链路中断,则将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址(见步骤102);根据该第二目的地址转发该数据报文(见步骤103)。
在本实施例中,该数据报文至少携带目的地址,如目的IP地址,此外还可以携带源IP地址等信息。
由上述实施例可知,当某一物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的地址,从而使中断链路的数据从另一个正常链路通过并最终到达用户,提高了数据传输的可靠性。
实施例2
本发明实施例提供一种数据传输方法,如图3所示,该方法包括:
步骤201,接收数据报文,该数据报文包括第一目的地址,该第一目的地址可为目的IP地址,此外,还可包括源IP地址等信息。
步骤202,判断该数据报文是否为通用路由封装(GRE)报文。
在本实施例中,确定数据报文是否为GRE报文的方式可以有多种,某些实施方式中,该数据报文可以包括标识报文类型的报文标识,可根据报文标识来确定该数据报文是否为GRE报文。
步骤203,在步骤202中,若判断结果为是,则不建立会话表,设置该数据报文的转发方式为通过查找路由表转发报文。
在本实施例中,可通过设置标签让该报文在转发时查找路由表找到发送该报文的端口,以将该数据报文发送出去。
步骤204,判断传输数据报文的当前物理链路是否中断;
在本实施例中,传输该数据报文时,可根据预先配置的地址和物理链路的对应关系选择相应的物理链路传输数据报文。因此,当接收到的数据报文的目的地址为该第一目的地址时,则可通过该第一目的地址找到传输该数据报文的当前物理链路,然后通过该当前物理链路传输数据报文。
并且可通过如下方式判断当前物理链路是否中断:通过该当前物理链路发送该GRE报文;若在预设时间内未收到应答,则确定该当前物理链路中断。上述仅为本发明的一个实施例而已,还可采用其他方式进行判断。
步骤205,在步骤204中,若判断结果为是,将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;
在本实施例中,可根据地址转换配置表将该当前中断物理链路对应的第一目的地址替换为未中断物理链路对应的第二目的地址。在本实施例中,可通过将GRE报文传输协议的IP头中的第一目的IP地址替换为第二目的IP地址;
在本实施例中,可预先生成该地址转换配置表,该表可包括当前中断物理链路对应的地址和未中断物理链路对应的地址的对应关系。若该当前中断物理链路对应多条未中断物理链路时,可任意选择一个未中断物理链路对应的地址。步骤206,在预存路由表中查找与该第二目的地址对应的端口;
步骤207,将该数据报文从查找到的端口传送出去,以到达目的服务器。
步骤208,在步骤204中,若判断结果为当前物理链路未中断,则使用该当前物理链路传输该数据报文,即根据该数据报文的目的地址在路由表中查找该目的地址对应的端口,将该数据报文从该端口进行发送。
步骤209,在步骤202中,若判断结果为该数据报文非GRE报文,则可采用根据会话表转发数据的流程来发送该报文及该会话的后续报文。即将该数据报文建立会话表。从会话表中查找目的端地址对应的端口,将该会话的后续报文从该端口转发出去,以达到数据报文的目的服务器。
由上述实施例可知,当接收到的报文为GRE报文时,不建立会话表,通过设置标签使得报文在转发时查询路由表转发报文。当物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的端地址,从而使中断链路的数据从另一个未中断链路通过并最终到达用户,提高了数据传输的可靠性。
实施例3
本发明实施例提供一种数据传输装置,如图4所示,该装置包括数据接收单元301、判断单元302、地址转换单元303和数据传送单元304;其中,该数据接收单元301用于接收数据报文,该数据报文包括第一目的地址;该判断单元302用于确定该数据报文为通用路由封装报文,且传输该数据报文的当前物理链路中断;若该判断单元302确定接收的该数据报文为通用路由封装(GRE)报文,且传输数据报文的当前物理链路中断,则该地址转换单元303用于将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;该数据传送单元304用于根据该第二目的地址转发该数据报文。
在本实施例中,该装置可以单独使用,对接收到的数据报文进行处理。此外,该装置也可与防火墙等网络设备集成在一起作为网络设备使用。
由上述实施例可知,当某一物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的端地址,从而使中断链路的数据从另一个未中断链路通过并最终到达用户,提高了数据传输的可靠性。
实施例4
本发明实施例提供一种数据传输装置,如图5所示,该装置包括数据接收单元301、判断单元302、地址转换单元303和数据传送单元304,其作用与实施例3类似,此处不再赘述。
如图5所示,判断单元302包括类型判断单元401,该类型判断单元401与该数据接收单元301连接,用于判断该数据报文是否为通用路由封装(GRE)报文。此外,该装置还包括设置单元402,若该数据报文为路由封装(GRE)报文,该设置单元402用于设置该数据报文的转发方式为通过查找路由表转发报文。
如图5所示,该判断单元302还包括链路判断单元403,该链路判断单元403用于判断传输该数据报文的当前物理链路是否中断。
在本实施例中,如图6所示,该数据传送单元303可包括查找单元501、发送单元502和存储单元503;其中,该查找单元501用于查找与该转换后的第二目的地址对应的端口;该发送单元502用于将该数据报文从该端口传送;该存储单元503用于储存目的地址与该端口的对应关系。
在本实施例中,该装置可以单独使用,对接收到的数据报文进行处理。此外,该装置可与防火墙等网络设备集成在一起作为网络设备使用。
以下对该装置的工作过程进行详细说明。
该数据传输装置的数据接收单元301接收数据报文,该数据报文包括第一目的地址,此外,还可包括源IP地址等信息。
该判断单元302中的类型判断单元401判断该数据报文是否为通用路由封装(GRE)报文,该类型判断单元401可根据该数据报文中的报文标识进行判断。
若该类型判断单元401中的判断结果为是,则不建立会话表,通知该设置单元402设置该数据报文的转发方式为通过查找路由表转发报文。
该设置单元402设置完成后,该判断单元302中的链路判断单元403判断传输数据报文的当前物理链路是否中断,其中,判断当前物理链路是否中断的方式如实施例2所示,此处不再赘述。
若该链路判断单元403判断当前物理链路中断,则该地址转换单元302将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址,即根据地址转换配置表将该当前中断物理链路对应的第一目的地址替换为未中断物理链路对应的第二目的地址,具体转换方式如实施例2所述,此处不再赘述。
该地址转换单元302将接收的该数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址之后,该数据传送单元303根据该第二目的地址转发该数据报。其中,传送单元303中的查找单元501可在预存的地址转换配置表中查找与该第二目的地址对应的端口;传送单元303中的发送单元502可将该数据报文从查找到的端口传送。这样,可将该数据报文从该端口转发出去,以达到数据报文的目的服务器。
由上述实施例可知,当接收到的报文为GRE报文时,不建立会话表,通过设置标签使得报文在转发时查询路由表转发报文。当某一物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的端地址,从而使中断链路的数据从另一个未中断链路通过并最终到达用户,提高了数据传输的可靠性。
实施例5
以下以该数据传输装置为防火墙为例进行说明。在本发明实施例中,当传输数据报文的物理链路中断后,在GRE隧道通过的防火墙上配置目的地址转换功能,并且通过该防火墙的GRE报文不能创建会话,后续数据报文进行重路由,重新查找接口转发。
如图7所示,使用两条GRE隧道,即隧道0和隧道1连接网络1和网络2。路由器(Router)、交换机(Switch_B)、交换机(Switch_C)部署在网络边缘,作为建立GRE隧道的设备,防火墙(Firewall)作为转发设备。隧道0从路由器Router开始到交换机Switch_B结束,隧道1从路由器Router开始到交换机Switch_C结束。
首先隧道0和隧道1共有设备路由器Router和防火墙Firewall之间的物理链路。然后隧道0通过防火墙Firewall和交换机Switch_B之间的物理链路,隧道1通过防火墙Firewall和交换机Switch_C之间的物理链路。这样,网络1与网络2中的用户可以通过不同的GRE隧道进行通讯,提高了通讯带宽。
假设隧道1在防火墙Firewall和交换机Switch_C之间的物理链路断开,通过该隧道1传输的数据将无法到达Switch_C的物理接口6.6.6.2,这样,无法将pcA的数据报文转发到pcB。
在本发明实施例中,当该防火墙Firewall接收到GRE报文时,不建立会话表,通过设置标签让报文在转发时查找路由表转发。
在本实施例中,在该防火墙Firewall设备上配置地址转换功能,将接口6.6.6.2作为需要转换的IP地址,将接口7.7.7.2作为转换后的IP地址。当该隧道1的数据到达该防火墙Firewall设备时,由于目的地址6.6.6.2已经不可达,为了让报文改走隧道0,该防火墙将该GRE报文的目的地址进行转换,即将GRE报文传输协议的IP头中的目的IP地址6.6.6.2转换为7.7.7.2。此时由于不建立会话,所有GRE报文查找路由表,找到去Switch_B的出接口,从该接口将报文转发出去,此时报文将通过隧道0到达Switch_B。由于GRE报文传输协议的IP头中的源地址和目的地址都合法,设备Switch_B将接收该数据,进行处理并转发。其效果就是通过该隧道1的后续数据将通过该隧道0传输到网络2。
这样,实现了网络1和网络2之间一条GRE隧道中断后,通过该隧道报文仍然可以到达用户,保证数据传输的可靠性。
由上述实施例可知,当接收到的报文为GRE报文时,不建立会话表,通过设置标签使得报文在转发时查询路由表转发报文。当物理链路中断时,将数据报文目的地址转换为另一个未中断物理链路的目的端地址,从而使中断链路的数据从另一个未中断链路通过并最终到达用户,提高了数据传输的可靠性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据传输方法,其特征在于,所述方法包括:
接收数据报文,所述数据报文包括第一目的地址;
若确定所述数据报文为通用路由封装报文,且传输所述数据报文的当前物理链路中断,则将接收的所述数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;
根据所述第二目的地址转发所述数据报文。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二目的地址转发所述数据报文,包括:
查找与所述第二目的地址对应的端口;
将所述数据报文从所述端口传送。
3.根据权利要求1所述的方法,其特征在于,确定所述数据报文为通用路由封装报文后,所述方法还包括:设置所述数据报文的转发方式为通过查找路由表转发报文。
4.根据权利要求1所述的方法,其特征在于,所述数据报文还包括报文标识,所述确定所述数据报文为通用路由封装报文,包括:根据所述报文标识确定所述报文为通用路由封装报文。
5.根据权利要求1所述的方法,其特征在于,所述确定传输数据报文的当前物理链路中断,包括:
通过所述当前物理链路发送所述通用路由封装报文;
若在预设时间内未收到应答,则确定所述当前物理链路中断。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述将接收的所述数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址,包括:
根据地址转换配置表将当前中断物理链路对应的第一目的地址替换为未中断物理链路对应的第二目的地址,所述地址转换配置表包括当前中断物理链路对应的地址和未中断物理链路对应的地址的对应关系。
7.一种数据传输装置,其特征在于,所述装置包括:
数据接收单元,所述数据接收单元用于接收数据报文,所述数据报文包括第一目的地址;
判断单元,所述判断单元用于确定所述数据报文为通用路由封装报文,且传输所述数据报文的当前物理链路中断;
地址转换单元,若所述判断单元确定所述数据报文为通用路由封装报文,且传输数据报文的当前物理链路中断,则所述地址转换单元用于将接收的所述数据报文中的第一目的地址转换为未中断物理链路对应的第二目的地址;
数据传送单元,所述数据传送单元用于根据转换后的所述第二目的地址转发所述数据报文。
8.根据权利要求7所述的装置,其特征在于,所述判断单元包括:
类型判断单元,所述类型判断单元用于判断所述数据报文是否为通用路由封装报文;
链路判断单元,若接收的所述数据报文为通用路由封装报文,所述链路判断单元用于判断传输数据报文的当前物理链路是否中断。
9.根据权利要求7所述的装置,其特征在于,所述数据传送单元包括:
查找单元,所述查找单元用于查找与所述第二目的地址对应的端口;
发送单元,所述发送单元用于将所述数据报文从所述端口传送;
存储单元,所述存储单元用于储存目的地址与所述端口的对应关系。
10.根据权利要求7至9任一项所述的装置,其特征在于,所述装置还包括:
设置单元,若所述数据报文为路由封装报文,所述设置单元用于设置所述数据报文的转发方式为通过查找路由表转发报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910135071A CN101540729A (zh) | 2009-04-22 | 2009-04-22 | 数据传输方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910135071A CN101540729A (zh) | 2009-04-22 | 2009-04-22 | 数据传输方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101540729A true CN101540729A (zh) | 2009-09-23 |
Family
ID=41123724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910135071A Pending CN101540729A (zh) | 2009-04-22 | 2009-04-22 | 数据传输方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101540729A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932406A (zh) * | 2012-09-19 | 2013-02-13 | 邦讯技术股份有限公司 | 实现流量卸载时通过wap方式上网的方法、装置及系统 |
CN105632152A (zh) * | 2014-10-29 | 2016-06-01 | 深圳友讯达科技股份有限公司 | 电力用户用电信息抄读方法、系统及智能互动终端 |
-
2009
- 2009-04-22 CN CN200910135071A patent/CN101540729A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932406A (zh) * | 2012-09-19 | 2013-02-13 | 邦讯技术股份有限公司 | 实现流量卸载时通过wap方式上网的方法、装置及系统 |
CN102932406B (zh) * | 2012-09-19 | 2018-07-27 | 邦讯技术股份有限公司 | 实现流量卸载时通过wap方式上网的方法、装置及系统 |
CN105632152A (zh) * | 2014-10-29 | 2016-06-01 | 深圳友讯达科技股份有限公司 | 电力用户用电信息抄读方法、系统及智能互动终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8065434B2 (en) | Method and device for maintaining routes | |
US6647264B1 (en) | Mobile communication system and method for transmission of connection less packets | |
US7043247B2 (en) | Routing header based routing in internet protocol (IP)-cellular networks | |
CN102055672B (zh) | 一种数据流传输路径的控制方法、装置和路由设备 | |
JP4556592B2 (ja) | ルータ選択方法及びルータ装置 | |
US9497794B2 (en) | Modification of identifier data to identify intermediate devices | |
US6894978B1 (en) | Method and system for operation of a resilient closed communication network without a dedicated protection network segment | |
US20140241173A1 (en) | Method for routing data over a telecommunications network | |
CN102035745B (zh) | 策略路由实现方法、装置及网络设备 | |
JP2023086623A (ja) | 下位アドレス記憶方法を用いたリング網を利用したハンドオーバー | |
AU2002238410A1 (en) | Addressing and routing in wireless mesh networks | |
CN101425942A (zh) | 一种实现双向转发检测的方法、装置及系统 | |
WO2002003720A2 (en) | System and methods for performing a handover between a circuit switched environment and a packet switched environment | |
CN101355486A (zh) | 一种路由切换的方法、设备及系统 | |
CN103023773A (zh) | 多拓扑网络中转发报文的方法、装置和系统 | |
CN102281165A (zh) | 一种基于服务质量的故障检测方法、系统和装置 | |
CN102291305A (zh) | 实现6to4中继路由的方法和设备以及报文转发方法 | |
US8732778B1 (en) | On-demand mobile wireless broadcast video delivery mechanism | |
US20020009088A1 (en) | Systems and methods for negotiating virtual circuit paths in packet switched networks | |
US7796601B1 (en) | Internet protocol data transfer over diverse paths | |
CN101540729A (zh) | 数据传输方法和装置 | |
KR101992869B1 (ko) | Sdn환경에서 멀티 프로토콜 라벨 스위칭을 이용한 서비스별 이동성 관리 방법 및 장치 | |
EP3445008B1 (en) | Dynamic tunnel establishment in a mesh network | |
US20220303864A1 (en) | Selecting a next hop for a data packet | |
EP1259026A1 (en) | Method and device for managing mobile nodes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090923 |