CN105897767A - 调度方法、调度响应方法及设备和系统 - Google Patents
调度方法、调度响应方法及设备和系统 Download PDFInfo
- Publication number
- CN105897767A CN105897767A CN201610429450.1A CN201610429450A CN105897767A CN 105897767 A CN105897767 A CN 105897767A CN 201610429450 A CN201610429450 A CN 201610429450A CN 105897767 A CN105897767 A CN 105897767A
- Authority
- CN
- China
- Prior art keywords
- bag
- index file
- request
- udp
- index
- 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/164—Adaptation or special uses of UDP protocol
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/08—Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
Abstract
本发明实施例提供了一种调度方法,包括:调度服务器将来自客户端的至少部分的访问请求转换为UDP请求包;所述调度服务器将所述UDP请求包向源服务器进行多次发送;所述调度服务器接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。本发明实施例还提供了相应的设备、调度响应方法及设备和系统。本发明实施例所示的调度方法、调度响应方法及设备和系统,与现有技术中每次使用TCP协议均需要先建立三次握手过程来进行数据传输相比,在使得丢包率没有显著增高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
Description
技术领域
本发明实施例涉及CDN领域,具体涉及一种调度方法、调度响应方法及设备和系统。
背景技术
CDN(Content Delivery Network,内容分发网络)是一种通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络。CDN能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上,其目的是能够选择离用户相对较近的节点向用户发送用户所需的内容,缓解网络拥挤的状况,提高网站的响应速度。随着不断增长的为用户提供个性化服务的需求,业务类型也在随之不断增多。
现有技术中用户每一次向CDN节点请求内容时,都是通过TCP(Transmission Control Protocol传输控制协议)来对数据进行传输,以保证数据传输过程中的安全性。TCP协议传输提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。在CDN网络中,TCP协议传输保证用户请求数据及节点向用户返回数据等过程中不会存在丢包等现象,一旦丢包则采取重新发送等措施以确保数据的正确传输。TCP协议中植入了各种安全保障功能,以保证数据传输过程的安全性,但是在实际执行的过程中会占用大量的系统开销,无疑使传输速度受到严重的影响。
发明内容
本发明实施例提供一种调度方法、调度响应方法及设备和系统,用以解决现有技术中CDN通过TCP协议在各服务器之间进行数据传输速度不够快的问题,通过UDP(User Datagram Protocol,用户数据报协议)进行数据传输的方式实现对客户端请求的调度过程。
根据本发明实施例的一个方面,提供了一种调度方法,包括:
调度服务器将来自客户端的至少部分的访问请求转换为UDP请求包;
所述调度服务器将所述UDP请求包向源服务器进行多次发送;
所述调度服务器接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
根据本发明实施例的另一个方面,提供了一种调度响应方法,包括:
源服务器根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
所述源服务器将至少部分的索引文件转换为UDP索引文件包,并将所述UDP索引文件包向所述调度服务器进行多次发送。
根据本发明实施例的一个方面,提供了一种调度设备,包括:
请求转换单元,用于将来自客户端的至少部分的访问请求转换为UDP请求包;
请求发送单元,用于将所述UDP请求包向源服务器进行多次发送;
调度返回单元,用于接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
根据本发明实施例的另一个方面,提供了一种调度响应设备,包括:
索引确定单元,用于根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
索引转换单元,用于将至少部分的索引文件转换为UDP索引文件包;
索引返回单元,用于将所述UDP索引文件包向所述调度服务器进行多次发送。
本发明实施例还提供了一种调度系统,包括:
请求转换单元,用于将来自客户端的至少部分的访问请求转换为UDP请求包;
请求发送单元,用于将所述UDP请求包向源服务器进行多次发送;
索引确定单元,用于根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
索引转换单元,用于将至少部分的索引文件转换为UDP索引文件包;
索引返回单元,用于将所述UDP索引文件包向所述调度服务器进行多次发送;
调度返回单元,用于接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
本发明实施例提供的调度方法、调度响应方法及设备和系统,通过调度服务器将来自客户端的部分访问请求转换为UDP请求包,并向源服务器进行多次发送;通过源服务器将来自调度服务器的部分访问请求对应的索引文件转换为UDP索引文件包,并向调度服务器进行多次发送,由于使用了UDP协议进行数据传输,大大加快了调度服务器与源服务器之间的响应速度,缩短了客户端与服务器之间的交互时间,又因为转换后的UDP包向源服务器发送了多次,弥补了使用UDP协议没有超时重发等机制带来的丢包率较高的问题,与现有技术中每次使用TCP协议均需要先建立三次握手过程来进行数据传输相比,在使得丢包率没有显著增高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例的调度方法的流程图;
图2是本发明一实施例的调度响应方法的流程图;
图3是本发明一实施例的调度设备的结构示意图;
图4是本发明一实施例的调度响应设备的结构示意图;
图5是本发明一实施例的服务器设备的结构示意图;
图6是本发明一实施例的调度系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
需要说明的是,在不冲突的情况下,本发明实施例中的实施方式及实施方式中的特征可以相互组合。
本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
图1是本发明一实施例的调度方法的流程图。如图1所示,该方法包括:
S101:调度服务器将来自客户端的至少部分的访问请求转换为UDP请求包;
S102:所述调度服务器将所述UDP请求包向源服务器进行多次发送;
S103:所述调度服务器接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
在一种具体实施方式中,索引文件包例如可以是UDP索引文件包。由于使用UDP协议进行数据传输时无需在客户端和服务器之间建立连接(例如,TCP协议的三次握手连接),也没有超时重发等机制,因此传输速度非常快。本实施例中,调度服务器将来自客户端的部分访问请求转换为UDP请求包向源服务器进行发送,可以大大提高调度服务器与源服务器之间的响应速度,对一些要求传输速度较快的领域(例如,视频领域)来说,本发明实施例所示的方法能够在一定程度上满足这样的需求。
此外,由于使用UDP协议进行数据传输没有超时重发等机制,因此丢包率相对TCP协议较高,本实施例中采用将接收到的客户端的访问请求向源服务器进行多次发送的方式来降低传输UDP请求包的丢包率。通常情况下,可以将UDP请求包进行三次以上的发送,假设进行一次UDP传输的丢包率为10%的话,三次发送的丢包率就降为了10%×10%×10%=0.1%,四次发送的丢包率已经降到了0.1‰,该丢包率已经与使用TCP协议时可能产生的丢包率基本相当,可以认为已经达到了较好的降低丢包率的效果。
本实施例中,调度服务器将索引文件包中的索引文件返回客户端时使用的协议根据客户端来决定,若客户端具有解析UDP数据包的能力,则可以使用UDP协议;通常情况下,大部分客户端不具有解析UDP数据包的能力,因此多数情况下还是使用TCP协议。索引文件包中的索引文件可以是,例如,m3u8文件,用以提供客户端请求播放的完整视频流所需的多个切片文件的地址列表文件,客户端得到该切片地址列表文件后即可根据该文件中的地址得到完整的视频流。
本发明实施例提供的调度方法,通过调度服务器将来自客户端的部分访问请求转换为UDP请求包,并向源服务器进行多次发送,由于使用了UDP协议进行数据传输,大大加快了调度服务器与源服务器之间的响应速度,缩短了客户端与服务器之间的交互时间,又因为转换后的UDP包向源服务器发送了多次,弥补了使用UDP协议没有超时重发等机制带来的丢包率较高的问题,与现有技术全程使用TCP协议来进行数据传输相比,在丢包率没有显著升高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
作为图1所示实施例的进一步优化,图1所示实施例中S101调度服务器将来自客户端的至少部分的访问请求转换为UDP请求包包括:
S1011:解析来自客户端的访问请求,确定所述访问请求的大小;
S1012:将所述访问请求的大小与预定阈值进行比较,当所述访问请求的大小小于所述预定阈值时,将所述访问请求转换为UDP请求包。
本发明实施例中,由于单个UDP数据包的大小有限制(通常情况下小于1500字节,其中数据区最大长度为1472字节),超过单包大小的请求若再转换为UDP数据包,则需要对该数据进行分片发送;然而UDP协议是无序的传输协议,发送进程所发送的每个数据报并不按照原先发送的顺序到达接收进程,有可能早发送的数据报较后到达接收进程,因此为了保证数据的安全性,数据较大的访问请求不能转换为UDP请求包。本实施例对能够转换为UDP请求包的访问请求做出了限制,满足要求(即小于预定阈值,该预定阈值保证访问请求能够转换为UDP请求单包)的访问请求按UDP协议进行发送,其余请求按原协议进行发送,保证了数据传输的安全性。
作为图1所示实施例的进一步优化,图1所示实施例中S102所述调度服务器将所述UDP请求包向源服务器进行多次发送包括:
S1021:所述调度服务器将所述UDP请求包向多个源服务器进行发送。
在本实施例中,由于UDP协议可以同多个服务器端建立通信,而TCP协议只能与一个服务器端建立通信,因此将UDP请求包向多个源服务器分别进行多次发送,与现有技术使用TCP协议每次只能与一个源服务器进行连接以获取客户端请求的文件所需的索引文件相比,加快了找到该索引文件的速度。
作为图1所示实施例的进一步优化,图1所示实施例中S103所述调度服务器接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端包括:
S1031:所述调度服务器将所述源服务器返回的第一个索引文件包中的索引文件发送至客户端,所述索引文件包包括重复的多个UDP索引文件包。
本发明实施例中,为了保证使用UDP协议进行数据传输的丢包率不能过高,采取了将UDP数据包向同一服务器进行多次发送的方式,即使前面的数据包丢失了,也会有相同的数据包重复发送过来,以较低的资源浪费保证了丢包率的最小化。在本实施例中,对重复发送的UDP索引文件包,不管发送的先后,服务器只根据第一个到达的UDP索引文件包向客户端发送索引文件,这样可以避免向用户重复发送数据从而降低用户体验的问题。
图2是本发明一实施例的调度响应方法的流程图。如图2所示,该方法包括:
S201:源服务器根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
S202:所述源服务器将至少部分的索引文件转换为UDP索引文件包,并将所述UDP索引文件包向所述调度服务器进行多次发送。
在一种具体实施方式中,请求包例如可以是UDP请求包。本实施例中,源服务器具有转换和解析UDP数据包的能力。UDP索引文件包中的索引文件可以是,例如,m3u8文件,用以提供客户端请求播放的完整视频流所需的多个切片文件的地址列表文件,客户端得到该切片地址列表文件后即可根据该文件中的地址得到完整的视频流。
本发明实施例提供的调度响应方法,通过源服务器将来自调度服务器的部分访问请求对应的索引文件转换为UDP索引文件包,并向调度服务器进行多次发送,由于使用了UDP协议进行数据传输,大大加快了源服务器与调度服务器之间的响应速度,缩短了客户端与服务器之间的交互时间,又因为转换后的UDP包向调度服务器发送了多次,弥补了使用UDP协议没有超时重发等机制带来的丢包率较高的问题,与现有技术全程使用TCP协议来进行数据传输相比,在丢包率没有显著升高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
作为图2所示实施例的进一步优化,图2所示实施例中S201源服务器根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件包括:
S2011:源服务器根据接收到的第一个请求包确定与所述请求包中的访问请求对应的索引文件,所述请求包包括重复的多个UDP请求包。
本发明实施例中,为了保证使用UDP协议进行数据传输的丢包率不能过高,采取了将UDP数据包向同一服务器进行多次发送的方式,即使前面的数据包丢失了,也会有相同的数据包重复发送过来,以较低的资源浪费保证了丢包率的最小化。在本实施例中,对重复发送的UDP请求包,不管发送的先后,服务器只根据第一个到达的UDP请求包确定客户端所需的索引文件,这样可以避免向用户重复发送数据从而降低用户体验的问题。
作为图2所示实施例的进一步优化,图2所示实施例中S202所述源服务器将至少部分的索引文件转换为UDP索引文件包包括:
S2021:将所述索引文件的大小与预定阈值进行比较,当所述索引文件的大小小于所述预定阈值时,将所述索引文件转换为UDP索引文件包。
本发明实施例中,由于单个UDP数据包的大小有限制(通常情况下小于1500字节,其中数据区最大长度为1472字节),超过单包大小的请求若再转换为UDP数据包,则需要对该数据进行分片发送;然而UDP协议是无序的传输协议,发送进程所发送的每个数据报并不按照原先发送的顺序到达接收进程,有可能早发送的数据报较后到达接收进程,因此为了保证数据的安全性,数据较大的索引文件不能转换为UDP索引文件包。本实施例对能够转换为UDP索引文件包的索引文件做出了限制,满足要求(即小于预定阈值,该预定阈值保证索引文件能够转换为UDP索引文件单包)的索引文件按UDP协议进行发送,其余请求按原协议进行发送,保证了数据传输的安全性。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
图3是本发明一实施例的调度设备的结构示意图。本发明实施例所述的调度方法可以基于本实施例中的调度设备实施。如图3所示,该设备包括请求转换单元301、请求发送单元302和调度返回单元303。
请求转换单元301用于将来自客户端的至少部分的访问请求转换为UDP请求包;
请求发送单元302用于将所述UDP请求包向源服务器进行多次发送;
调度返回单元303用于接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
在一种具体实施方式中,索引文件包例如可以是UDP索引文件包。由于使用UDP协议进行数据传输时无需在客户端和服务器之间建立连接(例如,TCP协议的三次握手连接),也没有超时重发等机制,因此传输速度非常快。本实施例中,调度服务器中的请求转换单元301将来自客户端的部分访问请求转换为UDP请求包并通过请求发送单元302向源服务器进行发送,可以大大提高调度服务器与源服务器之间的响应速度,对一些要求传输速度较快的领域(例如,视频领域)来说,本发明实施例所示的方法能够在一定程度上满足这样的需求。
此外,由于使用UDP协议进行数据传输没有超时重发等机制,因此丢包率相对TCP协议较高,本实施例中采用将接收到的客户端的访问请求向源服务器进行多次发送的方式来降低传输UDP请求包的丢包率。通常情况下,可以将UDP请求包进行三次以上的发送,假设进行一次UDP传输的丢包率为10%的话,三次发送的丢包率就降为了10%×10%×10%=0.1%,四次发送的丢包率已经降到了0.1‰,该丢包率已经与使用TCP协议时可能产生的丢包率基本相当,可以认为已经达到了较好的降低丢包率的效果。
本实施例中,调度返回单元303将索引文件包中的索引文件返回客户端时使用的协议根据客户端来决定,若客户端具有解析UDP数据包的能力,则可以使用UDP协议;通常情况下,大部分客户端不具有解析UDP数据包的能力,因此多数情况下还是使用TCP协议。索引文件包中的索引文件可以是,例如,m3u8文件,用以提供客户端请求播放的完整视频流所需的多个切片文件的地址列表文件,客户端得到该切片地址列表文件后即可根据该文件中的地址得到完整的视频流。
本发明实施例提供的调度设备,通过调度服务器中的请求转换单元301将来自客户端的部分访问请求转换为UDP请求包,并通过请求发送单元302向源服务器进行多次发送,由于使用了UDP协议进行数据传输,大大加快了调度服务器与源服务器之间的响应速度,缩短了客户端与服务器之间的交互时间,又因为转换后的UDP包向源服务器发送了多次,弥补了使用UDP协议没有超时重发等机制带来的丢包率较高的问题,与现有技术全程使用TCP协议来进行数据传输相比,在丢包率没有显著升高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
作为图3所示实施例的进一步优化,图3所示实施例中请求转换单元301用于:
解析来自客户端的访问请求,确定所述访问请求的大小;
将所述访问请求的大小与预定阈值进行比较,当所述访问请求的大小小于所述预定阈值时,将所述访问请求转换为UDP请求包。
本发明实施例中,由于单个UDP数据包的大小有限制(通常情况下小于1500字节,其中数据区最大长度为1472字节),超过单包大小的请求若再转换为UDP数据包,则需要对该数据进行分片发送;然而UDP协议是无序的传输协议,发送进程所发送的每个数据报并不按照原先发送的顺序到达接收进程,有可能早发送的数据报较后到达接收进程,因此为了保证数据的安全性,数据较大的访问请求不能转换为UDP请求包。本实施例通过请求转换单元301对能够转换为UDP请求包的访问请求做出了限制,满足要求(即小于预定阈值,该预定阈值保证访问请求能够转换为UDP请求单包)的访问请求按UDP协议进行发送,其余请求按原协议进行发送,保证了数据传输的安全性。
作为图3所示实施例的进一步优化,图3所示实施例中请求发送单元302用于将所述UDP请求包向多个源服务器进行发送。
在本实施例中,由于UDP协议可以同多个服务器端建立通信,而TCP协议只能与一个服务器端建立通信,因此将UDP请求包通过请求发送单元302向多个源服务器分别进行多次发送,与现有技术使用TCP协议每次只能与一个源服务器进行连接以获取客户端请求的文件所需的索引文件相比,加快了找到该索引文件的速度。
作为图3所示实施例的进一步优化,图3所示实施例中调度返回单元303用于将所述源服务器返回的第一个索引文件包中的索引文件发送至客户端,所述索引文件包包括重复的多个UDP索引文件包。
本发明实施例中,为了保证使用UDP协议进行数据传输的丢包率不能过高,采取了将UDP数据包向同一服务器进行多次发送的方式,即使前面的数据包丢失了,也会有相同的数据包重复发送过来,以较低的资源浪费保证了丢包率的最小化。在本实施例中,对重复发送的UDP索引文件包,不管发送的先后,调度返回单元303只根据第一个到达的UDP索引文件包向客户端发送索引文件,这样可以避免向用户重复发送数据从而降低用户体验的问题。
图4是本发明一实施例的调度响应设备的结构示意图。本发明实施例所述的调度响应方法可以基于本实施例中的调度响应设备实施。如图4所示,该设备包括索引确定单元401、索引转换单元402和索引返回单元403。
索引确定单元401用于根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
索引转换单元402用于将至少部分的索引文件转换为UDP索引文件包;
索引返回单元403用于将所述UDP索引文件包向所述调度服务器进行多次发送。
在一种具体实施方式中,请求包例如可以是UDP请求包。本实施例中,源服务器具有转换和解析UDP数据包的能力。UDP索引文件包中的索引文件可以是,例如,m3u8文件,用以提供客户端请求播放的完整视频流所需的多个切片文件的地址列表文件,客户端得到该切片地址列表文件后即可根据该文件中的地址得到完整的视频流。
本发明实施例提供的调度响应设备,通过索引确定单元401确定来自调度服务器的部分访问请求对应的索引文件,通过索引转换单元402转换为UDP索引文件包,并通过索引返回单元403向调度服务器进行多次发送,由于使用了UDP协议进行数据传输,大大加快了源服务器与调度服务器之间的响应速度,缩短了客户端与服务器之间的交互时间,又因为转换后的UDP包向调度服务器发送了多次,弥补了使用UDP协议没有超时重发等机制带来的丢包率较高的问题,与现有技术全程使用TCP协议来进行数据传输相比,在丢包率没有显著升高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
作为图4所示实施例的进一步优化,图4所示实施例中索引确定单元401用于根据接收到的第一个请求包确定与所述请求包中的访问请求对应的索引文件,所述请求包包括重复的多个UDP请求包。
本发明实施例中,为了保证使用UDP协议进行数据传输的丢包率不能过高,采取了将UDP数据包向同一服务器进行多次发送的方式,即使前面的数据包丢失了,也会有相同的数据包重复发送过来,以较低的资源浪费保证了丢包率的最小化。在本实施例中,对重复发送的UDP请求包,不管发送的先后,索引确定单元401只根据第一个到达的UDP请求包确定客户端所需的索引文件,这样可以避免向用户重复发送数据从而降低用户体验的问题。
作为图4所示实施例的进一步优化,图4所示实施例中索引转换单元402用于:
将所述索引文件的大小与预定阈值进行比较,当所述索引文件的大小小于所述预定阈值时,将所述索引文件转换为UDP索引文件包。
本发明实施例中,由于单个UDP数据包的大小有限制(通常情况下小于1500字节,其中数据区最大长度为1472字节),超过单包大小的请求若再转换为UDP数据包,则需要对该数据进行分片发送;然而UDP协议是无序的传输协议,发送进程所发送的每个数据报并不按照原先发送的顺序到达接收进程,有可能早发送的数据报较后到达接收进程,因此为了保证数据的安全性,数据较大的索引文件不能转换为UDP索引文件包。本实施例通过索引转换单元402对能够转换为UDP索引文件包的索引文件做出了限制,满足要求(即小于预定阈值,该预定阈值保证索引文件能够转换为UDP索引文件单包)的索引文件按UDP协议进行发送,其余请求按原协议进行发送,保证了数据传输的安全性。
本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
图5为本发明实施例提供的一种服务器500的结构示意图,本发明实施例并不对服务器500的具体实现做限定。如图5所示,该服务器500可以包括:
处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530、以及通信总线540。其中:
处理器510、通信接口520、以及存储器530通过通信总线540完成相互间的通信。
通信接口520,用于与比如客户端等的网元通信。
处理器510,用于执行程序532,具体可以执行上述方法实施例中的相关步骤。
具体地,程序532可以包括程序代码,所述程序代码包括计算机操作指令。
处理器510可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
上述实施中的服务器中:
存储器,用于存放计算机操作指令;
处理器,用于执行所述存储器存储的计算机操作指令,以执行:
将来自客户端的至少部分的访问请求转换为UDP请求包;
将所述UDP请求包向源服务器进行多次发送;
接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端;
或以执行:
根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
将至少部分的索引文件转换为UDP索引文件包,并将所述UDP索引文件包向所述调度服务器进行多次发送。
图6是本发明一实施例的调度系统的结构示意图。本发明实施例所述的调度方法和调度响应可以基于本实施例中的调度系统实施。如图6所示,该系统包括请求转换单元601、请求发送单元602、索引确定单元603、索引转换单元604、索引返回单元605和调度返回单元606。
请求转换单元601用于将来自客户端的至少部分的访问请求转换为UDP请求包;
请求发送单元602用于将所述UDP请求包向源服务器进行多次发送;
索引确定单元603用于根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
索引转换单元604用于将至少部分的索引文件转换为UDP索引文件包;
索引返回单元605用于将所述UDP索引文件包向所述调度服务器进行多次发送;
调度返回单元606用于接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
本发明实施例提供的调度系统,通过请求转换单元601将来自客户端的部分访问请求转换为UDP请求包,并通过请求发送单元602向源服务器进行多次发送,通过索引确定单元603确定来自调度服务器的部分访问请求对应的索引文件,并通过索引转换单元604转换为UDP索引文件包,并通过索引返回单元605向调度服务器进行多次发送,调度返回单元606将索引文件包中的索引文件返回客户端,由于使用了UDP协议进行数据传输,大大加快了调度服务器与源服务器之间的响应速度,缩短了客户端与服务器之间的交互时间,又因为转换后的UDP包向服务器发送了多次,弥补了使用UDP协议没有超时重发等机制带来的丢包率较高的问题,与现有技术全程使用TCP协议来进行数据传输相比,在丢包率没有显著升高的同时,加快了服务器之间的交互速度,降低了用户的访问时间。
作为图6所示实施例的进一步优化,图6所示系统实施例中请求转换单元601用于:
解析来自客户端的访问请求,确定所述访问请求的大小;
将所述访问请求的大小与预定阈值进行比较,当所述访问请求的大小小于所述预定阈值时,将所述访问请求转换为UDP请求包。
本发明实施例中,由于单个UDP数据包的大小有限制(通常情况下小于1500字节,其中数据区最大长度为1472字节),超过单包大小的请求若再转换为UDP数据包,则需要对该数据进行分片发送;然而UDP协议是无序的传输协议,发送进程所发送的每个数据报并不按照原先发送的顺序到达接收进程,有可能早发送的数据报较后到达接收进程,因此为了保证数据的安全性,数据较大的访问请求不能转换为UDP请求包。本实施例通过请求转换单元601对能够转换为UDP请求包的访问请求做出了限制,满足要求(即小于预定阈值,该预定阈值保证访问请求能够转换为UDP请求单包)的访问请求按UDP协议进行发送,其余请求按原协议进行发送,保证了数据传输的安全性。
作为图6所示实施例的进一步优化,图6所示系统实施例中请求发送单元602用于将所述UDP请求包向多个源服务器进行发送。
在本实施例中,由于UDP协议可以同多个服务器端建立通信,而TCP协议只能与一个服务器端建立通信,因此将UDP请求包通过请求发送单元602向多个源服务器分别进行多次发送,与现有技术使用TCP协议每次只能与一个源服务器进行连接以获取客户端请求的文件所需的索引文件相比,加快了找到该索引文件的速度。
作为图6所示实施例的进一步优化,图6所示系统实施例中索引确定单元603用于根据接收到的第一个请求包确定与所述请求包中的访问请求对应的索引文件,所述请求包包括重复的多个UDP请求包。
本发明实施例中,为了保证使用UDP协议进行数据传输的丢包率不能过高,采取了将UDP数据包向同一服务器进行多次发送的方式,即使前面的数据包丢失了,也会有相同的数据包重复发送过来,以较低的资源浪费保证了丢包率的最小化。在本实施例中,对重复发送的UDP请求包,不管发送的先后,索引确定单元603只根据第一个到达的UDP请求包确定客户端所需的索引文件,这样可以避免向用户重复发送数据从而降低用户体验的问题。
作为图6所示实施例的进一步优化,图6所示系统实施例中索引转换单元604用于:
将所述索引文件的大小与预定阈值进行比较,当所述索引文件的大小小于所述预定阈值时,将所述索引文件转换为UDP索引文件包。
本发明实施例中,由于单个UDP数据包的大小有限制(通常情况下小于1500字节,其中数据区最大长度为1472字节),超过单包大小的请求若再转换为UDP数据包,则需要对该数据进行分片发送;然而UDP协议是无序的传输协议,发送进程所发送的每个数据报并不按照原先发送的顺序到达接收进程,有可能早发送的数据报较后到达接收进程,因此为了保证数据的安全性,数据较大的索引文件不能转换为UDP索引文件包。本实施例通过索引转换单元604对能够转换为UDP索引文件包的索引文件做出了限制,满足要求(即小于预定阈值,该预定阈值保证索引文件能够转换为UDP索引文件单包)的索引文件按UDP协议进行发送,其余请求按原协议进行发送,保证了数据传输的安全性。
作为图6所示实施例的进一步优化,图6所示系统实施例中调度返回单元606用于将所述源服务器返回的第一个索引文件包中的索引文件发送至客户端,所述索引文件包包括重复的多个UDP索引文件包。
本发明实施例中,为了保证使用UDP协议进行数据传输的丢包率不能过高,采取了将UDP数据包向同一服务器进行多次发送的方式,即使前面的数据包丢失了,也会有相同的数据包重复发送过来,以较低的资源浪费保证了丢包率的最小化。在本实施例中,对重复发送的UDP索引文件包,不管发送的先后,调度返回单元606只根据第一个到达的UDP索引文件包向客户端发送索引文件,这样可以避免向用户重复发送数据从而降低用户体验的问题。
以上所描述的方法实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
本领域内的技术人员应明白,本发明实施例可提供为方法、系统、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (20)
1.一种调度方法,所述方法包括:
调度服务器将来自客户端的至少部分的访问请求转换为UDP请求包;
所述调度服务器将所述UDP请求包向源服务器进行多次发送;
所述调度服务器接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
2.根据权利要求1所述的方法,其中,所述调度服务器将来自客户端的至少部分的访问请求转换为UDP请求包包括:
解析来自客户端的访问请求,确定所述访问请求的大小;
将所述访问请求的大小与预定阈值进行比较,当所述访问请求的大小小于所述预定阈值时,将所述访问请求转换为UDP请求包。
3.根据权利要求1所述的方法,其中,所述调度服务器将所述UDP请求包向源服务器进行多次发送包括:
所述调度服务器将所述UDP请求包向多个源服务器进行发送。
4.根据权利要求1或2所述的方法,其中,所述调度服务器接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端包括:
所述调度服务器将所述源服务器返回的第一个索引文件包中的索引文件发送至客户端,所述索引文件包包括重复的多个UDP索引文件包。
5.一种调度响应方法,所述方法包括:
源服务器根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
所述源服务器将至少部分的索引文件转换为UDP索引文件包,并将所述UDP索引文件包向所述调度服务器进行多次发送。
6.根据权利要求5所述的方法,其中,所述源服务器根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件包括:
源服务器根据接收到的第一个请求包确定与所述请求包中的访问请求对应的索引文件,所述请求包包括重复的多个UDP请求包。
7.根据权利要求5或6所述的方法,其中,所述源服务器将至少部分的索引文件转换为UDP索引文件包包括:
将所述索引文件的大小与预定阈值进行比较,当所述索引文件的大小小于所述预定阈值时,将所述索引文件转换为UDP索引文件包。
8.一种调度设备,所述设备包括:
请求转换单元,用于将来自客户端的至少部分的访问请求转换为UDP请求包;
请求发送单元,用于将所述UDP请求包向源服务器进行多次发送;
调度返回单元,用于接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
9.根据权利要求8所述的设备,其中,所述请求转换单元用于:
解析来自客户端的访问请求,确定所述访问请求的大小;
将所述访问请求的大小与预定阈值进行比较,当所述访问请求的大小小于所述预定阈值时,将所述访问请求转换为UDP请求包。
10.根据权利要求8所述的设备,其中,所述请求发送单元用于将所述UDP请求包向多个源服务器进行发送。
11.根据权利要求8或9所述的设备,其中,所述调度返回单元用于将所述源服务器返回的第一个索引文件包中的索引文件发送至客户端,所述索引文件包包括重复的多个UDP索引文件包。
12.一种调度响应设备,所述设备包括:
索引确定单元,用于根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
索引转换单元,用于将至少部分的索引文件转换为UDP索引文件包;
索引返回单元,用于将所述UDP索引文件包向所述调度服务器进行多次发送。
13.根据权利要求12所述的设备,其中,所述索引确定单元用于根据接收到的第一个请求包确定与所述请求包中的访问请求对应的索引文件,所述请求包包括重复的多个UDP请求包。
14.根据权利要求12或13所述的设备,其中,所述索引转换单元用于:
将所述索引文件的大小与预定阈值进行比较,当所述索引文件的大小小于所述预定阈值时,将所述索引文件转换为UDP索引文件包。
15.一种调度系统,所述系统包括:
请求转换单元,用于将来自客户端的至少部分的访问请求转换为UDP请求包;
请求发送单元,用于将所述UDP请求包向源服务器进行多次发送;
索引确定单元,用于根据调度服务器发送的请求包确定与所述请求包中的访问请求对应的索引文件;
索引转换单元,用于将至少部分的索引文件转换为UDP索引文件包;
索引返回单元,用于将所述UDP索引文件包向所述调度服务器进行多次发送;
调度返回单元,用于接收来自所述源服务器返回的索引文件包,将所述索引文件包中的索引文件发送至客户端。
16.根据权利要求15所述的系统,其中,所述请求转换单元用于:
解析来自客户端的访问请求,确定所述访问请求的大小;
将所述访问请求的大小与预定阈值进行比较,当所述访问请求的大小小于所述预定阈值时,将所述访问请求转换为UDP请求包。
17.根据权利要求15所述的系统,其中,所述请求发送单元用于将所述UDP请求包向多个源服务器进行发送。
18.根据权利要求15所述的系统,其中,所述索引确定单元用于根据接收到的第一个请求包确定与所述请求包中的访问请求对应的索引文件,所述请求包包括重复的多个UDP请求包。
19.根据权利要求15或18所述的系统,其中,所述索引转换单元用于:
将所述索引文件的大小与预定阈值进行比较,当所述索引文件的大小小于所述预定阈值时,将所述索引文件转换为UDP索引文件包。
20.根据权利要求15或16所述的系统,其中,所述调度返回单元用于将所述源服务器返回的第一个索引文件包中的索引文件发送至客户端,所述索引文件包包括重复的多个UDP索引文件包。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610429450.1A CN105897767A (zh) | 2016-06-16 | 2016-06-16 | 调度方法、调度响应方法及设备和系统 |
PCT/CN2016/099606 WO2017215144A1 (zh) | 2016-06-16 | 2016-09-21 | 调度方法、调度响应方法及设备和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610429450.1A CN105897767A (zh) | 2016-06-16 | 2016-06-16 | 调度方法、调度响应方法及设备和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105897767A true CN105897767A (zh) | 2016-08-24 |
Family
ID=56731038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610429450.1A Pending CN105897767A (zh) | 2016-06-16 | 2016-06-16 | 调度方法、调度响应方法及设备和系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105897767A (zh) |
WO (1) | WO2017215144A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017215144A1 (zh) * | 2016-06-16 | 2017-12-21 | 乐视控股(北京)有限公司 | 调度方法、调度响应方法及设备和系统 |
CN111092907A (zh) * | 2019-12-30 | 2020-05-01 | 人和未来生物科技(长沙)有限公司 | 基于udp协议的数据流快速传输方法、系统及介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116095018A (zh) * | 2022-12-31 | 2023-05-09 | 北京中嘉和信通信技术有限公司 | 数据传输方法、装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1964323A (zh) * | 2006-11-15 | 2007-05-16 | 华为技术有限公司 | 实现基站支持Iub接口IP传输的系统、装置及方法 |
CN101473623A (zh) * | 2006-06-16 | 2009-07-01 | 贺利实公司 | 用于服务质量的协议转换网关的系统和方法 |
TW200943841A (en) * | 2008-04-07 | 2009-10-16 | Chunghwa Telecom Co Ltd | System of integrating and transmitting internet phone signal and method thereof |
CN102143204A (zh) * | 2010-11-26 | 2011-08-03 | 华为技术有限公司 | 一种内容分发网络中实现超文本传输协议重定向的方法、装置及系统 |
CN102244645A (zh) * | 2010-05-14 | 2011-11-16 | 北京快网科技有限公司 | 一种基于udp协议的可靠,透明,通用加速网关系统 |
CN104717041A (zh) * | 2015-04-01 | 2015-06-17 | 北京百度网讯科技有限公司 | 数据传输方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201766620U (zh) * | 2010-09-17 | 2011-03-16 | 深圳市思科泰技术有限公司 | 一种地铁调度台辅助服务器 |
CN105897767A (zh) * | 2016-06-16 | 2016-08-24 | 乐视控股(北京)有限公司 | 调度方法、调度响应方法及设备和系统 |
-
2016
- 2016-06-16 CN CN201610429450.1A patent/CN105897767A/zh active Pending
- 2016-09-21 WO PCT/CN2016/099606 patent/WO2017215144A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101473623A (zh) * | 2006-06-16 | 2009-07-01 | 贺利实公司 | 用于服务质量的协议转换网关的系统和方法 |
CN1964323A (zh) * | 2006-11-15 | 2007-05-16 | 华为技术有限公司 | 实现基站支持Iub接口IP传输的系统、装置及方法 |
TW200943841A (en) * | 2008-04-07 | 2009-10-16 | Chunghwa Telecom Co Ltd | System of integrating and transmitting internet phone signal and method thereof |
CN102244645A (zh) * | 2010-05-14 | 2011-11-16 | 北京快网科技有限公司 | 一种基于udp协议的可靠,透明,通用加速网关系统 |
CN102143204A (zh) * | 2010-11-26 | 2011-08-03 | 华为技术有限公司 | 一种内容分发网络中实现超文本传输协议重定向的方法、装置及系统 |
CN104717041A (zh) * | 2015-04-01 | 2015-06-17 | 北京百度网讯科技有限公司 | 数据传输方法和装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017215144A1 (zh) * | 2016-06-16 | 2017-12-21 | 乐视控股(北京)有限公司 | 调度方法、调度响应方法及设备和系统 |
CN111092907A (zh) * | 2019-12-30 | 2020-05-01 | 人和未来生物科技(长沙)有限公司 | 基于udp协议的数据流快速传输方法、系统及介质 |
CN111092907B (zh) * | 2019-12-30 | 2021-09-03 | 人和未来生物科技(长沙)有限公司 | 基于udp协议的数据流快速传输方法、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2017215144A1 (zh) | 2017-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10303522B2 (en) | System and method for distributed graphics processing unit (GPU) computation | |
CN110198307A (zh) | 一种移动边缘计算节点的选择方法、装置及系统 | |
CN102792292B (zh) | 站点性能优化和因特网业务处理的系统和方法 | |
CN103841134B (zh) | 基于api发送、接收信息的方法、装置及系统 | |
CN105122772B (zh) | 一种通过头部交换服务器状态和客户端信息的方法及设备 | |
CN106453576B (zh) | 一种基于混合云平台的交互方法、系统及调度中心 | |
US11194572B2 (en) | Managing external feeds in an event-based computing system | |
CN108933805A (zh) | 一种文件传输方法及系统 | |
CN104391868B (zh) | 动态页面静态化的装置和方法 | |
CN103391312B (zh) | 资源离线下载方法及装置 | |
CN107431630A (zh) | 高度可扩展、容错的远程访问架构和与之连接的方法 | |
CN109074265A (zh) | 移动云服务的预先形成的指令 | |
CN110311989A (zh) | 一种灰度发布方法、装置、存储介质、设备及系统 | |
Nguyen et al. | Why cloud applications are not ready for the edge (yet) | |
CN110650209B (zh) | 实现负载均衡的方法和装置 | |
CN108415710A (zh) | 在智能对话开发平台上发布、调用api的方法和系统 | |
US20160028833A1 (en) | Tenant aware session manager | |
US20160359984A1 (en) | Web services documentation | |
CN105897767A (zh) | 调度方法、调度响应方法及设备和系统 | |
CN114930296A (zh) | 基于不同计算范式内的计算出的计算引力的分布式计算工作负载 | |
CN104125294B (zh) | 一种大数据安全管理方法和系统 | |
CN109962961A (zh) | 一种内容分发网络cdn服务节点的重定向方法及系统 | |
CN108234242A (zh) | 一种基于流的压力测试方法和装置 | |
CN108563697A (zh) | 一种数据处理方法、装置和存储介质 | |
Abbade et al. | Performance comparison of programming languages for Internet of Things middleware |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160824 |