CN111600963B - 文档数据传输方法和装置 - Google Patents
文档数据传输方法和装置 Download PDFInfo
- Publication number
- CN111600963B CN111600963B CN202010497520.3A CN202010497520A CN111600963B CN 111600963 B CN111600963 B CN 111600963B CN 202010497520 A CN202010497520 A CN 202010497520A CN 111600963 B CN111600963 B CN 111600963B
- Authority
- CN
- China
- Prior art keywords
- network
- document data
- terminal devices
- terminal equipment
- server
- 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
Images
Classifications
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1046—Joining mechanisms
-
- 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/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供了一种文档数据传输方法和装置。应用于服务器,服务器中的文档数据由欲入会的终端设备上传;其中,该方法包括:获取欲入会的多个终端设备发起的入会请求;基于多个终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备;向各个目标终端设备发送P2P网络组建信息;当前需要分享文档数据时,向P2P网络中的部分目标终端设备发送文档数据。该方式中,服务器只需向P2P网络中的部分终端设备发送文档数据,不需要向P2P网络中的全部终端设备发送文档数据,即使同一时间多个目标终端设备同时请求数据也不会影响服务器的传输性能,服务器具有较高的传输速度,传输的文档数据具有较高的质量。
Description
技术领域
本发明涉及文档共享技术领域,尤其是涉及一种文档数据传输方法和装置。
背景技术
传统的文档共享方式共有两种。一种是视频直传方式,核心是客户端将视频流传输至服务器,服务器以辅流的方式传输视频流至其他客户端,这种视频直传方式具有实现简单的优点,视频流的质量一般,传输速度相对稳定,流量消耗也较为固定。另一种方式是把文档内容在服务器转换为图片,服务器将图片传给其他客户端,然后由客户端进行翻页。
然而,上述两种方式都是基于服务器进行的,所有数据都统一由服务器分发给客户端,如果同一时间多个客户端同时请求数据,服务器的传输性能会受到一些影响。对于延时要求较高的场景,用户体验较差。如果多个客户端处于同一P2P(Peer-to-Peer,点对点)网络,对P2P网络出口的路由器有较大压力,挤占视频的带宽,会导致视频流质量下降。
发明内容
有鉴于此,本发明的目的在于提供一种文档数据传输方法和装置,以提高文档数据的传输速度,增加文档数据的传输质量。
第一方面,本发明实施例提供了一种文档数据传输方法,应用于服务器,服务器中的文档数据由欲入会的终端设备上传;方法包括:获取欲入会的多个终端设备发起的入会请求,其中,终端设备的入会请求均携带有该终端设备当前使用的IP(Internet Protocol,网际互连协议)地址;基于多个终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备;向各个目标终端设备发送P2P网络组建信息;其中,P2P网络组建信息用于为P2P网络中的目标终端设备之间构建WebRTC(Web Real-Time Communication,网页即时通信)连接;当前需要分享文档数据时,向P2P网络中的部分目标终端设备发送文档数据,以使部分目标终端设备通过WebRTC连接向其它目标终端设备转发文档数据;其中,其它目标终端设备为P2P网络中除部分目标终端设备之外的终端设备。
在本发明较佳的实施例中,上述向各个目标终端设备发送P2P网络组建信息的步骤,包括:获取各个目标终端设备的路由器名称、终端标识和运营商信息;基于路由器名称、终端标识和运营商信息生成P2P网络组建信息;将P2P网络组建信息发送至各个目标终端设备。
在本发明较佳的实施例中,上述方法还包括:确定终端设备的数据传输方式;如果终端设备使用流量传输作为数据传输方式,限制终端设备建立WebRTC连接的数量小于预设的第一阈值。
在本发明较佳的实施例中,上述方法还包括:保存终端设备之间的WebRTC连接关系;将WebRTC连接关系发送至WebRTC连接关系对应的终端设备中。
在本发明较佳的实施例中,上述向P2P网络中的部分目标终端设备发送文档数据的步骤,包括:将文档数据转化为图片格式的数据;将图片格式的数据划分为多个文件块;将文件块发送至P2P网络中的部分目标终端设备。
第二方面,本发明实施例还提供一种文档数据传输方法,应用于第一终端设备,方法包括:向服务器发送入会请求;其中,入会请求携带有第一终端设备当前使用的公网IP地址;接收服务器返回的P2P网络组建信息;其中,P2P网络组建信息为第一终端设备对应的P2P网络的组建信息,其中,P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域;与P2P网络中的其他终端设备构建WebRTC连接;其中,其他终端设备为区域中除第一终端设备之外的终端设备;如果接收到服务器或其他终端设备发送的文档数据,通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备;其中,第二终端设备为未接收到文档数据的终端设备。
在本发明较佳的实施例中,上述文档数据包括多个图片格式的文件块;接收到其他终端设备发送的文档数据的步骤,包括:确定每个文件块在各个其他终端设备中的保存数量;按照保存数量由小到大的顺序接收其他终端设备发送的文件块。
在本发明较佳的实施例中,上述接收到其他终端设备发送的文档数据的步骤,还包括:如果接收到的文件块的数量大于预设的第二阈值,接收其他终端设备发送的第一终端设备未接收的文件块。
第三方面,本发明实施例还提供一种文档数据传输装置,应用于服务器,服务器中的文档数据由欲入会的终端设备上传;装置包括:入会请求获取模块,用于获取欲入会的多个终端设备发起的入会请求,其中,终端设备的入会请求均携带有该终端设备当前使用的公网IP地址;目标终端设备确定模块,用于基于多个终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备;P2P网络组建信息发送模块,用于向各个目标终端设备发送P2P网络组建信息;其中,P2P网络组建信息用于为P2P网络中的目标终端设备之间构建WebRTC连接;文档数据发送模块,用于当前需要分享文档数据时,向P2P网络中的部分目标终端设备发送文档数据,以使部分目标终端设备通过WebRTC连接向其它目标终端设备转发文档数据;其中,其它目标终端设备为P2P网络中除部分目标终端设备之外的终端设备。
第四方面,本发明实施例还提供一种文档数据传输装置,应用于第一终端设备,装置包括:入会请求发送模块,用于向服务器发送入会请求;其中,入会请求携带有第一终端设备当前使用的公网IP地址;P2P网络组建信息接收模块,用于接收服务器返回的P2P网络组建信息;其中,P2P网络组建信息为第一终端设备对应的P2P网络的组建信息,其中,P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域;WebRTC连接构建模块,用于与P2P网络中的其他终端设备构建WebRTC连接;其中,其他终端设备为区域中除第一终端设备之外的终端设备;文档数据转发模块,用于如果接收到服务器或其他终端设备发送的文档数据,通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备;其中,第二终端设备为未接收到文档数据的终端设备。
本发明实施例带来了以下有益效果:
本发明实施例提供的一种文档数据传输方法和装置,服务器基于终端设备的公网IP地址确定地理位置,将属于同一区域的目标终端设备组建P2P网络,并在当前需要分享文档数据时向P2P网络中的部分目标终端设备发送文档数据,该方式中,服务器只需向P2P网络中的部分终端设备发送文档数据,不需要向P2P网络中的全部终端设备发送文档数据,即使同一时间多个目标终端设备同时请求数据也不会影响服务器的传输性能,服务器具有较高的传输速度,传输的文档数据具有较高的质量。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种传统文档共享方式的示意图;
图2为本发明实施例提供的一种文档数据传输方法的流程图;
图3为本发明实施例提供的另一种文档数据传输方法的流程图;
图4为本发明实施例提供的一种文档数据传输方法的示意图;
图5为本发明实施例提供的另一种文档数据传输方法的流程图;
图6为本发明实施例提供的另一种文档数据传输方法的流程图;
图7为本发明实施例提供的一种文档数据传输装置的结构示意图;
图8为本发明实施例提供的另一种文档数据传输装置的结构示意图;
图9为本发明实施例提供的一种服务器或终端设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,大部分企业均开始推进远程办公,远程办公的用户使用习惯或将进一步提高。从需求端来看,产业链在跨地区以及全球分工趋势不断增强,跨地区工作协调需求日益提升;从供给端来看,互联网与科技巨头纷纷布局,云计算、大数据等新技术发展为远程办公提供技术支撑,日益丰富的网络资源提供行业发展的底层基础,远程办公行业正进入快速发展快车道。而视频会议作为远程办公主力产品与家庭市场相比,具有如下三个主要特点:
(1)多使用者。企业员工规模通常在几十人以上,多的甚至有成千上万人,如何使所有企业员工能够实时、便捷地实现内部通信成为企业提升效率的关键。
(2)角色差异。企业中的角色丰富,有业务人员、管理人员、人事专员等,每个人的通信频度和通信需求也不尽相同,通过建立统一通信平台将最大程度上满足不同角色人群的通信需求,使外部沟通和内部协作变得更加顺畅。
(3)跨区域。很多企业跨地区运营,如何使不同地域的员工更加快捷、低成本的建立联络,成为企业降本增效的关键。
文档共享作为一个视频会议中的常用功能,在在线讲堂、企业会议、销售培训等细分场景使用非常频繁。如何提高文档共享的效率和质量,是我们一直探索的方向。
参见图1所示的一种传统文档共享方式的示意图,传统文档共享方式有服务器接收文档数据,并将文档数据转发给所有的客户端。上述传统文档共享方式对于延时要求较高的场景,用户体验较差。如果多个客户端处于同一P2P网络,对P2P网络出口的路由器有较大压力,挤占视频的带宽,会导致视频流质量下降。基于此,本发明实施例提供的一种文档数据传输方法和装置,该技术针对把文档内容通过服务器端转换为图片传给客户端,然后同步翻页这种场景,提供了一种新的架构实现文档共享,尤其可以适用于视频会议的应用场景中。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种文档数据传输方法进行详细介绍。
实施例1
本实施例提供了一种文档数据传输方法,应用于服务器,服务器中的文档数据由欲入会的终端设备上传;参见图2所示的一种文档数据传输方法的流程图,该文档数据传输方法包括如下步骤:
步骤S202,获取欲入会的多个终端设备发起的入会请求,其中,终端设备的入会请求均携带有该终端设备当前使用的公网IP地址。
终端设备可以为手机、电脑、平板电脑等可以进行人机交互的设备。欲入会的终端设备是指想要进入视频会议的终端设备。终端设备如果想要进入视频会议,可以向服务器发送入会请求,服务器该入会请求。
在入会请求中需要携带有该终端设备当前使用的公网IP地址。服务器可以筒骨公网IP地址判断终端设备当前所在的地理位置。
步骤S204,基于多个终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备。
如果多个终端设备的公网IP地址对应的地理位置比较接近或处于一定范围内,则可以认为上述终端设备属于同一区域,属于同一区域的终端设备称为目标终端设备。
区域可以为楼房、小区、地级市、县城、省等。例如:假设以地级市为区域,则属于同一地级市的终端设备属于同一区域。也可以按照距离远近划分区域,多余地理位置比较接近的多个终端设备可以属于同一区域。此外需要说明的是,区域也可以存在重叠。即终端设备A可以属于X区域,也可以属于Y区域。
步骤S206,向各个目标终端设备发送P2P网络组建信息;其中,P2P网络组建信息用于为P2P网络中的目标终端设备之间构建WebRTC连接。
可以为属于同一区域的目标终端设备搭建P2P网络,并且生成P2P网络组建信息,之后可以向各个目标终端设备发送P2P网络组建信息。其中,P2P网络组建信息可以用于每个P2P网络的目标终端设备之间构建WebRTC连接,WebRTC连接可以作为P2P网络内的终端设备的连接方式。
WebRTC是一整套包括音视频的采集、编解码、网络传输、展示等功能在内视频会议框架,优势是平台无关,可以在手机原生、手机浏览器、电脑浏览器上提供视频服务。提供点对点通信,支持NAT(Network Address Translation,网络地址转换)穿透,可以建立连接速度更快的P2P链接,通过框架提供的DataChannel(数据通道)模块传输相关数据。本实施例客户端之间的连接可以基于WebRTC协议创建。
步骤S208,当前需要分享文档数据时,向P2P网络中的部分目标终端设备发送文档数据,以使部分目标终端设备通过WebRTC连接向其它目标终端设备转发文档数据;其中,其它目标终端设备为P2P网络中除部分目标终端设备之外的终端设备。
服务器需要分享文档数据可以为参与视频会议的人需要分享文档数据,此时服务器可以向P2P网络中的部分目标终端设备发送文档数据,之后有部分目标终端设备通过WebRTC连接向P2P网络中的其它目标终端设备转发文档数据。这样做就不需要服务器向P2P网络中的全部目标终端设备发送文档数据,可以节约P2P网络的带宽。
本发明实施例提供的一种文档数据传输方法,服务器基于终端设备的公网IP地址确定地理位置,将属于同一区域的目标终端设备组建P2P网络,并在当前需要分享文档数据时向P2P网络中的部分目标终端设备发送文档数据,该方式中,服务器只需向P2P网络中的部分终端设备发送文档数据,不需要向P2P网络中的全部终端设备发送文档数据,即使同一时间多个目标终端设备同时请求数据也不会影响服务器的传输性能,服务器具有较高的传输速度,传输的文档数据具有较高的质量。
实施例2
本实施例提供了另一种文档数据传输方法,该方法在上述实施例的基础上实现;本实施例重点描述向各个目标终端设备发送P2P网络组建信息的具体实施方式。如图3所示的另一种文档数据传输方法的流程图,本实施例中的文档数据传输方法包括如下步骤:
步骤S302,获取欲入会的多个终端设备发起的入会请求,其中,终端设备的入会请求均携带有该终端设备当前使用的公网IP地址。
终端设备在发送入会请求时,入会请求除了携带公网IP地址外,还可以携带路由器名称、终端标识、运营商信息和数据传输方式等信息,这些信息可以用于组建P2P网络,并写入P2P网络组建信息中。
参见图4所示的一种文档数据传输方法的示意图,图4中的A区域和B区域分别构建了两个P2P网络,每个P2P网络包括3个客户端。
步骤S304,基于多个终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备。
终端设备可以根据上报的公网IP地址算出粗略的地理位置,在这之后新入会的终端设备上报信息时,会回传若干地理位置相邻的节点信息,新入会的终端设备可以根据这些节点信息和位置相近的终端设备建立WebRTC连接。
步骤S306,获取各个目标终端设备的路由器名称、终端标识和运营商信息。
路由器名称可以为终端设备所连接的WIFI(行动热点)名称,终端标识可以为终端设备的IMEI(International Mobile Equipment Identity,国际移动设备识别码)编号,运营商信息可以为终端设备的ISP(Internet Service Provider,互联网服务提供商)运营商信息。
步骤S308,基于路由器名称、终端标识和运营商信息生成P2P网络组建信息。
在组建P2P网络时可以根据路由器名称、终端标识和运营商信息进行终端设备的匹配,并将配对后的终端设备的路由器名称、终端标识和运营商信息写入P2P网络组建信息中。
如图4所示,图4中的在A区域的3个客户端组建了一个P2P网络,那么这3个客户端的路由器名称、终端标识和运营商信息可以写入P2P网络组建信息中。服务器可以获取会议中的所有客户端的公网IP地址,不用地区的客户端可以根据服务器计算出的信息选择距离较近的5-10个客户端建立WebRTC连接。
服务器还可以根据终端设备的数据传输方式限制其WebRTC连接的数量,例如:确定终端设备的数据传输方式;如果终端设备使用流量传输作为数据传输方式,限制终端设备建立WebRTC连接的数量小于预设的第一阈值。
如果终端设备A使用流量传输作为数据传输方式,则为了减少终端设备A的流量消耗,第一阈值可以设置为1-5个,服务器可以减少终端设备A建立WebRTC连接的数量,例如:限制终端设备A建立WebRTC连接的数量小于3个。
步骤S310,将P2P网络组建信息发送至各个目标终端设备。
P2P网络组建完成后,服务器可以保存全部P2P网络的P2P网络组建信息,并将P2P网络组建信息发送P2P网络内部对应的终端设备中,可以通过步骤A1-步骤A2执行:
步骤A1,保存终端设备之间的WebRTC连接关系。
步骤A2,将WebRTC连接关系发送至WebRTC连接关系对应的终端设备中。
所有终端设备之间的WebRTC连接关系可以均保存在服务器中,每个终端设备只保存与其相关的连接关系。服务器和终端设备可以通过WebRTC连接表的形式记录WebRTC连接关系,并且终端设备和服务器实时同步WebRTC连接表。
步骤S312,当前需要分享文档数据时,向P2P网络中的部分目标终端设备发送文档数据,以使部分目标终端设备通过WebRTC连接向其它目标终端设备转发文档数据;其中,其它目标终端设备为P2P网络中除部分目标终端设备之外的终端设备。
如图4所示,服务器向客户端传输文档数据时,可以采用虚线代表的HTTP(HyperText Transfer Protocol,超文本传输)协议,终端设备之间则采用实线代表的WebRTC连接传输文档数据。具体的文档共享方式可以通过步骤B1-步骤B3执行:
步骤B1,将文档数据转化为图片格式的数据。
在客户端开始文件共享时,把文件上传到服务器,由服务器的转码服务将文件转换为多个图片格式的数据。
步骤B2,将图片格式的数据划分为多个文件块。
服务器把可以每个图片切分为固定大小(如128k)的文件块,每个图片对应多个文件块。服务器端根据文件分块形成一个Hash(哈希)表,存储本次共享所有的文件块。
步骤B3,将文件块发送至P2P网络中的部分目标终端设备。
在进行文件块传输时,服务器可以将所有文件块发送至P2P网络中的部分目标终端设备。
实施例3
本实施例提供了另一种文档数据传输方法,应用于第一终端设备,参见图5所示的另一种文档数据传输方法的流程图,该文档数据传输方法包括如下步骤:
步骤S502,向服务器发送入会请求;其中,入会请求携带有第一终端设备当前使用的公网IP地址。
第一终端设备为想要加入视频会议的终端设备,如果第一终端设备想要加入视频会议并进行文档数据传输,需要,向服务器发送入会请求。其中,入会请求携带有第一终端设备当前使用的公网IP地址,服务器可以根据公网IP地址确定第一终端设备的当前地理位置,并生成P2P网络组建信息。
步骤S504,接收服务器返回的P2P网络组建信息;其中,P2P网络组建信息为第一终端设备对应的P2P网络的组建信息,其中,P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域。
第一终端设备接收服务器返回的P2P网络组建信息,P2P网络组建信息为第一终端设备对应的P2P网络的组建信息,第一终端设备对应的P2P网络中除了第一终端设备还可以包括其他终端设备,上述其他终端设备当前使用的公网IP地址对应的地理位置与第一终端设备当前使用的公网IP地址对应的地理位置处于同一区域。
步骤S506,与P2P网络中的其他终端设备构建WebRTC连接;其中,其他终端设备为区域中除第一终端设备之外的终端设备。
第一终端设备可以根据P2P网络组建信息与在同一P2P网络的其他终端设备构建WebRTC连接。
步骤S508,如果接收到服务器或其他终端设备发送的文档数据,通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备;其中,第二终端设备为未接收到文档数据的终端设备。
如果第一终端设备接收到服务器或其他终端设备发送的文档数据,可以通过WebRTC连接将文档数据分享处于同一P2P网络终端中的第二终端设备。其中,第二终端设备还未接收到文档数据。
本发明实施例一种文档数据传输方法,第一终端设备根据服务器返回的P2P网络组建信息建立WebRTC连接,并通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备。该方式中,同一P2P网络中的终端设备可以相互分享文档数据。服务器只需向P2P网络中的部分终端设备发送文档数据,不需要向P2P网络中的全部终端设备发送文档数据,具有较高的文档数据传输速度,传输的文档数据具有较高的质量。
实施例4
本实施例提供了另一种文档数据传输方法,该方法在上述实施例的基础上实现;本实施例重点描述接收到其他终端设备发送的文档数据的具体实施方式。如图6所示的另一种文档数据传输方法的流程图,本实施例中的文档数据传输方法包括如下步骤:
步骤S602,向服务器发送入会请求;其中,入会请求携带有第一终端设备当前使用的公网IP地址。
步骤S604,接收服务器返回的P2P网络组建信息;其中,P2P网络组建信息为第一终端设备对应的P2P网络的组建信息,其中,P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域。
步骤S606,与P2P网络中的其他终端设备构建WebRTC连接;其中,其他终端设备为区域中除第一终端设备之外的终端设备。
步骤S608,确定每个文件块在各个其他终端设备中的保存数量;按照保存数量由小到大的顺序接收其他终端设备发送的文件块。
第一终端设备在下载其他终端设备发送的文档数据时可以依据稀有度优先原则。客户端会根据每个文件块在相邻节点是否下载完成,计算每个文件块的稀有度(稀有度即每个文件块在各个其他终端设备中的保存数量),稀有度越高,则优先级越高,按照优先级由高到低(即保存数量由小到大)的顺序下载文件块,可以保证整个P2P网络内能更快的把流量提上来。
除了稀有度优先原则之外,第一终端设备还可以依据最后优先完成规则下载其他终端设备发送的文档数据,例如:如果接收到的文件块的数量大于预设的第二阈值,接收其他终端设备发送的第一终端设备未接收的文件块。
第二阈值可以设置为90%,客户端在整体下载接近90%的时候,会优先下载没有下载的文件块,以完成下载为最优先。根据这两个规则,可以快速实现共享文档转换后的图片在整个P2P网络内的共享。之后,在客户端进行翻页时所有信息通过P2P网络实现快速转发翻到第几页的消息,极大的降低了各个客户端的响应速度,提高了用户体验。
步骤S610,通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备;其中,第二终端设备为未接收到文档数据的终端设备。
本发明实施例提供的上述方法,通过WebRTC的点对点通信技术,结合视频会议这个场景中的文档共享需求,提供了一种能提供更快速文档共享需求的实现方式。这种方式对于同在P2P网络或者地理位置较近的用户,能提供更快的文件传输服务,以及更快的消息通知。通过极快的响应速度,为整个视频会议系统提供了用户体验上的良好支持。
需要说明的是,上述各方法实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
实施例5
对应于上述方法实施例,本发明实施例提供了一种文档数据传输装置,应用于服务器,服务器中的文档数据由欲入会的终端设备上传;如图7所示的一种文档数据传输装置的结构示意图,该文档数据传输装置包括:
入会请求获取模块71,用于获取欲入会的多个终端设备发起的入会请求,其中,终端设备的入会请求均携带有该终端设备当前使用的公网IP地址;
目标终端设备确定模块72,用于基于多个终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备;
P2P网络组建信息发送模块73,用于向各个目标终端设备发送P2P网络组建信息;其中,P2P网络组建信息用于为P2P网络中的目标终端设备之间构建WebRTC连接;
文档数据发送模块74,用于当前需要分享文档数据时,向P2P网络中的部分目标终端设备发送文档数据,以使部分目标终端设备通过WebRTC连接向其它目标终端设备转发文档数据;其中,其它目标终端设备为P2P网络中除部分目标终端设备之外的终端设备。
本发明实施例提供的一种文档数据传输装置,服务器基于终端设备的公网IP地址确定地理位置,将属于同一区域的目标终端设备组建P2P网络,并在当前需要分享文档数据时向P2P网络中的部分目标终端设备发送文档数据,该方式中,服务器只需向P2P网络中的部分终端设备发送文档数据,不需要向P2P网络中的全部终端设备发送文档数据,即使同一时间多个目标终端设备同时请求数据也不会影响服务器的传输性能,服务器具有较高的传输速度,传输的文档数据具有较高的质量。
上述P2P网络组建信息发送模块,用于获取各个目标终端设备的路由器名称、终端标识和运营商信息;基于路由器名称、终端标识和运营商信息生成P2P网络组建信息;将P2P网络组建信息发送至各个目标终端设备。
上述装置还包括WebRTC连接限制模块,用于确定终端设备的数据传输方式;如果终端设备使用流量传输作为数据传输方式,限制终端设备建立WebRTC连接的数量小于预设的第一阈值。
上述装置还包括WebRTC连接关系保存模块,用于保存终端设备之间的WebRTC连接关系;将WebRTC连接关系发送至WebRTC连接关系对应的终端设备中。
上述文档数据发送模块,用于将文档数据转化为图片格式的数据;将图片格式的数据划分为多个文件块;将文件块发送至P2P网络中的部分目标终端设备。
实施例6
对应于上述方法实施例,本发明实施例提供了一种文档数据传输装置,应用于第一终端设备;如图8所示的另一种文档数据传输装置的结构示意图,该文档数据传输装置包括:
入会请求发送模块81,用于向服务器发送入会请求;其中,入会请求携带有第一终端设备当前使用的公网IP地址;
P2P网络组建信息接收模块82,用于接收服务器返回的P2P网络组建信息;其中,P2P网络组建信息为第一终端设备对应的P2P网络的组建信息,其中,P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域;
WebRTC连接构建模块83,用于与P2P网络中的其他终端设备构建WebRTC连接;其中,其他终端设备为区域中除第一终端设备之外的终端设备;
文档数据转发模块84,用于如果接收到服务器或其他终端设备发送的文档数据,通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备;其中,第二终端设备为未接收到文档数据的终端设备。
本发明实施例一种文档数据传输装置,第一终端设备根据服务器返回的P2P网络组建信息建立WebRTC连接,并通过WebRTC连接将文档数据分享给P2P网络中的第二终端设备。该方式中,同一P2P网络中的终端设备可以相互分享文档数据。服务器只需向P2P网络中的部分终端设备发送文档数据,不需要向P2P网络中的全部终端设备发送文档数据,具有较高的文档数据传输速度,传输的文档数据具有较高的质量。
实施例7
本发明实施例还提供了一种服务器或终端设备,用于运行上述文档数据传输方法;参见图9所示的一种服务器或终端设备的结构示意图,该服务器或终端设备包括存储器100和处理器101,其中,存储器100用于存储一条或多条计算机指令,一条或多条计算机指令被处理器101执行,以实现上述文档数据传输方法。
进一步地,图9所示的服务器或终端设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。
其中,存储器100可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述文档数据传输方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的文档数据传输方法和装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种文档数据传输方法,其特征在于,应用于服务器,服务器中的文档数据由欲入会的终端设备上传;所述方法包括:
获取欲入会的多个终端设备发起的入会请求,其中,所述终端设备的入会请求均携带有该终端设备当前使用的公网IP地址;
基于多个所述终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备;
向各个所述目标终端设备发送P2P网络组建信息;其中,所述P2P网络组建信息用于为P2P网络中的所述目标终端设备之间构建WebRTC连接;
当前需要分享所述文档数据时,向所述P2P网络中的部分目标终端设备发送所述文档数据,以使所述部分目标终端设备通过所述WebRTC连接向其它目标终端设备转发所述文档数据;其中,所述其它目标终端设备为所述P2P网络中除所述部分目标终端设备之外的终端设备。
2.根据权利要求1所述的方法,其特征在于,向各个所述目标终端设备发送P2P网络组建信息的步骤,包括:
获取各个所述目标终端设备的路由器名称、终端标识和运营商信息;
基于所述路由器名称、所述终端标识和所述运营商信息生成P2P网络组建信息;
将所述P2P网络组建信息发送至各个所述目标终端设备。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述终端设备的数据传输方式;
如果所述终端设备使用流量传输作为所述数据传输方式,限制所述终端设备建立WebRTC连接的数量小于预设的第一阈值。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
保存所述终端设备之间的WebRTC连接关系;
将所述WebRTC连接关系发送至所述WebRTC连接关系对应的终端设备中。
5.根据权利要求1所述的方法,其特征在于,向所述P2P网络中的部分目标终端设备发送所述文档数据的步骤,包括:
将所述文档数据转化为图片格式的数据;
将所述图片格式的数据划分为多个文件块;
将所述文件块发送至所述P2P网络中的部分目标终端设备。
6.一种文档数据传输方法,其特征在于,应用于第一终端设备,所述方法包括:
向服务器发送入会请求;其中,所述入会请求携带有所述第一终端设备当前使用的公网IP地址;
接收所述服务器返回的P2P网络组建信息;其中,所述P2P网络组建信息为所述第一终端设备对应的P2P网络的组建信息,其中,所述P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域;
与所述P2P网络中的其他终端设备构建WebRTC连接;其中,所述其他终端设备为所述区域中除所述第一终端设备之外的终端设备;
如果接收到所述服务器或所述其他终端设备发送的文档数据,通过所述WebRTC连接将所述文档数据分享给所述P2P网络中的第二终端设备;其中,所述第二终端设备为未接收到所述文档数据的终端设备。
7.根据权利要求6所述的方法,其特征在于,所述文档数据包括多个图片格式的文件块;
接收到所述其他终端设备发送的文档数据的步骤,包括:
确定每个所述文件块在各个所述其他终端设备中的保存数量;
按照所述保存数量由小到大的顺序接收所述其他终端设备发送的所述文件块。
8.根据权利要求7所述的方法,其特征在于,接收到所述其他终端设备发送的文档数据的步骤,还包括:
如果已接收到的所述文件块的数量大于预设的第二阈值,则优先接收所述其他终端设备发送的所述第一终端设备未接收的文件块。
9.一种文档数据传输装置,其特征在于,应用于服务器,服务器中的文档数据由欲入会的终端设备上传;所述装置包括:
入会请求获取模块,用于获取欲入会的多个终端设备发起的入会请求,其中,所述终端设备的入会请求均携带有该终端设备当前使用的公网IP地址;
目标终端设备确定模块,用于基于多个所述终端设备的公网IP地址对应的地理位置确定属于同一区域的目标终端设备;
P2P网络组建信息发送模块,用于向各个所述目标终端设备发送P2P网络组建信息;其中,所述P2P网络组建信息用于为P2P网络中的所述目标终端设备之间构建WebRTC连接;
文档数据发送模块,用于当前需要分享所述文档数据时,向所述P2P网络中的部分目标终端设备发送所述文档数据,以使所述部分目标终端设备通过所述WebRTC连接向其它目标终端设备转发所述文档数据;其中,所述其它目标终端设备为所述P2P网络中除所述部分目标终端设备之外的终端设备。
10.一种文档数据传输装置,其特征在于,应用于第一终端设备,所述装置包括:
入会请求发送模块,用于向服务器发送入会请求;其中,所述入会请求携带有所述第一终端设备当前使用的公网IP地址;
P2P网络组建信息接收模块,用于接收所述服务器返回的P2P网络组建信息;其中,所述P2P网络组建信息为所述第一终端设备对应的P2P网络的组建信息,其中,所述P2P网络中的终端设备当前使用的公网IP地址对应的地理位置处于同一区域;
WebRTC连接构建模块,用于与所述P2P网络中的其他终端设备构建WebRTC连接;其中,所述其他终端设备为所述区域中除所述第一终端设备之外的终端设备;
文档数据转发模块,用于如果接收到所述服务器或所述其他终端设备发送的文档数据,通过所述WebRTC连接将所述文档数据分享给所述P2P网络中的第二终端设备;其中,所述第二终端设备为未接收到所述文档数据的终端设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010497520.3A CN111600963B (zh) | 2020-06-03 | 2020-06-03 | 文档数据传输方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010497520.3A CN111600963B (zh) | 2020-06-03 | 2020-06-03 | 文档数据传输方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111600963A CN111600963A (zh) | 2020-08-28 |
CN111600963B true CN111600963B (zh) | 2023-04-07 |
Family
ID=72191690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010497520.3A Active CN111600963B (zh) | 2020-06-03 | 2020-06-03 | 文档数据传输方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111600963B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112818635A (zh) * | 2021-02-03 | 2021-05-18 | 广州市保伦电子有限公司 | 一种文档多人同步共享浏览方法及处理终端 |
CN114338818A (zh) * | 2021-12-23 | 2022-04-12 | 京东方数字科技有限公司 | 内容下发方法、装置、电子设备和可读存储介质 |
CN115190354B (zh) * | 2022-07-12 | 2024-02-27 | 北京国盛华兴科技有限公司 | 一种音视频的传输方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007007320A2 (en) * | 2005-07-09 | 2007-01-18 | Netbarrage Ltd. | Method and system for increasing popularity of content items shared over peer-to-peer networks |
CN102594926A (zh) * | 2011-12-22 | 2012-07-18 | 华中科技大学 | 异构无线p2p网络文件共享系统及加速文件传输方法 |
CN103718576A (zh) * | 2011-05-20 | 2014-04-09 | 瑞典爱立信有限公司 | 用于内容分发的方法和设备 |
WO2017107542A1 (zh) * | 2015-12-22 | 2017-06-29 | 乐视控股(北京)有限公司 | 视频节目获取方法、设备及系统 |
CN108418789A (zh) * | 2018-01-22 | 2018-08-17 | 网宿科技股份有限公司 | 一种基于WebRTC的通信系统及其通信方法、信令服务器 |
CN110636144A (zh) * | 2019-11-07 | 2019-12-31 | 腾讯科技(深圳)有限公司 | 数据下载的方法和装置 |
-
2020
- 2020-06-03 CN CN202010497520.3A patent/CN111600963B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007007320A2 (en) * | 2005-07-09 | 2007-01-18 | Netbarrage Ltd. | Method and system for increasing popularity of content items shared over peer-to-peer networks |
CN103718576A (zh) * | 2011-05-20 | 2014-04-09 | 瑞典爱立信有限公司 | 用于内容分发的方法和设备 |
CN102594926A (zh) * | 2011-12-22 | 2012-07-18 | 华中科技大学 | 异构无线p2p网络文件共享系统及加速文件传输方法 |
WO2017107542A1 (zh) * | 2015-12-22 | 2017-06-29 | 乐视控股(北京)有限公司 | 视频节目获取方法、设备及系统 |
CN108418789A (zh) * | 2018-01-22 | 2018-08-17 | 网宿科技股份有限公司 | 一种基于WebRTC的通信系统及其通信方法、信令服务器 |
CN110636144A (zh) * | 2019-11-07 | 2019-12-31 | 腾讯科技(深圳)有限公司 | 数据下载的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111600963A (zh) | 2020-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111600963B (zh) | 文档数据传输方法和装置 | |
CN107682657B (zh) | 一种基于WebRTC的多人语音视频通话方法及系统 | |
CN111586599B (zh) | 网络辅助信息提供方法及相关设备 | |
US11316910B2 (en) | Method for uploading and downloading streaming media resources, distribution system and streaming media server | |
US20230308951A1 (en) | Data processing method, network element device, and readable storage medium | |
EP2658232A1 (en) | Method and system for an optimized multimedia communications system | |
CN114095557B (zh) | 数据处理方法、装置、设备以及介质 | |
CN113923470B (zh) | 直播流处理方法及装置 | |
CN109474684A (zh) | 一种获取直播视频流的方法、装置、终端设备及存储介质 | |
US11159586B2 (en) | Dynamically controlling relay communication links during a communication session | |
EP3059945A1 (en) | Method and system for video surveillance content adaptation, and central server and device | |
CN107431781B (zh) | 信息处理设备、屏幕切换方法、非瞬时记录介质和传输系统 | |
US11528303B2 (en) | Method and system for responding to video call service | |
WO2019184262A1 (zh) | 多类型媒体数据网络地址转换穿越方法、终端及系统 | |
US20120239727A1 (en) | Multimedia service network and method for providing the same | |
US20160182440A1 (en) | Terminal Status Subscription Method, Apparatus, and System | |
CN108574689B (zh) | 一种可视通话的方法和装置 | |
WO2015135408A1 (zh) | 一种对等网络会议接入方法、客户端及系统 | |
WO2011116060A1 (en) | Multimedia service network and method for providing the same | |
CN203984568U (zh) | 一种可由点对点呼叫转三方会议的视频会议系统 | |
CN110830755B (zh) | 一种混合网络模式下码流调度方法及装置 | |
CN110753071B (zh) | 一种信息获取方法和装置 | |
CN112019791A (zh) | 基于教育考试的多方音视频通话方法及系统 | |
WO2012043290A1 (ja) | ビデオ通話システム、主側端末、従側端末 | |
CN114374682B (zh) | 数据分享方法、系统及存储介质和终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |