CN106027489B - 互联网联机的方法、装置及系统 - Google Patents
互联网联机的方法、装置及系统 Download PDFInfo
- Publication number
- CN106027489B CN106027489B CN201610282175.5A CN201610282175A CN106027489B CN 106027489 B CN106027489 B CN 106027489B CN 201610282175 A CN201610282175 A CN 201610282175A CN 106027489 B CN106027489 B CN 106027489B
- Authority
- CN
- China
- Prior art keywords
- udp message
- customer equipment
- client
- cloud server
- line program
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种互联网联机的方法、装置及系统。所述互联网联机的方法包括:当运行第一客户设备上的联机程序时,所述第一客户设备通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;所述第一客户设备将截获的所述UDP数据下发给所述第一客户设备上的客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。通过本发明提供的方法能够提高操作系统的稳定性,减少资源的浪费。
Description
技术领域
本发明涉及通信领域,特别涉及一种互联网联机的方法、装置及系统。
背景技术
虚拟网卡(又称虚拟网络适配器),即用软件模拟网络环境,模拟网络适配器。虚拟网卡主要是建立远程计算机间的局域网。虚拟网卡链接技术就是VPN。比如说你可以和别的地方的几台机子,通过建立虚拟HUB实现VPN client的链接,这样就算是在这几台远程计算机间建立的局域网,能实现局域网的功能。最普通的就是局域网互联游戏。在这方面比较常用的软件有openVPN,packetixVPN,hamachi。其中,hamachi是运用最简单的VPN软件,可以模拟集线器功能,实现VPN的功能,使得系统把此软件识别成一块网卡,有了这东西,只要可以访问外网,都可以连接到虚拟集线器(HUB)上与其它电脑组成局域网。在此虚拟的局域网上能进行所有物理存在的局域网的操作,可以互相访问,可以联网玩游戏。
现有的虚拟网卡联机技术的网络架构示意图如图1所示,图1中列举的玩家需要在电脑上安装虚拟网卡,将各个玩家模拟在一个局域网内,由虚拟网卡收发游戏数据,并通过服务器中转数据实现互联网联机游戏。
虚拟网卡进行联机技术依赖虚拟网卡,会在操作系统中增加物理网卡之外的虚拟网卡,从而导致操作系统本身的不稳定性概率上升,且安装网卡驱动有失败风险。
发明内容
本发明提供了一种互联网联机的方法、装置及系统,能够提高操作系统的稳定性,减少资源的浪费。
本发明第一方面提供了一种互联网联机的方法,应用于互联网联机系统,所述互联网联机系统包括至少一个云端服务器、至少一个客户设备,所述客户设备上安装有操作系统,所述操作系统中安装有客户端以及与所述客户端对应的至少一个联机程序;该方法包括:
当运行第一客户设备上的联机程序时,所述第一客户设备通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;
所述第一客户设备将截获的所述UDP数据下发给所述第一客户设备上的客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。
本发明第二方面提供了一种互联网联机的装置,所述装置上安装有操作系统,所述操作系统中安装有客户端以及与所述客户端对应的至少一个联机程序;所述装置包括:
处理单元,用于在运行联机程序时,通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;
将截获的所述UDP数据下发给客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。
本发明第三方面提供了一种计算设备,包括:处理器以及存储器,其中,所述存储器用于存储指令,所述处理器用于执行所述指令,所述指令在被所述处理器执行时,使所述计算设备执行如第一方面提供的互联网联机的方法。
本发明第四方面提供了一种互联网联机系统,包括至少一个云端服务器,以及至少一个第三方面提供的计算设备,所述云端服务器和所述计算设备之间通过通信网络进行通信。
从以上技术方案可以看出,本发明实施例具有以下优点:当运行第一客户设备上的联机程序时,所述第一客户设备通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;所述第一客户设备将截获的所述UDP数据下发给所述第一客户设备上的客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。因此,本发明不需要在物理网卡上另外安装虚拟网卡的情况下,就能实现所述第一客户设备与所述第二客户设备建立联机,并进行联机相关的业务,从而提高了客户设备上操作系统的稳定性,减少了资源的浪费。
附图说明
图1为现有技术的虚拟网卡联机技术的一个网络架构示意图;
图2为本发明所提供的互联网联机系统的一个组织架构示意图;
图3为本发明所提供的计算设备的一个组织架构示意图;
图4为本发明所提供的互联网联机的方法的一个流程示意图;
图5为本发明所提供的互联网联机的方法的一个流程及组织架构示意图;
图6为本发明所提供的互联网联机的方法的另一流程及组织架构示意图;
图7为本发明所提供的互联网联机的方法的一个应用场景示意图;
图8为本发明所提供的互联网联机的方法的另一应用场景流程示意图;
图9为本发明所提供的互联网联机的方法的另一应用场景流程示意图;
图10为本发明所提供的互联网联机的方法的另一应用场景流程示意图;
图11为本发明所提供的互联网联机的装置的一个组织架构示意图。
具体实施方式
本发明实施例提供了一种互联网联机的方法、装置及系统,能够提高操作系统的稳定性,减少资源的浪费。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
如图2为本发明所应用的互联网联机系统的示意图,该互联网联机系统包括云端服务器和客户设备。
云端服务器包括硬件层,其中,硬件层可包括多种硬件,例如处理器(如CPU)和内存、存储设备(可以包括硬盘和/或内存),还可以包括网卡等设备。其中,网卡是工作在物理层的网络组件,是局域网中连接计算机和传输介质的接口,不仅能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的封装与拆封、介质访问控制、数据的编码与解码以及数据缓存的功能等。
客户设备包括与云端服务器类似的硬件层,客户设备的硬件层上安装并运行有操作系统,该操作系统中安装有客户端以及与该客户端对应的至少一个联机程序,该客户端可以是用于联机程序进行联机的联机平台(譬如QQ游戏大厅、QQ对战平台等等)。该联机程序可以是局域网联机游戏(譬如QQ游戏大厅中的欢乐斗地主、兽人必须死等等)。基于客户设备中的操作系统,在操作系统中,还可以添加虚拟网卡,虚拟网卡即用软件模拟网络环境,模拟网络适配器。虚拟网卡技术可参考相关现有技术,此处不做赘述。
上面介绍的云端服务器可以对应一台或多台客户设备。该云端服务器可根据实际需要进行配置,本发明对该云端服务器的数量不做限制。
下面介绍本发明实施例互联网联机的方法的实施例,本发明实施例的互联网联机的方法应用于互联网联机系统,所述互联网联机系统包括云端服务器、至少一个客户设备,所述客户设备上安装有操作系统,所述操作系统中安装有客户端以及与所述客户端对应的至少一个联机程序。
图2中的客户设备可以通过图3中的计算设备200实现,该计算设备200的组织结构示意图如图3所示,包括处理器202、存储器204,还可以包括总线208、通信接口206。
其中,处理器202、存储器204和通信接口206可以通过总线208实现彼此之间的通信连接,也可以通过无线传输等其他手段实现通信。
存储器204可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器204也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid state drive,缩写:SSD);存储器204还可以包括上述种类的存储器的组合。在通过软件来实现本申请提供的技术方案时,用于实现本申请图4提供的互联网联机的方法中客户设备侧执行的部分的程序代码保存在存储器204中,并由处理器202来执行。
计算设备200通过通信接口206与云端服务器通信。
处理器202可以为CPU。
该处理器202运行时执行以下操作:在运行联机程序时,通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;将截获的所述UDP数据下发给客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。
本发明实施例中,在运行联机程序时,处理器202通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;将截获的所述UDP数据下发给客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。因此,本发明不需要在物理网卡上另外安装虚拟网卡的情况下,就能实现所述第一客户设备与所述第二客户设备建立联机,并进行联机相关的业务,从而提高了客户设备上操作系统的稳定性,减少了资源的浪费。
可选的,所述处理器202用于通过所述客户端将所述UDP数据上传至所述云端服务器,具体为:
所述处理器202,用于通过所述客户端对所述UDP数据进行封装得到TCP数据包,并通过互联网通信将所述TCP数据包上传至所述云端服务器。
可选的,所述处理器202还用于:
接收所述云端服务器下发的所述TCP数据包;
通过所述客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据发送给网卡;
通过所述网卡将所述UDP数据下发给已运行的所述联机程序。
可选的,所述处理器202还用于:
接收所述云端服务器下发的所述TCP数据包;
通过所述客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据下发给已运行的所述联机程序。
基于图2所示的互联网联机系统,本发明提供了一种互联网联机的方法方法,图2中的客户设备和云端服务器运行时执行该方法,其流程示意图如图4所示。
301、当运行第一客户设备上的联机程序时,所述第一客户设备通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据。
需要说明的是,以该操作系统为Windows操作系统为例,利用Windows系统的hook技术,在联机程序(以该联机程序为游戏程序为例)运行时,在游戏进程中注入hook模块,hook游戏进程发送的UDP数据的相关API函数,以截获该游戏程序发送到网卡的原始UDP数据。
可以理解的是,钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
302、所述第一客户设备将截获的所述UDP数据下发给所述第一客户设备上的客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。
需要说明的是,该第一客户设备将步骤102截获的所述UDP数据下发给所述第一客户设备上的客户端,以该客户端为游戏联机平台为例(例如QQ游戏大厅、QQ对战平台等),该联机平台将接收到的UDP数据上传到云端服务器,再由该云端服务器将该UDP数据下发给运行该联机程序的其他客户设备。
可以理解的是,该联机程序是联机平台提供,其中,联机程序与联机平台的关系可以参考信息交互应用与信息交互平台技术。具体来说,信息交互应用是信息交互平台提供,供不同客户设备之间的用户进行日常交流或信息处理的客户端,信息交互平台是指一种通过社交关系和/或共同兴趣(或共同利益)将人与人之间联系起来的网络架构,用户可以通过该信息交互平台所提供的客户端(即信息交互应用)进行日常交流以及处理一些日常事务。每个用户可以拥有用于为该信息交互平台上其他用户所辨识的网络身份,即信息交互应用的帐号,或者称为信息交互平台的帐号。
在信息交互平台上,不同用户之间可以通过自身设备上的信息交互应用互相确认的方式以建立社交关系,例如,互相加好友或互相关注等。当两个用户建立了社交关系后,他们成为彼此的社交网络联系人。一组用户可以通过自行选择的方式,以形成具有彼此之间的社交关系,从而形成一个社交群组。该群组内的每个成员都是该群组内所有其他成员的社交网络联系人。
用户或组织可以通过信息交互应用在信息交互平台上建立一个公共社交网络标识,并允许公众(例如,在信息交互平台上的任何用户)与该公共社交网络标识在信息交互平台上进行交流,该交流可以基于一种单向确认的方式,而无需用户之间互相确认。例如,用户可以通过信息交互应用选择订阅公共社会网络标识(例如,“跟随”公共社会网络身份)消息或发布信息,通过如订阅这类的单向确认方式,成为公共社会网络标识的社交网络联系人。公共社交网络身份的拥有者还可以将订阅了其消息或发布信息的其他用户作为其社交网络联系人。
信息交互平台上的每个用户和每个公共社会网络标识均具有社交网络联系人列表,以供其与其列表中的用户或公共社会网络标识采用即时通信消息等形式进行交流。例如,在一个社交群组内的用户可以通过信息交互平台提供的接口进行相互通信,而用户之间也可以通过信息交互平台提供的接口进行相互通信。
本发明实施例中,当运行第一客户设备上的联机程序时,所述第一客户设备通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;所述第一客户设备将截获的所述UDP数据下发给所述第一客户设备上的客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。因此,本发明不需要在物理网卡上另外安装虚拟网卡的情况下,就能实现所述第一客户设备与所述第二客户设备建立联机,并进行联机相关的业务,从而提高了客户设备上操作系统的稳定性,减少了资源的浪费。
可选的,所述第一客户设备通过所述客户端将所述UDP数据上传至所述云端服务器,具体包括:
所述第一客户设备通过所述客户端对所述UDP数据进行封装得到TCP数据包,并通过互联网通信将所述TCP数据包上传至所述云端服务器。
可选的,所述方法还包括:
所述第一客户设备接收所述云端服务器下发的所述TCP数据包;
所述第一客户设备通过所述第一客户设备上的客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据发送给网卡;
所述第一客户设备通过所述网卡将所述UDP数据下发给所述第一客户设备上已运行的所述联机程序。
该实现方式流程架构可参考图5,图5中的联机平台服务器可以理解为云端服务器,联机平台可以理解为客户端,玩家可以理解为操作对应客户设备的用户,游戏可以理解为联机程序,其中hook模块为游戏运行时调用的程序。现对该架构中的步骤进行详细说明:
步骤1、利用windows系统的hook技术,在游戏进程中注入“hook模块”,hook游戏进程发送UDP数据的相关API函数,截获游戏发送到网卡的原始UDP数据,发给"联机平台",此时游戏数据不从网卡发出。
步骤2、由“联机平台”对游戏本身的数据包进行封装,再通过互联网通信,由联机平台服务器转发给其他玩家的“联机平台”。
步骤3、“联机平台”收到其他玩家的数据包后,先进行解包操作,得到游戏原始UDP数据,再通过数据包模拟发送给网卡。
步骤4、游戏从网卡中接收数据,实现与其他玩家联机。
可选的,所述方法还包括:
所述第一客户设备接收所述云端服务器下发的所述TCP数据包;
所述第一客户设备通过所述第一客户设备上的客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据下发给所述第一客户设备上已运行的所述联机程序。
该实现方式流程架构可参考图6,图6中的联机平台服务器可以理解为云端服务器,联机平台可以理解为客户端,玩家可以理解为操作对应客户设备的用户,游戏可以理解为联机程序,其中hook模块为游戏运行时调用的程序。图6中,UDP数据不走网卡,现对该架构中的步骤进行详细说明:
步骤1、利用windows系统的hook技术,在游戏进程中注入“hook模块”,hook游戏进程发送UDP数据的相关API函数,截获游戏发送到网卡的原始UDP数据,发给"联机平台",此时游戏数据不从网卡发出。
步骤2、由“联机平台”对游戏本身的数据包进行封装,再通过互联网通信,由联机平台服务器转发给其他玩家的“联机平台”。
步骤3、“联机平台”收到其他玩家的数据包后,先进行解包操作,得到游戏原始UDP数据,再通过数据包模拟发送给游戏。游戏从“联机平台”中接收数据,实现与其他玩家联机。
下面以具体实例对本发明提供的互联网联机的方法进行说明。
基于该互联网联机的方法,本场景以客户端为QQ游戏大厅、联机程序为兽人必须死2联机版为例进行说明。
玩家1在客户设备1上运行了QQ游戏大厅并通过输入对应的ID和密码登录该QQ游戏大厅。如图7所示,为该玩家1登录该QQ游戏大厅后的界面效果,图7中显示玩家1的昵称为“四海为家”。该玩家1通过在QQ游戏大厅提供的平台上点击进入游戏兽人必须死2联机版,如图8所示,点击该游戏后会显示对应的联机房间的选择界面,玩家1可以选择任意一个房间进入就可以和互联网上其他玩家进行组队。点击快速加入,还可通过智能选取房间的方式快速匹配游戏房间。如图9所示,进入房间后,会以房间列表的形式显示该房间内的所有成员,玩家1可以在该房间内进行聊天以及加好友等操作,在准备充分后,玩家1可以点击进入游戏开启游戏进程。如图10所示,为启动游戏后的显示界面,在该界面中,玩家1还可以通过一些快捷键例如shift+tab键呼出游戏联机菜单,点击"Friends",可以看见互联网上一起组队的好友,从而一起进行联机游戏。其中,伴随着游戏进程的运行,hook模块被注入,以截获该游戏程序兽人必须死2联机版发送到网卡的原始UDP数据。UDP数据被截获后改变了传输路径,发送到QQ游戏大厅,由该QQ游戏大厅对该游戏的UDP数据进行封装打包,以TCP数据包的形式上传到云端服务器。该云端服务器通过互联网通信将TCP数据包下发给其他在不同设备上运行该游戏的玩家(譬如一起进行该游戏的玩家2、玩家3、玩家4等等),对应的,其他玩家也会运行QQ游戏大厅以及该游戏兽人必须死2联机版。其他玩家的QQ游戏大厅收到云端服务器下发的TCP数据包后先进行解包操作,以得到游戏的UDP数据,再将该UDP数据发送给其他同样运行该游戏的玩家,从而实现与其他玩家进行联机游戏。
本发明实施例还提供了互联网联机的装置400,该装置可以通过图3所示的计算设备200实现,还可以通过专用集成电路(英文:application-specific integratedcircuit,缩写:ASIC)实现,或可编程逻辑器件(英文:programmable logic device,缩写:PLD)实现。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logicdevice,缩写:CPLD),FPGA,通用阵列逻辑(英文:generic array logic,缩写:GAL)或其任意组合。该互联网联机的装置400用于实现图4所示的互联网联机的方法。通过软件实现图4所示的互联网联机的方法时,该互联网联机的装置400及其包括的各个也可以为软件模块。
互联网联机的装置400的组织结构示意图如图11所示,包括:处理单元401。处理单元401工作时,执行如下步骤:
在运行联机程序时,通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;
将截获的所述UDP数据下发给客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。
本发明实施例中,在运行联机程序时,处理单元401通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;将截获的所述UDP数据下发给客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备。因此,本发明不需要在物理网卡上另外安装虚拟网卡的情况下,就能实现所述第一客户设备与所述第二客户设备建立联机,并进行联机相关的业务,从而提高了客户设备上操作系统的稳定性,减少了资源的浪费。
可选的,所述处理单元401用于通过所述客户端将所述UDP数据上传至所述云端服务器,具体为:
所述处理单元401,用于通过所述客户端对所述UDP数据进行封装得到TCP数据包,并通过互联网通信将所述TCP数据包上传至所述云端服务器。
可选的,所述处理单元401还用于:
接收所述云端服务器下发的所述TCP数据包;
通过所述客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据发送给网卡;
通过所述网卡将所述UDP数据下发给已运行的所述联机程序。
可选的,所述处理单元401还用于:
接收所述云端服务器下发的所述TCP数据包;
通过所述客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据下发给已运行的所述联机程序。
上述装置的相关描述可以对应参阅方法实施例部分的相关描述和效果进行理解,本处不做过多赘述。
本发明还提供了一种互联网联机系统,其组织结构示意图如图1所示,该互联网联机系统包括至少一个云端服务器,以及至少一个计算设备。该云端服务器和该计算设备之间通过通信网络进行通信。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种互联网联机的方法,应用于互联网联机系统,所述互联网联机系统包括至少一个云端服务器、至少一个客户设备,所述客户设备上安装有操作系统,所述操作系统中安装有客户端以及与所述客户端对应的至少一个联机程序;其特征在于,包括:
当运行第一客户设备上的联机程序时,所述第一客户设备通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;
所述第一客户设备将截获的所述UDP数据下发给所述第一客户设备上的客户端,并通过所述客户端将所述UDP数据上传至所述云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备;
所述第一客户设备通过所述客户端将所述UDP数据上传至所述云端服务器,具体包括:
所述第一客户设备通过所述客户端对所述UDP数据进行封装得到TCP数据包,并通过互联网通信将所述TCP数据包上传至所述云端服务器。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一客户设备接收所述云端服务器下发的所述TCP数据包;
所述第一客户设备通过所述第一客户设备上的客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据发送给网卡;
所述第一客户设备通过所述网卡将所述UDP数据下发给所述第一客户设备上已运行的所述联机程序。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一客户设备接收所述云端服务器下发的所述TCP数据包;
所述第一客户设备通过所述第一客户设备上的客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据下发给所述第一客户设备上已运行的所述联机程序。
4.一种互联网联机的装置,所述装置上安装有操作系统,所述操作系统中安装有客户端以及与所述客户端对应的至少一个联机程序;其特征在于,所述装置包括:
处理单元,用于在运行联机程序时,通过所述操作系统调用钩子函数Hook截获所述联机程序发往网卡的用户数据报协议UDP数据;
将截获的所述UDP数据下发给客户端,并通过所述客户端将所述UDP数据上传至云端服务器;以使所述云端服务器将所述UDP数据下发给已运行所述联机程序的第二客户设备;
所述处理单元用于通过所述客户端将所述UDP数据上传至云端服务器,具体为:
所述处理单元,用于通过所述客户端对所述UDP数据进行封装得到TCP数据包,并通过互联网通信将所述TCP数据包上传至所述云端服务器。
5.根据权利要求4所述的互联网联机的装置,其特征在于,所述处理单元还用于:
接收所述云端服务器下发的所述TCP数据包;
通过所述客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据发送给网卡;
通过所述网卡将所述UDP数据下发给已运行的所述联机程序。
6.根据权利要求4所述的互联网联机的装置,其特征在于,所述处理单元还用于:
接收所述云端服务器下发的所述TCP数据包;
通过所述客户端对所述TCP数据包进行解包得到所述UDP数据,并将所述UDP数据下发给已运行的所述联机程序。
7.一种计算设备,包括:处理器以及存储器,其特征在于,所述存储器用于存储指令,所述处理器用于执行所述指令,所述指令在被所述处理器执行时,使所述计算设备执行如权利要求1至3中任一项所述的方法。
8.一种互联网联机系统,其特征在于,包括至少一个云端服务器,以及至少一个如权利要求7所述的计算设备;所述云端服务器和所述计算设备之间通过通信网络进行通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610282175.5A CN106027489B (zh) | 2016-04-28 | 2016-04-28 | 互联网联机的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610282175.5A CN106027489B (zh) | 2016-04-28 | 2016-04-28 | 互联网联机的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106027489A CN106027489A (zh) | 2016-10-12 |
CN106027489B true CN106027489B (zh) | 2019-05-31 |
Family
ID=57082008
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610282175.5A Active CN106027489B (zh) | 2016-04-28 | 2016-04-28 | 互联网联机的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106027489B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107302716B (zh) * | 2017-05-15 | 2019-03-15 | 武汉斗鱼网络科技有限公司 | 一种直播游戏的方法、主播端、直播服务器及客户端 |
CN109445577B (zh) * | 2018-10-11 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 虚拟房间切换方法、装置、电子设备及存储介质 |
CN112307405B (zh) * | 2020-11-16 | 2024-03-22 | Oppo广东移动通信有限公司 | 跨设备的应用接力方法、装置、设备、系统及存储介质 |
CN114070875B (zh) * | 2022-01-17 | 2022-04-22 | 北京蔚领时代科技有限公司 | 一种云端程序控制方法及装置 |
CN114489459B (zh) * | 2022-02-16 | 2023-11-03 | 北京蔚领时代科技有限公司 | 一种云输入方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320414A (zh) * | 2007-06-05 | 2008-12-10 | 精品科技股份有限公司 | 电子文件信息安全控管系统及其方法 |
CN103166824A (zh) * | 2011-12-13 | 2013-06-19 | 华为技术有限公司 | 一种互联方法、装置和系统 |
CN104639418A (zh) * | 2015-03-06 | 2015-05-20 | 北京深思数盾科技有限公司 | 构建局域网进行信息传输的方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100199351A1 (en) * | 2009-01-02 | 2010-08-05 | Andre Protas | Method and system for securing virtual machines by restricting access in connection with a vulnerability audit |
-
2016
- 2016-04-28 CN CN201610282175.5A patent/CN106027489B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320414A (zh) * | 2007-06-05 | 2008-12-10 | 精品科技股份有限公司 | 电子文件信息安全控管系统及其方法 |
CN103166824A (zh) * | 2011-12-13 | 2013-06-19 | 华为技术有限公司 | 一种互联方法、装置和系统 |
CN104639418A (zh) * | 2015-03-06 | 2015-05-20 | 北京深思数盾科技有限公司 | 构建局域网进行信息传输的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106027489A (zh) | 2016-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106027489B (zh) | 互联网联机的方法、装置及系统 | |
Rayes et al. | Internet of things from hype to reality | |
KR102189829B1 (ko) | 네트워크 보안 모니터링 방법, 네트워크 보안 모니터링 장치 및 시스템 | |
US9680867B2 (en) | Network stimulation engine | |
KR101821511B1 (ko) | 인스턴트 메시징 또는 소셜 애플리케이션들에 기반하는 데이터 프로세싱 방법 및 그의 디바이스 | |
CN105550051B (zh) | 业务请求的异步处理方法及装置 | |
CN104270348B (zh) | 社交网络同一账号的多角色实现方法、切换方法及系统 | |
CN106357609B (zh) | 一种创建用户的方法和系统、公网服务器及私有云设备 | |
WO2012130036A1 (zh) | 一种跨应用的网络通信方法和设备 | |
CN102195803B (zh) | 数据通信方法和数据通信系统 | |
CN105704166A (zh) | 机器人系统及其实现方法、客户端、服务器以及游戏系统 | |
WO2014194184A1 (en) | Forwarding virtual event notifications to a user device | |
CN102047633A (zh) | 用于到虚拟服务器环境的应用级别接入的系统和方法 | |
CN103428166A (zh) | 第三方应用的多sns平台统一接入方法及系统 | |
Ullrich et al. | The role and security of firewalls in cyber-physical cloud computing | |
JP2019508767A (ja) | 情報更新方法および装置ならびにサーバ | |
CN107608763A (zh) | 一种通过Web浏览器进入Docker容器操作的方法 | |
CN105190530B (zh) | 传输硬件渲染的图形数据 | |
CN111901225B (zh) | 消息提示方法和装置、存储介质及电子装置 | |
CN104219132A (zh) | 多方通信实现方法、系统和消息服务器 | |
CN108390937A (zh) | 远程监控方法、装置及存储介质 | |
CN110300045A (zh) | 应用程序的网络加速方法、装置、设备及可读介质 | |
CN110300089A (zh) | 目标帐号的处理方法、装置、存储介质及电子装置 | |
CN109450928A (zh) | 一种基于UDP和Modbus TCP的跨云端数据透传方法及系统 | |
US10601858B2 (en) | Endpoint vulnerability analysis platform with intelligent threat actors |
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 |