CN102843292A - 一种跨运营商网络的vpn数据处理方法及装置 - Google Patents

一种跨运营商网络的vpn数据处理方法及装置 Download PDF

Info

Publication number
CN102843292A
CN102843292A CN2012102961362A CN201210296136A CN102843292A CN 102843292 A CN102843292 A CN 102843292A CN 2012102961362 A CN2012102961362 A CN 2012102961362A CN 201210296136 A CN201210296136 A CN 201210296136A CN 102843292 A CN102843292 A CN 102843292A
Authority
CN
China
Prior art keywords
data
vpn
application layer
tunnel
equipment
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
Application number
CN2012102961362A
Other languages
English (en)
Other versions
CN102843292B (zh
Inventor
罗俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Electronics Technology Network Security Technology Co ltd
Original Assignee
Chengdu Westone Information Industry Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Westone Information Industry Inc filed Critical Chengdu Westone Information Industry Inc
Priority to CN201210296136.2A priority Critical patent/CN102843292B/zh
Publication of CN102843292A publication Critical patent/CN102843292A/zh
Application granted granted Critical
Publication of CN102843292B publication Critical patent/CN102843292B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及数据通信领域,尤其涉及一种跨运营商网络的VPN数据处理方法及装置。本发明提供双隧道二次封装并采用可靠的TCP或SSL连接,相对于只封装一次的IPSEC隧道,掉包现象会大大减少。本发明通过步骤一创建TUN设备,并在VPN系统中注册为虚拟网卡,然后通过设置虚拟路由,使位于不同电信运营商网络的VPN数据流通过该虚拟网卡等步骤及装置完成本设计,本发明应用于跨运营商网络的VPN数据处理领域。

Description

一种跨运营商网络的VPN数据处理方法及装置
技术领域
本发明涉及数据通信领域,尤其涉及一种跨运营商网络的VPN数据处理方法及装置。
背景技术
目前,随着互联网的发展,用户数量呈现出爆炸性增长,网络带宽承受着越来越大的压力,各运营商纷纷采用QoS技术对不同的应用进行流量控制。基于TCP的HTTP、HTTPS、FTP等主流数据应用得到较好的带宽保障,而基于TCP之外的协议的应用,如UDP或IPSEC等都得不到服务质量方面的保障。特别是在跨运营商网络的时候,这个问题显得尤为突出。IPSEC隧道封装的数据包在不同运营商网络之间进行传输时,掉包和延迟现象严重,几乎不能保障正常的业务运转。由于IPSEC协议本身是面向无连接的,缺乏接收确认、流量控制和超时重传等可靠性保障机制,必须结合其他的网络协议和技术才能解决IPSEC数据报文跨运营商网络传输时丢包和低效的问题
发明内容
本发明的目的在于:提供一种采用双隧道技术跨运营商网络的VPN实现方法,旨在解决现有技术中由于IPSEC协议本身是面向无连接的,导致IPSEC隧道封装的数据包在不同运营商网络之间进行传输时,掉包和延迟现象严重,几乎不能保障正常的业务运转的问题。本发明提供双隧道二次封装并采用可靠的TCP或SSL连接,相对于只封装一次的IPSEC隧道,掉包现象会大大减少。
本发明采用的技术方案如下:
一种跨运营商网络的VPN数据处理方法包括如下步骤:
步骤一:创建TUN设备,并在VPN系统中注册为虚拟网卡,然后通过设置虚拟路由,使的位于不同电信运营商网络的VPN数据流通过该虚拟网卡;
步骤二:运行应用层守护进程通过外网物理网卡与位于不同电信运营商网络的VPN装置建立TCP或SSL连接;
步骤三:TUN设备负责在底层TCP/IP协议栈和应用层守护进程之间转发数据;
步骤四:应用层守护进程在TUN设备与位于不同电信运营商网络的VPN装置之间转发数据;
所述步骤三中TUN设备负责在系统底层TCP/IP协议栈和应用层守护进程之间转发数据具体过程是:
1)                  TUN设备接收数据:应用层守护进程对来自不同电信运营商网络的VPN数据进行一次隧道解封装后发送至TUN设备,该数据通过虚拟网卡送给底层 TCP/IP协议栈进行二次隧道解封装;
2)                  TUN设备发送数据:底层TCP/IP协议栈对通过内网物理网卡接受的到不同电信运营商网络的VPN数据,进行一次隧道封装后通过TUN设备传送给应用层守护进程进行二次隧道封装;
所述步骤四中应用层守护进程在TUN设备与位于不同电信运营商网络的VPN装置之间转发数据具体过程是:
1)                  应用层守护进程接收数据:外网物理网卡接收来自不同电信运营商网络的VPN数据,通过底层TCP/IP协议栈和SOCKET连接将数据传送至应用层守护进程,进行一次隧道解封装处理后发送至TUN设备;
2)                  应用层守护进程发送数据:应用层守护进程接收从TUN设备发送的一次隧道封装数据,进行二次隧道封装处理后,通过底层TCP/IP协议栈、SOCKET连接和外网物理网卡将二次隧道封装数据发送至不同电信运营商网络的VPN装置。
所述步骤四中二次隧道封装是通过不加密的TCP协议或SSL协议进行,TCP协议根据网络的QoS状态进行动态设置,所述协议端口可通过HTTP协议、FTP协议或HTTPS等协议实现。
所述步骤三中一次隧道封装具体过程是:将通过内网物理网卡接收到的原始数据加载IP包头,并进行加密封装成IPSEC隧道模式报文,其中所述IP包头包括本地VPN装置的虚拟网卡IP作为源IP地址、对端VPN装置的虚拟网卡IP作为目的IP地址;
所述步骤三中二次解封装具体过程是将应用层守护进程发送至底层TCP/IP协议栈的数据进行IPSEC包头解封装和解密处理;
所述步骤四中二次隧道封装具体过程是:将通过TUN设备接收到的一次隧道封装数据采用TCP或SSL数据格式进行数据二次隧道封装,封装格式包括加载二次IP包头,所述二次IP包头包括本地VPN装置的IP作为源IP地址、对端不同电信运营商网络VPN装置的IP作为目的IP地址,并通过步骤二中建立的TCP或SSL连接将二次隧道封装后的数据报文发送给不同电信运营商网络的VPN装置;
所述步骤四中一次解封装具体过程是将来自不同电信运营商网络的VPN数据剥离外层的SSL或TCP封装。
一种跨运营商网络的VPN数据处理装置包括
初始化模块,用于创建TUN设备并注册为虚拟网卡,并设置虚拟路由,将到不同电信运营商网络的VPN隧道路由到该虚拟网卡,启动应用层守护进程并与位于不同电信运营商网络的VPN建立TCP或SSL连接;
IPSEC隧道模块,工作在系统底层TCP/IP协议栈,用于对内网物理网卡接受的数据进行一次隧道封装并发送至TUN设备;或者用于对通过TUN设备接受的数据进行二次解封装并发送数据至内网物理网卡;
虚拟网络通道模块,用于通过TUN 设备在系统底层TCP/IP协议栈的IPSEC隧道模块和以应用层守护进程形式存在的应用层隧道模块之间转发数据;
应用层隧道模块,以应用层守护进程的形式存在,用于将从TUN设备接收到的一次隧道封装数据进行二次隧道封装并通过TCP或SSL连接发送到不同电信运营商网络的VPN装置;将通过外网物理网卡、系统底层TCP/IP协议栈和SOCKET连接接收到的来自不同电信运营商网络的VPN数据进行一次解封装后传递给TUN 设备。
所述虚拟网络通道模块用于通过TUN 设备在系统底层TCP/IP协议栈和应用层守护进程之间转发数据的过程是:
1)                  TUN设备接收数据:应用层守护进程对来自不同电信运营商网络的VPN数据进行一次隧道解封装后发送至TUN设备,该数据通过虚拟网卡送给底层 TCP/IP协议栈进行二次隧道解封装;
2)                  TUN设备发送数据:底层TCP/IP协议栈对通过内网物理网卡接受的到不同电信运营商网络的VPN数据,进行一次隧道封装后通过TUN设备传送给应用层守护进程进行二次隧道封装;
所述在应用层进行二次隧道封装,外层隧道可采用TCP协议或SSL协议。TCP协议端口可进行动态设置,配置为QoS较有保障的端口。
所述TUN设备是一种字符型设备,用于应用层和底层之间进行点到点的数据传输。
本发明的突出优点是:本发明通过将系统协议栈底层封装的IPSEC隧道数据报文传递到应用层,再进行一次基于可靠连接协议的封装,构成两层隧道,并通过TCP或SSL连接发送到不同电信运营商网络的VPN装置,因为二层的封装采用的TCP或SSL连接在电信运营商的网络中都是有QoS保障的,从而可以极大地提高IPSEC数据报文跨运营商网络传输的可靠性。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是本发明实现流程图;
图2是本发明数据处理实现模型;
图3是本发明装置原理图
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书(包括任图何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
TUN设备:是注册为虚拟网卡的TUN 设备,TUN是操作系统内核中的虚拟网络设备。不同于普通靠硬件网路板卡实现的设备,这些虚拟的网络设备全部用软件实现,并向运行于操作系统上的软件提供与硬件的网络设备完全相同的功能。TUN模拟了网络层设备,操作第三层数据包比如IP数据包。操作系统通过TUN设备向绑定该设备的用户空间的程序发送数据,反之,用户空间的程序也可以像操作硬件网络设备那样,通过TUN设备发送数据。在后种情况下,TUN设备向操作系统的底层TCP/IP协议栈投递(或“注入”)数据包,从而模拟从外部接受数据的过程。
一次隧道封装具体过程:将通过内网物理网卡接收到的原始数据加载IP包头,并进行加密封装成IPSEC隧道模式报文,其中所述IP包头包括本地虚拟网卡IP作为源IP地址、对端虚拟网卡IP作为目的IP地址。其中本地虚拟网卡IP:指的是本地VPN数据处理装置虚拟网卡的IP地址;对端虚拟网卡IP:指的是不同电信运营商网络的VPN装置的虚拟网卡的IP地址;
二次隧道封装具体过程:将通过TUN设备接收到的一次隧道封装数据采用TCP或SSL数据格式进行数据二次隧道封装,封装格式包括加载二次IP包头,所述二次IP包头包括本地VPN装置的IP作为源IP地址、对端不同电信运营商网络VPN装置的IP作为目的IP地址,并通过步骤二中建立的TCP或SSL连接将二次隧道封装后的数据报文发送给不同电信运营商网络的VPN装置;
一次隧道解封装具体过程:将来自不同电信运营商网络的VPN数据剥离外层的SSL或TCP封装;与二次隧道封装过程是逆向过程。
二次隧道解封装具体过程:将应用层守护进程发送至底层TCP/IP协议栈的数据进行IPSEC包头解封装和解密处理;与一次隧道封装过程是逆向过程。
所述TUN设备是一种字符型设备,用于应用层和底层之间进行点到点的数据传输。
守护进程是指在后台运行而没有终端或者登陆shell与之结合在一起的进程。由于此类程序运行在后台,除非程序异常终止或者人为终止,否则他们将一直运行下去直至系统关闭。一般地,守护进程在系统引导装入时启动,在系统关闭时终止。一个实际运行中的系统一般会有多个这样的守护进程在运行, 
实施例一:图1示出了本发明实施例提供的采用双隧道技术跨运营商网络的VPN实现流程,详述如下:
步骤一:创建TUN设备,并在VPN系统中注册为虚拟网卡,然后通过设置虚拟路由,使的位于不同电信运营商网络的VPN数据流通过该虚拟网卡;
步骤二:运行应用层守护进程通过外网物理网卡与位于不同电信运营商网络的VPN装置建立TCP或SSL连接;
步骤三:TUN设备负责在底层TCP/IP协议栈和应用层守护进程之间转发数据;
步骤四:应用层守护进程在TUN设备与位于不同电信运营商网络的VPN装置之间转发数据;
实施例二:在实施例一基础上,所述步骤三中TUN设备负责在系统底层TCP/IP协议栈和应用层守护进程之间转发数据具体过程是:
1)                  TUN设备接收数据:应用层守护进程对来自不同电信运营商网络的VPN数据进行一次隧道解封装后发送至TUN设备,该数据通过虚拟网卡送给底层 TCP/IP协议栈进行二次隧道解封装;
2)                  TUN设备发送数据:底层TCP/IP协议栈对通过内网物理网卡接受的到不同电信运营商网络的VPN数据,进行一次隧道封装后通过TUN设备传送给应用层守护进程进行二次隧道封装;
实施例三:在实施例一或二基础上,所述步骤四中应用层守护进程在TUN设备与位于不同电信运营商网络的VPN装置之间转发数据具体过程是:
1)                  应用层守护进程接收数据:外网物理网卡接收来自不同电信运营商网络的VPN数据,通过底层TCP/IP协议栈和SOCKET连接将数据传送至应用层守护进程,进行一次隧道解封装处理后发送至TUN设备;
2)                  应用层守护进程发送数据:应用层守护进程接收从TUN设备发送的一次隧道封装数据,进行二次隧道封装处理后,通过底层TCP/IP协议栈、SOCKET连接和外网物理网卡将二次隧道封装数据发送至不同电信运营商网络的VPN装置。
实施例四:在实施例一或二或三基础上,所述步骤四中二次隧道封装是通过不加密的TCP协议或SSL协议进行,TCP协议根据网络的QoS状态进行动态设置,所述协议端口是通过HTTP协议、FTP协议或HTTPS协议等实现。
实施例五:在实施例一至四之一基础上,所述步骤三中一次隧道封装具体过程是:将通过内网物理网卡接收到的原始数据加载IP包头,并进行加密封装成IPSEC隧道模式报文,其中所述IP包头包括本地VPN装置的虚拟网卡的IP作为源IP地址、对端VPN装置的虚拟网卡的IP作为目的IP地址。
实施例六:在实施例一至五之一基础上,所述步骤三中二次隧道解封装具体过程是将应用层守护进程发送至底层TCP/IP协议栈的数据进行IPSEC包头解封装和解密处理。
实施例七:在实施例一至六之一基础上,所述步骤四中二次隧道封装具体过程是:将通过TUN设备接收到的一次隧道封装数据采用TCP或SSL数据格式进行数据二次隧道封装,封装格式包括加载二次IP包头,所述二次IP包头包括本地VPN装置的IP作为源IP地址、不同电信运营商网络VPN装置的IP作为目的IP地址,并通过步骤二中建立的TCP或SSL连接将二次隧道封装后的数据报文发送给不同电信运营商网络的VPN装置。
实施例八:在实施例一至七之一基础上,所述步骤四中一次解封装具体过程将来自不同电信运营商网络的VPN数据剥离外层的SSL或TCP封装。
实施例九:在实施例一至七之一基础上,所述TUN设备是一种字符型设备,用于应用层和底层之间进行点到点的数据传输。
实施例十:基于上述方法的采用双隧道技术跨运营商网络的VPN模型如图2所示:
1)向不同电信运营商网络的VPN装置发送数据过程:
通过将内网物理网卡接收到的原始数据通过底层TCP/IP协议栈进行一次隧道封装,并将封装后的数据通过TUN设备传递到应用层守护进程,通过不加密的TCP协议或SSL协议进行二次隧道封装,构成两层隧道,然后通过SOCKET连接及底层TCP/IP协议栈将封装数据通过外网物理网卡发送至不同电信运营商网络的VPN装置,从而可以极大地提高一次隧道封装数据(IPSEC数据报文)跨运营商网络传输的可靠性。
具体是内网物理网卡接收到内部网络需要通过VPN通道传输的数据之后,将数据传递到底层TCP/IP协议栈处理(通过过程S1、过程S2实现),底层TCP/IP协议栈中对数据进行一次隧道封装(IPSEC封装)之后根据虚拟路由通过虚拟网卡发送,实际上传递到TUN设备(通过过程S3、过程S4实现),通过底层和应用层之间的数据拷贝(内核态-用户态)传递给应用层守护进程(通过过程S5实现),该进程对一次隧道封装(IPSEC数据)进行二次隧道封装,加上TCP或SSL协议头,再通过SOCKET连接调用底层TCP/IP协议栈(通过过程S6、过程S7实现)、外网物理网卡进行数据的物理传输(通过过程S8、过程S9实现);
2)接收不同电信运营商网络的VPN数据的过程:
通过外网物理网卡接收不同电信运营商网络发送的VPN数据,通过底层TCP/IP协议栈、SOCKET连接将外网数据发送至应用层守护进程,进行数据的一次隧道解封装;然后通过TUN设备将一次隧道解封装的数据发送至底层TCP/IP协议栈进行二次隧道解封装,然后通过内网物理网卡发送至本地目的网络。
具体是:外网物理网卡(通过过程R1、过程R2实现)接收到的TCP或SSL连接的数据报文进入底层TCP/IP协议栈后通过SOCKET直接从底层传递给应用层守护进程(通过过程R3实现),该进程进行一次隧道解封装解开外层封装后将数据传递给TUN设备(通过过程R4、过程R5实现),再通过虚拟网卡进入底层TCP/IP协议栈 (通过过程R6、过程R7实现),进行二次隧道解封装(IPSEC隧道解封装),再通过内网物理网卡传递给本地目的网络(通过过程R8、过程R9实现)。
实施例十一:图3则示出了本发明装置,为了便于说明,仅示出了与本发明实施例相关的部分,这些部分可以是软件、硬件或软硬件结合的模块:本发明装置32包括初始化模块321、应用层隧道模块322、虚拟网络通道模块323以及IPSEC隧道模块324。
其中,初始化模块321用于创建TUN设备,将其作为虚拟网卡,并为该虚拟网卡配置虚拟的IP 地址,同时设置虚拟路由使得到位于不同电信运营商网络VPN数据必须通过该虚拟网卡;启动应用层守护进程,与位于不同电信运营商网络的VPN装置建立TCP连接或SSL安全连接;
IPSEC隧道模块324,位于底层TCP/IP协议栈,用于对内网物理网卡发送的数据进行一次隧道封装并发送至TUN设备;或者用于将通过TUN设备接受的数据进行二次隧道解封装并发送数据至内网物理网卡;
虚拟网络通道模块323,通过注册为虚拟网卡的TUN 设备在系统底层TCP/IP协议栈和应用层守护进程之间转发IPSEC数据报文,由IPSEC隧道模块进行封装后的IPSEC数据报文通过该通道进入应用层隧道模块进行外层隧道封装,由应用层隧道剥离外层隧道后的IPSEC数据报文也通过该通道进入底层TCP/IP协议栈的IPSEC隧道模块进行IPSEC隧道的解封装处理;
应用层隧道模块322,以应用层守护进程的形式存在,通过SOCKET监听并接收外网的SSL或TCP连接数据,对接收到的不同电信运营商网络的VPN数据进行一次隧道解封装后传递给TUN 设备;通过TUN设备监听并接受来自内网的经过底层TCP/IP协议栈的IPSEC隧道模块一次隧道封装的数据,加上外层隧道后通过SOCKET继而SSL或TCP连接将数据传输到外网,即用于将从TUN设备接收到的一次隧道封装数据进行二次隧道封装并通过TCP或SSL连接发送到不同电信运营商网络的VPN装置;
其中内网物理网卡将接收到的数据经IPSEC隧道模块处理后发送至虚拟网络通道模块,虚拟网络通道模块将一次封装数据交应用层隧道模块进行二次封装,再通过外网物理网卡发送至不同电信运营商网络的VPN装置。
实施例十二:在实施例十基础上,所述虚拟网络通道模块用于通过TUN 设备在系统底层TCP/IP协议栈和应用层守护进程之间转发数据的过程是:1)TUN设备接收数据:应用层守护进程对来自不同电信运营商网络的VPN数据进行一次隧道解封装后发送至TUN设备,该数据通过虚拟网卡送给底层 TCP/IP协议栈进行二次隧道解封装;2)TUN设备发送数据:底层TCP/IP协议栈对通过内网物理网卡接受的到不同电信运营商网络的VPN数据,进行一次隧道封装后通过TUN设备传送给应用层守护进程进行二次隧道封装。
实施例十三:在实施例十或十一基础上,所述在应用层进行二次隧道封装,外层隧道可采用TCP协议或SSL协议。TCP协议端口可进行动态设置,配置为QoS较有保障的端口。
实施例十四:在实施例十、十一或十二基础上,根据权利要求9所述的一种跨运营商网络的VPN数据处理装置,其特征在于所述TUN设备是一种字符型设备,用于应用层和底层之间进行点到点的数据传输。
本发明实施例通过本发明通过将系统协议栈底层封装的IPSEC隧道数据报文传递到应用层,再进行一层基于可靠连接协议的封装,构成两层隧道,并通过TCP或SSL连接发送到目的VPN,从而可以极大地提高IPSEC数据报文跨运营商网络传输的可靠性。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。 

Claims (10)

1.一种跨运营商网络的VPN数据处理方法,其特征在于包括如下步骤:
步骤一:创建TUN设备,并在VPN系统中注册为虚拟网卡,然后通过设置虚拟路由,使位于不同电信运营商网络的VPN数据流通过该虚拟网卡;
步骤二:运行应用层守护进程通过外网物理网卡与位于不同电信运营商网络的VPN装置建立TCP或SSL连接;
步骤三:TUN设备负责在底层TCP/IP协议栈和应用层守护进程之间转发数据;
步骤四:应用层守护进程在TUN设备与位于不同电信运营商网络的VPN装置之间转发数据。
2.根据权利要求1所述的一种跨运营商网络的VPN数据处理方法,其特征在于所述步骤三中TUN设备负责在系统底层TCP/IP协议栈和应用层守护进程之间转发数据具体过程是:
1) TUN设备接收数据:应用层守护进程对来自不同电信运营商网络的VPN数据进行一次隧道解封装后发送至TUN设备,该数据通过虚拟网卡送给底层 TCP/IP协议栈进行二次隧道解封装;
2) TUN设备发送数据:底层TCP/IP协议栈对通过内网物理网卡接受的到不同电信运营商网络的VPN数据,进行一次隧道封装后通过TUN设备传送给应用层守护进程进行二次隧道封装。
3.根据权利要求2所述的一种跨运营商网络的VPN数据处理方法,其特征在于所述步骤四中应用层守护进程在TUN设备与位于不同电信运营商网络的VPN装置之间转发数据具体过程是:
1) 应用层守护进程接收数据:外网物理网卡接收来自不同电信运营商网络的VPN数据,通过底层TCP/IP协议栈和SOCKET连接将数据传送至应用层守护进程,进行一次隧道解封装处理后发送至TUN设备;
2) 应用层守护进程发送数据:应用层守护进程接收从TUN设备发送的一次隧道封装数据,进行二次隧道封装处理后,通过底层TCP/IP协议栈、SOCKET连接和外网物理网卡将二次隧道封装数据发送至不同电信运营商网络的VPN装置。
4.根据权利要求1至3之一所述的一种跨运营商网络的VPN数据处理方法,其特征在于所述步骤四中二次隧道封装是通过不加密的TCP协议或SSL协议进行,TCP协议根据网络的QoS状态进行动态设置,所述协议端口可通过HTTP协议、FTP协议或HTTPS协议等实现。
5.根据权利要求4所述的一种跨运营商网络的VPN数据处理方法,其特征在于所述步骤三中一次隧道封装具体过程是:底层TCP/IP协议栈将通过内网物理网卡接收到的原始数据加载IP包头,并进行加密封装成IPSEC隧道模式报文,其中所述IP包头包括本地VPN装置的虚拟网卡IP作为源IP地址、对端VPN装置的虚拟网卡IP作为目的IP地址;
所述步骤三中二次隧道解封装具体过程是底层TCP/IP协议栈将应用层守护进程发送至底层TCP/IP协议栈的数据进行IPSEC隧道包头解封装和解密处理。
6.根据权利要求5所述的一种跨运营商网络的VPN数据处理方法,其特征在于所述步骤四中二次隧道封装具体过程是:应用层守护进程将通过TUN设备接收到的一次隧道封装数据采用TCP或SSL数据格式进行数据二次隧道封装,封装格式包括加载二次IP包头,所述二次IP包头包括本地VPN装置的IP作为源IP地址、对端不同电信运营商网络的VPN装置的IP作为目的IP地址,并通过步骤二中建立的TCP或SSL连接将二次隧道封装后的数据报文发送给不同电信运营商网络的VPN装置;
所述步骤四中一次解封装具体过程是应用层守护进程将来自不同电信运营商网络的VPN数据剥离外层的SSL或TCP封装。
7.根据权利要求1所述的一种跨运营商网络的VPN数据处理装置,其特征在于包括初始化模块,用于创建TUN设备并注册为虚拟网卡,并设置虚拟路由,将与不同电信运营商网络的VPN隧道路由到该虚拟网卡,启动应用层守护进程并与位于不同电信运营商网络的VPN建立TCP或SSL连接;
IPSEC隧道模块,工作在系统底层TCP/IP协议栈,用于对内网物理网卡接受的数据进行一次隧道封装并发送至TUN设备;或者用于对通过TUN设备接受的数据进行二次解封装并发送数据至内网物理网卡;
虚拟网络通道模块,用于通过TUN 设备在系统底层TCP/IP协议栈的IPSEC隧道模块和以应用层守护进程形式存在的应用层隧道模块之间转发数据;
应用层隧道模块,以应用层守护进程的形式存在,用于将从TUN设备接收到的一次隧道封装数据进行二次隧道封装并通过TCP或SSL连接发送到不同电信运营商网络的VPN装置;将通过外网物理网卡、系统底层TCP/IP协议栈和SOCKET连接接收到的来自不同电信运营商网络的VPN数据进行一次解封装后传递给TUN 设备。
8.根据权利要求7所述的一种跨运营商网络的VPN数据处理装置,其特征在于所述虚拟网络通道模块用于通过TUN 设备在系统底层TCP/IP协议栈和应用层守护进程之间转发数据的过程是:
1) TUN设备接收数据:应用层守护进程对来自不同电信运营商网络的VPN数据进行一次隧道解封装后发送至TUN设备,该数据通过虚拟网卡送给底层 TCP/IP协议栈进行二次隧道解封装;
2) TUN设备发送数据:底层TCP/IP协议栈对通过内网物理网卡接受的到不同电信运营商网络的VPN数据,进行一次隧道封装后通过TUN设备传送给应用层守护进程进行二次隧道封装。
9.根据权利要求8所述的一种跨运营商网络的VPN数据处理装置,其特征在于所述在应用层进行二次隧道封装,外层隧道可采用TCP协议或SSL协议,TCP协议端口可进行动态设置,配置为QoS较有保障的端口。
10.根据权利要求9所述的一种跨运营商网络的VPN数据处理装置,其特征在于所述TUN设备是一种字符型设备,用于应用层和底层之间进行点到点的数据传输。
CN201210296136.2A 2012-08-20 2012-08-20 一种跨运营商网络的vpn数据处理方法及装置 Active CN102843292B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210296136.2A CN102843292B (zh) 2012-08-20 2012-08-20 一种跨运营商网络的vpn数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210296136.2A CN102843292B (zh) 2012-08-20 2012-08-20 一种跨运营商网络的vpn数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN102843292A true CN102843292A (zh) 2012-12-26
CN102843292B CN102843292B (zh) 2015-05-27

Family

ID=47370365

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210296136.2A Active CN102843292B (zh) 2012-08-20 2012-08-20 一种跨运营商网络的vpn数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN102843292B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104144096A (zh) * 2014-08-25 2014-11-12 深圳市中兴移动通信有限公司 虚拟网络层构建方法、装置及系统
CN104639418A (zh) * 2015-03-06 2015-05-20 北京深思数盾科技有限公司 构建局域网进行信息传输的方法及系统
CN106878135A (zh) * 2016-12-21 2017-06-20 新华三技术有限公司 一种连接方法及装置
WO2018098633A1 (zh) * 2016-11-29 2018-06-07 深圳前海达闼云端智能科技有限公司 数据传输方法、数据传输装置、电子设备和计算机程序产品
CN108684039A (zh) * 2018-04-23 2018-10-19 上海泰砚通信技术有限公司 一种ac集群的自动化管理方法
CN108718268A (zh) * 2017-04-07 2018-10-30 格尔软件股份有限公司 一种提高vpn服务端并发处理性能的方法
CN110417632A (zh) * 2018-04-26 2019-11-05 腾讯科技(深圳)有限公司 一种网络通信方法、系统及服务器
CN112953808A (zh) * 2021-03-05 2021-06-11 网宿科技股份有限公司 Vpn数据传输方法、装置及服务器
CN113507506A (zh) * 2021-06-23 2021-10-15 烽火通信科技股份有限公司 虚拟专用网络系统及其搭建方法、设备以及可读存储介质
CN113660111A (zh) * 2021-07-21 2021-11-16 厦门亿联网络技术股份有限公司 一种4G Desk Phone外置协议栈的测试方法
CN115022064A (zh) * 2022-06-15 2022-09-06 北京安盟信息技术股份有限公司 一种专用工作网络加密接入方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626337A (zh) * 2009-06-18 2010-01-13 南京联创科技股份有限公司 基于虚拟网卡技术的多隧道并发模型实现方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626337A (zh) * 2009-06-18 2010-01-13 南京联创科技股份有限公司 基于虚拟网卡技术的多隧道并发模型实现方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
杨杰 等: "应用虚拟设备驱动的SSL VPN系统改进的实现", 《计算机工程》, vol. 32, no. 16, 20 August 2006 (2006-08-20), pages 148 - 150 *
肖凌: "面向无线接入的IPSec VPN关键技术研究", 《万方学位论文》, 14 March 2011 (2011-03-14), pages 1 - 107 *
菅永超 等: "基于隧道技术和虚拟网卡的SSL VPN研究", 《微处理机》, no. 4, 10 February 2009 (2009-02-10) *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104144096A (zh) * 2014-08-25 2014-11-12 深圳市中兴移动通信有限公司 虚拟网络层构建方法、装置及系统
CN104639418A (zh) * 2015-03-06 2015-05-20 北京深思数盾科技有限公司 构建局域网进行信息传输的方法及系统
CN104639418B (zh) * 2015-03-06 2018-04-27 北京深思数盾科技股份有限公司 构建局域网进行信息传输的方法及系统
WO2018098633A1 (zh) * 2016-11-29 2018-06-07 深圳前海达闼云端智能科技有限公司 数据传输方法、数据传输装置、电子设备和计算机程序产品
CN106878135B (zh) * 2016-12-21 2020-09-18 新华三技术有限公司 一种连接方法及装置
CN106878135A (zh) * 2016-12-21 2017-06-20 新华三技术有限公司 一种连接方法及装置
CN108718268A (zh) * 2017-04-07 2018-10-30 格尔软件股份有限公司 一种提高vpn服务端并发处理性能的方法
CN108718268B (zh) * 2017-04-07 2022-01-28 格尔软件股份有限公司 一种提高vpn服务端并发处理性能的方法
CN108684039A (zh) * 2018-04-23 2018-10-19 上海泰砚通信技术有限公司 一种ac集群的自动化管理方法
CN110417632A (zh) * 2018-04-26 2019-11-05 腾讯科技(深圳)有限公司 一种网络通信方法、系统及服务器
CN110417632B (zh) * 2018-04-26 2021-08-17 腾讯科技(深圳)有限公司 一种网络通信方法、系统及服务器
CN112953808A (zh) * 2021-03-05 2021-06-11 网宿科技股份有限公司 Vpn数据传输方法、装置及服务器
CN113507506A (zh) * 2021-06-23 2021-10-15 烽火通信科技股份有限公司 虚拟专用网络系统及其搭建方法、设备以及可读存储介质
CN113507506B (zh) * 2021-06-23 2022-07-29 烽火通信科技股份有限公司 虚拟专用网络系统及其搭建方法、设备以及可读存储介质
CN113660111A (zh) * 2021-07-21 2021-11-16 厦门亿联网络技术股份有限公司 一种4G Desk Phone外置协议栈的测试方法
CN113660111B (zh) * 2021-07-21 2024-07-09 厦门亿联网络技术股份有限公司 一种4G Desk Phone外置协议栈的测试方法
CN115022064A (zh) * 2022-06-15 2022-09-06 北京安盟信息技术股份有限公司 一种专用工作网络加密接入方法及装置

Also Published As

Publication number Publication date
CN102843292B (zh) 2015-05-27

Similar Documents

Publication Publication Date Title
CN102843292B (zh) 一种跨运营商网络的vpn数据处理方法及装置
CN103441996B (zh) 并发传输文件的方法及系统
EP2777217B1 (en) Protocol for layer two multiple network links tunnelling
US20020010866A1 (en) Method and apparatus for improving peer-to-peer bandwidth between remote networks by combining multiple connections which use arbitrary data paths
CN109218186A (zh) 一种多路径数据传输处理方法及网络设备
US10044841B2 (en) Methods and systems for creating protocol header for embedded layer two packets
CN102301660B (zh) Tcp通信方法
CN106685956A (zh) 一种路由器的vpn网络连接方法及系统
CN103067290A (zh) 基于虚拟网卡适应负载均衡网络的vpn隧道实现方法
EP3119057A1 (en) Packet conversion device and method for allowing transparent packet-based multipath bundling
CN109792404A (zh) 通过网络节点处的隧道组传输信息包的方法和系统
CN104579973B (zh) 一种虚拟集群中的报文转发方法和装置
CN107819685A (zh) 一种数据处理的方法以及网络设备
CN105471827A (zh) 一种报文传输方法及装置
CN108282391B (zh) 一种vxlan报文分片方法和装置
US7761508B2 (en) Access device-based fragmentation and interleaving support for tunneled communication sessions
CN107911212A (zh) 一种桥接传输加密的方法
CN113556273A (zh) 一种三网云互通系统的数据传输方法
CN105553986B (zh) 一种基于udp的多寻址有限实时节点通信方法
CN107690005A (zh) 通过网络地址转换来转送封包的方法与装置
CN114338116B (zh) 加密传输方法、装置及sd-wan网络系统
WO2003075537A1 (fr) Appareil de communication
CN114640626B (zh) 一种基于软件定义广域网sd-wan的通信系统和方法
CN105450556B (zh) 信息传输方法和装置
Cisco Cisco IOS Interface Configuration Guide Cisco IOS Release 12.0

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
CP03 Change of name, title or address

Address after: No. 333, Yunhua Road, Chengdu hi tech Zone, China (Sichuan) pilot Free Trade Zone, Chengdu, Sichuan 610041

Patentee after: China Electronics Technology Network Security Technology Co.,Ltd.

Address before: 610041, No. 8, pioneering Road, hi tech Zone, Sichuan, Chengdu

Patentee before: CHENGDU WESTONE INFORMATION INDUSTRY Inc.

CP03 Change of name, title or address