一种实现网络互连的系统、方法及装置与流程

文档序号:11779766阅读:271来源:国知局
一种实现网络互连的系统、方法及装置与流程

本申请涉及通信技术领域,尤其涉及一种实现网络互连的系统、方法及装置。



背景技术:

随着分布式网络建设越来越多,各企业和公司总部之间的网络建设日益完善,绝大多数企业更倾向于建设集中的数据中心,而各个数据中心之间跨广域网(wideareanetwork,wan)互联也面临着很多问题。

目前,较为普及的跨广域网互联方式主要有专线和虚拟专用网(virtualprivatenetwork,vpn)两种。专线主要有数字数据网(digitaldatanetwork,ddn)、同步数字体系(synchronousdigitalhierarchy,sdh)等,其优势主要表现在传输质量高、时延短、速率高。但由于大规模跨区域组建专线的建设成本相对较高,故对于企业来说并不适用。vpn主要是在公共网络(internet,简称公网)或者专线上组建通讯线路,不必投入大量的人力和物力去安装和维护wan设备和远程访问设备,可节省建设成本,故在企业中应用较为广泛。其中,实现vpn的最关键部分在于隧道模式,其主要通过在发送端发送的原数据包的外层再封装一层报文作为隧道包头,来对数据包进行加密传输。这种隧道模式的弊端主要体现在:由于广域网约定的最大传输单元(maximumtransmissionunit,mtu)为1500,若内层数据包的报文长度已经为最大mtu长度,那么继续进行封装,增加隧道包头可能导致数据包的分片,相应地,接收端还需进行报文重组,这大大降低了数据包的传输性能。并且,这种对原数据包进行封装增加隧道包头的方式,增加了数据包的长度,导致传输时的带宽利用率较低。因此,采用vpn来实现数据中心的跨广域网互联存在着传输性能较差、带宽利用率低的问题。

综上,目前需要一个新的方案来克服上述问题以实现数据中心的跨广域网互联。



技术实现要素:

本申请实施例提供一种实现网络互连的系统、方法及装置,用以解决现有技术中数据中心的跨广域网互联的方案中存在传输性能较差、带宽利用率低的问题。

本申请实施例提供的一种实现网络互联的系统,包括:均部署于第一数据中心的第一服务器和第一代理服务器、均部署于第二数据中心的第二服务器和第二代理服务器;其中,

第一服务器,用于向第二服务器发送数据包,所述数据包的包头包含五元组;

第一代理服务器,用于接收经路由转发的第一服务器发送给第二服务器的数据包;将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址;将修改后的数据包发送给第二代理服务器;

第二代理服务器,用于将所述修改后的数据包的五元组还原为修改前的五元组;将还原后的数据包发送给第二服务器;

第二服务器,用于接收并响应所述还原后的数据包。

本申请又一实施例提供一种实现网络互连的方法,包括:

接收经路由转发的部署于第一数据中心的第一服务器发送给部署于第二数据中心的第二服务器的数据包,所述数据包的包头包含五元组;

将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址;

将修改后的数据包发送给部署于所述第二数据中心的第二代理服务器,以便所述第二代理服务器将所述修改后的数据包的五元组还原为修改前的五元组并将还原后的数据包发送给第二服务器,由第二服务器响应所述还原后的数据包。

可选地,将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址,包括:

根据接收的经路由转发的第一服务器发送给第二服务器的数据包的五元组,查找包含有源地址为第一服务器的地址、目的地址为第二服务器的地址的第一发送会话信息;

根据预置的会话信息之间的关联关系,确定与所述第一发送会话信息相关联的第一接收会话信息;其中,第一接收会话信息中包含的源地址为第二代理服务器的地址、目的地址为第一代理服务器的地址;

将所述第一服务器发送给第二服务器的数据包的五元组中的目的地址修改为第一接收会话信息中的源地址、源地址修改为第一接收会话信息中的目的地址。

可选地,根据以下方式生成第一发送会话信息和第一接收会话信息:

若首次接收经路由转发的第一服务器发送给第二服务器的数据包,则根据接收的数据包的五元组,生成包含有源地址为第一服务器的地址、目的地址为第二服务器的地址的第一发送会话信息;并,

根据接收的数据包的五元组中的目的地址,确定与所述目的地址相匹配的网段对应的服务器为第二代理服务器;

生成包含有源地址为所述第二代理服务器的地址、目的地址为第一代理服务器的地址的第一接收会话信息;并,

将第一发送会话信息与第一接收会话信息之间建立关联关系。

可选地,若首次接收的经路由转发的第一服务器发送给第二服务器的数据包为用于请求建立传输控制协议(transmissioncontrolprotocol,tcp)连接的数据包,则在将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址之前,所述方法还包括:

将修改前的所述用于请求建立tcp连接的数据包的包头的五元组存储在该数据包中。

可选地,在接收到经路由转发的第一服务器发送给第二服务器的用于请求建立tcp连接的数据包之后,所述方法还包括:

向所述第一服务器反馈一个用于回复tcp连接建立请求的数据包;

接收并缓存第一服务器发送给第一服务器的携带有用户数据信息的数据包;

在接收到由第二代理服务器转发的第二服务器响应的用于回复tcp连接建立请求的数据包之后,将缓存的携带有用户数据信息的数据包经由第二代理服务器发送给所述第二服务器。

可选地,若首次接收的经路由转发的第一服务器发送给第二服务器的数据包为基于用户数据报协议(userdataprotocol,udp)的数据包,则在将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址之前,所述方法还包括:

接收并缓存第一服务器发送给第二服务器的基于udp协议的数据包;并,

生成一个用于请求第二代理服务器创建会话的会话请求数据包并发送给第二代理服务器;

在接收到第二代理服务器发送的用于指示会话创建成功的会话响应数据包之后,将接收并缓存第一服务器发送给第二服务器的基于udp协议的数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址。

本申请又一实施例提供了一种实现网络互连的方法,包括:

接收由第一代理服务器转发的第一服务器发送给第二服务器的数据包;其中,所述数据包的包头的五元组中的源地址被所述第一代理服务器修改为第一代理服务器的地址、目的地址被所述第一代理服务器修改为第二代理服务器的地址;

将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组;

将还原后的数据包发送给第二服务器,以便第二服务器响应所述还原后的数据包;其中,所述第一代理服务器和所述第一服务器部署于第一数据中心,所述第二服务器部署于第二数据中心。

可选地,将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组,包括:

根据由所述第一代理服务器修改后的数据包中的五元组,查找包含源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;

根据预置的会话信息之间的关联关系,确定与所述第二接收会话信息相关联的第二发送会话信息;其中,所述第二发送会话信息中包含的源地址为第二服务器的地址、目的地址为第一服务器的地址;

将修改后的数据包的五元组中的目的地址修改为第二发送会话信息中的源地址、源地址修改为第二发送会话信息中的目的地址。

可选地,若接收由第一代理服务器转发的数据包为用于请求建立tcp连接的数据包,则所述由第一代理服务器转发的数据包中还包括由所述第一代理服务器修改前的数据包的五元组;

根据以下方式生成第二发送会话信息和第二接收会话信息:

根据由所述第一代理服务器修改前的数据包的五元组,生成包含有源地址为第二服务器的地址、目的地址为第一服务器的地址的第二发送会话信息;

根据由第一代理服务器转发的数据包中修改后的五元组,生成包含有源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;

将第二发送会话信息与第二接收会话信息之间建立关联关系。

可选地,若接收由第一代理服务器转发的数据包为基于udp协议的数据包,则在将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组之前,所述方法还包括:

接收所述第一代理服务器发送的用于请求创建会话的会话请求数据包;其中,所述会话请求数据包中包括两种五元组,第一种为首次接收的第一服务器发送给第二服务器的数据包中的五元组,第二种为源地址为第一代理服务器、目的地址为第二代理服务器、传输层协议为指定传输协议的五元组;

根据以下方式生成第二发送会话信息和第二接收会话信息:

根据所述第一种五元组,生成包含有源地址为第二服务器的地址、目的地址为第一服务器的地址的第二发送会话信息;以及,

根据所述第二种五元组,生成包含有源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;并,

将第二发送会话信息与第二接收会话信息之间建立关联关系。

本申请又一实施例提供一种实现网络互连的装置,包括:

接收模块,用于接收经路由转发的部署于第一数据中心的第一服务器发送给部署于第二数据中心的第二服务器的数据包,所述数据包的包头包含五元组;

处理模块,用于将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址;

发送模块,用于将修改后的数据包发送给部署于所述第二数据中心的第二代理服务器。

本申请又一实施例提供一种实现网络互连的装置,包括:

接收模块,用于接收由第一代理服务器转发的第一服务器发送给第二服务器的数据包;其中,所述数据包的包头的五元组中的源地址被所述第一代理服务器修改为第一代理服务器的地址、目的地址被所述第一代理服务器修改为第二代理服务器的地址;

处理模块,用于将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组;

发送模块,用于将还原后的数据包发送给第二服务器,以便第二服务器响应所述还原后的数据包;其中,所述第一代理服务器和所述第一服务器部署于第一数据中心,所述第二服务器部署于第二数据中心。

本申请又一实施例提供一种计算机装置,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序指令时实现本申请实施例任一实现网络互连的方法的步骤。

本申请又一实施例提供一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现本申请实施例任一实现网络互连的方法的步骤。

本申请又一实施例提供一种计算机装置,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序指令时实现本申请实施例任一实现网络互连的方法的步骤。

本申请又一实施例提供一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现本申请实施例任一实现网络互连的方法的步骤。

本申请实施例的有益效果如下:部署于第一数据中心的第一服务器和部署于第二数据中心的第二服务器之间进行通信的数据包,可基于多级代理的方式来实现跨数据中心的传输。其中,部署于第一数据中心的第一代理服务器和部署于第二数据中心的第二代理服务器,可以对需要转发的数据包的包头五元组进行修改或还原,使其能够支持跨数据中心进行传输。相比现有技术,本申请实施例中仅对数据包的包头五元组的地址进行修改,并不会使修改后的数据包达到最大mtu长度,相比现有技术中的隧道模式,能够有效避免数据包的分片和重组,从而改善了数据中心之间跨广域网的数据传输性能,提高了带宽利用率。

附图说明

图1为本申请实施例一提供的实现网络互连的系统的组网示意图;

图2为本申请实施例二提供的实现网络互连的方法流程图;

图3为本申请实施例二提供的实现数据中心跨区域互联的场景示意图;

图4为本申请实施例二提供的服务器e通过代理服务器c和d同服务器f建立tcp连接的过程;

图5为本申请实施例二提供的服务器e与服务器f基于tcp连接进行数据传输过程;

图6为本申请实施例二提供的服务器e通过代理服务器c和d同服务器进行基于udp协议的数据传输过程;

图7为本申请实施例三提供的实现网络互连的装置的结构示意图;

图8为本申请实施例四提供的实现网络互连的装置的结构示意图;

图9为本申请实施例五提供的计算设备的结构示意图;

图10为本申请实施例七提供的计算设备的结构示意图。

具体实施方式

为解决现有技术中数据中心的跨广域网互联的方案中存在传输性能较差、带宽利用率低的问题,本申请提供一种实现网络互连的系统、方法及装置。下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面将通过具体实施例对本申请的方案进行详细描述,当然,本申请并不限于以下实施例。

实施例一

参照图1,为本申请实施例一提供的实现网络互连的系统的组网示意图。该系统中包括均部署于第一数据中心的第一服务器和第一代理服务器、均部署于第二数据中心的第二服务器和第二代理服务器。

第一服务器,用于向第二服务器发送数据包。

其中,第一服务器向第二服务器发送的数据包,可以是基于tcp协议的数据包,也可以是基于udp协议的数据包。其中,tcp协议为面向连接的协议,故第一服务器可以首先向第二服务器发送用于请求建立tcp连接的数据包,在确定tcp连接建立成功之后,基于建立的tcp连接向第二服务器发送携带有用户数据信息的数据包;udp协议为面向非连接的协议,故第一服务器发送给第二服务器的基于udp协议的数据包可直接为携带有用户数据信息的数据包。

具体地,第一服务器发送给第二服务器的数据包包头包含五元组,该五元组中源ip地址为第一服务器的ip地址、源端口为第一服务器的端口、目的ip地址为第二服务器的ip地址、目的端口为第二服务器的端口,传输层协议为tcp协议或udp协议。并且,所述第一服务器和第二服务器的ip地址均为所对应的数据中心所在网段下的地址,即为所对应的数据中心下的内网地址。

第一代理服务器,用于接收经路由转发的第一服务器发送给第二服务器的数据包;将该数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址,并将修改后的数据包发送给第二代理服务器。

这里,第一代理服务器可以部署在第一数据中心的出口网关处,第二代理服务器可以部署在第二数据中心的出口网关处。

其中,修改为的第一代理服务器和第二代理服务器的地址可由实际应用中该数据包在第一代理服务器和第二代理服务器之间的传输方式来预先设置。其中,第一代理服务器可以经由公网将接收的数据包发送给第二代理服务器,那么,上述第一代理服务器和第二代理服务器的地址对应为公网的ip地址。第一代理服务器还可以经由专线将接收的数据包发送给第二代理服务器,那么,上述第一代理服务器和第二代理服务器的地址还可对应为专线中的ip地址。

本申请实施例中为便于阐述,将服务器或代理服务器的ip地址和端口号统称为地址,故本申请中对地址的修改和还原,实际是对ip地址以及端口号的修改和还原。那么,所述将该数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址,即为将该数据包的五元组中的源ip地址修改为第一代理服务器的ip地址、源端口号修改为第一代理服务器的端口号、目的ip地址修改为第二代理服务器的ip地址、目的端口号修改为第二代理服务器的端口号。

第二代理服务器,用于在接收到由第一代理服务器发送的修改后的数据包之后,将修改后的数据包的五元组还原为修改前的五元组,并将还原后的数据包发送给第二服务器。

这里,第二代理服务器可对修改后的数据包的五元组进行还原,得到原第一服务器发送给第二服务器的数据包的五元组,对于第一服务器和第二服务器来说,该数据包中的信息并未改变,以达到透明转发的效果。

第二服务器,用于接收并响应所述还原后的数据包。

由此可见,部署于第一数据中心的第一服务器和部署于第二数据中心的第二服务器之间进行通信的数据包,可基于多级代理的方式来实现跨数据中心的传输。其中,部署于第一数据中心的第一代理服务器和部署于第二数据中心的第二代理服务器,可以对需要转发的数据包的包头五元组进行修改或还原,使其能够支持跨数据中心进行传输。相比现有技术,本申请实施例中仅对数据包的包头五元组的地址进行修改,并不会使修改后的数据包达到最大mtu长度,相比现有技术中的隧道模式,能够有效避免数据包的分片和重组,从而改善了数据中心之间跨广域网的数据传输性能,提高了带宽利用率。。

下面,结合具体实施方式详细说明下第一代理服务器以及第二代理服务器在转发数据包时的处理过程。

具体地,第一代理服务器可根据预先生成的第一发送会话信息和第一接收会话信息,来对数据包的包头五元组进行修改。其中,第一发送会话信息用于标识第一服务器经由第一代理服务器发送出去的数据包的会话信息,即表征针对第一数据中心的出方向的会话信息,第一接收会话信息用于标识第一服务器经由第一代理服务器接收到的数据包的会话信息,即表征针对第一数据中心的入方向的会话信息。相应地,第二代理服务器也可根据预先生成的第二发送信息和第二接收会话信息,来对修改后的五元组信息进行还原。其中,第二发送会话信息用于标识第二服务器经由第二代理服务器发送出去的数据包的会话信息,即表征针对第二数据中心的出方向的会话信息,第二接收会话信息用于标识第二服务器经由第二代理服务器接收到的数据包的会话信息,即表征针对第二数据中心的入方向的会话信息。

这里,所述的会话信息中可包含发送的或接收的数据包的源地址和目的地址其中,源地址包括源ip地址以及源端口号,目的地址包括目的ip地址和目的端口号,当然,上述会话信息中还可包含有传输层协议,对于出方向的会话信息的传输层协议与第一服务器或第二服务器发送的原数据包中五元组的传输层协议相一致,而对于入方向的会话信息中的传输层协议,不一定与原数据包中五元组的传输层协议相一致,还可以为数据包在代理服务器之间的传输过程中所采用的协议。

其中,第一代理服务器修改数据包的包头五元组的具体实施方式如下:

根据接收的经路由转发的第一服务器发送给第二服务器的数据包的五元组,查找包含有源地址为第一服务器的地址、目的地址为第二服务器的地址的第一发送会话信息;

根据预置的会话信息之间的关联关系,确定与第一发送会话信息相关联的第一接收会话信息;其中,第一接收会话信息中包含的源地址为第二代理服务器的地址、目的地址为第一代理服务器的地址;

将所述第一服务器发送给第二服务器的数据包的五元组中的目的地址修改为第一接收会话信息中的源地址、源地址修改为第一接收会话信息中的目的地址。

其中,第二代理服务器将修改后的数据包的五元组还原为修改前的五元组的具体实施方式如下:

根据接收的由第一代理服务器转发的修改后的数据包的五元组,查找包含源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;

根据预置的会话信息之间的关联关系,确定与所述第二接收会话信息相关联的第二发送会话信息;其中,所述第二发送会话信息中包含的源地址为第二服务器的地址、目的地址为第一服务器的地址;

将所述修改后的数据包的五元组中的目的地址修改为第二发送会话信息中的源地址,源地址修改为第二发送会话信息中的目的地址。

具体实施时,对于该数据包的五元组中的传输层协议,第一代理服务器可以不作修改,当然,也可以根据实际需求,修改为任一能够实现该数据包在第一代理服务器和第二代理服务器之间传输的传输层协议,如http协议等,本申请对此不作限定。,若第一代理服务器在将该数据包转发给第二代理服务器的过程中,修改了该数据包的传输层协议,那么该数据包在第一代理服务器和第二代理服务器之间的传输过程,可基于修改后的协议进行调整,并不限定于本申请后文实施例中记载的传输过程。相应地,第二代理服务器在接收到该数据包之后,除还原该数据包五元组中的地址之外,还需根据第二接收会话信息中的传输层协议还原该数据包五元组中的传输层协议。

进一步地,对第一代理服务器和第二代理服务器生成会话信息的过程进行说明:

其中,第一代理服务器生成第一发送会话信息和第一接收信息的具体实施方式包括:

若首次接收经路由转发的第一服务器发送给第二服务器的数据包,则根据接收的数据包的五元组,生成包含有源地址为第一服务器的地址、目的地址为第二服务器的地址的第一发送会话信息;并,

根据接收的数据包的五元组中的目的地址,确定与目的地址相匹配的网段对应的服务器为第二代理服务器;

生成包含有源地址为第二代理服务器的地址、目的地址为第一代理服务器的地址的第一接收会话信息;并,

将第一发送会话信息与第一接收会话信息之间建立关联关系。

其中,第一代理服务器首次接收的经路由转发的第一服务器发送给第二服务器的数据包可以有两种情况,一种为用于请求建立tcp连接的数据包,另一种为基于udp协议的数据包。并且,上述第一代理服务器生成第一发送会话信息和第一接收信息的过程对于这两种情况来说均适用。

需要注意的是,针对上述两种情况,第一代理服务器除执行上述生成第一发送会话信息和第一接收会话信息的处理过程以外,还需执行其它处理过程。相应地,第二代理服务器在这两种情况下生成第二发送会话信息和第二接收会话信息的方式也不同,具体为:

(1)第一种情况:第一代理服务器首次接收的该数据包为用于请求建立tcp连接的数据包。

第一代理服务器还用于:

在将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址之前,将修改前的数据包的五元组保存在该数据包中。

在这种情况下,由于在第一服务器、第一代理服务器、第二代理服务器以及第二服务器之间还未建立起基于tcp连接的会话,故第一代理服务器将修改前的数据包的五元组,也就是该数据包的原五元组信息保存在该数据包中,以便告知第二代理服务器该数据包的修改前的五元组信息。

具体地,该修改前的数据包的五元组可存放在数据包中用于存放用户数据信息的数据区域,而修改后的数据包的五元组除放置在数据包的包头以外,还可存放在该数据区域中。

相应地,第二代理服务器还用于:

根据接收的数据包中保存的修改前的五元组,生成包含有源地址为第二服务器的地址、目的地址为第一服务器的地址的第二发送会话信息;

根据接收到的数据包中修改后的五元组,生成包含有源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;

将第二发送会话信息与第二接收会话信息之间建立关联关系。

(2)第二种情况:第一代理服务器首次接收的经路由转发的第一服务器发送给第二服务器的数据包为基于udp协议的数据包。

第一代理服务器还用于:

在将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址之前,接收并缓存第一服务器发送给第二服务器的基于udp协议的数据包;并,

生成一个用于请求第二代理服务器创建会话的会话请求数据包并发送给第二代理服务器;

在接收到第二代理服务器发送的用于指示会话创建成功的会话响应数据包之后,将接收并缓存第一服务器发送给第二服务器的基于udp协议的数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址。

其中,所述会话请求数据包中包括两种五元组,第一种为首次接收的第一服务器发送给第二服务器的数据包中的五元组,第二种为源地址为第一代理服务器、目的地址为第二代理服务器、传输层协议为指定传输协议的五元组。其中,所述两种五元组可位于所述会话请求数据包的用于存放用户数据信息的数据区域,也可将第一种五元组存放在所述会话请求包的数据区域,第二种五元组存放在所述会话请求包的包头。

相应地,第二代理服务器还用于:

根据所述第一种五元组,生成包含有源地址为第二服务器的地址、目的地址为第一服务器的地址的第二发送会话信息;以及,

根据所述第二种五元组,生成包含有源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;并,

将第二发送会话信息与第二接收会话信息之间建立关联关系。

此外,本申请实施例还提供一种优选实施方式,即第一代理服务器在接收到经路由转发的第一服务器发送给第二服务器的用于请求建立tcp连接的数据包之后,还可以向第一服务器反馈一个用于回复tcp连接建立请求的数据包;

接收并缓存第一服务器发送给第一服务器的携带有用户数据信息的数据包;

在接收到由第二代理服务器转发的第二服务器响应的用于回复tcp连接建立请求的数据包之后,将缓存的携带有用户数据信息的数据包经由第二代理服务器发送给所述第二服务器。

基于上述优选实施方式,第一代理服务器可以将用于请求建立tcp连接的数据包发送给第二代理服务器,请求与第二代理服务器以及第二服务器建立tcp连接的同时,在本地与第一服务器建立tcp连接,进而缓存第一服务器基于tcp连接发送的所有数据包。这样,第一服务器无需等待第二服务器经由多级代理转发过来的用于回复tcp连接建立请求的数据包,也可以提前在本地确定tcp连接成功,进而将基于tcp连接的会话中所需的数据包先发送至第一代理服务器,由第一代理服务器进行缓存,那么后续第一代理服务器在接收到第二服务器响应的用于回复tcp连接建立请求的数据包之后,就可以直接将本地缓存的数据包经由第二代理服务器转发给第二服务器,从而能够有效缩短tcp连接的建立时间,并且提高了基于tcp连接的会话过程中数据包的转发效率,更好地满足了网络互联中的传输加速需求。

实施例二

结合上述实施例一中所述的实现网络互连的系统,本申请实施例二提供了一种实现网络互连的方法,具体可参照图2所示的方法流程图:

步骤201:第一代理服务器接收经路由转发的部署于第一数据中心的第一服务器发送给部署于第二数据中心的第二服务器的数据包,所述数据包的包头包含五元组。

步骤202:第一代理服务器将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址。

步骤203:第一代理服务器将修改后的数据包发送给部署于所述第二数据中心的第二代理服务器。

步骤204:第二代理服务器将由第一代理服务器修改后的数据包中的五元组还原为修改前的五元组。

步骤205:将还原后的数据包发送给第二服务器,以便第二服务器响应所述还原后的数据包。

在具体实施中,若步骤201中第一代理服务器为首次接收经由转发的第一服务器发送给第二服务器的数据包,则在执行步骤202之前,可根据以下方式生成第一发送会话信息和第一接收会话信息:

根据接收的数据包的五元组,生成包含有源地址为第一服务器的地址、目的地址为第二服务器的地址的第一发送会话信息;并,

根据接收的数据包的五元组中的目的地址,确定与所述目的地址相匹配的网段对应的服务器为第二代理服务器;

生成包含有源地址为所述第二代理服务器的地址、目的地址为第一代理服务器的地址的第一接收会话信息;并,

将第一发送会话信息与第一接收会话信息之间建立关联关系。

其中,若首次接收的经路由转发的第一服务器发送给第二服务器的数据包为用于请求建立tcp连接的数据包,则在执行步骤202之前,还可以将修改前的用于请求建立tcp连接的数据包的包头的五元组存储在该数据包中。

并且,还可以向所述第一服务器反馈一个用于回复tcp连接建立请求的数据包,进而可以接收并缓存第一服务器发送给第一服务器的携带有用户数据信息的数据包,并在接收到由第二代理服务器转发的第二服务器响应的用于回复tcp连接建立请求的数据包之后,将缓存的携带有用户数据信息的数据包经由第二代理服务器发送给所述第二服务器。

其中,若首次接收的经路由转发的第一服务器发送给第二服务器的数据包为基于udp协议的数据包,则在执行步骤202之前,第一代理服务器可与第二代理服务器之间创建会话,在会话创建之前,先将接收的第一服务器发送给第二服务器的基于udp协议的数据包缓存在本地,并生成一个用于请求第二代理服务器创建会话的会话请求数据包并发送给第二代理服务器,若后续接收到第二代理服务器发送的用于指示会话创建成功的会话响应数据包,则确定会话创建成功,进而执行步骤202。

进一步地,步骤202中可根据预先生成的第一发送会话信息和第一接收会话信息来修改数据包的五元组,具体包括:

根据接收的经路由转发的第一服务器发送给第二服务器的数据包的五元组,查找包含有源地址为第一服务器的地址、目的地址为第二服务器的地址的第一发送会话信息;

根据预置的会话信息之间的关联关系,确定与所述第一发送会话信息相关联的第一接收会话信息;其中,第一接收会话信息中包含的源地址为第二代理服务器的地址、目的地址为第一代理服务器的地址;

将所述第一服务器发送给第二服务器的数据包的五元组中的目的地址修改为第一接收会话信息中的源地址、源地址修改为第一接收会话信息中的目的地址。

进一步地,第二代理服务器在执行步骤203之前,还可以基于接收的由第一代理服务器转发的数据包中携带的五元组,建立第二发送会话信息和第二接收会话信息。

其中,若接收由第一代理服务器转发的数据包为用于请求建立tcp连接的数据包,则所述由第一代理服务器转发的数据包中还包括由所述第一代理服务器修改前的数据包的五元组,进而第二代理服务器可以根据由第一代理服务器修改前的数据包的五元组,生成包含有源地址为第二服务器的地址、目的地址为第一服务器的地址的第二发送会话信息;根据由第一代理服务器转发的数据包的包头中修改后的五元组,生成包含有源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;将第二发送会话信息与第二接收会话信息之间建立关联关系。

其中,若接收由第一代理服务器转发的数据包为基于udp协议的数据包,则在将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组之前,所述方法还包括:

接收所述第一代理服务器发送的用于请求创建会话的会话请求数据包;其中,所述会话请求数据包中包括两种五元组,第一种为首次接收的第一服务器发送给第二服务器的数据包中的五元组,第二种为源地址为第一代理服务器、目的地址为第二代理服务器、传输层协议为指定传输协议的五元组;

根据以下方式生成第二发送会话信息和第二接收会话信息:

根据所述第一种五元组,生成包含有源地址为第二服务器的地址、目的地址为第一服务器的地址的第二发送会话信息;以及,

根据所述第二种五元组,生成包含有源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;并,

将第二发送会话信息与第二接收会话信息之间建立关联关系。

进一步地,步骤203中可根据预先生成的第二发送会话信息和第二接收会话信息,将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组,具体包括:

根据由所述第一代理服务器修改后的数据包中的五元组,查找包含源地址为第一代理服务器的地址、目的地址为第二代理服务器的地址的第二接收会话信息;

根据预置的会话信息之间的关联关系,确定与所述第二接收会话信息相关联的第二发送会话信息;其中,所述第二发送会话信息中包含的源地址为第二服务器的地址、目的地址为第一服务器的地址;

将修改后的数据包的五元组中的目的地址修改为第二发送会话信息中的源地址、源地址修改为第二发送会话信息中的目的地址。

下面,结合上述实施例一和实施例二记载的内容,以部署于不同区域的数据中心a和数据中心b为例,对两个数据中心实现网络互联的方法进行举例说明。

首先,参照图3,为实现数据中心跨区域互联的场景示意图。假设数据中心a对应的网段为net_a,数据中心b对应的网段为net_b;代理服务器c和代理服务器d分别部署在数据中心a和数据中心b的出口网关处,数据中心a将net_b的路由指向本地代理服务器c的内网ip地址ip_c,数据中心b将net_a的路由指向本地代理服务器d的内网ip地址ip_d,两台代理服务器的公网ip地址分别为eip_c、eip_d,数据中心a的服务器e的内网ip地址为ip_e,数据中心b的服务器f的内网ip地址为ip_f。

具体地,分别针对tcp协议的数据包以及udp协议的数据包,对两数据中心之间实现网络互联的过程进行介绍。

(1)针对tcp协议的ip数据包

首先,参照图4,为数据中心a的服务器e通过代理服务器c和d,同数据中心b的服务器f建立tcp连接的过程,具体流程如下:

步骤401:服务器e向服务器f发送一个用于请求建立tcp连接的synchronous包(syn包),其中,该syn包的包头包含有五元组(ip_e,ip_f,port_e,port_f,proto_tcp)。

步骤402:代理服务器c接收路由转发的由服务器e发送给f的syn包,根据目的ip地址ip_f查找路由,匹配到数据中心b对应的net_b网段,进而查找到部署于数据中心b的出口网关处的代理服务器d。

这里,由于数据中心a的服务器e已将net_b网段的路由指向了本地代理服务器c,故服务器e发送给部署于net_b网段的服务器f的syn包可经路由转发给本地代理服务器c。

步骤403:代理服务器c根据接收到的syn包的包头5元组生成第一发送会话信息s1,其中,第一发送会话信息s1中源ip地址为ip_e,目的ip地址为ip_f,源端口号为port_e,目的端口号为port_f,传输层协议为proto_tcp。

根据查找到的远端代理服务器d的ip地址为eip_d,远端代理端口port_d,以及本地ip地址eip_c和本地代理端口port_c,生成第一接收会话信息s2,其中,第一接收会话信息s2中源ip地址为eip_d,目的ip地址为eip_c,源端口号为port_d,目的端口号为port_c,传输层协议proto_tcp),并将会话信息s1,s2之间建立关联关系。

步骤404:代理服务器c根据syn包的包头五元组,查找到第一发送会话信息s1,进而根据与s1相关联的第一接收会话信息s2,将syn包的原包头五元组(ip_e,ip_f,port_e,port_f,proto_tcp)修改为(eip_c,eip_d,port_c,port_d,proto_tcp),将原包头五元组(ip_e,ip_f,port_e,port_f,proto_tcp)保存在syn包中,将修改后的syn包发给代理服务器d。

这里,由于syn包的报文长度很小,故本申请中通过修改syn包的包头,并将原包头五元组添加至数据包中,由于五元组信息占用的报文长度很小,故本申请中对数据包的修改方式并不会使修改后的数据包达到最大mtu长度,有效避免了数据包的分片和重组。

需要注意的是,代理服务器c在首次接收到syn包之后,将原包头五元组保存在数据包的数据区域,以便对端代理服务器d生成对应的会话信息。后续tcp连接建立成功之后,代理服务器c在转发服务器e基于tcp连接发送的数据包时,代理服务器c可以仅修改数据包的包头,不执行将原包头五元组保存在数据包中的动作。具体tcp连接建立成功之后的数据传输过程,将在后文中详细介绍。

在具体实施中,代理服务器c可以将保存在syn包中的原包头五元组进行加密处理,具体加密过程可参照现有流程,本申请对此不作限定。

步骤405:代理服务器d接收到代理服务器c转发的syn包后,根据syn包中原包头五元组,建立第二发送会话信息s3,其中,s3中源ip地址为ip_f,目的ip地址为ip_e,源端口号为port_f,目的端口号为port_e,传输层协议为proto_tcp;

根据syn包中修改后的五元组,建立第二接收会话信息s4,其中s4中源ip地址为eip_c,目的ip地址为eip_d,源端口号为port_c,目的端口号为port_d,传输层协议为proto_tcp;并将会话信息s3、s4之间建立关联关系。

这里,若syn包经过加密处理,则在接收到syn包之后,可以首先对数据包进行解密处理,并验证数据包的合法性与完整性,具体解密与验证过程可参照现有流程,本申请对此不作限定。

步骤406:代理服务器d根据syn包包头五元组,查找到第二接收信息s4,进而根据与s4相关联的第二发送会话信息s3,将syn包的包头五元组(eip_c,eip_d,port_c,port_d,proto_tcp)修改为(ip_e,ip_f,port_e,port_f,proto_tcp),并经路由转发给服务器f。

步骤407:服务器f在基于tcp协议的端口port_f监听并接收syn包,对syn包进行处理之后,发送用于回复tcp连接建立请求的syn-ack包,其中,syn-ack包的包头包含的五元组为(ip_f,ip_e,port_f,port_e,proto_tcp)。

步骤408:代理服务器d接收经路由转发的syn-ack包,根据syn-ack包的包头五元组,查找第二发送会话信息s3,并根据s3确定关联的第二接收会话信息s4,将syn-ack包的包头五元组(ip_f,ip_e,port_f,port_e,proto_tcp)修改为(eip_d,eip_c,port_d,port_c,proto_tcp),并将修改后的syn-ack包转发给代理服务器c。

步骤409:代理服务器c接收到syn-ack包后,根据syn-ack包的包头五元组,查找第一接收会话信息s2,并根据s2确定关联的第一发送会话信息s1,将syn-ack包的包头五元组(eip_d,eip_c,port_d,port_c,proto_tcp)修改为(ip_f,ip_e,port_f,port_e,proto_tcp),并转发给服务器e。

步骤410:服务器e接收服务器f返回的syn-ack包,进而向服务器f返回用于指示tcp连接建立成功的last-ack包。

图中步骤504为简化流程,具体地,last-ack包的转发流程可参照上述syn包的转发流程(代理服务器c→代理服务器d→服务器e)进行转发,当服务器f接收到服务器e发送的last-ack包后,确定与服务器e的tcp连接成功建立,后续,两服务器之间可基于建立的tcp连接,进行数据包的双向传输。

需要注意的是,这里步骤401至步骤410中tcp连接建立的过程是代理服务器c工作在不完全代理的工作模式下进行的。

较佳的,本申请实施例中,代理服务器还可以工作在完全代理的工作模式下,其中,完全代理的工作模式下相对于不完全代理的工作模式下的tcp连接的建立过程有以下几点不同:

一是,在执行完步骤401之后,代理服务器c在接收到用于请求建立tcp连接的syn包之后,可以立即向服务器e反馈一个用于回复tcp连接建立请求的syn-ack包,在代理服务器d返回服务器f发送的syn-ack包之前,进一步若接收到路由转发的服务器e发送的用于指示tcp连接建立成功的last-ack包以及后续的ack包,则暂时缓存,直到接收到代理服务器d返回服务器f发送的syn-ack包。确定本地代理服务器c与服务器e之间的tcp连接建立成功。这一过程可与步骤402~步骤408并行完成。

二是,在执行完步骤408之后(不执行步骤409~410),代理服务器c将缓存的服务器e发送的用于指示tcp连接建立成功的last-ack包以及后续的ack包经由代理服务器d转发给服务器f。具体转发过程可参照上述流程。

当服务器f接收到服务器e发送的last-ack包后,确定与服务器e的tcp连接成功建立,后续,两服务器之间可基于建立的tcp连接,进行数据包的双向传输。

进一步地,参照图5,为数据中心a的服务器e与数据中心b的服务器f基于tcp连接进行数据传输的过程,具体流程如下:

步骤501:服务器e基于tcp连接向服务器f发送一个携带有用户数据信息的数据包,其中,该数据包的包头为(ip_e,ip_f,port_e,port_f,proto_tcp)。

步骤502:代理服务器c接收路由转发的由服务器e发送给f的该数据包,根据该数据包的包头五元组,查找预先生成的第一发送会话信息s1,并根据s1确定关联的第一接收会话信息s2,将该数据包的包头五元组(ip_e,ip_f,port_e,port_f,proto_tcp)修改为(eip_c,eip_d,port_c,port_d,proto_tcp),并将修改后的该数据包转发给代理服务器d。

具体地,若代理服务器c在本地与服务器e完成tcp建立过程后,已缓存服务器e基于tcp连接发送给服务器f的该数据包,则可以直接将缓存的该数据包进行上述修改并转发给代理服务器d。

步骤503:代理服务器d接收到代理服务器c转发的该数据包后,根据该数据包的包头五元组(eip_c,eip_d,port_c,port_d,proto_tcp),查找预先生成的第二接收会话信息s4,并根据s4确定关联的第二接收会话信息s3,将该数据包的包头五元组(eip_c,eip_d,port_c,port_d,proto_tcp)修改为(ip_e,ip_f,port_e,port_f,proto_tcp),并将修改后的该数据包转发给服务器f。

步骤504:服务器f接收并响应服务器e基于tcp连接发来的数据包。

其中,图中步骤504为简化流程,具体地,服务器f响应的数据包由经由代理服务器d、c转发至数据中心a的服务器e的过程可参照上述数据包的转发流程,不再一一赘述。

基于上述过程,数据中心a的服务器e与数据中心的服务器f可基于建立的tcp连接进行数据包的双向传输,直至建立的tcp连接超时,或者tcp连接被服务器e或f主动断开。

(2)针对udp协议的ip数据包

首先,参照图6,为数据中心a的服务器e通过代理服务器c和d,同数据中心b的服务器f进行基于udp协议的数据传输过程,具体流程如下:

步骤601:服务器e向服务器f发送一个基于udp协议的数据包(简称udp包),其中,该udp包的包头为(ip_e,ip_f,port_e,port_f,proto_udp)。

步骤602:代理服务器c接收路由转发的由服务器e发送给f的udp包,根据目的ip地址ip_f查找路由,匹配到数据中心b对应的net_b网段,进而查找到部署于数据中心b出口网关处的代理服务器d。

步骤603:代理服务器c根据接收到的udp包的包头5元组生成第一发送会话信息s1,其中,会话信息中包含的内容如上一实施例所述,这里不在赘述;

根据查找到的远端代理服务器d,确定远端代理ip地址为eip_d,远端代理端口为port_d,进而根据已知的本地ip地址eip_c以及本地代理端口port_c,生成第一接收会话信息s2,并将会话信息s1,s2之间建立关联关系。

步骤604:代理服务器c缓存服务器e发送的udp包,并生成一个用于请求代理服务器d创建会话的会话请求数据包,将该会话请求数据包发送给远端代理服务器d。

其中,该会话请求数据包中包含有两种五元组,第一种为udp包的原包头五元组(ip_e,ip_f,port_e,port_f,proto_udp),第二种为由代理服务器c构造的数据包的五元组(eip_c,eip_d,port_c,port_d,proto_udp),这两个五元组可按照协议约定格式保存在数据包的数据区域中。并且,该会话请求数据包的包头可按照确定的能够实现代理服务器c和代理服务器e之间的数据传输的传输层协议进行封装。

在具体实施中,代理服务器c在接收到代理服务器d返回的用于指示会话建立成功的应答数据包之前,可以将接收的经路由转发的服务器e发送的与该udp会话相关的数据包缓存在本地。并且,代理服务器c可以将保存在数据包的数据区域的两个五元组进行加密处理,具体加密过程可参照现有流程,本申请对此不作限定。

这里,通过将原udp包保存在本地,重新生成一个包含有由代理服务器c构造的五元组以及原udp包的包头五元组的数据包,由于该数据包仅包含两个五元组,五元组信息占用的报文长度很小,故本申请中对数据包的处理方式并不会使处理后的数据包达到最大mtu长度,从而有效避免了数据包的分片和重组。并且,通过生成的数据包中的两个五元组,代理服务器d可以生成会话信息,以实现数据包在代理服务器c和d之间的转发。

步骤605:代理服务器d接收到代理服务器c转发的udp包后,根据udp包中原包头五元组,生成第二发送会话信息s3;

根据由代理服务器c构造的数据包的五元组,生成第二接收会话信息s4,并将会话信息s3、s4之间建立关联关系。

步骤606:代理服务器d发送用于指示会话创建成功的会话响应数据包给代理服务器c。

步骤607:代理服务器c接收到代理服务器d发送的应答数据包后,确定针对服务器e发起的udp会话已在代理服务器d中成功建立。

步骤608:代理服务器c将本地缓存的服务器e发送给f的udp包转发给代理服务器d。

具体地,首先根据udp包的包头五元组,查找第一发送会话信息s1,进而确定与s1相关联的第一接收会话信息s2,将udp包的包头五元组(ip_e,ip_f,port_e,port_f,udp)修改为(eip_c,eip_d,port_c,port_d,udp),并将修改后的udp包发送给代理服务器d。

这里,还可以对udp包中的数据区域存储的信息进行加密和压缩,具体可参照现有流程,这里不再一一赘述。

步骤609:代理服务器d收到代理服务器c转发的udp包后,根据udp包的包头五元组,查找第二接收会话信息s4,并根据s4确定关联的第二接收会话信息s3,将udp包的包头五元组(eip_c,eip_d,port_c,port_d,proto_udp)修改为(ip_e,ip_f,port_e,port_f,proto_udp),并将修改后的udp包转发给服务器f。

这里,若udp包经过加密以及压缩处理,则在接收到udp包之后,可以首先对数据包进行解密,验证数据包的合法性与完成性,并将数据包中的数据信息进行解压缩,具体解码与解压缩的过程可参照现有流程,本申请对此不作限定。

步骤610:服务器f接收并响应服务器e发来的udp包。

这里,图中所示的步骤610为简化流程,具体地,服务器f响应的数据包也可经由代理服务器d、代理服务器c发送给服务器e,具体在代理服务器中的转发流程与上述流程类似,不再一一赘述。后续,服务器e与服务器f之间交互的数据包,均可经由代理服务器c、d进行转发,直到代理服务器c和代理服务器d之间建立的udp会话超时释放。

此外,本实施例中服务器e和服务器f仅作为举例,具体实施时,数据中心a中多台服务器发送的多个数据包可同时支持经由代理服务器c和d转发至数据中心b中对应的服务器中,其中,代理服务器c用于将多台服务器发送的多个数据包五元组中的内网地址均修改为代理服务器d对应的公网地址,相应地,代理服务器d用于基于预先生成的会话信息将接收的多个数据包五元组进行还原,以便将接收的多个数据包转发给数据中心b中对应的服务器中。具体转发流程可参照上述流程,这里不再赘述。

此外,在实际应用中,除在数据中心的边缘处部署代理服务器之外,还可在公网中对应两个数据中心的边缘接入点处部署代理服务器,比如,在公网中对应数据中心a的边缘接入点部署代理服务器m,对应数据中心b的边缘接入点部署代理服务器n,那么,数据中心a的服务器发送给数据中心b的服务器的数据包,可经由代理c→代理m→代理n→代理d,转发至数据中心b对应的服务器中,具体在多级代理服务器中的转发流程可参照上述流程,这里不再赘述。

基于同一申请构思,本申请实施例中还提供了一种与实现网络互连的方法对应的实现网络互连的装置,由于该装置解决问题的原理与本申请实施例中实现网络互连的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。

实施例三

如图7所示,为本申请实施例三提供的实现网络互连的装置的结构示意图,包括:

接收模块71,用于接收经路由转发的部署于第一数据中心的第一服务器发送给部署于第二数据中心的第二服务器的数据包,所述数据包的包头包含五元组;

处理模块72,用于将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址;

发送模块73,用于将修改后的数据包发送给部署于所述第二数据中心的第二代理服务器。

实施例四

如图8所示,为本申请实施例四提供的实现网络互连的装置的结构示意图,包括:

接收模块81,用于接收由第一代理服务器转发的第一服务器发送给第二服务器的数据包;其中,所述数据包的包头的五元组中的源地址被所述第一代理服务器修改为第一代理服务器的地址、目的地址被所述第一代理服务器修改为第二代理服务器的地址;

处理模块82,用于将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组;

发送模块83,用于将还原后的数据包发送给第二服务器,以便第二服务器响应所述还原后的数据包;其中,所述第一代理服务器和所述第一服务器部署于第一数据中心,所述第二服务器部署于第二数据中心。

实施例五

本申请实施例五还提供了一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(personaldigitalassistant,pda)等。如图9所示,该计算设备可以包括中央处理器(centerprocessingunit,cpu)901、存储器902、输入设备903,输出设备904等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(liquidcrystaldisplay,lcd)、阴极射线管(cathoderaytube,crt)等。

存储器可以包括只读存储器(rom)和随机存取存储器(ram),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储实现网络互连的方法的程序指令。

处理器通过调用存储器存储的程序指令,处理器用于按照获得的程序指令执行:接收经路由转发的部署于第一数据中心的第一服务器发送给部署于第二数据中心的第二服务器的数据包,所述数据包的包头包含五元组;将所述数据包的五元组中的源地址修改为第一代理服务器的地址、目的地址修改为第二代理服务器的地址;将修改后的数据包发送给部署于所述第二数据中心的第二代理服务器,以便所述第二代理服务器将所述修改后的数据包的五元组还原为修改前的五元组并将还原后的数据包发送给第二服务器,由第二服务器响应所述还原后的数据包。

实施例六

本申请实施例六提供了一种计算机存储介质,用于储存为上述实施例五中的计算设备所用的计算机程序指令,其包含用于执行上述实现网络互连的方法的程序。

所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。

实施例七

本申请实施例七还提供了一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(personaldigitalassistant,pda)等。如图10所示,该计算设备可以包括中央处理器(centerprocessingunit,cpu)1001、存储器1002、输入设备1003,输出设备1004等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(liquidcrystaldisplay,lcd)、阴极射线管(cathoderaytube,crt)等。

存储器可以包括只读存储器(rom)和随机存取存储器(ram),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储实现网络互连的方法的程序指令。

处理器通过调用存储器存储的程序指令,处理器用于按照获得的程序指令执行:接收由第一代理服务器转发的第一服务器发送给第二服务器的数据包;其中,所述数据包的包头的五元组中的源地址被所述第一代理服务器修改为第一代理服务器的地址、目的地址被所述第一代理服务器修改为第二代理服务器的地址;将由所述第一代理服务器修改后的数据包中的五元组还原为修改前的五元组;将还原后的数据包发送给第二服务器,以便第二服务器响应所述还原后的数据包;其中,所述第一代理服务器和所述第一服务器部署于第一数据中心,所述第二服务器部署于第二数据中心。

实施例八

本申请实施例八提供了一种计算机存储介质,用于储存为上述实施例七中的计算设备所用的计算机程序指令,其包含用于执行上述实现网络互连的方法的程序。

所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1