CN108600165A - 基于tcp的通信方法、客户端、中心节点和通信系统 - Google Patents
基于tcp的通信方法、客户端、中心节点和通信系统 Download PDFInfo
- Publication number
- CN108600165A CN108600165A CN201810215614.XA CN201810215614A CN108600165A CN 108600165 A CN108600165 A CN 108600165A CN 201810215614 A CN201810215614 A CN 201810215614A CN 108600165 A CN108600165 A CN 108600165A
- Authority
- CN
- China
- Prior art keywords
- node
- client
- fringe node
- centroid
- accessed
- 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.)
- Pending
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]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/70—Routing based on monitoring results
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于TCP的通信方法、客户端、中心节点和通信系统,所述通信方法包括:客户端选择边缘节点进行接入,其中,基于所接入的边缘节点到中心节点的链路路径,客户端配置为直接通过所选择的边缘节点接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;客户端与中心节点进行服务交互,通过中心节点获取客户端请求的来自其它客户端的数据。本发明公开的实施例针对不同的链路路径使用不同的接入方式以确保媒体流文件和服务指令的实时传输,能够满足在线教育对延时的要求,以使得身处不同地理位置的用户能够通过所述通信方法参与其中,并获得良好的在线教学体验。
Description
技术领域
本发明涉及实时在线教育领域,特别是涉及一种基于TCP的通信方法、客户端、中心节点和通信系统。
背景技术
近年来,随着在线教育行业的兴起,跨国实时通信有了进一步的发展。由于在线教育有很强的互动性,所以对跨国链路响应速度上有很严格的限制。从经验来看,老师学生双方延时超过500ms就已经会影响正常上课;另一方面,业务流量的迅猛增长也对技术架构的横向扩展能力有较高的要求。
UDP(User Datagram Protocol,用户数据报协议)解决方案当前在实时在线教育领域比较流行。在技术层面上,基于UDP的解决方案比基于TCP(Transmission ControlProtocol,传输控制协议)的解决方案具有更低的时延,和较强的网络适应能力。但是,UDP解决方案仍然存在如下的主要问题:
1.基于UDP的方案在处理跨国链路时,由严重丢包引起的数据包重传场景比较多,会严重影响UDP的传输效率,虽然有FEC(Forward Error Correction,前向纠错)、ARQ(Automatic Repeat-reQuest,自动重传请求)等策略可以优化此类问题,但是,在严重丢包前提下,这些算法的表现效果会大打折扣。
2.其次,国内的一些中小运营商会对UDP报文做拦截,使得许多UDP报文无法穿透这些中小运营商的本地网络。
3.另外,基于UDP的方案基本都是基于端的方案,无法满足用户使用量级轻,使用多样化的需求。
发明内容
为了解决上述问题至少之一,本发明采用基于TCP的解决方案。为此,本发明第一方面提供一种基于TCP的通信方法,包括:
客户端选择边缘节点进行接入,其中,基于所接入的边缘节点到中心节点的链路路径,所述客户端配置为直接通过所选择的边缘节点接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;
所述客户端与所述中心节点进行服务交互,通过所述中心节点获取所述客户端请求的来自其它客户端的数据。
进一步地,所述客户端选择边缘节点进行接入包括:
客户端向用户显示边缘节点列表,其中所述边缘节点列表包括多个备选边缘节点;
响应于用户对备选边缘节点的选择,所述客户端对所选择的边缘节点进行响应测试;
所述客户端选择所述测试中响应最快的边缘节点进行接入。
进一步地,所述客户端提供所述响应测试中响应速度前N名的边缘节点列表;
所述客户端监测当前接入的边缘节点的网络状况,若出现异常,则自动连接所述前N快的边缘节点列表中当前边缘节点以外的响应最快节点进行接入,其中N≥3。
进一步地,当用户仅选择一个备选边缘节点时,所述客户端根据历史连接记录自动从备选边缘节点中选择最快的M个边缘节点;
所述客户端对用户所选择的边缘节点和所述M个边缘节点进行响应测试,其中M≥3。
进一步地,所述链路路径满足预设条件,则所述接入的边缘节点配置为直接接入所述中心节点,否则所述客户端经由与所接入的边缘节点相关的汇聚节点接入所述中心节点,
其中所述相关的汇聚节点为与所述边缘节点和中心节点均能接入的汇聚节点。
进一步地,所述预设条件为:所述边缘节点与所述中心节点的链路路径小于预定阈值;并且所述链路路径涉及的所述边缘节点与所述中心节点的IP地址属于同一地区。
本发明第二方面提供一种基于TCP的通信方法,包括:
基于与边缘节点的链路路径,中心节点配置为选择直接通过边缘节点连接接入所述边缘节点的客户端,或者通过汇聚节点经由接入所述汇聚节点的边缘节点连接接入所述边缘节点的所述客户端;
所述中心节点与所述客户端进行服务交互,将所述客户端请求的来自其它客户端的数据发送给所述客户端。
进一步地,所述链路路径满足预设条件,则所述接入的边缘节点配置为直接接入所述中心节点,否则所述客户端经由与所接入的边缘节点相关的汇聚节点接入所述中心节点,
其中所述相关的汇聚节点为与所述边缘节点和中心节点均能接入的汇聚节点。
进一步地,所述预设条件为:
所述边缘节点与所述中心节点的链路路径小于预定阈值;并且
所述链路路径涉及的所述边缘节点与所述中心节点的IP地址属于同一地区。
进一步地,所述每个边缘节点均配置有多个服务器,包括成对设置的流媒体服务器和信令服务器,其中
流媒体服务器,接收接入所述流媒体服务器的客户端的音视频数据的推送;
信令服务器,接收接入所述信令服务器的客户端的服务指令的推送。
进一步地,所述每个服务器根据自身的负载状态确定是否继续响应客户端的接入。
本发明第三方面提供一种客户端,包括:
接入模块,用于选择边缘节点接入,其中,基于所接入的边缘节点到中心节点的链路路径,所述接入模块通过所选择的边缘节点直接接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;
上传模块,用于将所述客户端的上传数据推送至所述接入的边缘节点,并传输至所述中心节点;
接收模块,用于接收所述中心节点响应于所述上传数据的请求返回另一个所述客户端的数据。
进一步地,所述客户端还包括:
显示模块,用于向用户显示边缘节点列表,其中所述边缘节点列表包括多个备选边缘节点;
响应模块,用于响应于用户对所述备选边缘节点的选择,对所选择的边缘节点进行响应测试;
通过所述接入模块选择所述测试中响应最快的边缘节点接入。
进一步地,所述客户端还包括:
监控模块,用于监测当前接入的边缘节点的网络状况,若出现异常则自动连接所述响应模块提供的所述响应测试中响应速度前N名的边缘节点列表中当前边缘节点以外的响应最快节点进行接入,其中N≥3。
进一步地,当用户仅选择一个备选边缘节点时,所述接入模块根据历史连接记录自动从备选边缘节点中选择最快的M个边缘节点;
所述响应模块对所选择的边缘节点和所述M个边缘节点进行响应测试,其中M≥3。
本发明第四方面提供一种中心节点,包括:
接入模块,用于根据与边缘节点的链路路径来选择直接接入边缘节点,或者通过接入的汇聚节点连接接入所述汇聚节点的边缘节点;
接收模块,用于接收接入所述边缘节点的客户端的上传数据;
发送模块,用于根据所述客户端的上传数据的请求返回另一个所述客户端的数据。
本发明第五方面提供一种通信系统,包括
多个客户端、边缘节点、汇聚节点和中心节点,其中
客户端分别选择边缘节点并接入,将所述客户端的音视频文件和服务指令推送至所接入的边缘节点,所接入的边缘节点基于与中心节点的链路路径选择直接接入到中心节点,或者通过相关的汇聚节点连接接入所述中心节点,所述中心节点通过所接入的边缘节点接收所述客户端的上传数据;
所述中心节点根据接收到的一个所述客户端的上传数据的请求返回另一个所述客户端的上传数据。
本发明的有益效果如下:
本发明提供的一种基于TCP的通信方法能够实现根据数据链路路径选择接入中心节点的方式,通过客户端—中心节点的方式进行交互通信,满足在在线教室中参与教学活动中的至少两个客户端的互动,并通过使用TCP协议进行数据传输从而实现低延时、可扩展的实时在线教育。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明。
图1示出本发明的一个实施例所述的通信方法的场景架构示意图;
图2示出本发明的一个实施例所述的通信方法的流程图;
图3示出本发明的另一个实施例所述的选择边缘节点的流程图;
图4示出本发明的另一个实施例所述的客户端的示意图;
图5示出本发明的另一个实施例所述的客户端的示意图;
图6示出本发明的另一个实施例所述的在线教学的场景示意图。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
近年来,随着远程实时通信的发展,在线教育行业逐渐兴起。由于在线教育有很强的互动性,因此对涉及链路路径复杂的实时在线教育的通信方法在链路响应速度上设置有很严格的限制。如图1和图2所示,本发明的一个实施例提供了一种基于TCP的通信方法,包括:客户端选择边缘节点进行接入,其中,基于所接入的边缘节点到中心节点的链路路径,所述客户端配置为直接通过所选择的边缘节点接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;所述客户端与所述中心节点进行服务交互,通过所述中心节点获取所述客户端请求的服务指令和/或来自其它客户端的数据。
在一个具体的示例中,如图1所示,客户端可以为电脑上的应用软件,也可以为智能手机、PAD上的APP。中心节点用于处理业务逻辑、提供所述客户请求的结果,并接收所述流媒体文件和所述在线教育的课件服务信令。边缘节点用于提供所述客户端的接入服务,包括流媒体服务器和信令服务器,其中所述流媒体服务器用于所述音视频的推送和拉取,所述信令服务器用于所述课件服务信令,所述流媒体服务器和信令服务器成对设置。汇聚节点用于提供所述音视频和课件服务信令的转发服务。
在本实施例中,第一客户端200为PAD上的APP,第二客户端300为电脑上的应用软件。
首先,中心节点100建立在线教室。
其次,第一客户端200选择边缘节点400并接入,将本地的音视频文件表现为媒体流文件推送至所述边缘节点400的流媒体服务器、将用户请求和课件服务请求表现为服务指令发送至所述边缘节点400的信令服务器。所述边缘节点400根据到所述中心节点100的链路路径长度是否小于预定阈值、所述边缘节点和中心节点的IP地址是否为同一区域、实际网络连接状况和对数据传输的延时估计是否符合在线教育的延迟阈值进行判断,选择接入到中心节点100的路由路径,其中所述同一区域包括同一地区或国家。在本实施例中所述区域为国家,所述边缘节点到中心节点满足上述条件,选择直接接入。即所述边缘节点400直接接入到中心节点100,进入所述在线教室,并将所述第一终端200的媒体流文件和服务指令传输至中心节点100。
类似的,所述第二客户端300选择边缘节点500并接入,所述边缘节点500到所述中心节点100的链路路径长度大于预定阈值、所述边缘节点和中心节点的IP不属于同一个国家、实际网络连接状况和对数据传输的延时估计不符合在线教育的延迟阈值,因此,所述边缘节点400先接入到汇聚节点500,然后经汇聚节点500转发接入到中心节点100,从而进入所述在线教室,并将所述第二客户端300的媒体流文件和服务指令传输至中心节点100。其中,所述汇聚节点500为所述边缘节点400和中心节点100均能接入的汇聚节点。
所述中心节点100接收第一客户端200和第二客户端300分别发送的媒体流文件和服务指令,并根据服务指令中的请求分别将两个客户端请求的服务指令和媒体流文件返回到各自请求的客户端,所述客户端接收并执行返回的服务指令,并播放媒体流文件,例如返回的是课件服务的翻页指令,则客户端执行该指令,将当前课件的下一页呈现在客户端用户面前。
如此,客户端接入边缘节点,推送媒体流文件和服务指令,再根据链路路径直接接入中心节点或经过汇聚节点中继转发接入中心节点,将媒体流文件和服务指令传输至中心节点,完成了上行数据传输。中心节点根据接收的服务指令中的请求,将客户端请求的服务指令和/或其他客户端的媒体流文件返回所述提出请求的客户端,下行数据链路也根据链路路径直接传输至边缘节点或经过汇聚节点中继转发传输至边缘节点,从而完成客户端与中心节点的服务交互。本领域技术人员应当理解,所述客户端与中心节点的服务交互可以使用同一路由路径,也可以使用不同的路由路径,应该按照实际需要进行设计。
在一个优选的实施例中,如图3所示,客户端选择边缘节点进行接入包括:客户端向用户显示边缘节点列表,其中所述边缘节点列表包括多个备选边缘节点;响应于用户对备选边缘节点的选择,客户端对所选择的边缘节点进行响应测试;所述客户端选择所述测试中响应最快的边缘节点接入。在选择接入边缘节点时,首先,客户端对可供选择的边缘节点进行粗选生成备选边缘节点列表,其中所述可供选择的边缘节点或者为所有覆盖的边缘节点,或者为根据历史记录连接的边缘节点,用户从所述备选边缘节点列表中选择至少3个边缘节点进行响应测试。具体表现为,客户端对用户选择的每个边缘节点所对应的服务器进行5次Ping指令响应测试,然后对Ping指令的响应结果进行快慢排序,将排序中最快的服务器作为结果返回客户端。在这里要特别指出的是,由于表现层web层面的技术限制,因此所述Ping指令为应用层http层面上的Ping指令操作,而不是实际意义上的ICMP Ping指令。根据实际测试的数据表明,对于客户端使用应用层的Ping指令进行的响应测试引起的结果误差是可以接受的。
然后,客户端提供所述响应测试中前N个响应速度最快的边缘节点列表呈现给用户,用户从列表中选择一个边缘节点进行接入,接入后,所述客户端持续监测当前接入的边缘节点的网络状况,若出现异常,则自动连接所述前N个响应速度最快的边缘节点列表中当前边缘节点以外的响应最快节点进行接入,其中N≥3,以确保实时通信的正常进行。
在一个优选的实施例中,若用户仅选择一个备选边缘节点进行响应测试时,则所述客户端根据历史连接记录自动从备选的边缘节点中选择最快的M个边缘节点;所述客户端对所选择的边缘节点和所述M个边缘节点进行响应测试,其中M≥3。其目的在于提供给客户端多个可接入的边缘节点,以避免已接入的边缘节点出现异常情况时影响在线教学,例如丢包率急剧增加、延迟不足以满足正常的在线交互等等。
在一个优选的实施例中,根据边缘节点与中心节点的链路路径是否满足预设条件判断接入中心节点的路由路径。所述预设条件包括:所述边缘节点与所述中心节点的链路路径小于预定阈值;并且所述链路路径涉及的所述边缘节点与所述中心节点的IP地址属于同一地区。根据链路路径长度对数据传输的延时进行估计,定义满足实时通信的链路路径长度阈值。同时,还应考虑所述链路路径涉及的所述边缘节点与所述中心节点的IP地址属于同一地区。在本实施例中,所述地区为国家,基于TCP协议进行传输的跨国通信能够避免基于UDP协议传输时导致的严重丢包、运营商拦截、用户量级轻等问题。
当所述链路路径满足预设条件则客户端接入的边缘节点可以直接接入所述中心节点;否则所述客户端经由与所接入的边缘节点相关的汇聚节点接入所述中心节点,其中所述相关的汇聚节点为与所述边缘节点和中心节点均能接入的汇聚节点。即当所述链路路径大于等于预定义的阈值时,所述边缘节点和中心节点不属于同一国家时,客户端所接入的边缘节点需要经由汇聚节点进行中继转发,接入中心节点。其中,选择接入的汇聚节点需要同时满足与所述边缘节点和中心节点的链路路径小于阈值。
在另一个优选的实施例中,判断边缘节点和中心节点是否满足预设条件后,可以采用动态选择路由路径,也可以选择人工部署路由路径。
例如采用动态选择路由路径,当边缘节点和中心节点满足预设条件,边缘节点可以通过响应测试或其他能够达到相同目的的方法选择要接入的中心节点。当边缘节点和中心节点不满足预设条件,边缘节点通过响应测试或其他能够达到相同目的的方法查找可以连接的汇聚节点,并且计算所述汇聚节点是否可以接入中心节点,从而确定路由路径。
例如采用人工部署路由路径,假设将某个固定区域作为在线教育中老师集中的工作地点,则在所述固定区域设置边缘节点,若边缘节点和中心节点满足预设条件,则可以设置专线直接连接所述边缘节点和中心节点;否则在所述边缘节点和中心节点的链路路径中选择最恰当的地方设置汇聚节点,然后在边缘节点、汇聚节点和中心节点之间设置专线连接,以确保获得最优的传输效率。
本领域技术人员应当理解,本发明的技术方案包括但不限于上述实施方式,本领域技术人员应当按照实际情况进行设计,实现传输效率最优能够最大程度满足在线教育的需求。
相对应的,本发明的另一个实施例提供了一种通信方法,包括:基于与边缘节点的链路路径,中心节点配置为选择直接通过边缘节点连接接入所述边缘节点的客户端,或者通过汇聚节点经由接入所述汇聚节点的边缘节点连接接入所述边缘节点的所述客户端;所述中心节点与所述客户端进行服务交互,将所述客户端请求的服务指令和/或来自其它客户端的数据发送给所述客户端。其中,所述链路路径也需要根据上述预设条件进行判断,以确定中心节点与边缘节点的路由路径。
在一个优选的实施例中,每个边缘节点均配置有多个服务器,包括成对设置的流媒体服务器和信令服务器,每个服务器根据自身的负载状态确定是否继续响应客户端的接入。其中,所述边缘节点的流媒体服务器接收接入所述流媒体服务器的客户端的音视频文件的推送;所述边缘节点的信令服务器接收所述客户端服务指令的推送。具体表现为:所述响应测试还响应于所述边缘节点服务器的选举结果,当所述备选服务器在响应所述响应测试时,服务器根据自身负载状况进行选举,例如将所述服务器的CPU使用率、内存占用量、网络带宽和连接数量等作为选举因子进行排队,若备选服务器的负载状况大于预先设置的负载阈值则不符合选举条件,退出竞争。所述退出竞争的服务器原有已经接入的客户端业务不会因选举排队受到影响,只是不再响应新的客户端的接入请求。即当新的客户端接入请求时,不会再接入负载状况大于负载阈值的备选服务器,从而保证了实时通信过程中服务器的响应速度,避免因服务器负载太大而导致的网络拥堵,进一步确保数据传输的时延性和通畅程度。本领域技术人员应当理解,所述服务器包括但不限于所述边缘节点的流媒体服务器和信令服务器,还可以包括汇聚节点和中心节点的服务器,本领域技术人员可以按照实际需要进行设计。
本发明的另一个实施例提出了一种客户端,如图4所示,包括:接入模块,用于选择边缘节点接入,其中,基于所接入的边缘节点到中心节点的链路路径,所述接入模块通过所选择的边缘节点直接接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;上传模块,用于将所述客户端的上传数据推送至所述接入的边缘节点,并传输至所述中心节点;接收模块,用于接收所述中心节点响应于所述上传数据的请求返回另一个所述客户端的数据。
在一个优选的实施例中,如图5所示,所述客户端还包括:显示模块,用于向用户显示边缘节点列表,其中所述边缘节点列表包括多个备选边缘节点;响应模块,用于响应于用户对所述备选边缘节点的选择,对所选择的边缘节点进行响应测试;通过所述接入模块选择所述测试中响应最快的边缘节点接入。进一步地,当用户仅选择一个备选边缘节点时,所述接入模块根据历史连接记录自动从备选边缘节点中选择最快的M个边缘节点;所述响应模块对所选择的边缘节点和所述M个边缘节点进行响应测试,其中M≥3。
在另一个优选的实施例中,如图5所示,所述客户端还包括:监控模块,用于监测当前接入的边缘节点的网络状况,若出现异常则自动连接所述响应模块提供的所述响应测试中响应速度前N名的边缘节点列表中当前边缘节点以外的响应最快节点进行接入,其中N≥3。
相对应的,本发明的另一个实施例提供了一种中心节点,包括:接入模块,用于根据与边缘节点的链路路径来选择直接接入边缘节点,或者通过接入的汇聚节点连接接入所述汇聚节点的边缘节点;接收模块,用于接收接入所述边缘节点的客户端的上传数据;发送模块,用于根据所述客户端的上传数据的请求返回服务指令和/或另一个所述客户端的数据。
本领域技术人员应当理解,根据本发明上述多个实施例给出的教导,以下通信系统也在本发明的保护范围内。
一种通信系统,包括多个客户端、边缘节点、汇聚节点和中心节点,其中,客户端分别选择边缘节点并接入,将所述客户端的音视频文件和服务指令推送至所接入的边缘节点,所接入的边缘节点基于与中心节点的链路路径选择直接接入到中心节点,或者通过相关的汇聚节点连接接入所述中心节点,所述中心节点通过所接入的边缘节点接收所述客户端的上传数据;所述中心节点根据接收到的一个所述客户端的上传数据的请求返回服务指令和/或另一个所述客户端的上传数据。
在一个具体的示例中,如图6所示,中心节点提供了在线教室,位于中国北京的学生A和位于美国华盛顿的老师B均使用所述客户端通过所述“边缘节点—中心节点”或者“边缘节点—汇聚节点—中心节点”进入在线教室使用课件进行一对一的在线上课,学生A和老师B通过服务指令和音视频互动完成课堂教学。本实施例中,所述实时通信系统的总部设置在北京,并且由于北京地区的用户占比多、流量大,相应部署的服务器数量也多。因此链路路径满足预设条件,学生A的客户端选择并接入了边缘节点的流媒体服务器C和信令服务器D。
在上课过程中,学生A的一举一动由客户端采集后表现为媒体流数据通过接入的流媒体服务器C和信令服务器D进行上传,由于学生A所在地部署的服务器数量较多,从边缘节点到中心节点的数据链路路径相对较短,并且所述边缘节点和中心节点处于同一国家,互联网丢包问题不明显,因此包含学生A的媒体流数据上传至接入的流媒体服务器C,所述流媒体服务器C直接接入中心节点,使用多径TCP协议将媒体流数据直接传输至中心节点,中心节点接收所述媒体流数据。相类似的,学生A对课件的操作表现为服务指令请求,和学生A的其他服务指令请求从客户端上传至接入的信令服务器D,所述信令服务器D直接接入中心节点,使用多径TCP协议将服务指令请求直接传输至中心节点,中心节点接收并处理所述学生A的服务指令请求。
同时,位于美国华盛顿的老师B也通过客户端和学生A进行互动教学,在本实施例中,由于美国的用户相比于国内少很多,相应的服务器的部署相对较少,因此老师B的客户端选择并接入所述位于美国华盛顿的流媒体服务器E和信令服务器F。
在与学生A互动教学的过程中,老师B通过客户端使用TCP协议向中心节点发送服务指令请求,例如请求获得学生A的音视频数据,由于从美国华盛顿的边缘节点到中国北京的中心节点的数据链路路径相对较长,覆盖效果相对较弱,延时估计较大,并且所处地理位置不属于同一国家,因此链路路径不满足预设条件,流媒体服务器E和信令服务器F需要通过位于美国硅谷的汇聚节点进行中继转发,将老师B的服务指令请求发送至中国北京的中心节点,所述中心节点接收到老师B的服务指令请求后将学生A的音视频媒体流数据和服务指令通过位于美国硅谷的汇聚节点转发至位于美国华盛顿的流媒体服务器E和信令服务器F,老师B通过客户端从流媒体服务器E拉取媒体流数据、从信令服务器F获得学生A的服务指令。
同时,老师B的一举一动由客户端采集后表现为媒体流数据通过接入的流媒体服务器E和信令服务器F进行上传,通过边缘节点—汇聚节点—中心节点传输至中心节点,中心节点根据学生A的请求将老师B的音视频媒体流数据和服务指令通过中心节点—边缘节点返回给学生A。至此,实现了位于中国北京的学生A和位于美国华盛顿的老师B之间的数据传输和数据交换,从而实现了实时在线教学。
在另一个实施例中,所述学生A和老师B均位于中国北京,所述学生A和老师B的客户端分别选择接入边缘节点,由于学生A和老师B所在地部署的服务器数量很多,从边缘节点到中心节点的数据链路路径相对较短,并且学生A接入的边缘节点和中心节点处于同一国家,老师B接入的边缘节点和中心节点也处于同一国家,互联网丢包问题不明显,因此链路路径均满足预设条件,学生A接入的边缘节点直接接入中心节点,老师B接入的边缘节点也直接接入中心节点,分别使用多径TCP协议传输媒体流数据和服务指令至中心节点,中心节点分别接收并处理所述学生A和老师B所述媒体流数据和服务指令,实现了所述学生A和老师B的实时在线教学。
在另一个实施例中,所述学生A位于英国伦敦,老师B位于美国华盛顿,所述学生A和老师B的客户端分别选择接入边缘节点,由于学生A和老师B所在地部署的服务器数量较少,从边缘节点到中心节点的数据链路路径相对较长,覆盖效果相对较弱,延时估计较大,则学生A所接入的边缘节点与中心节点不满足预设条件,老师B所接入的边缘节点与中心节点也不满足预设条件。因此学生A接入位于英国的边缘节点,并需要通过位于德国法兰克福的汇聚节点转发再接入位于中国北京的中心节点。老师B接入位于美国华盛顿的边缘节点,也需要通过位于美国硅谷的汇聚节点转发再接入位于中国北京的中心节点。其中所述英国的边缘节点到法兰克福的汇聚节点、所述法兰克福的汇聚节点到中国北京的中心节点、所述美国华盛顿的边缘节点到美国硅谷的汇聚节点、所述美国硅谷的汇聚节点到中国北京的中心节点均使用专线连接,以确保在线教育过程中互动双方的延时小于等于500ms的延时阈值。
本领域技术人员应当理解,所述中心节点部署的位置,与边缘节点是否直接连接或者需要经过汇聚节点转发,仅与所述边缘节点和中心节点之间的数据链路路径长度和所在地区部署的服务器数量有关。本领域技术人员可以根据实际需要设计和部署节点服务器,以及节点服务器之间是否使用专线连接,在此不再赘述。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
Claims (17)
1.一种基于TCP的通信方法,其特征在于,包括:
客户端选择边缘节点进行接入,其中,基于所接入的边缘节点到中心节点的链路路径,所述客户端配置为直接通过所选择的边缘节点接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;
所述客户端与所述中心节点进行服务交互,通过所述中心节点获取所述客户端请求的来自其它客户端的数据。
2.根据权利要求1所述的通信方法,其特征在于,所述客户端选择边缘节点进行接入包括:
客户端向用户显示边缘节点列表,其中所述边缘节点列表包括多个备选边缘节点;
响应于用户对备选边缘节点的选择,所述客户端对所选择的边缘节点进行响应测试;
所述客户端选择所述测试中响应最快的边缘节点进行接入。
3.根据权利要求2所述的通信方法,其特征在于,
所述客户端提供所述响应测试中响应速度前N名的边缘节点列表;
所述客户端监测当前接入的边缘节点的网络状况,若出现异常,则自动连接所述前N快的边缘节点列表中当前边缘节点以外的响应最快节点进行接入,其中N≥3。
4.根据权利要求2所述的通信方法,其特征在于,
当用户仅选择一个备选边缘节点时,所述客户端根据历史连接记录自动从备选边缘节点中选择最快的M个边缘节点;
所述客户端对用户所选择的边缘节点和所述M个边缘节点进行响应测试,其中M≥3。
5.根据权利要求1所述的通信方法,其特征在于,
所述链路路径满足预设条件,则所述接入的边缘节点配置为直接接入所述中心节点,否则所述客户端经由与所接入的边缘节点相关的汇聚节点接入所述中心节点,
其中所述相关的汇聚节点为与所述边缘节点和中心节点均能接入的汇聚节点。
6.根据权利要求5所述的通信方法,其特征在于,
所述预设条件为:
所述边缘节点与所述中心节点的链路路径小于预定阈值;并且
所述链路路径涉及的所述边缘节点与所述中心节点的IP地址属于同一地区。
7.一种基于TCP的通信方法,其特征在于,包括:
基于与边缘节点的链路路径,中心节点配置为选择直接通过边缘节点连接接入所述边缘节点的客户端,或者通过汇聚节点经由接入所述汇聚节点的边缘节点连接接入所述边缘节点的所述客户端;
所述中心节点与所述客户端进行服务交互,将所述客户端请求的来自其它客户端的数据发送给所述客户端。
8.根据权利要求7所述的通信方法,其特征在于,
所述链路路径满足预设条件,则所述接入的边缘节点配置为直接接入所述中心节点,否则所述客户端经由与所接入的边缘节点相关的汇聚节点接入所述中心节点,
其中所述相关的汇聚节点为与所述边缘节点和中心节点均能接入的汇聚节点。
9.根据权利要求8所述的通信方法,其特征在于,
所述预设条件为:
所述边缘节点与所述中心节点的链路路径小于预定阈值;并且
所述链路路径涉及的所述边缘节点与所述中心节点的IP地址属于同一地区。
10.根据权利要求7所述的通信方法,其特征在于,所述每个边缘节点均配置有多个服务器,包括成对设置的流媒体服务器和信令服务器,其中
流媒体服务器,接收接入所述流媒体服务器的客户端的音视频数据的推送;
信令服务器,接收接入所述信令服务器的客户端的服务指令的推送。
11.根据权利要求10所述的通信方法,其特征在于,所述每个服务器根据自身的负载状态确定是否继续响应客户端的接入。
12.一种客户端,其特征在于,包括:
接入模块,用于选择边缘节点接入,其中,基于所接入的边缘节点到中心节点的链路路径,所述接入模块通过所选择的边缘节点直接接入中心节点,或者通过所选择的边缘节点经由与所选择的边缘节点相关的汇聚节点接入所述中心节点;
上传模块,用于将所述客户端的上传数据推送至所述接入的边缘节点,并传输至所述中心节点;
接收模块,用于接收所述中心节点响应于所述上传数据的请求返回另一个所述客户端的数据。
13.根据权利要求12所述的客户端,其特征在于,所述客户端还包括:
显示模块,用于向用户显示边缘节点列表,其中所述边缘节点列表包括多个备选边缘节点;
响应模块,用于响应于用户对所述备选边缘节点的选择,对所选择的边缘节点进行响应测试;
通过所述接入模块选择所述测试中响应最快的边缘节点接入。
14.根据权利要求12所述的客户端,其特征在于,所述客户端还包括:
监控模块,用于监测当前接入的边缘节点的网络状况,若出现异常则自动连接所述响应模块提供的所述响应测试中响应速度前N名的边缘节点列表中当前边缘节点以外的响应最快节点进行接入,其中N≥3。
15.根据权利要求13所述的客户端,其特征在于,
当用户仅选择一个备选边缘节点时,所述接入模块根据历史连接记录自动从备选边缘节点中选择最快的M个边缘节点;
所述响应模块对所选择的边缘节点和所述M个边缘节点进行响应测试,其中M≥3。
16.一种中心节点,其特征在于,包括:
接入模块,用于根据与边缘节点的链路路径来选择直接接入边缘节点,或者通过接入的汇聚节点连接接入所述汇聚节点的边缘节点;
接收模块,用于接收接入所述边缘节点的客户端的上传数据;
发送模块,用于根据所述客户端的上传数据的请求返回另一个所述客户端的数据。
17.一种通信系统,其特征在于,包括多个客户端、边缘节点、汇聚节点和中心节点,其中
客户端分别选择边缘节点并接入,将所述客户端的音视频文件和服务指令推送至所接入的边缘节点,所接入的边缘节点基于与中心节点的链路路径选择直接接入到中心节点,或者通过相关的汇聚节点连接接入所述中心节点,所述中心节点通过所接入的边缘节点接收所述客户端的上传数据;
所述中心节点根据接收到的一个所述客户端的上传数据的请求返回另一个所述客户端的上传数据。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810215614.XA CN108600165A (zh) | 2018-03-15 | 2018-03-15 | 基于tcp的通信方法、客户端、中心节点和通信系统 |
PCT/CN2018/105449 WO2019174208A1 (zh) | 2018-03-15 | 2018-09-13 | 基于tcp的通信方法、客户端、中心节点和通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810215614.XA CN108600165A (zh) | 2018-03-15 | 2018-03-15 | 基于tcp的通信方法、客户端、中心节点和通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108600165A true CN108600165A (zh) | 2018-09-28 |
Family
ID=63626559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810215614.XA Pending CN108600165A (zh) | 2018-03-15 | 2018-03-15 | 基于tcp的通信方法、客户端、中心节点和通信系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108600165A (zh) |
WO (1) | WO2019174208A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110942611A (zh) * | 2019-12-12 | 2020-03-31 | 上海邦芯物联网科技有限公司 | 一种实时通讯方法及系统 |
CN111818145B (zh) * | 2020-06-29 | 2021-03-23 | 苏州好玩友网络科技有限公司 | 一种文件传输方法、装置、系统、设备及存储介质 |
CN114007042A (zh) * | 2021-10-25 | 2022-02-01 | 京东方科技集团股份有限公司 | 网络摄像头的配置方法及装置、存储介质、电子设备 |
CN114466008A (zh) * | 2021-12-22 | 2022-05-10 | 天翼云科技有限公司 | 一种云边通信系统、方法、装置、电子设备及存储介质 |
WO2024087692A1 (zh) * | 2022-10-27 | 2024-05-02 | 华为技术有限公司 | 设备管理方法、设备、系统和存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111786901B (zh) * | 2020-05-21 | 2023-08-22 | 网宿科技股份有限公司 | 一种传输参数自适应调整方法及加速服务系统 |
CN114844804B (zh) * | 2022-06-01 | 2023-07-25 | 重庆奥普泰通信技术有限公司 | 网络测量方法、系统、电子设备及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729273A (zh) * | 2008-10-27 | 2010-06-09 | 中国移动通信集团公司 | 一种流媒体分发系统、方法及装置 |
CN101919209A (zh) * | 2008-01-23 | 2010-12-15 | 艾利森电话股份有限公司 | 在固定接入通信网络中选择边缘节点 |
CN101938483A (zh) * | 2010-09-03 | 2011-01-05 | 中兴通讯股份有限公司 | 一种直播内容分发方法和系统 |
CN102546226A (zh) * | 2010-12-08 | 2012-07-04 | 中国科学院声学研究所 | 一种基于多节点提供网络服务的系统及方法 |
US20140317176A1 (en) * | 2012-08-19 | 2014-10-23 | Box, Inc. | Enhancement of upload and/or download performance based on client and/or server feedback information |
CN106792261A (zh) * | 2016-11-22 | 2017-05-31 | 北京大米科技有限公司 | 用于流媒体转发的方法及装置、路由方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100391178C (zh) * | 2003-08-19 | 2008-05-28 | 华为技术有限公司 | 一种在网络中选择服务器的方法 |
CN102158518B (zh) * | 2010-12-03 | 2014-04-30 | 华为技术有限公司 | 一种cdn网络中的数据传输方法、网络节点及系统 |
CN106488504B (zh) * | 2015-08-28 | 2019-12-24 | 华为技术有限公司 | 网络系统和网络通信的方法 |
US11025477B2 (en) * | 2015-12-31 | 2021-06-01 | Akamai Technologies, Inc. | Overlay network ingress edge region selection |
CN106230971B (zh) * | 2016-08-29 | 2019-03-01 | 无锡华云数据技术服务有限公司 | 基于cdn的大文件分发方法 |
-
2018
- 2018-03-15 CN CN201810215614.XA patent/CN108600165A/zh active Pending
- 2018-09-13 WO PCT/CN2018/105449 patent/WO2019174208A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101919209A (zh) * | 2008-01-23 | 2010-12-15 | 艾利森电话股份有限公司 | 在固定接入通信网络中选择边缘节点 |
CN101729273A (zh) * | 2008-10-27 | 2010-06-09 | 中国移动通信集团公司 | 一种流媒体分发系统、方法及装置 |
CN101938483A (zh) * | 2010-09-03 | 2011-01-05 | 中兴通讯股份有限公司 | 一种直播内容分发方法和系统 |
CN102546226A (zh) * | 2010-12-08 | 2012-07-04 | 中国科学院声学研究所 | 一种基于多节点提供网络服务的系统及方法 |
US20140317176A1 (en) * | 2012-08-19 | 2014-10-23 | Box, Inc. | Enhancement of upload and/or download performance based on client and/or server feedback information |
CN106792261A (zh) * | 2016-11-22 | 2017-05-31 | 北京大米科技有限公司 | 用于流媒体转发的方法及装置、路由方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110942611A (zh) * | 2019-12-12 | 2020-03-31 | 上海邦芯物联网科技有限公司 | 一种实时通讯方法及系统 |
CN111818145B (zh) * | 2020-06-29 | 2021-03-23 | 苏州好玩友网络科技有限公司 | 一种文件传输方法、装置、系统、设备及存储介质 |
CN114007042A (zh) * | 2021-10-25 | 2022-02-01 | 京东方科技集团股份有限公司 | 网络摄像头的配置方法及装置、存储介质、电子设备 |
CN114466008A (zh) * | 2021-12-22 | 2022-05-10 | 天翼云科技有限公司 | 一种云边通信系统、方法、装置、电子设备及存储介质 |
CN114466008B (zh) * | 2021-12-22 | 2023-10-13 | 天翼云科技有限公司 | 一种云边通信系统、方法、装置、电子设备及存储介质 |
WO2024087692A1 (zh) * | 2022-10-27 | 2024-05-02 | 华为技术有限公司 | 设备管理方法、设备、系统和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2019174208A1 (zh) | 2019-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108600165A (zh) | 基于tcp的通信方法、客户端、中心节点和通信系统 | |
Liotta | The cognitive NET is coming | |
Savage et al. | Detour: Informed Internet routing and transport | |
CN101626596B (zh) | 一种生成业务分流策略的方法、装置及系统 | |
CN102137005B (zh) | 一种通信系统中的数据转发方法、装置和系统 | |
CN100531143C (zh) | 一种媒体流转发方法和媒体服务器 | |
US20070110034A1 (en) | Pathways analysis and control in packet and circuit switched communication networks | |
WO2002033915A1 (en) | Method and apparatus for coordinating routing parameters via a back-channel communication medium | |
CN109996126A (zh) | 一种混合网络架构下的设备连接动态调度方法及系统 | |
CN113300955B (zh) | 内容分发网络中节点间路径确定方法、系统及设备 | |
WO2006074832A1 (en) | On-demand group communication services with quality of service (qos) guarantees | |
Tran et al. | QoE content distribution network for cloud architecture | |
Luo et al. | DigiMetro-an application-level multicast system for multi-party video conferencing | |
CN106331756A (zh) | 视频转发的路由选择装置及方法 | |
Farahani et al. | ALIVE: A Latency-and Cost-Aware Hybrid P2P-CDN Framework for Live Video Streaming | |
TWI581624B (zh) | 串流服務系統、串流服務方法以及串流服務控制裝置 | |
Song et al. | AI-driven Multipath Transmission: Empowering UAV-based Live Streaming | |
Kalan et al. | Implementation of sand architecture using sdn | |
Veytser et al. | An implementation of a common virtual multipoint interface in Linux | |
Bahnasse et al. | Dynamic Multipoint Virtual Private Network influence on Video Conferencing Quality of Service | |
Li et al. | Capability exposure Vitalizes 5G network | |
Sharma et al. | Distributed channel monitoring for wireless bandwidth aggregation | |
CN110166185A (zh) | 音频数据的处理方法、装置、存储介质和处理器 | |
EP3065352B1 (en) | Data transmission method, device and system | |
CN105052098B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180928 |
|
RJ01 | Rejection of invention patent application after publication |