CN110971938B - 数据传输方法、装置及系统 - Google Patents

数据传输方法、装置及系统 Download PDF

Info

Publication number
CN110971938B
CN110971938B CN201911267155.0A CN201911267155A CN110971938B CN 110971938 B CN110971938 B CN 110971938B CN 201911267155 A CN201911267155 A CN 201911267155A CN 110971938 B CN110971938 B CN 110971938B
Authority
CN
China
Prior art keywords
server
information
data
terminal
data request
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
Application number
CN201911267155.0A
Other languages
English (en)
Other versions
CN110971938A (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.)
Juhaokan Technology Co Ltd
Original Assignee
Juhaokan Technology Co Ltd
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 Juhaokan Technology Co Ltd filed Critical Juhaokan Technology Co Ltd
Priority to CN201911267155.0A priority Critical patent/CN110971938B/zh
Publication of CN110971938A publication Critical patent/CN110971938A/zh
Application granted granted Critical
Publication of CN110971938B publication Critical patent/CN110971938B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43637Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4122Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load

Abstract

本申请公开了一种数据传输方法、装置和系统,属于通信技术领域。所述方法包括:向依次连接的n个服务器中的第一服务器发送数据请求,以便于第一服务器将数据请求转发至n个服务器中的第n服务器;在第i服务器在对应的目标条件满足时,接收第一服务器发送的用于指示第i+1服务器故障的第一信息;在时长阈值内未接收到第一服务器发送的数据响应,且未接收到第一信息时,生成用于指示第一服务器故障的第二信息;其中,目标条件包括:在第i服务器向第i+1服务器发送数据请求后的目标时长内,未接收到数据响应。本申请解决了无法基于超时错误代码定位导致该超时错误的服务器的问题。本申请用于数据传输。

Description

数据传输方法、装置及系统
技术领域
本申请涉及通信技术领域,特别涉及一种数据传输方法、装置及系统。
背景技术
随着通信技术的发展,互联网电视的应用越来越广,互联网电视是一种基于互联网与服务平台进行数据传输的电视终端。
电视终端工作时需要从服务平台获取数据。示例地,通常电视终端向服务平台发送数据请求,进而接收服务平台发送的数据响应。相关技术中,电视终端中设置有时长阈值,若在电视终端发出数据请求之后的时长阈值内还未接收到数据响应,则电视终端会生成超时错误代码,以指示服务平台发生超时错误。此时,说明服务平台发生错误未及时响应电视终端发出的数据请求。
由于服务平台包括多个服务器,数据请求会通过服务平台中的至少一个服务器传输至服务平台中的目的服务器,且目的服务器发送的数据响应也会通过该至少一个服务器传输至电视终端。但是,超时错误代码仅能够指示服务平台发生超时错误,而并不能指示该超时错误具体由服务平台中的哪个服务器导致,因此,工作人员无法基于超时错误代码定位导致该超时错误的服务器,进而无法对服务平台的超时错误进行修复。
发明内容
本申请提供了一种数据传输方法、装置和系统,可以解决无法基于超时错误代码定位导致该超时错误的服务器的问题。所述技术方案如下:
一方面,提供了一种数据传输方法,所述方法包括:
向依次连接的n个服务器中的第一服务器发送数据请求,以便于所述第一服务器将所述数据请求转发至所述n个服务器中的第n服务器,其中,Li<Li+1,Li表示所述n个服务器中的第i服务器与终端的路由距离,Li+1表示所述n个服务器中的第i+1服务器与所述终端的路由距离,n≥2,1≤i<i+1≤n;
在所述第i服务器在对应的目标条件满足时,接收所述第一服务器发送的用于指示所述第i+1服务器故障的第一信息;
在时长阈值内未接收到所述第一服务器发送的数据响应,且未接收到所述第一信息时,生成用于指示所述第一服务器故障的第二信息;
其中,所述目标条件包括:在所述第i服务器向所述第i+1服务器发送所述数据请求后的目标时长内,未接收到所述数据响应。
另一方面,提供了一种数据传输方法,用于依次连接的n个服务器中的第i服务器,n≥2,1≤i≤n-1,所述方法包括:
接收终端发送的数据请求;
向所述n个服务器中的第i+1服务器发送所述数据请求;
在向所述第i+1服务器发送所述数据请求后的目标时长内,若未接收到所述第i+1服务器发送的数据响应,则生成用于指示所述第i+1服务器故障的第一信息;
向所述终端发送所述第一信息。
再一方面,提供了一种终端,所述终端包括:
发送模块,用于向依次连接的n个服务器中的第一服务器发送数据请求,以便于所述第一服务器将所述数据请求转发至所述n个服务器中的第n服务器,其中,Li<Li+1,Li表示所述n个服务器中的第i服务器与终端的路由距离,Li+1表示所述n个服务器中的第i+1服务器与所述终端的路由距离,n≥2,1≤i<i+1≤n;
接收模块,用于在所述第i服务器在对应的目标条件满足时,接收所述第一服务器发送的用于指示所述第i+1服务器故障的第一信息;
生成模块,用于在时长阈值内未接收到所述第一服务器发送的数据响应,且未接收到所述第一信息时,生成用于指示所述第一服务器故障的第二信息;
其中,所述目标条件包括:在所述第i服务器向所述第i+1服务器发送所述数据请求后的目标时长内,未接收到所述数据响应。
又一方面,提供了一种服务器,所述服务器为依次连接的n个服务器中的第i服务器,n≥2,1≤i≤n-1,所述服务器包括:
接收模块,用于接收终端发送的数据请求;
第一发送模块,用于向所述n个服务器中的第i+1服务器发送所述数据请求;
生成模块,用于在向所述第i+1服务器发送所述数据请求后的目标时长内,若未接收到所述第i+1服务器发送的数据响应,则生成用于指示所述第i+1服务器故障的第一信息;
第二发送模块,用于向所述终端发送所述第一信息。
又一方面,提供了一种数据传输系统,所述系统包括上述的终端和依次连接的n个服务器,所述n个服务器中的第i服务器为上述的服务器,n≥2,1≤i≤n-1。
本申请提供的技术方案带来的有益效果至少包括:
终端接收的第一信息或者终端生成的第二信息可以指示具体哪个服务器发生故障。进而,工作人员可以根据该第一信息或者第二信息,直接确定故障的服务器以对该故障的服务器进行修复。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据传输系统的结构示意图;
图2是本申请实施例提供的一种终端的硬件配置框图;
图3是本申请实施例提供的一种终端功能配置示意图;
图4是本申请实施例提供的一种终端中软件系统的配置框图;
图5是本申请实施例提供的一种服务器的结构示意图;
图6是本申请实施例提供的一种数据传输方法的流程图;
图7是本申请实施例提供的另一种数据传输方法的流程图;
图8是本申请实施例提供的再一种数据传输方法的流程图;
图9是本申请实施例提供的另一种终端的结构示意图;
图10是本申请实施例提供的另一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
目前在互联网电视产业里,各个电视终端在工作时需要从服务平台获取数据,电视终端和服务平台可以构成数据传输系统。服务平台为面向海量终端的一个云平台,通常存在成千上万的电视终端向服务平台中发送数据请求,在此种数据请求高并发的场景中,服务平台响应超时成为了常态。服务平台响应超时也即是服务平台超过时长阈值未将数据响应发送给电视终端。服务平台包括多个服务器,工作人员难以确定具体哪个服务器导致服务平台响应超时,进而难以对服务平台响应超时的问题进行修复。本申请实施例提供了一种数据传输方法,可以在服务平台发生响应超时的问题时确定导致该问题的服务器,进而便于工作人员对服务平台响应超时的问题进行修复。
图1是本申请实施例提供的一种数据传输系统的结构示意图。如图1所示,该系统10包括:终端102和服务平台(图中未标出),终端102与服务平台连接以进行数据传输。服务平台可以包括依次连接的n个服务器层,n≥2,每个服务器层包括至少一个服务器101。需要说明的是,本申请实施例中所述的“连接”均指的是通信连接。图1仅示出了数据传输系统10中的两个终端102。可选地,系统10包括的终端102的个数也可以为1个、3个、4个或者更多,服务平台包括的服务器层的个数也可以为2个、4个或者更多,每个服务器层中服务器101的个数也可以为2个、4个或者更多。
如图1所示,终端102可以与服务平台中的第一个服务器层通信连接,第一个服务器层与其他服务器层可以依次通信连接。两个服务器层通信连接也即是该两个服务器层中的服务器通信连接。服务器层与终端的路由距离越大,该服务器层的层级越大,某服务器层的层级为几也即是该服务器层为服务平台中的第几个服务器层。服务平台中第一个服务器层可以为网关层,服务平台中除第一个服务器层之外的其他服务器层可以为业务层,该网关层用于将终端与业务层进行连接,业务层用于接收网关层转发的终端的数据请求,并通过网关层向终端返回数据响应。示例地,终端可以通过网关层向目的业务层(该目的业务层可以为服务平台中的任一业务层)请求数据。当目的业务层与网关层之间还存在其他业务层时,该其他业务层可以称为负载均衡层,负载均衡层可以将终端发送的数据请求转发至目的业务层,以便于目的业务层根据该数据请求向终端返回数据响应。可选地,负载均衡层也可以根据该数据请求进行一定的数据处理,进而将数据处理结果与该数据请求一并发送至目的业务层,进而目的业务层可以根据接收到的数据请求以及数据处理结果确定需向终端返回的数据。接着,目的业务层可以将携带该数据的数据响应再依次经由负载均衡层以及网关层发送至终端。
示例地,假设终端与第一服务器连接,且第一服务器、第二服务器和第三服务器依次通信连接,第一服务器属于第一个服务器层,第二服务器属于第二个服务器层,第三服务器属于第三个服务器层。当第三服务器位于目的业务层,也即是终端需要向第三服务器请求数据时,终端可以将数据请求发送至第一服务器,进而第一服务器可以将该数据请求发送至第二服务器,以使第二服务器将该数据请求发送给第三服务器。第三服务器在接收到该数据请求后,根据该数据请求生成数据响应,且将该数据响应发送至第二服务器,进而第二服务器可以将该数据响应发送至第一服务器,以使第一服务器将该数据响应发送至终端。
可选地,终端与第一个服务器层中的服务器之间,以及两个服务器层中的服务器之间均可以通过有线网络或者无线网络连接,其中,有线网络可以包括但不限于:通用串行总线(英文:Universal Serial Bus;简称:USB),无线网络可以包括但不限于:无线保真(英文:Wireless Fidelity;简称:WIFI)、蓝牙、红外、紫蜂(英文:Zigbee)和数据网络等。
需要说明的是,服务平台中服务器层的层级以及服务器所属的服务器的层级,均可以与终端发送的数据请求所请求的数据的类型相关。当数据请求所请求的数据类型不同时,同一服务器层的层级可能不同,甚至同一服务器层包括的服务器也可能发生变化。示例地,假设当数据请求所请求的数据的类型为视频数据时,服务器a,b和c组成的服务器层为服务平台中的第二个服务器层。当数据请求所请求的数据的类型为网页数据时,服务器a,b和c组成的服务器层为服务平台中的第三个服务器层;也可能存在服务器a位于第二个服务器层,服务器b和c位于其他服务器层。需要说明的是,数据请求所请求的数据的类型还可以为其他数据类型,本申请实施例对此不做限定。
需要说明的是,本申请实施例中的服务器101可以为一个服务器,或者也可以为多个服务器组成的服务器集群。终端102可以为电视终端,如网络电视、智能电视或者互联网电视;也可以为智能手机、平板电脑、计算机、笔记本电脑或者可以与服务器进行数据传输的其他电子设备,本申请实施例对此不做限定。终端102可以为液晶显示器、OLED显示器和投影显示设备。具体显示设备类型,尺寸大小和分辨率等不作限定,本领技术人员可以理解的是,终端102可以根据需要做性能和配置上一些改变。
示例地,图2是本申请实施例提供的一种终端的硬件配置框图。如图2中示出,终端102中包括控制器210、调谐解调器220、通信接口230、检测器240、输入\输出接口250、视频处理器2601,音频处理器602,显示器280,音频输出270、存储器290,供电电源、红外接收器。
显示器280,用于接收源自视频处理器2601输入的图像信号,进行显示视频内容和图像以及菜单操控界面的组件。显示器280包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件。显示视频内容,可以来自广播电视内容,也可以是说,可通过有线或无线通信协议接收的各种广播信号。或者,可显示来自网络通信协议接收来自网络服务器端发送的各种图像内容。
同时,显示器280,同时显示终端102中产生且用于控制终端102的用户操控UI界面。
以及,根据显示器280类型不同,还包括用于驱动显示的驱动组件。或者,倘若显示器280为一种投影显示器,还可以包括一种投影装置和投影屏幕。
通信接口230是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信接口230可以是Wifi芯片231,蓝牙通信协议芯片232,有线以太网通信协议芯片233等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器(图中未示出)。
终端102可以通过通信接口230与外部控制设备或内容提供设备之间建立控制信号和数据信号发送和接收。以及,红外接收器可用于接收控制装置或遥控器(如:红外遥控器等)红外控制信号的接口器。
检测器240,是终端102用于采集外部环境或与外部交互的信号。检测器240包括光接收器242,用于采集环境光线强度的传感器,可以通过采集环境光可以自适应性显示参数变化等。
以及包括图像采集器241,如相机、摄像头等,可以用于采集外部环境场景,以及用于采集用户的属性或与用户交互手势,可以自适应变化显示参数,也可以识别用户手势,以实现与用户之间互动的功能。本申请中使用的术语“手势”,是指用户通过一种手型的变化或手部运动等动作,用于表达预期想法、动作、目的/或结果的用户行为。
在其他一些示例性实施例中,检测器240还可包括温度传感器等,如通过感测环境温度,终端102可自适应调整图像的显示色温。如当温度偏高的环境时,可调整终端102显示图像色温偏冷色调,或当温度偏低的环境时,可以调整终端102显示图像偏暖色调。
在其他一些示例性实施例中,检测器240还可包括声音采集器等,如麦克风,可以用于接收用户的声音,包括用户控制终端102的控制指令的语音信号,或采集环境声音,用于识别环境场景类型,终端102可以自适应适应环境噪声。
在其他一些示例性实施例中,检测器240还可包括触摸板和按键等。如:用户可以通过语音、触摸、手势、按压等动作实现用户指令的输入,保证用户与终端的交互。
输入/输出接口250,在控制器210的控制下终端102与外部其他设备间数据传输。如接收外部设备的视频信号和音频信号、或命令指令等数据。
其中,输入/输出接口250可以包括,但不限于如下:可以高清多媒体接口HDMI接口251、模拟或数据高清分量输入接口253、复合视频输入接口252、USB输入接口254、RGB端口(图中未示出)等任一个或多个接口。
在其他一些示例性实施例中,输入/输出接口250也可以上述多个接口形成复合性的输入/输出接口。
调谐解调器220,通过有线或无线接收方式接收广播电视信号,可以进行放大、混频和谐振等调制解调处理,从多个无线或有线广播电视信号中解调出用户所选择电视频道频率中所携带的电视音视频信号,以及EPG数据信号。
调谐解调器220,可根据用户选择,以及由控制器210控制,响应用户选择的电视信号频率以及该频率所携带的电视信号。
调谐解调器220,可以接收信号的途径,根据电视信号广播制式不同,有很多种,诸如:地面广播、有线广播、卫星广播或互联网广播信号等;以及根据调制类型不同,可以数字调制,也可以模拟调制方式。根据接收电视信号种类不同,可以模拟信号和数字信号。
在其他一些示例性实施例中,调谐解调器220也可设置在外置设备中,如外置机顶盒等。这样,机顶盒通过调制解调后输出电视音视频信号,经过输入/输出接口250输入终端102中。
视频处理器2601,用于将接收外部视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等等视频处理,可得到直接可终端102上显示或播放的信号。
示例的,视频处理器2601,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。
其中,解复用模块,用于对输入音视频数据流进行解复用处理,如输入MPEG2,则解复用模块进行解复用成视频信号和音频信号等。
视频解码模块,则用于对解复用后的视频信号进行处理,包括解码和缩放处理等。
图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的GUI信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。
帧率转换模块,用于对转换输入视频帧率,如将60Hz帧率转换为120Hz帧率或240Hz帧率,通常的格式采用如插帧方式实现。
显示格式化模块,则用于将接收帧率转换后视频输出信号,改变信号以符合显示格式的信号,如输出RGB数据信号。
音频处理器2602,用于接收外部的音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等处理,得到可以在扬声器中播放的声音信号。
在其他一些示例性实施例中,视频处理器2601可以包括一颗或多颗芯片组成。音频处理器2602,也可以包括一颗或多颗芯片组成。
以及,在其他一些示例性实施例中,视频处理器2601和音频处理器2602,可以单独的芯片,也可以于控制器210一起集成在一颗或多颗芯片中。
音频输出272,在控制器210的控制下接收音频处理器2602输出的声音信号,如:扬声器272,以及除了终端102自身携带的扬声器272之外,可以输出至外接设备的发生装置的外接音响输出端子274,如:外接音响接口或耳机接口等。
供电电源,在控制器210控制下,将外部电源输入的电力为终端102提供电源供电支持。供电电源可以包括安装终端102内部的内置电源电路,也可以是安装在终端102外部电源,在终端102中提供外接电源的电源接口。
用户输入接口,用于接收用户的输入信号,然后,将接收用户输入信号发送给控制器210。用户输入信号可以是通过红外接收器接收的遥控器信号,可以通过网络通信模块接收各种用户控制信号。
示例的,用户通过遥控器或控制装置输入用户命令,用户输入接口则根据用户的输入,终端102则通过控制器210响应用户的输入。
在一些实施例中,用户可在显示器280上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
控制器210,通过存储在存储器290上中各种软件控制程序,来控制终端102的工作和响应用户的操作。
如图2所示,控制器210包括随机存取存储器(Random Access Memory,RAM)213和只读存储器(Read-Only Memory,ROM)214以及图形处理器216、中央处理器(centralprocessing unit,CPU)处理器212、通信接口218,如:第一接口2181到第n接口218n,以及通信总线。其中,RAM213和ROM214以及图形处理器216、CPU处理器212、通信接口218通过总线相连接。
RAM213,用于存储各种系统启动的指令。如在收到开机信号时,终端102电源开始启动,CPU处理器212运行ROM中系统启动指令,将存储在存储器290的操作系统拷贝至RAM213中,以使开始运行启动操作系统。当操作系统启动完成后,CPU处理器212再将存储器290中各种应用程序拷贝至RAM213中,然后,开始运行启动各种应用程序。
图形处理器216,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
CPU处理器212,用于执行存储在存储器290中操作系统和应用程序指令。以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
在一些示例性实施例中,CPU处理器212,可以包括多个处理器。多个处理器可包括一个主处理器以及多个或一个子处理器。主处理器,用于在预加电模式中执行终端102一些操作,和/或在正常模式下显示画面的操作。多个或一个子处理器,用于在待机模式等状态下一种操作。
控制器210可以控制显示设备的整体操作。例如:响应于接收到用于选择在显示器280上显示UI对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
其中,所述对象可以是可选对象中的任何一个,例如超链接或图标。与所选择的对象有关操作,例如:显示连接到超链接页面、文档、图像等操作,或者执行与所述图标相对应程序的操作。用于选择UI对象用户命令,可以是通过连接到终端102的各种输入装置(例如,鼠标、键盘、触摸板等)输入命令或者与由用户说出语音相对应的语音命令。
存储器290,包括存储用于驱动终端102的各种软件模块。如:存储器290中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。
其中,基础模块用于终端102中各个硬件之间的信号通信、并向上层模块发送处理和控制信号的底层软件模块。检测模块用于从各种传感器或用户输入接口中收集各种信息,并进行数模转换以及分析管理的管理模块。
例如:语音识别模块中包括语音解析模块和语音指令数据库模块。显示控制模块用于控制显示器280进行显示图像内容的模块,可以用于播放多媒体图像内容和UI界面等信息。通信模块,用于与外部设备之间进行控制和数据通信的模块。浏览器模块,用于执行浏览服务器之间数据通信的模块。服务模块,用于提供各种服务以及各类应用程序在内的模块。
同时,存储器290还用存储接收外部数据和用户数据、各种用户界面中各个项目的图像以及焦点对象的视觉效果图等。
图3是本申请实施例提供的一种终端功能配置示意图。如图3所示,存储器290用于存储操作系统、应用程序、内容和用户数据等,在控制器210控制下执行驱动终端102的系统运行以及响应用户的各种操作。存储器290可以包括易失性和/或非易失性存储器。
存储器290,具体用于存储驱动终端102中控制器210的运行程序,以及存储终端102内置各种应用程序,以及用户从外部设备下载的各种应用程序、以及与应用相关各种图形用户界面,以及与图形用户界面相关的各种对象,用户数据信息,以及各种支持应用的内部数据。存储器290用于存储OS内核、中间件和应用等系统软件,以及存储输入的视频数据和音频数据、及其他用户数据。
存储器290,具体用于存储音视频处理器2601和2602、显示器280、通信接口230、调谐解调器220、检测器240输入/输出接口等驱动程序和相关数据。
在一些实施例中,存储器290可以存储软件和/或程序,用于表示操作系统(OS)的软件程序包括,例如:内核、中间件、应用编程接口(API)和/或应用程序。示例性的,内核可控制或管理系统资源,或其它程序所实施的功能(如所述中间件、API或应用程序),以及内核可以提供接口,以允许中间件和API,或应用访问控制器,以实现控制或管理系统资源。
示例的,存储器290,包括广播接收模块2901、频道控制模块2902、音量控制模块2903、图像控制模块2904、显示控制模块2905、音频控制模块2906、外部指令识别模块2907、通信控制模块2908、光接收模块2909、电力控制模块2910、操作系统2911、以及其他应用程序2912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:广播电视信号接收解调功能、电视频道选择控制功能、音量选择控制功能、图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等其他应用。
图4是本申请实施例提供的一种终端中软件系统的配置框图。如图4所示,操作系统2911,包括用于处理各种基础系统服务和用于实施硬件相关任务的执行操作软件,充当应用程序和硬件组件之间完成的数据处理的媒介。一些实施例中,部分操作系统内核可以包含一系列软件,用以管理显示设备硬件资源,并为其他程序或软件代码提供服务。
其他一些实施例中,部分操作系统内核可包含一个或多个设备驱动器,设备驱动器可以是操作系统中的一组软件代码,帮助操作或控制显示设备关联的设备或硬件。驱动器可以包含操作视频、音频和/或其他多媒体组件的代码。示例的,包括显示屏、摄像头、Flash、WiFi和音频驱动器。
其中,可访问性模块29111,用于修改或访问应用程序,以实现应用程序的可访问性和对其显示内容的可操作性。
通信模块29112,用于经由相关通信接口和通信网络与其他外设的连接。
用户界面模块29113,用于提供显示用户界面的对象,以供各应用程序可访问,可实现用户可操作性。
控制应用程序29114,用于可控制进程管理,包括运行时间应用程序等。
事件传输系统2914,可在操作系统2911内或应用程序2912中实现,以一些实施例中,一方面在在操作系统2911内实现,同时在应用程序2912中实现,用于监听各种用户输入事件,将根据各种事件指代响应各类事件或子事件的识别结果,而实施一组或多组预定义的操作的处理程序。
其中,事件监听模块29141,用于监听用户输入接口输入事件或子事件。
事件识别模块29141,用于对各种用户输入接口输入各类事件的定义,识别出各种事件或子事件,且将其传输给处理用以执行其相应一组或多组的处理程序。
其中,事件或子事件,是指终端102中一个或多个传感器检测的输入,以及外界控制设备(如控制装置或遥控器等)的输入。如:语音输入各种子事件,手势识别的手势输入,以及遥控器的物理按键指令输入的子事件等。示例的,遥控器中一个或多个子事件包括多种形式,包括但不限于按键按上/下/左/右/、确定键、按键按住等中一个或组合。以及控制装置中的虚拟按键(也即非实体按键)的操作,如移动、按住、释放等操作。
界面布局管理器2913,直接或间接接收来自于事件传输系统2914监听到各用户输入事件或子事件,用于更新用户界面的布局,包括但不限于界面中各控件或子控件的位置,以及容器的大小或位置、层级等与界面布局相关各种执行操作。
图5是本申请实施例提供的一种服务器的结构示意图。所述服务器101包括中央处理单元(CPU)501、包括随机存取存储器(RAM)502和只读存储器(ROM)503的系统存储器504,以及连接系统存储器504和中央处理单元501的系统总线505。所述服务器101还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)506,和用于存储操作系统513、应用程序514和其他程序模块515的大容量存储设备507。
所述基本输入/输出系统506包括有用于显示信息的显示器508和用于用户输入信息的诸如鼠标、键盘之类的输入设备509。其中所述显示器508和输入设备509都通过连接到系统总线505的输入输出控制器510连接到中央处理单元501。所述基本输入/输出系统506还可以包括输入输出控制器510以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器510还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备507通过连接到系统总线505的大容量存储控制器(未示出)连接到中央处理单元501。所述大容量存储设备507及其相关联的计算机可读介质为服务器101提供非易失性存储。也就是说,所述大容量存储设备507可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器504和大容量存储设备507可以统称为存储器。
根据本申请的各种实施例,所述服务器101还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器101可以通过连接在所述系统总线505上的网络接口单元511连接到网络512,或者说,也可以使用网络接口单元511来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理器501执行该一个或一个以上程序。
图6是本申请实施例提供的一种数据传输方法的流程图,该方法可以用于图1所示的数据传输系统10中的终端102,或者也可以用于图2至图4任一所示的终端102。如图6所示,该方法可以包括:
步骤601、向依次连接的n个服务器中的第一服务器发送数据请求,以便于第一服务器将数据请求转发至n个服务器中的第n服务器,其中,Li<Li+1,Li表示n个服务器中的第i服务器与终端的路由距离,Li+1表示n个服务器中的第i+1服务器与终端的路由距离,n≥2,1≤i<i+1≤n。
步骤602、在第i服务器在对应的目标条件满足时,接收第一服务器发送的用于指示第i+1服务器故障的第一信息,该目标条件包括:在第i服务器向第i+1服务器发送数据请求后的目标时长内,未接收到数据响应。
步骤603、在时长阈值内未接收到第一服务器发送的数据响应,且未接收到第一信息时,生成用于指示第一服务器故障的第二信息。
综上所述,本申请实施例中终端接收的第一信息或者终端生成的第二信息可以指示具体哪个服务器发生故障。进而,工作人员可以根据该第一信息或者第二信息,直接确定故障的服务器以对该故障的服务器进行修复。
图7是本申请实施例提供的另一种数据传输方法。该方法可以用于图1所示的数据传输系统10中的服务器101或者图5所示的服务器101,该服务器可以为依次连接的n个服务器中的第i服务器,n≥2,1≤i≤n-1。可选地,在图1所示的数据传输系统10中,该第i服务器可以为第二服务器。如图7所示,该方法可以包括:
步骤701、接收终端发送的数据请求。
步骤702、向n个服务器中的第i+1服务器发送数据请求。
步骤703、在向第i+1服务器发送数据请求后的目标时长内,若未接收到第i+1服务器发送的数据响应,则生成用于指示第i+1服务器故障的第一信息。
步骤704、向终端发送第一信息。
综上所述,本申请实施例中第i服务器可以在向第i+1服务器发送数据请求后的目标时长内,未接收到第i+1服务器发送的数据响应时,生成用于指示第i+1服务器故障的第一信息,并将该第一信息发送至终端。进而,工作人员可以根据该第一信息确定故障的服务器,以对该故障的服务器进行修复。
图8是本申请实施例提供的再一种数据传输方法的流程图。该方法可以用于图1所示的数据传输系统10,且图8以数据传输系统10包括终端,以及依次连接的第一服务器、第二服务器和第三服务器,且终端与第一服务器连接为例,对本申请实施例中的数据传输方法进行解释说明。如图8所示,该方法可以包括:
步骤801、终端向第一服务器发送数据请求。
步骤802、第一服务器向第二服务器发送数据请求。
步骤803、第二服务器向第三服务器发送数据请求。
示例地,终端需要播放目标视频,该目标视频对应的数据存储在第三服务器中。终端可以通过互联网向第一服务器发送数据请求,进而使得第一服务器在接收到终端发送的数据请求后可以向第二服务器转发数据请求,第二服务器在接收到第一服务器发送的数据请求后可以向第三服务器转发数据请求。
需要说明的是,本申请实施例中数据传输系统中的服务平台可以包括依次连接的n个服务器,终端可以与该依次连接的n个服务器中的第一服务器通信连接,n≥2。Li<Li+1,Li表示该n个服务器中的第i服务器与终端的路由距离,Li+1表示n个服务器中的第i+1服务器与终端的路由距离,1≤i<i+1≤n;也即是,该n个服务器与终端的路由距离依次增大。该n个服务器中的第n服务器可以为终端请求数据的服务器。
可选地,该n个服务器一一对应属于服务平台中的n个服务器层,该n个服务器中的第i服务器位于该n个服务器层中的第i个服务器层。如该第一服务器属于服务平台中的第一个服务器层,该第一个服务器层为服务平台中的网关层。可选地,服务平台可以仅包括n个服务器层,或者服务平台中服务器层的个数也可以大于n。
参考步骤801至步骤803可知,本申请实施例中终端向依次连接的n个服务器中的第一服务器发送数据请求,且该n个服务器中第i服务器向第i+1服务器发送数据请求,以将该数据请求转发至第n服务器。示例地,本申请实施例中该依次连接的n个服务器可以包括目的服务器和中转服务器,本申请实施例中将终端所请求的数据所在的服务器称为目的服务器,将终端与目的服务器之间的其他服务器称为中转服务器。该n个服务器中每个中转服务器在接收到数据请求后均会将该数据请求转发至下一个中转服务器,以便于将数据请求转发至目的服务器。
在图8针对的数据传输系统中,第三服务器为目的服务器,第一服务器和第二服务器均为中转服务器。终端生成的数据请求可以按照终端-第一服务器-第二服务器-第三服务器这一传输路径传输至第三服务器,以请求从第三服务器获取目标视频对应的数据
步骤804、第三服务器向第二服务器发送数据响应。
示例地,第三服务器在接收到第二服务器发送的数据请求后,可以根据该数据请求生成携带有终端所请求的数据的数据响应,并向第二服务器发送该数据响应。
步骤805、当第二服务器在发出数据请求之后的目标时长内,接收到第三服务器发送的数据响应时,第二服务器向第一服务器发送数据响应。
步骤806、当第一服务器在发出数据请求之后的目标时长内,接收到第二服务器发送的数据响应时,第一服务器向终端发送数据响应。
由步骤804至步骤806可知,本申请实施例中第i+1服务器可以向第i服务器发送数据响应,以将数据响应转发至第一服务器。当i+1=n,i=n-1时,第n服务器直接生成数据响应并将该数据响应发送至第n-1服务器。当i+1<n时,第i+1服务器可以接收第i+2服务器发送的数据响应,并将该数据响应转发至第i服务器。
本申请实施例中,当数据请求经过中转服务器传输至目的服务器(也即是第n服务器)时,第n服务器可以根据该数据请求,确定终端所请求的数据。进而,通过与数据请求的传输路径相反的路径,将携带有该数据的数据响应传输至第一服务器。示例地,在图8针对的数据传输系统中,第三服务器生成的携带有终端所请求的数据的数据响应,可以按照第三服务器-第二服务器-第一服务器-终端这一传输路径传输至终端,进而完成终端对数据的请求。
需要说明的是,设备在向其他设备发出请求后会等待该其他设备的响应,为了避免该其他设备出现故障无法进行响应的情况下设备无尽头的等待,会为每个设备设置等待时长。该等待时长可以为传输数据请求的各个设备均正常时,设备发出请求到接收请求之间的最大间隔时长。设备在发出请求后的等待时长内若未接收到该其他设备的响应,则设备可以停止继续等待其他设备对于该请求的响应,且确定请求失败。之后该设备可以重新向该其他设备发送请求,或者直接确定该其他设备发生故障。
本申请实施例中,该n个服务器中的每个服务器均有对应的目标时长,该目标时长也即是该服务器的等待时长。第i服务器在向第i+1服务器发送数据请求后可以开始计时,且在接收到第i+1服务器发送的数据响应时结束计时;若在计时的时长达到目标时长时第i服务器还未接收到数据响应,则第i服务器也结束计时。当第i服务器结束计时后,第i服务器不再等待第i+1服务器的响应。当第i服务器在发出数据请求后的目标时长内接收到第i+1服务器发送的数据响应时,第i服务器可以确定数据请求过程并未出错,进而第i服务器可以继续转发数据响应。当i=1时,第一服务器向终端转发数据响应;当i>1时,第i服务器向第i-1服务器发送数据响应。当第i服务器在发送数据请求后的目标时长内未接收到第i+1服务器发送的数据响应,则第i服务器可以确定该数据请求失败。之后即使第i+1服务器仍向第i服务器发送数据响应,此时由于第i服务器已经确定数据请求失败,第i服务器不会再向第i-1服务器转发该数据响应。
本申请实施例中,终端也有对应的时长阈值,该时长阈值也即是终端的等待时长。终端在向第一服务器发送数据请求后可以开始计时,且在接收到第一服务器发送的数据响应时结束计时;若在计时的时长达到时长阈值时中终端还未接收到数据响应,则终端也结束计时。当终端在发送数据请求的时长阈值内接收到第一服务器发送的数据响应时,主终端可以确定数据请求成功。当终端在发送数据请求的时长阈值内未接收到第一服务器发送的数据响应时,终端不再等待第一服务器的响应,且确定该数据请求失败。
本申请实施例中,终端的时长阈值大于第一服务器对应的目标时长。Ti>Ti+1,Ti表示第i服务器对应的目标时长,Ti+1表示第i+1服务器对应的目标时长;也即是依次连接的n个服务器中从第一服务器到第n服务器,服务器对应的目标时长依次递减。故服务器对应的目标时长负相关于服务器在服务平台中的层级,服务器对应的目标时长负相关于服务器与终端的路由距离。
由于设备之间传输信息需要损耗时间,设备之间的路由距离越大,传输信息所需的时长必然越长。服务平台中某服务器与终端的路由距离越大,则该服务器与第n服务器的路由距离越小,该服务器向第n服务器发出数据请求与接收到第n服务器发送的数据响应的间隔时长越短,也即该服务器对应的等待时间就越短。由于终端和该n个服务器中,终端与第n服务器的路由距离最大,且该依次连接的n个服务器与第n服务器的路由距离依次减小;因此,本申请实施例中使终端的时长阈值大于第一服务器对应的目标时长,且服务器对应的目标时长负相关于服务器与终端的路由距离,可以保证该时长阈值和目标时长设置的合理性。
可选地,终端的时长阈值可以为b,第i服务器对应的目标时长为b-c-e*(i-1);其中,c大于或者等于数据请求由终端传输至第一服务器的最大时长,e大于或者等于数据请求由第i服务器传输至第i+1服务器的最大时长。可选地,终端与服务器之间进行信息传输所需的时长大于服务器之间进行信息传输所需的时长,也即是c>e。
示例地,假设终端的时长阈值b=10000毫秒,c=3000毫秒,e=200毫秒。则服务平台中该连接的n个服务器中第一服务器对应的目标时长为7000毫秒,第二服务器对应的目标时长为10000-30000-200*(2-1)=6800毫秒,第三服务器对应的目标时长为10000-30000-200*(3-1)=6600毫秒,以此类推。
步骤807、第二服务器在对应的目标条件满足时,生成用于指示第三服务器故障的第一信息。
其中,该目标条件包括:在第二服务器向第三服务器发送数据请求后的目标时长内,未接收到第三服务器发送的数据响应。该目标时长为第二服务器对应的目标时长,也即是第二服务器的等待时长。
需要说明的是,当第二服务器向第i+1服务器发送数据请求后,便会等待第三服务器的响应。若第二服务器在对应的目标时长内,仍未接收到第三服务器发送的数据响应时,第二服务器可以确定第三服务器故障,进而第二服务器可以生成用于指示第三服务器故障的第一信息。工作人员根据该第一信息就可以知晓终端对数据的请求失败由该第三服务器的故障导致。
步骤808、第二服务器向第一服务器发送用于指示第三服务器故障的第一信息。
步骤809、第一服务器向终端发送用于指示第三服务器故障的第一信息。
步骤810、第一服务器在对应的目标条件满足时,生成用于指示第二服务器故障的第一信息。
其中,该目标条件包括:在第一服务器向第二服务器发送数据请求后的目标时长内,未接收到第二服务器发送的数据响应。该目标时长为第一服务器对应的目标时长,也即是第一服务器的等待时长。
对于步骤810的介绍可以参考步骤807,本申请实施例在此不做赘述。
步骤811、第一服务器向终端发送用于指示第二服务器故障的第一信息。
由步骤807至步骤811可知,依次连接的n个服务器中第i服务器对应的目标条件包括:在第i服务器向第i+1服务器发送数据请求后的目标时长内,未接收到第i+1服务器发送的数据响应。第i服务器对应的目标条件中的目标时长为第i服务器对应的目标时长,也即是第i服务器的等待时长。
当第i服务器向第i+1服务器发送数据请求后,便会等待第i+1服务器的响应。若第i服务器在对应的目标时长内,仍未接收到第i+1服务器发送的数据响应时,第i服务器可以确定第i+1服务器故障,进而第i服务器可以生成用于指示第i+1服务器故障的第一信息。接着第i服务器可以向第i-1服务器发送第一信息,以将第一信息通过第i服务器与第一服务器之间的服务器依次传输至第一服务器,由第一服务器将第一信息发送至终端。工作人员根据该第一信息就可以知晓终端对数据的请求失败由该第i+1服务器的故障导致。
需要说明的是,第i服务器在向第i+1服务器发送数据请求之后开始计时,在接收到第i+1服务器发送的指示某服务器故障的第一信息时,第i服务器便结束计时,进而第i服务器直接转发该第一信息,不再检测是否接收到针对该数据请求的数据响应,也不再针对该数据请求生成第一信息。该第i服务器为服务平台中的任一中转服务器。
步骤812、终端在时长阈值内未接收到第一服务器发送的数据响应,且未接收到第一信息时,生成用于指示第一服务器故障的第二信息。
需要说明的是,当终端向第一服务器发送数据请求后,便会等待第一服务器的响应。若终端在时长阈值内,仍未接收到第一服务器发送的数据响应时,终端可以确定第一服务器故障,进而终端可以生成用于指示第一服务器故障的第二信息。工作人员根据该第二信息可以知晓终端对数据的请求失败由该第一服务器的故障导致。
可选地,本申请实施例中当终端接收到第一信息或生成第二信息后,终端可以存储该第一信息和第二信息,以便于工作人员根据该第一信息或第二信息直接确定导致终端对数据的请求失败(也即是服务平台超时未响应)的服务器,进而工作人员便可以针对该服务器进行修复。
可选地,当终端接收到第一信息或生成第二信息后,终端可以直接显示该第一信息与第二信息,以指示服务平台超时未响应终端的数据请求,终端对数据的请求发生失败,且指示导致该失败的服务器为哪个服务器。或者,终端也可以显示其他提示信息,以指示服务平台超时未响应终端的数据请求,终端对数据的请求发生失败;在工作人员需要确定导致该失败的服务器时,终端再在工作人员的触发下显示第一信息或者第二信息。
需要说明的是,相关技术中通过对服务平台中的每个服务器进行抓包(抓包也即是捕获服务器发送与接收的数据包),分析各个服务器之间的连接状态和数据发送情况是否异常,进而确定由哪个服务器导致服务平台超时未响应终端的数据请求。该方式由于需要对服务平台中的每个服务器发送和接收的数据包均进行分析,而服务平台中服务器的数量通常非常庞大,故通过抓包分析确定故障的服务器的方式工作量巨大,确定故障的服务器的难度较大。
另外,相关技术中还可以通过分析服务器的错误日志,以确定服务平台中服务器出错较多的服务器层,进而确定该服务器层中的服务器导致终端对数据的请求失败。但是该方式仅可确定故障的服务器所在的服务器层,而通常每个服务器层中的服务器数量也较大,仍然很难确定故障的服务器具体为哪个服务器。
而本申请实施例中,服务器可以在满足对应的目标条件时直接确定故障的服务器,进而生成指示该服务器故障的第一信息,并将该第一信息发送至终端。且若服务平台中的第一服务器故障,则终端也可以直接确定故障的服务器为该第一服务器,进而生成指示该第一服务器故障的第二信息。本申请实施例中无需针对众多的服务器进行分析,仅通过终端上的信息便可以精准便捷地确定故障的服务器,大大地降低了确定故障的服务器的难度,且提高了确定故障的服务器的精准度。
还需要说明的是,相关技术中各个服务器的等待时长通常相等,而数据传输所需的时长与数据所经过的路由距离正相关。即使服务平台中所有服务器均正常,由于等待时长的设备不合理,也可能出现终端在发出数据请求的等待时长内未收到数据响应的情况。此时工作人员会认为服务平台中存在服务器故障,因此相关技术中确定服务平台中的服务器是否需故障的精准性较差。
而本申请实施例中,服务器对应的目标时长负相关于服务器与终端的路由距离。由于该目标时长的设置中已经考虑了数据在网络中传输所需耗费的时长,因此降低了在服务器实际正常的情况下认为服务平台中存在服务器故障的概率,可以更加精准地确定服务平台中的服务器是否故障。
综上所述,本申请实施例中终端接收的第一信息或者终端生成的第二信息可以指示具体哪个服务器发生故障。进而,工作人员可以根据该第一信息或者第二信息,对该故障的服务器进行修复。因此,降低了确定故障的服务器的难度,提高了确定故障的服务器的精准性。
下面对本申请实施例中的第一信息及第二信息的格式进行介绍:
第i服务器生成的用于指示第i+1服务器故障的第一信息可以包括:n个服务器层中的第i+1个服务器层的标识,以及第i+1服务器在第i+1个服务器层中的编号。终端生成的用于指示第一服务器故障的第二信息包括:n个服务器层中的第一个服务器层的标识,以及第一服务器在第一个服务器层中的编号。
可选地,n个服务器层中任一服务器层的标识可以为该服务器层的层级。也即是第i个服务器层的标识为i。每个服务器层可以包括至少一个服务器,可以对每个服务器层中的至少一个服务器按照数字大小进行编号。示例地,某个服务器层包括5个服务器,该5个服务器的编号可以分别为1、2、3、4和5。需要说明的是,本申请实施例以服务器层的标识为该服务器层的层级为例进行说明,可选地,该服务器层的标识也可以为其他形式的标识,如在划分服务器层时可以给每个服务器层设置标识,该标识可以为字符也可以为图案等,本申请实施例对此不做限定。
可选地,第一信息和第二信息中的至少一个信息还可以包括故障指示信息。该第一信息中的故障指示信息用于指示:第i服务器向第i+1服务器发送数据请求后的目标时长内,未接收到数据响应。该第二信息中的故障指示信息用于指示:终端向第一服务器发送数据请求后的时长阈值内,未接收到数据响应。需要说明的是,终端会收到服务器发送的多种信息,为了便于快速确定信息指示的内容,可以使信息携带指示信息,以指示该内容的类型或者该内容的部分关键信息。示例地,本申请实施例中故障指示信息可以为第一信息和第二信息指示的内容的部分关键信息,该故障指示信息用于指示某设备发生超时未响应的问题。
可选地,第一信息和第二信息均包括m个字符。m个字符中的前x个字符用于指示故障指示信息;m个字符中第x+1个字符至第x+y个字符所表示的a进制数用于指示:故障的服务器在n个服务器层中所属的服务器层的标识;m个字符中第x+y+1个字符至第m个字符所表示的a进制数用于指示:故障的服务器在n个服务器层中所属的服务器层中的编号。其中,m、x、y和a均为正整数,且y≥logan,m≥x+y+1;对于第一信息,故障的服务器为第i+1服务器;对于第二信息,故障的服务器为第一服务器。可选地,a=10。可选地,n个服务器层中目标服务器层包括的服务器最多,目标服务器层包括的服务器的个数为f,m-(x+y)≥logaf。
示例地,x=1,也即是m个字符中的第一个字符用于指示故障指示信息。该m个字符均为数字,该故障指示信息为4。a=10,也即是服务器层的标识用十进制数来表示,服务器在其所属的服务器层中的编号也用十进制数来表示。m个字符中第2个数字至第y+1个数字这y个数字所表示的十进制数为服务器层的标识,m个字符中第y+2个数字至第m个数字这m-y-1个数字所表示的十进制数为服务器在所属的服务器层中的编号。
当服务平台中的服务器层的层数小于10,如n<10时,y≥log10n,且由于y为正整数,故y≥1。例如,y可以为1,服务器层的标识均为1至9的十进制数,仅需要一个数字即可表示服务平台中任一服务器层的标识,该一个数字为该m个数字中的第二个数字。当服务平台中的服务器层的层数处于10至99,如10≤n≤99时,y≥log10n,且由于y为正整数,故y≥2。如y可以为2,服务器层的标识为10至99的十进制数,仅需要两个数字即可表示服务平台中任一服务器层的标识的标识。对于n>99的情况均可以如此类推,本申请实施例在此不再赘述。
当y=1时,m个数字中的第三个数字至第m个数字这m-2个数字表示的十进制数为服务器在所属的服务器层中的编号。当服务器层包括的服务器的最大个数f<10时,log10f小于1。且由于m、x和y均为正整数,且m≥x+y+1,故m-(x+y)=m-2为正整数,m-2≥log10f,故m-2≥1。m-2可以为1,也即是m=3。f<10时,服务器在所属的服务器层中的编号均为1至9的十进制数,仅需要一个数字即可表示服务器在所属的服务器层中的编号,该一个数字为第一信息和第二信息中的第三个数字。对于n≥10的情况均可以如此类推,本申请实施例在此不再赘述。
假设,服务平台包括21个服务器层,其中服务器个数最多的服务器层包括90个服务器,导致终端的数据请求失败的服务器A属于第20个服务器层,该服务器A在第20个服务器层中的编号为18,且y=2,m=5。此种情况下,终端可以接收到第一信息,该第一信息可以为42018。该第一信息中的第一个数字“4”表示某设备发生超时未响应的问题,该第一信息中的第二个数字“2”和第三个“0”数字表示的十进制数为20,该十进制数20表示导致终端的数据请求失败的服务器A所属的服务器层的层级为20,该第一信息中的第四个数字“1”和第五个数字“8”表示的十进制数为18,该十进制数18表示服务器A在所属的服务器层中的编号为18。工作人员根据该第一信息便可知晓,由于第20个服务器层中编号为18的服务器发生超时未响应的问题,导致终端的数据请求失败。
再假设,服务平台包括21个服务器层,其中服务器个数最多的服务器层包括9个服务器,导致终端的数据请求失败的服务器B属于第一个服务器层,该服务器B在第一个服务器层中的编号为5,且y=2,m=4。此种情况下,终端可以生成第二信息,该第二信息可以为4015。该第二信息中的第一个数字“4”表示某设备发生超时未响应的问题,该第二信息中的第二个数字“0”和第三个数字“1”表示的十进制数为1,该十进制数1表示:导致终端的数据请求失败的服务器B所属的服务器层的层级为1,该第一信息中的第四个数字“5”表示的十进制数为5,该十进制数5表示服务器B在所属的服务器层中的编号为5。工作人员根据该第二信息便可知晓,由于第一个服务器层中编号为5的服务器发生超时未响应的问题,导致终端的数据请求失败。
需要说明的是,本申请实施例中均以a=10,故障指示信息为4,y和m均取最小值为例进行示意,可选地,a也可以为2或者8或者其他正整数,故障指示信息也可以为5或6等其他数字,y和m也可以取较大的值,本申请实施例对此不做限定。如当n<10,y≥1时,可以取y=2或3,如此可以在增加服务平台中的服务器层时继续采用第一信息的格式生成第一信息。如当x=1,y=1时,可以取m=4或5,如此可以在增加服务器层中的服务器时继续采用当前的第一信息和第二信息的格式生成第一信息和第二信息。
需要说明的是,目前还存在多个不同的服务器在发生错误时向终端发送相同的错误码的情况,此时,工作人员无法根据该错误码确定发生错误的服务器,进而很难对发生错误的服务器进行修复。该错误可能并非服务器对数据请求响应超时的错误,如也可以为服务器硬件故障,服务器中终端所请求的数据丢失等。对于此种情况,也可以使得发生错误的服务器生成指示自身发生错误的错误码,进而通过终端服务器将该错误码传输至终端,以便于工作人员根据该错误码快捷准确地确定发生错误的服务器。该错误码的格式可以参考上述第一信息和第二信息的格式,该错误码的传输方式可以参考上述第一信息的传输方法,本申请实施例在此不做赘述。
图9是本申请实施例提供的另一种终端的结构示意图。如图9所示,该终端102可以包括:
发送模块901,用于向依次连接的n个服务器中的第一服务器发送数据请求,以便于第一服务器将数据请求转发至n个服务器中的第n服务器,其中,Li<Li+1,Li表示n个服务器中的第i服务器与终端的路由距离,Li+1表示n个服务器中的第i+1服务器与终端的路由距离,n≥2,1≤i<i+1≤n。
接收模块902,用于在第i服务器在对应的目标条件满足时,接收第一服务器发送的用于指示第i+1服务器故障的第一信息。其中,目标条件包括:在第i服务器向第i+1服务器发送数据请求后的目标时长内,未接收到数据响应。
生成模块903,用于在时长阈值内未接收到第一服务器发送的数据响应,且未接收到第一信息时,生成用于指示第一服务器故障的第二信息。
综上所述,本申请实施例中终端接收的第一信息或者终端生成的第二信息可以指示具体哪个服务器发生故障。进而,工作人员可以根据该第一信息或者第二信息,直接确定故障的服务器以对该故障的服务器进行修复。
可选地,本申请实施例中终端中的通信接口可以包括该发送模块901和接收模块902,终端中的控制器可以包括该生成模块903。
可选地,在i=1时,第一信息为:第一服务器在目标条件满足时生成的信息;在i>1时,第一信息为:第i服务器在目标条件满足时发送至第一服务器的信息。
可选地,n个服务器一一对应属于n个服务器层,每个服务器层包括至少一个服务器,n个服务器中的第i服务器位于n个服务器层中的第i个服务器层;
第一信息包括:n个服务器层中的第i+1个服务器层的标识,以及第i+1服务器在第i+1个服务器层中的编号;
第二信息包括:n个服务器层中的第一个服务器层的标识,以及第一服务器在第一个服务器层中的编号。
可选地,第一信息和第二信息中的至少一个信息还包括故障指示信息;
第一信息中的故障指示信息用于指示:第i服务器向第i+1服务器发送数据请求后的目标时长内,未接收到数据响应;
第二信息中的故障指示信息用于指示:终端向第一服务器发送数据请求后的时长阈值内,未接收到数据响应。
可选地,第一信息和第二信息均包括m个字符;
m个字符中的前x个字符用于指示故障指示信息;m个字符中第x+1个字符至第x+y个字符所表示的a进制数用于指示:故障的服务器在n个服务器层中所属的服务器层的标识;m个字符中第x+y+1个字符至第m个字符所表示的a进制数用于指示:故障的服务器在n个服务器层中所属的服务器层中的编号;
其中,m、x、y和a均为正整数,且y≥logan,m≥x+y+1;对于第一信息,故障的服务器为第i+1服务器;对于第二信息,故障的服务器为第一服务器。
可选地,Ti>Ti+1,Ti表示第i服务器对应的目标条件中的目标时长,Ti+1表示第i+1服务器对应的目标条件中的目标时长。
可选地,时长阈值为b,第i服务器对应的目标条件中的目标时长为b-c-e*(i-1);
其中,c大于或者等于数据请求由终端传输至第一服务器的最大时长,e大于或者等于数据请求由第i服务器传输至第i+1服务器的最大时长。
综上所述,本申请实施例中终端接收的第一信息或者终端生成的第二信息可以指示具体哪个服务器发生故障。进而,工作人员可以根据该第一信息或者第二信息,直接确定故障的服务器以对该故障的服务器进行修复。
图10是本申请实施例提供的另一种服务器的结构示意图。该服务器可以为依次连接的n个服务器中的第i服务器,n≥2,1≤i≤n-1,也即是该服务器可以上述的中转服务器。如图10所示,该服务器101可以包括:
接收模块1011,用于接收终端发送的数据请求。
第一发送模块1012,用于向n个服务器中的第i+1服务器发送数据请求。
生成模块1013,用于在向第i+1服务器发送数据请求后的目标时长内,若未接收到第i+1服务器发送的数据响应,则生成用于指示第i+1服务器故障的第一信息。
第二发送模块1014,用于向终端发送第一信息。
可选地,本申请实施例中服务器的网络接口单元可以包括该接收模块1011、第一发送模块1012和第二发送模块1014,服务器的中央处理器可以包括该生成模块1013。
综上所述,本申请实施例中第i服务器可以在向第i+1服务器发送数据请求后的目标时长内,未接收到第i+1服务器发送的数据响应时,生成用于指示第i+1服务器故障的第一信息,并将该第一信息发送至终端。进而,工作人员可以根据该第一信息确定故障的服务器,以对该故障的服务器进行修复。
本申请实施例还提供了一种数据传输系统,该数据传输系统可以为图1所示的数据传输系统10,该数据传输系统10可以:终端102,以及依次连接的n个服务器,该终端102可以为图2至图4任一所示的终端102或者图9所示的终端102,该n个服务器中的任一服务器可以为图5所示的服务器101,该n个服务器中的第i服务器可以为图10所示的服务器101。
应当理解,本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,例如能够根据本申请实施例图示或描述中给出那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
本申请中使用的术语“模块”,是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
需要说明的是:上述实施例提供的终端和服务器在进行数据传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
需要说明的是,本申请实施例提供的方法实施例能够与相应的装置实施例相互参考,本申请实施例对此不做限定。本申请实施例提供的方法实施例步骤的先后顺序能够进行适当调整,步骤也能够根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,当所述计算机可读存储介质中的程序在计算机上运行时,使得计算机执行本申请实施例提供的数据传输方法。上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本申请实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行本申请实施例提供的数据传输方法。以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (11)

1.一种数据传输方法,其特征在于,应用于终端,所述方法包括:
向依次连接的n个服务器中的第1服务器发送数据请求;所述数据请求由所述n个服务器中的第i服务器向i+1服务器发送,i加1,重复执行上述服务器之间的数据请求的发送步骤,以便于所述第1服务器将所述数据请求转发至所述n个服务器中的第n服务器;其中,Li<Li+1,Li表示所述n个服务器中的第i服务器与终端的路由距离,Li+1表示所述n个服务器中的第i+1服务器与所述终端的路由距离,n≥2,1≤i<i+1≤n;所述第n服务器根据所述数据请求确定所述终端所请求的数据,且通过与所述数据请求的传输路径相反的路径,将携带有所述数据的数据响应由所述第n服务器传输至所述第1服务器;
在所述第i服务器在对应的目标条件满足时,接收所述第1服务器发送的用于指示所述第i+1服务器故障的第一信息;
在时长阈值内未接收到所述第1服务器发送的数据响应,且未接收到所述第一信息时,生成用于指示所述第1服务器故障的第二信息;
其中,所述目标条件包括:在所述第i服务器向所述第i+1服务器发送所述数据请求后的目标时长内,未接收到所述数据响应;所述目标时长负相关于所述第i服务器与终端的路由距离;所述第一信息和所述第二信息中的至少一个信息包括故障指示信息,所述故障指示信息用于指示服务器的故障为超时未响应。
2.根据权利要求1所述的方法,其特征在于,在i=1时,所述第一信息为:所述第1服务器在所述目标条件满足时生成的信息;
在i>1时,所述第一信息为:所述第i服务器在所述目标条件满足时发送至所述第1服务器的信息。
3.根据权利要求1或2所述的方法,其特征在于,所述n个服务器一一对应属于n个服务器层,每个所述服务器层包括至少一个服务器,所述n个服务器中的第i服务器位于所述n个服务器层中的第i个服务器层;
所述第一信息包括:所述n个服务器层中的第i+1个服务器层的标识,以及所述第i+1服务器在所述第i+1个服务器层中的编号;
所述第二信息包括:所述n个服务器层中的第1个服务器层的标识,以及所述第1服务器在所述第1个服务器层中的编号。
4.根据权利要求3所述的方法,其特征在于,所述第一信息中的所述故障指示信息用于指示:所述第i服务器向所述第i+1服务器发送所述数据请求后的所述目标时长内,未接收到所述数据响应;
所述第二信息中的所述故障指示信息用于指示:所述终端向所述第1服务器发送所述数据请求后的所述时长阈值内,未接收到所述数据响应。
5.根据权利要求4所述的方法,其特征在于,所述第一信息和所述第二信息均包括m个字符;
所述m个字符中的前x个字符用于指示所述故障指示信息;所述m个字符中第x+1个字符至第x+y个字符所表示的a进制数用于指示:故障的服务器在所述n个服务器层中所属的服务器层的标识;所述m个字符中第x+y+1个字符至第m个字符所表示的a进制数用于指示:所述故障的服务器在所述n个服务器层中所属的服务器层中的编号;
其中,y≥logan,m-(x+y)≥logaf,f为目标服务器层中服务器的个数,所述目标服务器层为所述n个服务器层中包括的服务器最多的服务器层,m、x、y、a和f均为正整数;对于所述第一信息,所述故障的服务器为所述第i+1服务器;对于所述第二信息,所述故障的服务器为所述第1服务器。
6.根据权利要求1所述的方法,其特征在于,Ti>Ti+1,Ti表示所述第i服务器对应的所述目标条件中的所述目标时长,Ti+1表示所述第i+1服务器对应的所述目标条件中的所述目标时长。
7.根据权利要求6所述的方法,其特征在于,所述时长阈值为b,所述第i服务器对应的所述目标条件中的所述目标时长为b-c-e*(i-1);
其中,c大于或者等于所述数据请求由所述终端传输至所述第1服务器的最大时长,e大于或者等于所述数据请求由所述第i服务器传输至所述第i+1服务器的最大时长。
8.一种数据传输方法,其特征在于,用于依次连接的n个服务器中的第i服务器,n≥2,1≤i≤n-1,所述方法包括:
接收终端发送的数据请求;所述数据请求用于由所述第i服务器向i+1服务器发送,i加1,重复执行上述服务器之间的数据请求的发送步骤,以便于将所述数据请求转发至所述n个服务器中的第n服务器;所述第n服务器用于根据所述数据请求确定所述终端所请求的数据,且通过与所述数据请求的传输路径相反的路径,将携带有所述数据的数据响应由所述第n服务器传输至第1服务器;
在向所述第i+1服务器发送所述数据请求后的目标时长内,若未接收到所述第i+1服务器发送的数据响应,则生成用于指示所述第i+1服务器故障的第一信息;所述目标时长负相关于所述第i服务器与终端的路由距离;所述第一信息包括故障指示信息,所述故障指示信息用于指示服务器的故障为超时未响应;
向所述终端发送所述第一信息。
9.一种终端,其特征在于,所述终端包括:
发送模块,用于向依次连接的n个服务器中的第1服务器发送数据请求;所述数据请求由所述n个服务器中的第i服务器向i+1服务器发送,i加1,重复执行上述服务器之间的数据请求的发送步骤,以便于所述第1服务器将所述数据请求转发至所述n个服务器中的第n服务器;其中,Li<Li+1,Li表示所述n个服务器中的第i服务器与终端的路由距离,Li+1表示所述n个服务器中的第i+1服务器与所述终端的路由距离,n≥2,1≤i<i+1≤n;所述第n服务器根据所述数据请求确定所述终端所请求的数据,且通过与所述数据请求的传输路径相反的路径,将携带有所述数据的数据响应由所述第n服务器传输至所述第1服务器;
接收模块,用于在所述第i服务器在对应的目标条件满足时,接收所述第1服务器发送的用于指示所述第i+1服务器故障的第一信息;
生成模块,用于在时长阈值内未接收到所述第1服务器发送的数据响应,且未接收到所述第一信息时,生成用于指示所述第1服务器故障的第二信息;
其中,所述目标条件包括:在所述第i服务器向所述第i+1服务器发送所述数据请求后的目标时长内,未接收到所述数据响应;所述目标时长负相关于所述第i服务器与终端的路由距离;所述第一信息和所述第二信息中的至少一个信息包括故障指示信息,所述故障指示信息用于指示服务器的故障为超时未响应。
10.一种服务器,其特征在于,所述服务器为依次连接的n个服务器中的第i服务器,n≥2,1≤i≤n-1,所述服务器包括:
接收模块,用于接收终端发送的数据请求;所述数据请求用于由所述第i服务器向i+1服务器发送,i加1,重复执行上述服务器之间的数据请求的发送步骤,以便于将所述数据请求转发至所述n个服务器中的第n服务器;第n服务器用于根据所述数据请求确定所述终端所请求的数据,且通过与所述数据请求的传输路径相反的路径,将携带有所述数据的数据响应由所述第n服务器传输至第1服务器;
生成模块,用于在向所述第i+1服务器发送所述数据请求后的目标时长内,若未接收到所述第i+1服务器发送的数据响应,则生成用于指示所述第i+1服务器故障的第一信息;所述目标时长负相关于所述第i服务器与终端的路由距离;所述第一信息包括故障指示信息,所述故障指示信息用于指示服务器的故障为超时未响应;
第二发送模块,用于向所述终端发送所述第一信息。
11.一种数据传输系统,其特征在于,所述系统包括权利要求9所述的终端和依次连接的n个服务器,所述n个服务器中的第i服务器为权利要求10所述的服务器,n≥2,1≤i≤n-1。
CN201911267155.0A 2019-12-11 2019-12-11 数据传输方法、装置及系统 Active CN110971938B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911267155.0A CN110971938B (zh) 2019-12-11 2019-12-11 数据传输方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911267155.0A CN110971938B (zh) 2019-12-11 2019-12-11 数据传输方法、装置及系统

Publications (2)

Publication Number Publication Date
CN110971938A CN110971938A (zh) 2020-04-07
CN110971938B true CN110971938B (zh) 2022-03-01

Family

ID=70033807

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911267155.0A Active CN110971938B (zh) 2019-12-11 2019-12-11 数据传输方法、装置及系统

Country Status (1)

Country Link
CN (1) CN110971938B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103188716B (zh) * 2011-12-29 2018-08-03 中兴通讯股份有限公司 Rudp链路故障定位方法及装置
CN103441897A (zh) * 2013-08-26 2013-12-11 深信服网络科技(深圳)有限公司 对虚拟网络中故障节点进行定位的方法及装置
CN105515847A (zh) * 2015-12-02 2016-04-20 深圳Tcl数字技术有限公司 终端故障处理方法、装置及系统
CN110290017B (zh) * 2019-07-26 2022-06-10 新华三大数据技术有限公司 故障节点定位方法及pe设备

Also Published As

Publication number Publication date
CN110971938A (zh) 2020-04-07

Similar Documents

Publication Publication Date Title
CN111405318B (zh) 视频展示方法、装置及计算机存储介质
CN111752518A (zh) 一种显示设备投屏方法及显示设备
CN110996136B (zh) 视频资源的显示方法及装置
CN111970549B (zh) 菜单显示方法和显示设备
CN110675872A (zh) 基于多系统显示设备的语音交互方法及多系统显示设备
CN112073762B (zh) 基于多系统显示设备的信息获取方法及多系统显示设备
CN112153440B (zh) 一种显示设备及显示系统
WO2022048203A1 (zh) 一种输入法控件的操控提示信息的显示方法及显示设备
CN112165641A (zh) 一种显示设备
CN111954059A (zh) 屏保的展示方法及显示设备
CN111984167B (zh) 一种快捷命名的方法及显示设备
CN111818654B (zh) 一种信道接入方法及显示设备
CN112269668A (zh) 一种应用资源共享及显示设备
CN110971938B (zh) 数据传输方法、装置及系统
CN111314414B (zh) 数据传输方法、装置及系统
CN113573149B (zh) 一种频道搜索方法及显示设备
CN113316014B (zh) 一种显示设备、服务器及第三方数据显示控制方法
CN111818368B (zh) 管理显示设备权限的方法、移动终端以及服务器
CN112929717B (zh) 一种焦点管理的方法及显示设备
CN111787117A (zh) 数据传输方法及显示设备
CN111782606A (zh) 显示设备、服务器和文件管理方法
CN111787115A (zh) 服务器、显示设备和文件传输方法
CN112087651B (zh) 显示询问信息的方法及智能电视
CN111913755B (zh) 一种应用程序的扫描方法和显示设备
CN112231088B (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