区分传输内容的网络调度方法和系统 技术领域 本发明涉及一种网络调度方法和系统, 尤其涉及通过将传输内容进行分段实现网 络调度的方法和系统。
背景技术 随着网络技术的发展, 为了优化网络传输, 一些网络调度方法应运而生。 它们大体 可以分为两类 : 基于域名的网络层调度和基于内容的应用层调度。
基于域名的网络层调度系统, DNS, 只能根据用户的分布来选择网络资源进行调 度;
基于内容的应用层调度系统, 可以根据用户访问的内容和用户分布来选择网络资 源进行调度, 可以进行更准确的定位。
这两类调度方法都将需要传输的内容作为一个整体, 实际上, 在大部分的应用中, 需要传输的内容由多个部分组成, 每个部分所需要的传输带宽、 传输的优先级等各不相同, 因此, 完成每个部分内容的传输所需要的网络资源是有差别的。
网络层调度和应用层调度都无法根据传输内容的不同部分的资源要求进行精准 的调度, 只能分配统一的网络资源进行传输。为了在整个传输过程中都能正常满足每个部 分的应用的需求, 则要求使用的网络资源能够满足其中最高的要求。这种方式带来的问题 有:
(1) 虽然某些资源优势稍差的服务器能满足数据的绝大部分需求, 但由于数据存 在极少数的部分有较高的资源要求, 资源优势好的服务器通常被优先选择, 这就容易造成 客户的访问集中于某些优势服务器, 在网络高峰时段, 服务器压力增大, 客户的体验降低 ;
(2) 在同样能满足数据传输需求的前提下, 资源优势好的服务器往往比资源优势 稍差的服务器消耗更多的成本。
发明内容
本发明的目的在于解决了上述问题, 提供了一种区分传输内容的网络调度方法, 可使网络拥塞和延迟得到极大的环节, 提高了客户体验, 节省了传输成本。
本发明的另一目的在于提供了一种区分传输内容的网络调度系统, 可使网络拥塞 和延迟得到极大的环节, 提高了客户体验, 节省了传输成本。
本发明的技术方案为 : 本发明揭示了一种区分传输内容的网络调度方法, 包括 :
步骤 1 : 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自然数, 1≤i≤n;
步骤 2 : 中央调度信息服务器实时更新 m 个候选服务器的资源状况, 其中 m 是自然 数, 所述候选服务器的资源状况包括各个候选服务器的带宽成本、 空闲程度 ;
步骤 3 : 客户端从中央调度信息服务器获取所述 m 个候选服务器的资源状况, 并实 时检测客户端本机到所述 m 个候选服务器的传输速率和响应时间, 其中 m 是自然数 ;步骤 4 : 根据步骤 3 取得的所述 m 个候选服务器的资源状况以及本机到所述 m 个 候选服务器的传输速率和响应时间, 计算出满足 Pi 需要的各个候选服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务器完成第 i 部份数据传输需要消 耗的资源 ;
步骤 5 : 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表 示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数据所消耗的资源是最小 的;
步骤 6 : 客户端根据步骤 5 的结果, 从相应的候选服务器获取每个部份的数据, 直 到所有数据传输完成。
根据本发明的区分传输内容的网络调度方法的一实施例, 在步骤 3 完成后, 先针 对预设的分段数据进行步骤 4-5 的处理, 在下载预设的分段数据的同时, 对其余的分段数 据进行步骤 4-5 的处理。
根据本发明的区分传输内容的网络调度方法的一实施例, 在步骤 6 中, 以并行或 者串行的传输方式从候选服务器中获取数据。
本发明还揭示了一种区分传输内容的网络调度方法, 包括 :
步骤 1 : 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自然数, 1≤i≤n;
步骤 2 : 客户端以静态输入方式获取 m 个候选服务器的资源状况, 所述 m 个候选服 务器的资源状况包括各个候选服务器的带宽成本、 空闲程度、 传输速率、 响应时间 ;
步骤 3 : 根据步骤 2 取得的所述 m 个候选服务器的资源状况, 计算出满足 Pi 需要 的各个候选服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服 务器完成第 i 部份数据传输需要消耗的资源 ;
步骤 4 : 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表 示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数据所消耗的资源是最小 的;
步骤 5 : 客户端根据步骤 4 的结果, 从相应的候选服务器获取每个部份的数据, 直 到所有数据传输完成。
根据本发明的区分传输内容的网络调度方法的一实施例, 在步骤 2 完成后, 先针 对预设的分段数据进行步骤 3-4 的处理, 在下载预设的分段数据的同时, 对其余的分段数 据进行步骤 3-4 的处理。
根据本发明的区分传输内容的网络调度方法的一实施例, 在步骤 5 中, 以并行或 者串行的传输方式从候选服务器中获取数据。
本发明另外揭示了一种区分传输内容的网络调度系统, 包括 :
数据分段模块, 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自 然数, 1≤i≤n;
资源状况更新模块, 中央调度信息服务器实时更新 m 个候选服务器的资源状况, 其中 m 是自然数, 所述候选服务器的资源状况包括各个候选服务器的带宽成本、 空闲程度 ;
资源状况获取模块, 户端从中央调度信息服务器获取所述 m 个候选服务器的资源 状况, 并实时检测客户端本机到所述 m 个候选服务器的传输速率和响应时间, 其中 m 是自然数; 资源消耗计算模块, 根据资源状况获取模块取得的所述 m 个候选服务器的资源状 况以及本机到所述 m 个候选服务器的传输速率和响应时间, 计算出满足 Pi 需要的各个候选 服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务器完成第 i 部份数据传输需要消耗的资源 ;
候选服务器选取模块, 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数据所消耗的 资源是最小的 ;
数据传输模块, 客户端根据候选服务器选取模块的结果, 从相应的候选服务器获 取每个部份的数据, 直到所有数据传输完成。
根据本发明的区分传输内容的网络调度系统的一实施例, 在数据传输模块中, 以 并行或者串行的传输方式从候选服务器中获取数据。
本发明还揭示了一种区分传输内容的网络调度系统, 包括 :
数据分段模块, 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自 然数, 1≤i≤n;
资源状况获取模块, 客户端以静态输入方式获取 m 个候选服务器的资源状况, 所 述 m 个候选服务器的资源状况包括各个候选服务器的带宽成本、 空闲程度、 传输速率、 响应 时间 ;
资源消耗计算模块, 根据资源状况获取模块取得的所述 m 个候选服务器的资源状 况, 计算出满足 Pi 需要的各个候选服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务器完成第 i 部份数据传输需要消耗的资源 ;
候选服务器选取模块, 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数据所消耗的 资源是最小的 ;
数据传输模块, 客户端根据候选服务器选取模块的结果, 从相应的候选服务器获 取每个部份的数据, 直到所有数据传输完成。
根据本发明的区分传输内容的网络调度系统的一实施例, 在数据传输模块中, 以 并行或者串行的传输方式从候选服务器中获取数据。
本发明对比现有技术有如下的有益效果 : 本发明的技术方案是使用一个中央调度 信息服务器, 实时更新每个候选服务器的资源信息状况 ; 客户端在网络传输开始前, 对需要 传输的内容进行分段分析, 计算每个分段对网络资源的需求, 并根据中央调度信息服务器 提供的调度信息, 为每段内容选择能够满足传输需求的消耗资源最小的网络资源进行数据 传输, 从而在满足传输需求的前提下, 达到消耗网络资源的最小化。
本方法对比传统技术有如下优势 :
(1) 在网络的高峰时段, 由于下载被分散到了多台服务器, 网络拥塞和延迟将得到 极大的缓解, 每个服务器的负载比较均衡, 客户的体验也得到很大的提高。
(2) 对同一部分数据, 在满足传输需求的前提下, 本方法选择消耗成本最低的服务 器进行服务, 从而节省了传输成本。
附图说明
图 1 示例性的示出了本发明的区分传输内容的网络调度方法的第一实施例的流 图 2 示例性的示出了本发明的区分传输内容的网络调度方法的第一实施例的示 图 3 示例性的示出了本发明的区分传输内容的网络调度方法的第二实施例的流 图 4 示例性的示出了本发明的区分传输内容的网络调度方法的第二实施例的示 图 5 示例性的示出了本发明的区分传输内容的网络调度系统的第一实施例的原 图 6 示例性的示出了本发明的区分传输内容的网络调度系统的第二实施例的原程图。
意图。
程图。
意图。
理图。
理图。 具体实施方式 下面结合附图和实施例对本发明作进一步的描述。
区分传输内容的网络调度方法的第一实施例
图 1 示出了本发明的区分传输内容的网络调度方法的第一实施例。请同时参见图 1 和图 2, 本实施例的方法包括如下的步骤。
步骤 11 : 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自然数, 1 ≤ i ≤ n。
步骤 12 : 中央调度信息服务器实时更新 m 个候选服务器的资源状况, 其中 m 是自 然数, 候选服务器的资源状况包括各个候选服务器的带宽成本、 空闲程度。
步骤 13 : 客户端从中央调度信息服务器获取 m 个候选服务器的资源状况, 并实时 检测客户端本机到 m 个候选服务器的传输速率和响应时间, 其中 m 是自然数。
步骤 14 : 根据步骤 13 取得的 m 个候选服务器的资源状况以及本机到 m 个候选服 务器的传输速率和响应时间, 计算出满足 Pi 需要的各个候选服务器的资源消耗量 Sij, 其 中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务器完成第 i 部份数据传输需要消耗的资 源。其中资源消耗量 Sij 的具体计算视实际情况而定, 在不同的情况下 Sij 的计算方式和 各参数的权重是不同的, 具体的计算是一种公知技术, 在此不再赘述。
步骤 15 : 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表 示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数据所消耗的资源是最小 的。
步骤 16 : 客户端根据步骤 15 的结果, 从相应的候选服务器获取每个部份的数据, 直到所有数据传输完成。在这一步骤中, 是以并行或者串行的传输方式从候选服务器中获 取数据。所谓并行, 就是从各个候选服务器同时获取数据, 所谓串行, 就是等一个分段的内 容完成后, 再开始另一个分段的内容下载。
较佳的, 在步骤 13 完成后, 先针对预设的分段数据进行步骤 14-15 的处理, 先计算 出这些预设的分段数据所要求的资源, 找出这些分段对应的服务器, 实现边下载边计算的
方式, 亦即, 在下载预设的分段数据的同时, 对其余的分段数据进行步骤 14-15 的处理。这 种方式适应于对响应要求高的应用, 例如 VOD, 用户体验更好。
区分传输内容的网络调度方法的第二实施例
图 3 示出了本发明的区分传输内容的网络调度方法的第一实施例。请同时参见图 3 和图 4, 本实施例的方法包括如下的步骤。
步骤 21 : 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自然数, 1 ≤ i ≤ n。
步骤 22 : 客户端以静态输入方式获取 m 个候选服务器的资源状况, m 个候选服务器 的资源状况包括各个候选服务器的带宽成本、 空闲程度、 传输速率、 响应时间。
步骤 23 : 根据步骤 22 取得的 m 个候选服务器的资源状况, 计算出满足 Pi 需要的 各个候选服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务 器完成第 i 部份数据传输需要消耗的资源。其中资源消耗量 Sij 的具体计算视实际情况而 定, 在不同的情况下 Sij 的计算方式和各参数的权重是不同的, 具体的计算是一种公知技 术, 在此不再赘述。
步骤 24 : 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表 示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数据所消耗的资源是最小 的。 步骤 25 : 客户端根据步骤 24 的结果, 从相应的候选服务器获取每个部份的数据, 直到所有数据传输完成。
在这一步骤中, 是以并行或者串行的传输方式从候选服务器中获取数据。所谓并 行, 就是从各个候选服务器同时获取数据, 所谓串行, 就是等一个分段的内容完成后, 再开 始另一个分段的内容下载。
较佳的, 在步骤 22 完成后, 先针对预设的分段数据进行步骤 23-24 的处理, 先计算 出这些预设的分段数据所要求的资源, 找出这些分段对应的服务器, 实现边下载边计算的 方式, 亦即, 在下载预设的分段数据的同时, 对其余的分段数据进行步骤 23-24 的处理。这 种方式适应于对响应要求高的应用, 例如 VOD, 用户体验更好。
区分传输内容的网络调度系统的第一实施例
图 5 示出了本发明的区分传输内容的网络调度系统的第一实施例的原理。请参见 图 5, 本实施例的网络调度系统包括数据分段模块 11、 资源状况更新模块 12、 资源状况获取 模块 13、 资源消耗计算模块 14、 候选服务器选取模块 15 以及数据传输模块 16。
数据分段模块 11 中, 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自然数, 1 ≤ i ≤ n。
资源状况更新模块 12 中, 中央调度信息服务器实时更新 m 个候选服务器的资源状 况, 其中 m 是自然数, 候选服务器的资源状况包括各个候选服务器的带宽成本、 空闲程度。
资源状况获取模块 13 中, 客户端从中央调度信息服务器获取 m 个候选服务器的资 源状况, 并实时检测客户端本机到 m 个候选服务器的传输速率和响应时间, 其中 m 是自然 数。
资源消耗计算模块 14 中, 根据资源状况获取模块 13 取得的 m 个候选服务器的资 源状况以及本机到 m 个候选服务器的传输速率和响应时间, 计算出满足 Pi 需要的各个候选
服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务器完成第 i 部份数据传输需要消耗的资源。其中资源消耗量 Sij 的具体计算视实际情况而定, 在不同 的情况下 Sij 的计算方式和各参数的权重是不同的, 具体的计算是一种公知技术, 在此不 再赘述。
候选服务器选取模块 15 中, 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数 据所消耗的资源是最小的 ;
数据传输模块 16 中, 客户端根据候选服务器选取模块 15 的结果, 从相应的候选服 务器获取每个部份的数据, 直到所有数据传输完成。在数据传输模块 16 中, 以并行或者串 行的传输方式从候选服务器中获取数据。
区分传输内容的网络调度系统的第二实施例
图 6 示出了本发明的区分传输内容的网络调度系统的第二实施例的原理。请参见 图 6, 本实施例的网络调度模块包括数据分段模块 21、 资源状况获取模块 22、 资源消耗计算 模块 23、 候选服务器选取模块 24、 数据传输模块 25。
数据分段模块 21 中, 客户端将需要请求的数据划分为 n 个部份 Pi, 其中 n 是大于 1 的自然数, 1 ≤ i ≤ n。
资源状况获取模块 22 中, 客户端以静态输入方式获取 m 个候选服务器的资源状 况, m 个候选服务器的资源状况包括各个候选服务器的带宽成本、 空闲程度、 传输速率、 响应 时间。
资源消耗计算模块 23 中, 根据资源状况获取模块取得的 m 个候选服务器的资源状 况, 计算出满足 Pi 需要的各个候选服务器的资源消耗量 Sij, 其中 1 ≤ i ≤ n, 1 ≤ j ≤ m, Sij 表示第 j 个候选服务器完成第 i 部份数据传输需要消耗的资源。其中资源消耗量 Sij 的具体计算视实际情况而定, 在不同的情况下 Sij 的计算方式和各参数的权重是不同的, 具体的计算是一种公知技术, 在此不再赘述。
候选服务器选取模块 24 中, 对于每一个 Pi, 从 Sij 中选择出最小的 Sik, 其中 1 ≤ k ≤ m, 其中 Sik 表示在所有的 m 个候选服务器中, 第 k 个候选服务器传输第 i 部份数 据所消耗的资源是最小的。
数据传输模块 25 中, 客户端根据候选服务器选取模块的结果, 从相应的候选服务 器获取每个部份的数据, 直到所有数据传输完成。在数据传输模块 25 中, 以并行或者串行 的传输方式从候选服务器中获取数据。
上述实施例是提供给本领域普通技术人员来实现或使用本发明的, 本领域普通技 术人员可在不脱离本发明的发明思想的情况下, 对上述实施例做出种种修改或变化, 因而 本发明的保护范围并不被上述实施例所限, 而应该是负荷权利要求书提到的创新性特征的 最大范围。