CN104580420B - 一种跨idc的数据传输系统及方法 - Google Patents
一种跨idc的数据传输系统及方法 Download PDFInfo
- Publication number
- CN104580420B CN104580420B CN201410828073.XA CN201410828073A CN104580420B CN 104580420 B CN104580420 B CN 104580420B CN 201410828073 A CN201410828073 A CN 201410828073A CN 104580420 B CN104580420 B CN 104580420B
- Authority
- CN
- China
- Prior art keywords
- idc
- message
- strange land
- forwarding
- forwarding servers
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种跨IDC的数据传输系统,其包括生产者服务器、消费者服务器、本地IDC转发服务器、异地IDC转发服务器、本地路由器、异地路由器;生产者服务器发出的信息通过本地路由器转为数据包后发送到本地IDC转发服务器,本地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到异地IDC转发服务器,异地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到消费者服务器。还提供了一种跨IDC的数据传输方法。
Description
技术领域
本发明涉及互联网数据处理的技术领域,具体地涉及一种跨IDC的数据传输系统及方法,即在本地互联网数据中心(IDC,Internet Data Center)和异地互联网数据中心之间进行信息的交互。
背景技术
数据源和数据宿(本地IDC和异地IDC)之间需要进行大量的消息交互,因此需要建立信息交互服务,为不同服务应用之间提供信息交互渠道,保证双方数据的实时性。
现有的技术方案有如下几种:
1.直接针对不同服务建立连接,各自进行数据同步。
2.建立代理服务,对数据进行统一处理。
现有技术存在的不足为:
方案1需建立大量连接,管理不便,当进行跨IDC传输时需要将大量服务器暴露在外网之中,维护不便,当一方服务变更时,另一方需要相应调整,适应性差。
方案2建立代理服务,增加了灵活性,减少了服务器直接暴露在公网中的危险,但是需要代理服务器集群以保证服务可用性,大幅增加了服务的成本。当进行复杂通信时仍需在数据源和数据宿之间建立网络连接,进行直接通信。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种跨IDC的数据传输系统,其减少了系统损耗,增加大幅增加数据吞吐量和资源利用率,有效提高服器利用率。
本发明的技术解决方案是:这种跨IDC的数据传输系统,其包括生产者服务器、消费者服务器、本地IDC转发服务器、异地IDC转发服务器、本地路由器、异地路由器;生产者服务器发出的信息通过本地路由器转为数据包后发送到本地IDC转发服务器,本地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到异地IDC转发服务器,异地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到消费者服务器;消费者服务器的返回信息通过异地路由器转为数据包后发送到异地IDC转发服务器,异地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到本地IDC转发服务器,本地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到生产者服务器。
还提供了一种跨IDC的数据传输方法,该方法包括以下步骤:
(1)数据中心IDC之间约定数据服务器对应关系,建立服务映射表,同时修改本地路由上的路由表,将异地IDC服务IP映射到本地的转发服务器上;异地IDC也需要修改路由表,与本地相对应;
(2)同时启动本地IDC转发服务器和异地IDC转发服务器,每个转发服务器接收来自生产者服务器的数据包,修改数据包报头,报头添加原始目的地址信息按照规则进行数据包的压缩、过滤,然后发送消息至异地IDC转发服务器;
(3)异地IDC转发服务器读取数据包报文中原始目的地址信息,修改报头及报文,将消息发送到消费者服务器;
(4)消费者服务器响应消息后将返回响应信息;
(5)异地IDC转发服务器读取响应信息,修改数据包报头,报头添加原始目的地址信息按照规则进行数据包的压缩、过滤,然后发送消息至本地IDC转发服务器;
(6)本地IDC转发服务器读取数据包报文中原始目的地址信息,修改报头及报文,将消息发送到生产者服务器。
还提供了一种跨IDC的数据传输方法,该方法包括以下步骤:
(I)生产者服务器发送信息,消息正常发出,dst 20.1.0.1,src 10.0.0.1;
(II)在网关处dst10.1.0.1绑定DPDK Server1的mac1处,消息发送至本地IDC转发服务器;
(III)本地IDC转发服务器处理该消息,消息处理为dst 68.20.1.1,src68.10.1.1,目的mac地址为路由mac地址;
(IV)消息发送至广域网;
(V)消息自广域网接收;
(VI)路由根据IP地址将消息发送到异地IDC转发服务器;
(VII)异地IDC转发服务器接收处理该消息,消息处理为dst 10.1.0.1,src30.1.0.1;
(VIII)消费者服务器接收到消息dst 10.1.0.1,src 30.1.0.1;
(IX)消费者服务器处理消息,返回信息dst 30.1.0.1,src 10.1.0.1;
(X)网关处dst30.1.0.1绑定异地IDC转发服务器的mac1处,消息发送至异地IDC转发服务器;
(XI)异地IDC转发服务器处理该消息,消息处理为dst 68.10.1.1,src68.20.1.1,目的mac地址为路由mac地址;
(XII)消息发送至广域网;
(XIII)消息自广域网接收;
(XIV)路由根据IP地址将消息发送到本地IDC转发服务器;
(XV)本地IDC转发服务器处理消息,消息处理为dst 10.0.0.1,src 20.1.0.1;
(XVI)消息根据IP地址发送至生产者服务器。
本发明利用Linux提供了uio机制可以使网卡运行绕过内核态,减少中断发生,提高网卡效率,提高数据发送能力;在此基础上建立数据转发中心可以将数据集中转发,实现数据跨IDC传输,利用压缩技术提高数据发送能力;在数据发送和接收端同时采用这种架构可以实现数据中心的统一数据交互,大大减少网络传输所需服务器,实现统一管理,有效降低实施及监控的成本;采用uio机制的转发服务器可以直接改写数据包包头,实现代理功能,转发服务器充分利用自身的计算能力;因此减少了系统损耗,增加大幅增加数据吞吐量和资源利用率,有效提高服器利用率。
附图说明
图1为根据本发明的跨IDC的数据传输系统的结构示意图。
图2为根据本发明的跨IDC的数据传输方法的流程图。
图3为根据本发明的本地IDC转发服务器和异地IDC转发服务器所执行步骤的流程图。
具体实施方式
如图1所示,这种跨IDC的数据传输系统,其包括生产者服务器、消费者服务器、本地IDC转发服务器、异地IDC转发服务器、本地路由器、异地路由器;生产者服务器发出的信息通过本地路由器转为数据包后发送到本地IDC转发服务器,本地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到异地IDC转发服务器,异地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到消费者服务器;消费者服务器的返回信息通过异地路由器转为数据包后发送到异地IDC转发服务器,异地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到本地IDC转发服务器,本地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到生产者服务器。
如图2所示,还提供了一种跨IDC的数据传输方法,该方法包括以下步骤:
(1)数据中心IDC之间约定数据服务器对应关系,建立服务映射表,同时修改本地路由上的路由表,将异地IDC服务IP映射到本地的转发服务器上;异地IDC也需要修改路由表,与本地相对应;
(2)同时启动本地IDC转发服务器和异地IDC转发服务器,每个转发服务器接收来自生产者服务器的数据包,修改数据包报头,报头添加原始目的地址信息按照规则进行数据包的压缩、过滤,然后发送消息至异地IDC转发服务器;
(3)异地IDC转发服务器读取数据包报文中原始目的地址信息,修改报头及报文,将消息发送到消费者服务器;
(4)消费者服务器响应消息后将返回响应信息;
(5)异地IDC转发服务器读取响应信息,修改数据包报头,报头添加原始目的地址信息按照规则进行数据包的压缩、过滤,然后发送消息至本地IDC转发服务器;
(6)本地IDC转发服务器读取数据包报文中原始目的地址信息,修改报头及报文,将消息发送到生产者服务器。
还提供了一种跨IDC的数据传输方法,该方法包括以下步骤:
(I)生产者服务器发送信息,消息正常发出,dst 20.1.0.1,src 10.0.0.1;
(II)在网关处dst10.1.0.1绑定DPDK Server1的mac1处,消息发送至本地IDC转发服务器;
(III)本地IDC转发服务器处理该消息,消息处理为dst 68.20.1.1,src68.10.1.1,目的mac地址为路由mac地址;
(IV)消息发送至广域网;
(V)消息自广域网接收;
(VI)路由根据IP地址将消息发送到异地IDC转发服务器;
(VII)异地IDC转发服务器接收处理该消息,消息处理为dst 10.1.0.1,src30.1.0.1;
(VIII)消费者服务器接收到消息dst 10.1.0.1,src 30.1.0.1;
(IX)消费者服务器处理消息,返回信息dst 30.1.0.1,src 10.1.0.1;
(X)网关处dst30.1.0.1绑定异地IDC转发服务器的mac1处,消息发送至异地IDC转发服务器;
(XI)异地IDC转发服务器处理该消息,消息处理为dst 68.10.1.1,src68.20.1.1,目的mac地址为路由mac地址;
(XII)消息发送至广域网;
(XIII)消息自广域网接收;
(XIV)路由根据IP地址将消息发送到本地IDC转发服务器;
(XV)本地IDC转发服务器处理消息,消息处理为dst 10.0.0.1,src 20.1.0.1;
(XVI)消息根据IP地址发送至生产者服务器。
本发明利用Linux提供了uio机制可以使网卡运行绕过内核态,减少中断发生,提高网卡效率,提高数据发送能力;在此基础上建立数据转发中心可以将数据集中转发,实现数据跨IDC传输,利用压缩技术提高数据发送能力;在数据发送和接收端同时采用这种架构可以实现数据中心的统一数据交互,大大减少网络传输所需服务器,实现统一管理,有效降低实施及监控的成本。采用uio机制的转发服务器可以直接改写数据包包头,实现代理功能,转发服务器充分利用自身的计算能力;因此减少了系统损耗,增加大幅增加数据吞吐量和资源利用率,有效提高服器利用率。
另外,该系统还包括本地IDC备份转发服务器、异地IDC备份转发服务器,本地IDC备份转发服务器与本地IDC转发服务器互为备份,异地IDC备份转发服务器与异地IDC转发服务器互为备份。二台互为备份的服务器就可以实现一个代理服务集群的可用性和可靠性。
另外,所述步骤(2)、(5)中修改数据包报头为将数据包报头修改为异地IDC转发服务器的IP。
另外,所述步骤(3)、(6)中修改报头及报文时解压缩,并根据指定规则进行过滤。
另外,如图3所示,本地IDC转发服务器和异地IDC转发服务器均执行以下步骤:
(a)开始;
(b)读取配置;
(c)初始化路由表;
(d)检查网络连接;
(e)开启监听服务;
(f)判断监听服务是否终止,是则执行步骤(m),否则执行步骤(g);
(g)接收报文;
(h)读取路由表;
(i)修改报头;
(j)判断是否进行报文处理,是则执行步骤(l),否则执行步骤(k);
(k)修改报文;
(l)发送报文,执行步骤(g);
(m)结束。
相对于现有技术,本方法有如下创新点:
1.采用uio机制直接改写数据包包头信息,实现转发服务器功能;每个内核绑定到对应网卡上,只完成对应网卡的数据处理和转发,跳过linux系统中内核态的事物处理、状态切换,减少了系统损耗,增加大幅增加数据吞吐量和资源利用率;
2.双转发服务器完成数据中心之间数据传输,有效提高服器利用率(受限于网络吞吐能力,网络通信达到极限而cpu和内存利用率却很低);
3.插件化设计,转发同时完成数据中心压缩、解压、数据筛选分发等功能。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。
Claims (5)
1.一种跨IDC的数据传输系统,其特征在于:其包括生产者服务器、消费者服务器、本地IDC转发服务器、异地IDC转发服务器、本地路由器、异地路由器;生产者服务器发出的信息通过本地路由器转为数据包后发送到本地IDC转发服务器,本地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到异地IDC转发服务器,异地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到消费者服务器;消费者服务器的返回信息通过异地路由器转为数据包后发送到异地IDC转发服务器,异地IDC转发服务器采用uio机制改写数据包的报头并处理后通过广域网发送到本地IDC转发服务器,本地IDC转发服务器根据本地的对照信息将数据包的数据恢复后发送到生产者服务器。
2.根据权利要求1所述的跨IDC的数据传输系统,其特征在于:该系统还包括本地IDC备份转发服务器、异地IDC备份转发服务器,本地IDC备份转发服务器与本地IDC转发服务器互为备份,异地IDC备份转发服务器与异地IDC转发服务器互为备份。
3.一种跨IDC的数据传输方法,其特征在于:该方法包括以下步骤:
(1)数据中心IDC之间约定数据服务器对应关系,建立服务映射表,同时修改本地路由上的路由表,将异地IDC服务IP映射到本地的转发服务器上;异地IDC也需要修改路由表,与本地相对应;
(2)同时启动本地IDC转发服务器和异地IDC转发服务器,每个转发服务器接收来自生产者服务器的数据包,修改数据包报头,报头添加原始目的地址信息按照规则进行数据包的压缩、过滤,然后发送消息至异地IDC转发服务器;
(3)异地IDC转发服务器读取数据包报文中原始目的地址信息,修改报头及报文,将消息发送到消费者服务器;
(4)消费者服务器响应消息后将返回响应信息;
(5)异地IDC转发服务器读取响应信息,修改数据包报头,报头添加原始目的地址信息按照规则进行数据包的压缩、过滤,然后发送消息至本地IDC转发服务器;
(6)本地IDC转发服务器读取数据包报文中原始目的地址信息,修改报头及报文,将消息发送到生产者服务器;
所述步骤(2)、(5)中修改数据包报头为将数据包报头修改为异地IDC转发服务器的IP;
所述步骤(3)、(6)中修改报头及报文时解压缩,并根据指定规则进行过滤。
4.根据权利要求3所述的跨IDC的数据传输方法,其特征在于:本地IDC转发服务器和异地IDC转发服务器均执行以下步骤:
(a)开始;
(b)读取配置;
(c)初始化路由表;
(d)检查网络连接;
(e)开启监听服务;
(f)判断监听服务是否终止,是则执行步骤(m),否则执行步骤(g);
(g)接收报文;
(h)读取路由表;
(i)修改报头;
(j)判断是否进行报文处理,是则执行步骤(l),否则执行步骤(k);
(k)修改报文;
(l)发送报文,执行步骤(g);
(m)结束。
5.一种跨IDC的数据传输方法,其特征在于:该方法包括以下步骤:
(I)生产者服务器发送信息,消息正常发出,dst 20.1.0.1,src 10.0.0.1;
(II)在网关处dst10.1.0.1绑定DPDK Server1的mac1处,消息发送至本地IDC转发服务器;
(III)本地IDC转发服务器处理该消息,消息处理为dst 68.20.1.1,src 68.10.1.1,目的mac地址为路由mac地址;
(IV)消息发送至广域网;
(V)消息自广域网接收;
(VI)路由根据IP地址将消息发送到异地IDC转发服务器;
(VII)异地IDC转发服务器接收处理该消息,消息处理为dst 10.1.0.1,src 30.1.0.1;
(VIII)消费者服务器接收到消息dst 10.1.0.1,src 30.1.0.1;
(IX)消费者服务器处理消息,返回信息dst 30.1.0.1,src 10.1.0.1;
(X)网关处dst30.1.0.1绑定异地IDC转发服务器的mac1处,消息发送至异地IDC转发服务器;
(XI)异地IDC转发服务器处理该消息,消息处理为dst 68.10.1.1,src 68.20.1.1,目的mac地址为路由mac地址;
(XII)消息发送至广域网;
(XIII)消息自广域网接收;
(XIV)路由根据IP地址将消息发送到本地IDC转发服务器;
(XV)本地IDC转发服务器处理消息,消息处理为dst 10.0.0.1,src 20.1.0.1;
(XVI)消息根据IP地址发送至生产者服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410828073.XA CN104580420B (zh) | 2014-12-26 | 2014-12-26 | 一种跨idc的数据传输系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410828073.XA CN104580420B (zh) | 2014-12-26 | 2014-12-26 | 一种跨idc的数据传输系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104580420A CN104580420A (zh) | 2015-04-29 |
CN104580420B true CN104580420B (zh) | 2017-12-15 |
Family
ID=53095577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410828073.XA Active CN104580420B (zh) | 2014-12-26 | 2014-12-26 | 一种跨idc的数据传输系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104580420B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516002B (zh) * | 2015-12-07 | 2019-07-02 | 百度在线网络技术(北京)有限公司 | 数据传输方法及装置 |
CN107483628B (zh) * | 2017-09-12 | 2020-09-18 | 网宿科技股份有限公司 | 基于dpdk的单向代理方法及系统 |
CN113392350B (zh) * | 2021-06-11 | 2023-07-04 | 中国联合网络通信集团有限公司 | 页面路由处理方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1564549A (zh) * | 2004-04-13 | 2005-01-12 | 张晴 | 防垃圾邮件系统 |
CN201044458Y (zh) * | 2006-12-19 | 2008-04-02 | 冲浪平台(北京)网络技术有限公司 | 基于虚拟专用网和分布式存储方式的分布式电子邮件系统 |
CN102647330A (zh) * | 2011-02-17 | 2012-08-22 | 中兴通讯股份有限公司 | 数据传输方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8864532B2 (en) * | 2013-03-15 | 2014-10-21 | Commscope, Inc. Of North Carolina | Communications jacks having low crosstalk and/or solder-less wire connection assemblies |
-
2014
- 2014-12-26 CN CN201410828073.XA patent/CN104580420B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1564549A (zh) * | 2004-04-13 | 2005-01-12 | 张晴 | 防垃圾邮件系统 |
CN201044458Y (zh) * | 2006-12-19 | 2008-04-02 | 冲浪平台(北京)网络技术有限公司 | 基于虚拟专用网和分布式存储方式的分布式电子邮件系统 |
CN102647330A (zh) * | 2011-02-17 | 2012-08-22 | 中兴通讯股份有限公司 | 数据传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104580420A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9736278B1 (en) | Method and apparatus for connecting a gateway router to a set of scalable virtual IP network appliances in overlay networks | |
WO2018133454A1 (zh) | 远程服务访问路径控制方法和相关设备 | |
EP1985076B1 (en) | Techniques for load balancing over a cluster of subscriber-aware application servers | |
US8681776B2 (en) | Methods, systems and computer program products for storing communication session information at a network interface module | |
CN102281180A (zh) | 应用于不同局域网的终端相互通讯的虚拟网卡通讯装置 | |
CA2968964A1 (en) | Source ip address transparency systems and methods | |
US9467374B2 (en) | Supporting multiple IEC-101/IEC-104 masters on an IEC-101/IEC-104 translation gateway | |
CN104486327B (zh) | 页面与长连接服务器间的通信方法及客户端 | |
CN203151742U (zh) | 网络客户端与北斗rdss终端短消息互通系统 | |
CN104580420B (zh) | 一种跨idc的数据传输系统及方法 | |
CN101141281A (zh) | 一种网管和非网关网元通讯的方法 | |
CN102761483B (zh) | 一种不占用ip地址的隧道实现方法、系统及设备 | |
CN107241274A (zh) | 一种物联网集成服务无线路由器和系统 | |
CN102469045A (zh) | 一种提升web安全网关并发性能的方法 | |
CN108200199A (zh) | IPV4 over IPV6隧道场景中的负载均衡系统及方法 | |
CN104113513B (zh) | 一种主机发现方法、装置及系统 | |
CN105262682A (zh) | 一种用于电力数据通信的软件定义网络及其流量疏导方法 | |
CN101621528B (zh) | 基于以太交换机集群管理的会话系统及会话通道实现方法 | |
CN109617815A (zh) | Lte核心网的数据采集系统、方法、装置及终端设备 | |
US11799779B1 (en) | Session-based packet capture | |
CN102427478A (zh) | 构建可叠加服务器的方法以及服务器系统 | |
CN105812272A (zh) | 业务链的处理方法、装置与系统 | |
CN108833284A (zh) | 一种云平台和idc网络的通信方法及装置 | |
CN107145535A (zh) | 即时通信方法及装置和服务器 | |
CN109257444B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |