CN105163136A - 一种采用p2p方式进行视频文件提供的方法及装置 - Google Patents
一种采用p2p方式进行视频文件提供的方法及装置 Download PDFInfo
- Publication number
- CN105163136A CN105163136A CN201510625038.2A CN201510625038A CN105163136A CN 105163136 A CN105163136 A CN 105163136A CN 201510625038 A CN201510625038 A CN 201510625038A CN 105163136 A CN105163136 A CN 105163136A
- Authority
- CN
- China
- Prior art keywords
- video file
- video
- connection
- file
- rate
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/278—Content descriptor database or directory service for end-user access
Abstract
本发明实施例公开了一种采用P2P方式进行视频文件提供的方法及装置,该方法中,当视频上传端确认视频下载端待下载视频文件为高码率视频文件,且满足当前自身已建立的连接的数量不小于设定的第一连接阈值但小于第二连接阈值的条件时,向视频下载端发送同意连接信息,建立新的连接,采用该新的连接接收视频下载端发送的下载请求并提供视频文件,其中第二连接阈值大于第一连接阈值。由于本发明实施例中当视频上传端接收到下载高码率视频文件的连接请求时,如果已建立连接的数量大于设定的第一连接阈值,则采用第二连接阈值判断是否为该视频下载端建立新的连接,其中该第二连接阈值大于第一连接阈值,从而提高了高码率视频文件的分享比。
Description
技术领域
本发明涉及网络视频分享领域,特别涉及一种采用P2P方式进行视频文件提供的方法及装置。
背景技术
在互联网视频行业中,一般使用内容分发网络(CDN)向视频下载端提供视频文件。高码率视频文件对CDN带宽的占用非常大。在CDN带宽有限的情况下,CDN每多提供一个高码率视频文件,就会相应降低多个低码率视频文件的提供速率,甚至会断开低码率视频文件的提供链路,从而使用户的观影体验下降,甚至造成该部分用户流失。
为了解决上述问题,现有技术一般采用P2P的方式实现视频文件的提供。现有技术中的视频文件提供系统包括:接收视频文件的视频下载端、提供视频文件的视频上传端和服务器;其中服务器中记录有存储有每个视频文件的视频上传端的信息,具体的,服务器可以在本地针对每个视频文件的标识信息,记录保存有该视频文件的每个视频上传端的信息。图1为现有技术中采用P2P方式实现视频文件提供的过程,该过程包括:
S101:视频下载端发送待下载的视频文件的标识信息给服务器;
S102:服务器根据接收到的所述视频文件的标识信息,查找在本地记录的保存有该标识信息的视频文件的所有视频上传端的信息,将查找到的每个视频上传端的信息发送给所述视频下载端;
S103:视频下载端根据接收到的每个视频上传端的信息,向每个视频上传端发送连接请求;
S104:接收到连接请求的视频上传端,判断自身已建立的连接数是否达到预设的连接数上限阈值,若否,则进行S105,若是,则视频文件提供过程结束;
S105:视频上传端向所述视频下载端发送同意连接信息,视频下载端接收到该视频上传端发送的同意连接信息后,向该视频上传端发送视频下载请求,所述视频下载请求包括待下载的视频文件的标识信息;
S106:视频上传端接收到所述视频下载端发送的视频下载请求后,根据待下载的视频文件的标识信息,在本地查找该标识信息的视频文件,并将查找到的该视频文件提供给所述视频下载端。
由于高码率视频文件包含的信息量比较大,在全网范围的需求量比较大,需要在全网范围内增加高码率视频文件的分享比,但是所述现有技术通过P2P的方式进行视频文件提供的方法,其提高高码率视频文件的分享比的效果并不明显。
发明内容
本发明实施例的目的在于提供一种采用P2P方式进行视频文件提供的方法及装置,用以提高高码率视频文件的分享比。
为达到上述目的,本发明实施例公开了一种采用P2P方式进行视频文件提供的方法,包括步骤:
接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息;
当根据所述码率信息确定视频下载端待下载的视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值;
如果是,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;
采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;
根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
较佳的,当当前自身已建立的连接的数量不小于预设的第二连接阈值时,所述向所述视频下载端发送同意连接信息还包括:
根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接;
在识别到的每个连接中,根据每个连接的优先级,选择优先级最低的连接;
将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
较佳的,确定所述每个连接的优先级,包括:
针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度由当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图所确定。
较佳的,在所述向所述视频下载端提供所述标识信息的视频文件之后,还包括:
判断当前提供对应该标识信息的待下载视频文件的连接中的数据上传速率是否达到预设的上传速率的第一上限阈值;
若是,则按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
较佳的,所述方法还包括:
判断自身存储的视频文件的数据量是否大于预设的存储数据量上限阈值;
若是,则确定本地存储的每个视频文件的优先级;
针对每个优先级的视频文件,删除低码率的视频文件。
较佳的,所述确定本地存储的每个视频文件的优先级包括:
针对每个视频文件,根据每个视频文件的健康度、该视频文件最近一次被提供的时间、该视频文件在本地存储的时间和预设的视频文件的码率与码率权值的对应关系来确定,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
较佳的,所述向所述视频下载端提供所述标识信息的视频文件之前,所述方法还包括:
在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中;
所述向所述视频下载端提供所述标识信息的视频文件包括:
从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
本发明实施例还公开了一种采用P2P方式进行视频文件提供的装置,应用于视频上传端,所述装置包括:
接收连接请求模块,用于接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息;
判断连接模块,用于当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值;
提高建立模块,用于当所述判断模块的判断结果为是时,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;
接收下载请求模块,用于采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;
提供模块,用于根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
较佳的,所述提高建立模块,还用于当所述判断模块判断当前自身已建立的连接的数量不小于预设的第二连接阈值时,根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接;在识别到的每个连接中,根据每个连接的优先级,选择优先级最低的连接;将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
较佳的,所述装置还包括:
优先级确定模块,用于针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度由当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图所确定。
较佳的,所述提供模块,还用于判断当前提供对应该标识信息的待下载视频文件的连接中的数据上传速率是否达到预设的上传速率的第一上限阈值;若是,则按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
较佳的,所述装置还包括:
选择删除模块,用于判断自身存储的视频文件的数据量是否大于预设的存储数据量上限阈值,若是,则确定本地存储的每个视频文件的优先级,针对每个优先级的视频文件,删除低码率的视频文件。
较佳的,所述装置还包括:
优先级确定模块,用于针对每个视频文件,根据每个视频文件的健康度、该视频文件最近一次被提供的时间、该视频文件在本地存储的时间和预设的视频文件的码率与码率权值的对应关系来确定,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
较佳的,所述装置还包括:
查找放入模块,用于在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中;
所述提供模块,具体用于从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
本发明实施例提供了一种采用P2P方式进行视频文件提供的方法及装置,应用于视频上传端,该方法中,视频上传端接收视频下载端发送的携带该视频下载端待下载视频文件的码率信息的连接请求;根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否不小于设定的第一连接阈值,如果是,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。由于本发明实施例中当视频上传端接收到下载高码率视频文件的连接请求时,如果已建立连接的数量大于设定的第一连接阈值,则采用第二连接阈值判断是否为该视频下载端建立新的连接,其中该第二连接阈值大于第一连接阈值,从而为高码率视频提供更多的连接,提高了高码率视频文件的分享比。
当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术提供的一种采用P2P方式进行视频文件提供的方法的流程示意图;
图2为本发明实施例一提供的一种采用P2P方式进行视频文件提供的方法的流程示意图;
图3为本发明实施例二提供的一种采用P2P方式进行视频文件提供的方法的流程示意图;
图4为本发明实施例三提供的一种采用P2P方式进行视频文件提供的方法的流程示意图;
图5为本发明实施例四提供的一种采用P2P方式进行视频文件提供的方法的流程示意图;
图6为本发明实施例提供的一种采用P2P方式进行视频文件提供的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种采用P2P方式进行视频文件提供的方法及装置,应用于视频上传端,该方法中,视频上传端接收视频下载端发送的携带该视频下载端待下载视频文件的码率信息的连接请求;根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值,如果是,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
下面通过具体实施例,对本发明进行详细说明。
图2为本发明实施例一提供的一种采用P2P方式进行视频文件提供的的方法的流程示意图,该方法应用于视频上传端,包括如下步骤:
S201:接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息。
当视频下载端需要进行视频文件下载时,向服务器发送其待下载的视频文件的标识信息,服务器中记录有存储有每个视频文件的视频上传端的信息,具体的,服务器可以在本地针对每个视频文件的标识信息记录保存有该视频文件的每个视频上传端的信息。因此,服务器可以根据接收到的该视频文件的标识信息,查找存储有该视频文件的视频上传端的信息,并将查找到的每个视频上传端的信息发送给视频下载端。其中该视频上传端的信息可以是该视频上传端的地址信息。视频下载端根据接收到的每个视频上传端的信息,向每个视频上传端发送连接请求。
所述连接请求中携带有该视频下载端待下载的视频文件的码率信息。
S202:当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值,如果是,进行S203,否则,进行S204。
S203:判断当前已建立的连接的数量是否小于第二连接阈值,若是,则进行S204,若否,则视频文件提供过程结束。
S204:向所述视频下载端发送同意连接信息。
所述高码率视频文件是指码率高于设定阈值的视频文件,该设定阈值可以根据需求进行设置的定义是预先设置的,例如可以将该设定阈值设定为10Mbps。该设定阈值可以预先配置在视频上传端中,或者预先配置在服务器中,视频上传端也可以从服务器获取该设定阈值该高码率定义信息,当视频上传端根据进行待下载的视频文件的码率信息判断该待下载的视频文件是否为高码率视频文件之前判断时,从服务器获取该设定阈值即可进行判断。
在本发明实施例中,可以根据视频上传端的处理能力设置第二连接阈值,其中第二连接阈值大于第一连接阈值,该第一连接阈值可以与现有技术的连接阈值相同。可以直接在每个视频上传端中设置其第二连接阈值,也可以在服务器中设置每个视频上传端的第二连接阈值,每个视频上传端的第二连接阈值可以相同,也可以不同。在服务器中设置了每个视频上传端的第二连接阈值的情况下,视频上传端可以在需要使用该第二连接阈值进行判断之前,当判断本地未保存该第二连接阈值时,向服务器发送获取该第二连接阈值的请求,从服务器获取该第二连接阈值并保存在本地;或者,服务器也可以在获取了每个视频上传端的第二连接阈值之后,将每个第二连接阈值发送到对应的视频上传端。
当视频上传端当前已建立的连接的数量不小于设定的第一连接阈值时,针对该高码率视频文件,将自身的第一连接阈值提高到第二连接阈值,并且在当前已建立的连接的数量小于第二连接阈值时,为该视频下载端建立连接,并向该视频下载端发送同意连接信息。
S205:采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息。
S206:根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
在本发明实施例中,当视频上传端接收到下载高码率视频文件的连接请求时,如果该视频上传端已建立的连接的数量大于设定的第一连接阈值,则采用第二连接阈值判断是否为该视频下载端建立新的连接,其中该第二连接阈值大于第一连接阈值,从而为高码率视频提供更多的连接,提高了高码率视频文件的分享比。
在本发明实施例中,后续当该视频上传端接收到该视频下载端或者其他视频下载端发送的连接请求时,若该连接请求是提供低码率视频文件的连接请求,则该视频上传端仍然按照设定的第一连接阈值判断,是否可以为低码率视频文件建立连接;如果后续该视频上传端接收到该视频下载端或者其他视频下载端发送的连接请求是提供高码率视频文件的连接请求,则该视频上传端仍然按照图2所示的实施方式进行判断。
在上述实施例方式中,当视频上传端当前已建立的连接的数量达到预设的第二连接阈值时,为了进一步提高高码率视频文件的分享比,在本发明实施例中还包括:
根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接;
在识别到的每个连接中,根据每个连接的优先级,选择优先级最低的连接;
将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
在本发明实施例中,当视频上传端当前已建立的连接的数量达到预设的第二连接阈值时,为了进一步提高高码率视频文件的分享比,可以在提供低码率视频文件的连接中断开一条连接,用该断开的连接提供该高码率视频文件。其中在确定断开提供低码率视频文件的哪个连接时,为了进一步保证用户的体验,同时进一步保证码率相对较高的视频文件的分享比,可以依据每个连接的优先级进行选择。其中确定每个连接的优先级包括:
针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度是由当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图所确定的。其中针对每个视频文件的平均文件位图存储在服务器中,是由服务器根据整个网络注册的视频上传端和视频下载端的文件位图所计算出的。服务器在将查找到的每个视频上传端的信息发送给视频下载端的同时,将所述平均文件位图发送给视频下载端。由于服务器对平均文件位图的计算和视频下载端对平均文件位图的获取属于现有技术,因而本发明不再赘述。
例如,健康度可以由以下公式来确定:
健康度=(当前存储有该视频文件的视频上传端的数量/当前正在播放该视频文件的视频上传端的数量)*平均文件位图
对于每个接收到连接请求的视频上传端,该视频上传端为了确定每个连接的优先级,需要针对每个连接提供的视频文件,从服务器中获取当前存储有该视频文件的视频上传端的数量以及当前正在播放该视频文件的视频上传端的数量,由于服务器中针对每个标识信息的视频文件记录有存储有该视频文件的视频上传端的信息,因此针对每个连接提供的视频文件,视频上传端可以从服务器获取当前存储有该视频文件的视频上传端的数量,另外,每个视频上传端播放本地存储的每个视频文件时,可以向服务器上报其播放信息,因此服务器根据其接收的信息,可以确定当前正在播放该视频文件的视频上传端的数量,从而便于视频上传端获取该当前正在播放该视频文件的视频上传端的数量;再或者,为了减少信息交互,降低服务器的负担,服务器可以针对每个视频文件,记录当前下载该视频文件的视频下载端的数量,可以将当前下载该视频文件的视频下载端的数量作为当前正在播放该视频文件的视频上传端的数量,从而便于计算每个连接的健康度。
每个连接的优先级可以由公式:优先级=健康度*码率权值来确定,其中每个视频文件对应一个码率权值,相同码率的视频文件,对应的码率权值相同,码率越高对应的码率权值越大。
图3为本发明实施例二提供的一种采用P2P方式进行视频文件提供的流程示意图,应用于视频上传端,包括如下步骤:
S301:接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息。
S302:当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值,如果是,进行S303,否则,进行S304。
S303:判断当前已建立的连接的数量是否小于第二连接阈值,若是,则进行S304,否则,进行S305。
S304:向所述视频下载端发送同意连接信息。之后进行S308。
S305:根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接。
S306:针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度是由当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图所确定的。
S307:选择优先级最低的连接,将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
S308:采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息。
S309:根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
在本发明实施例中,视频上传端当接收到下载高码率视频文件的连接请求时,当当前已建立的连接的数量达到预设的第二连接阈值时,为了进一步提高高码率视频文件的分享比,在已建立的提供低码率视频文件的连接中,选择断开一个提供低码率视频文件的连接,将该断开的连接用于提供高码率视频文件,进而进一步提高了高码率视频文件在P2P网络中的分享比。
当提供高码率视频文件的连接已经建立,所述待下载视频文件已经在进行上传时,其数据上传速率可能会达到预设的上传速率的上限阈值,当数据上传速率达到预设的上传速率的上限阈值时,数据上传速率将会下降为0。为了进一步增加高码率视频文件在P2P网络中的分享比,所述方法还包括:
判断当前提供对应该标识信息的待下载视频文件的连接中的数据上传速率是否达到预设的上传速率的第一上限阈值;
若是,则按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
图4为本发明实施例三提供的一种采用P2P方式进行视频文件提供的流程示意图,应用于视频上传端,包括如下步骤:
S401:接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息。
S402:当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值,如果是,进行S403,否则,进行S404。
S403:判断当前已建立的连接的数量是否小于第二连接阈值,若是,则进行S404,若否,则视频文件提供过程结束。
S404:向所述视频下载端发送同意连接信息。
S405:采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息。
S406:根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
S407:判断当前提供对应该标识信息的待下载视频文件的连接中的数据上传速率是否达到预设的上传速率的第一上限阈值,若是,则进行S408,若否,则保持该连接的数据上传速率。
S408:按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
可以根据每个视频上传端的配置情况,配置其上传速率的第一上限阈值以及第二上限阈值,以使第二上限阈值不超过该视频上传端的提供能力。可以在每个视频上传端中分别配置其第一上限阈值以及第二上限阈值,也可以在服务器中配置每个视频上传端的第一上限阈值以及第二上限阈值,其中每个视频上传端的第一上限阈值以及第二上限阈值可以相同,也可以不同。视频上传端可以从服务器获取该第一上限阈值以及第二上限阈值。
本发明实施例中,在提供高码率视频文件时,当提供该高码率视频文件的连接中的数据上传速率达到预设的上传速率的第一上限阈值时,将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件,因此进一步的提高了高码率视频文件的分享比。
在本发明实施例中为了进一步增加高码率视频文件的分享比,所述方法还包括:
视频上传端判断自身存储的视频文件的数据量是否大于预设的存储数据量上限阈值;若是,则确定本地存储的每个视频文件的优先级;针对每个优先级的视频文件,删除低码率的视频文件。
所述确定本地存储的每个视频文件的优先级包括:
针对每个视频文件,根据每个视频文件的健康度、该视频文件最近一次被提供的时间、该视频文件在本地存储的时间和预设的视频文件的码率与码率权值的对应关系来确定,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
例如,可以通过公式来确定每个视频文件的优先级:
视频文件的优先级=[该视频文件的健康度+(该视频文件最近一次被上传的时间/该视频文件在本地建立的时间)]*该视频文件的码率信息所对应的码率权值。
健康度可以由以下公式来确定:
健康度=(当前存储有该视频文件的视频上传端的数量/当前正在播放该视频文件的视频上传端的数量)*平均文件位图
对于每个视频上传端,该视频上传端为了确定每个视频文件的优先级,需要针对每个视频文件,从服务器中获取当前存储有该视频文件的视频上传端的数量以及当前正在播放该视频文件的视频上传端的数量,由于服务器中针对每个标识信息的视频文件记录有存储有该视频文件的视频上传端的信息,因此针对每个连接提供的视频文件,视频上传端可以从服务器获取当前存储有该视频文件的视频上传端的数量,另外,每个视频上传端播放本地存储的每个视频文件时,可以向服务器上报其播放信息,因此服务器根据其接收的信息,可以确定当前正在播放该视频文件的视频上传端的数量,从而便于视频上传端获取该当前正在播放该视频文件的视频上传端的数量;再或者,为了减少信息交互,降低服务器的负担,服务器可以针对每个视频文件,记录当前下载该视频文件的视频下载端的数量,可以将当前下载该视频文件的视频下载端的数量作为当前正在播放该视频文件的视频上传端的数量,从而便于计算每个视频文件的健康度。
其中每个视频文件对应一个码率权值,相同码率的视频文件,对应的码率权值相同,码率越高对应的码率权值越大。
视频上传端将其删除的视频文件的信息发送到服务器,服务器根据视频上传端发送的信息,在本地删除该视频上传端存储于服务器的相应视频文件的记录。
由于本发明实施例中可以相应地删除存储在视频上传端本地的优先级低的低码率视频文件,而更多地留存高码率视频文件,相应地进一步提高了高码率视频文件在P2P网络中的分享比。
在本发明实施例中,为了进一步提高高码率视频文件的分享比,视频上传端在本地维护有两个上传队列,分别为低码率视频文件的提供队列和高码率视频文件的提供队列。所述向所述视频下载端提供所述标识信息的视频文件之前,还包括:
在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中;
所述向所述视频下载端提供所述标识信息的视频文件包括:
从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
图5为本发明实施例四提供的一种采用P2P方式进行视频文件提供的的方法的流程示意图,应用于视频上传端,包括如下步骤:
S501:接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息。
S502:当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值,如果是,进行S503,否则,进行S504。
S503:判断当前已建立的连接的数量是否小于第二连接阈值,若是,则进行S504,若否,则视频文件提供过程结束。
S504:向所述视频下载端发送同意连接信息。
S505:采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息。
S506:在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中。
S507:从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
视频上传端中的高码率视频文件的提供队列是专为上传高码率视频文件而创建的,当需要提供高码率视频文件时,将该高码率视频文件置入预设的高码率视频文件的提供队列中。
图6为本发明实施例提供的一种采用P2P方式进行视频文件提供的装置的结构示意图,应用于视频上传端,包括:接收连接请求模块601、判断连接模块602、提高建立模块603、接收下载请求模块604、提供模块605。
其中,接收连接请求模块601,用于接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息;
判断连接模块602,用于当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值;
提高建立模块603,用于当所述判断模块的判断结果为是时,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;
接收下载请求模块604,用于采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息。
提供模块605,用于根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
进一步地,提高建立模块603,还用于当所述判断模块判断当前自身已建立的连接的数量不小于预设的第二连接阈值时,根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接;在识别到的每个连接中,根据每个连接的优先级,选择优先级最低的连接;将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
所述装置还包括:
优先级确定模块(图中未示出),用于针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
所述提供模块605,还用于判断当前提供的对应该标识信息的待下载视频文件的连接中的数据上传提供速率是否达到预设的上传速率的第一上限阈值;若是,则按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
所述装置还包括:
选择删除模块(图中未示出),用于判断自身存储的视频文件的数据量是否大于预设的存储数据量上限阈值,若是,则确定本地存储的每个视频文件的优先级,针对每个优先级的视频文件,删除低码率的视频文件。
所述装置还包括:
优先级确定模块(图中未示出),用于针对每个视频文件,根据每个视频文件的健康度、该视频文件最近一次被提供的时间、该视频文件在本地存储的时间和预设的视频文件的码率与码率权值的对应关系来确定,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
所述装置还包括:
查找放入模块(图中未示出),用于在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中;
所述提供模块605,具体用于从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
本发明实施例提供了一种采用P2P方式进行视频文件提供的方法及装置,应用于视频上传端,该方法中,视频上传端接收视频下载端发送的携带该视频下载端待下载视频文件的码率信息的连接请求;根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否不小于设定的第一连接阈值,如果是,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。由于本发明实施例中当视频上传端接收到下载高码率视频文件的连接请求时,如果已建立连接的数量大于设定的第一连接阈值,则采用第二连接阈值判断是否为该视频下载端建立新的连接,其中该第二连接阈值大于第一连接阈值,从而为高码率视频提供更多的连接,提高了高码率视频文件的分享比。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者移动设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者移动设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者移动设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (14)
1.一种采用P2P方式进行视频文件提供的方法,其特征在于,应用于视频上传端,所述方法包括步骤:
接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息;
当根据所述码率信息确定视频下载端待下载的视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值;
如果是,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;
采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;
根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
2.根据权利要求1所述的方法,其特征在于,当当前自身已建立的连接的数量不小于预设的第二连接阈值时,所述向所述视频下载端发送同意连接信息还包括:
根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接;
在识别到的每个连接中,根据每个连接的优先级,选择优先级最低的连接;
将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
3.根据权利要求2所述的方法,其特征在于,确定所述每个连接的优先级,包括:
针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度由当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图所确定。
4.根据权利要求1~3任一所述的方法,其特征在于,在所述向所述视频下载端提供所述标识信息的视频文件之后,还包括:
判断当前提供对应该标识信息的待下载视频文件的连接中的数据上传速率是否达到预设的上传速率的第一上限阈值;
若是,则按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断自身存储的视频文件的数据量是否大于预设的存储数据量上限阈值;
若是,则确定本地存储的每个视频文件的优先级;
针对每个优先级的视频文件,删除低码率的视频文件。
6.根据权利要求5所述的方法,其特征在于,所述确定本地存储的每个视频文件的优先级包括:
针对每个视频文件,根据每个视频文件的健康度、该视频文件最近一次被提供的时间、该视频文件在本地存储的时间和预设的视频文件的码率与码率权值的对应关系来确定,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
7.根据权利要求1所述的方法,其特征在于,所述向所述视频下载端提供所述标识信息的视频文件之前,所述方法还包括:
在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中;
所述向所述视频下载端提供所述标识信息的视频文件包括:
从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
8.一种采用P2P方式进行视频文件提供的装置,其特征在于,应用于视频上传端,所述装置包括:
接收连接请求模块,用于接收视频下载端发送的连接请求,所述连接请求中携带该视频下载端待下载的视频文件的码率信息;
判断连接模块,用于当根据所述码率信息确定所述视频下载端待下载视频文件为高码率视频文件时,判断当前自身已建立的连接的数量是否大于设定的第一连接阈值;
提高建立模块,用于当所述判断模块的判断结果为是时,当判断当前已建立的连接的数量小于第二连接阈值时,向所述视频下载端发送同意连接信息,其中第二连接阈值大于第一连接阈值;
接收下载请求模块,用于采用建立的新的连接接收所述视频下载端发送的下载请求,所述下载请求中携带所述待下载视频文件的标识信息;
提供模块,用于根据所述标识信息,向所述视频下载端提供所述标识信息的视频文件。
9.根据权利要求8所述的装置,其特征在于,所述提高建立模块,还用于当所述判断模块判断当前自身已建立的连接的数量不小于预设的第二连接阈值时,根据当前自身已建立的每个连接提供的视频文件的码率,识别提供低码率视频文件的每个连接;在识别到的每个连接中,根据每个连接的优先级,选择优先级最低的连接;将选择的所述连接断开,并向所述视频下载端发送同意连接信息。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
优先级确定模块,用于针对每个连接,根据该连接当前提供的视频文件的健康度和预设的视频文件的码率与码率权值的对应关系,确定该连接的优先级,其中所述健康度由当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图所确定。
11.根据权利要求8~10任一所述的装置,其特征在于,所述提供模块,还用于判断当前提供对应该标识信息的待下载视频文件的连接中的数据上传速率是否达到预设的上传速率的第一上限阈值;若是,则按预设规则将所述第一上限阈值增大到该上传速率的第二上限阈值,并采用增大后的所述第二上限阈值向所述视频下载端提供所述标识信息的视频文件。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
选择删除模块,用于判断自身存储的视频文件的数据量是否大于预设的存储数据量上限阈值,若是,则确定本地存储的每个视频文件的优先级,针对每个优先级的视频文件,删除低码率的视频文件。
13.根据权利要求8所述的装置,其特征在于,所述装置还包括:
优先级确定模块,用于针对每个视频文件,根据每个视频文件的健康度、该视频文件最近一次被提供的时间、该视频文件在本地存储的时间和预设的视频文件的码率与码率权值的对应关系来确定,其中所述健康度根据当前存储有该视频文件的视频上传端的数量、当前正在播放该视频文件的视频上传端的数量和平均文件位图确定。
14.根据权利要求8所述的装置,其特征在于,所述装置还包括:
查找放入模块,用于在本地保存的视频文件中查找该标识信息的视频文件,将查找到的视频文件的数据放入高码率视频文件的提供队列中;
所述提供模块,具体用于从高码率视频文件的提供队列中提取该标识信息的视频文件的数据,并提供给所述视频下载端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510625038.2A CN105163136B (zh) | 2015-09-25 | 2015-09-25 | 一种采用p2p方式进行视频文件提供的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510625038.2A CN105163136B (zh) | 2015-09-25 | 2015-09-25 | 一种采用p2p方式进行视频文件提供的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105163136A true CN105163136A (zh) | 2015-12-16 |
CN105163136B CN105163136B (zh) | 2018-04-13 |
Family
ID=54803876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510625038.2A Active CN105163136B (zh) | 2015-09-25 | 2015-09-25 | 一种采用p2p方式进行视频文件提供的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105163136B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106454410A (zh) * | 2016-12-20 | 2017-02-22 | 深圳Tcl数字技术有限公司 | 加密节目的版权保护方法及装置 |
CN107818706A (zh) * | 2017-10-30 | 2018-03-20 | 中科汉华医学科技(北京)有限公司 | 一种医院远程直播式教学培训系统 |
CN109474684A (zh) * | 2018-11-14 | 2019-03-15 | 广州虎牙信息科技有限公司 | 一种获取直播视频流的方法、装置、终端设备及存储介质 |
CN110677714A (zh) * | 2019-09-12 | 2020-01-10 | 北京奇艺世纪科技有限公司 | 一种视频数据下载方法、装置、电子设备及存储介质 |
CN114666609A (zh) * | 2022-03-31 | 2022-06-24 | 北京奇艺世纪科技有限公司 | 视频数据下载方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355661A (zh) * | 2007-07-27 | 2009-01-28 | 北京视博数字电视科技有限公司 | 一种接收视频数据的方法及视频数据分发系统 |
US20140237526A1 (en) * | 2010-10-18 | 2014-08-21 | Comcast Cable Communications, Llc | System, Device and Method for Transrating File Based Assets |
-
2015
- 2015-09-25 CN CN201510625038.2A patent/CN105163136B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355661A (zh) * | 2007-07-27 | 2009-01-28 | 北京视博数字电视科技有限公司 | 一种接收视频数据的方法及视频数据分发系统 |
US20140237526A1 (en) * | 2010-10-18 | 2014-08-21 | Comcast Cable Communications, Llc | System, Device and Method for Transrating File Based Assets |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106454410A (zh) * | 2016-12-20 | 2017-02-22 | 深圳Tcl数字技术有限公司 | 加密节目的版权保护方法及装置 |
CN107818706A (zh) * | 2017-10-30 | 2018-03-20 | 中科汉华医学科技(北京)有限公司 | 一种医院远程直播式教学培训系统 |
CN109474684A (zh) * | 2018-11-14 | 2019-03-15 | 广州虎牙信息科技有限公司 | 一种获取直播视频流的方法、装置、终端设备及存储介质 |
CN110677714A (zh) * | 2019-09-12 | 2020-01-10 | 北京奇艺世纪科技有限公司 | 一种视频数据下载方法、装置、电子设备及存储介质 |
CN114666609A (zh) * | 2022-03-31 | 2022-06-24 | 北京奇艺世纪科技有限公司 | 视频数据下载方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105163136B (zh) | 2018-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105163136A (zh) | 一种采用p2p方式进行视频文件提供的方法及装置 | |
CN102006368B (zh) | 基于移动终端记忆卡缓存技术的流媒体音频文件播放方法 | |
CN104394441A (zh) | 一种视频内容分发的调度方法、装置及系统 | |
CN103457966A (zh) | 基于dlna技术访问云存储设备的方法、设备及系统 | |
CN104079445A (zh) | 分散式压力测试系统及其方法 | |
CN102710586A (zh) | 流媒体传输控制方法、媒体传输控制方法、相关设备 | |
CN103825890A (zh) | 移动终端及基于dlna实现云端流媒体文件分享的方法 | |
CN102685123A (zh) | 一种基于云存储发布流媒体的装置、系统及方法 | |
CN101247316A (zh) | 一种通信终端的数据共享方法 | |
CN102143150A (zh) | 一种获取媒体内容的方法、设备及系统 | |
CN102387201B (zh) | 业务数据处理的方法、装置和系统 | |
CN107277092A (zh) | 内容分发网络及其数据下载方法 | |
CN102769666B (zh) | 一种云存储方法及云存储系统 | |
CN102739706A (zh) | 进行数据同步的方法及系统 | |
CN102137138B (zh) | 缓存协作方法、装置及系统 | |
CN109889521A (zh) | 存储器、通信通道复用实现方法、装置和设备 | |
CN101888412B (zh) | 一种服务于移动终端直播的视频推送处理方法及系统 | |
CN104303471A (zh) | 用于通过选择数据加速算法提供内容的方法和装置 | |
CN106385627B (zh) | 视频编码方法和装置 | |
CN103068052B (zh) | 资源动态配置方法、系统和Portal服务器 | |
CN109587259A (zh) | 移动设备之远程管理方法与系统及使用所述方法的服务器 | |
CN106453663B (zh) | 改进的基于云服务的存储扩容方法及装置 | |
JP5962117B2 (ja) | 複数の画像圧縮方式が存在する環境における映像選択方法 | |
CN109584889B (zh) | 音频传输方法和装置及存储介质 | |
CN104243403A (zh) | 一种支持在线播放的方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |