感谢大家!!!!
问题描述如下:
是属于数据中心流调度的问题,我不懂的地方在于如何编写代码在流传输完成时更新我的拓扑呢?
假设我的数据流模型如下f=(a,b,c,d,e),a,b,c,d,e分别代表流的源主机节点,目的主机节点,到达时刻,最晚截止时间,传输的带宽量,对于每个数据流我应该通过控制器给他进行流调度方案,这里也就是我选择最短路,一个数据流在其传输过程中是要占用网络拓扑的带宽的,在其传输完毕后,他所占用的带宽应该释放,问题在于我要怎么设计代码让该流在其传输完成时释放呢,因为在他传输的过程中也许还有其他的流在传输,所以路径上的可用带宽是实时变化的,举个例子,假设目的节点和源节点一样
假设有流f1=(u,v,0,7,30)
f2=(u,v,3,8,40)
f3=(u,v,2,5,30)
理论上是f1先到,其次f3,最后f2,但是f1传输时直到时刻7才传输完毕,那么这段时间,由于区间[2,5]在[0,7]的范围内,所以这段带宽事实上要考虑已经占用了30带宽的流f1的,我要怎么写循环或者怎么存储去判断每个流传输后更新拓扑同时又兼顾在其传输时间内的其他流接入分配路径时用的是实时带宽情况呢?
PS:可以对流先进行自主排序,然后再调度
问题描述如下:
是属于数据中心流调度的问题,我不懂的地方在于如何编写代码在流传输完成时更新我的拓扑呢?
假设我的数据流模型如下f=(a,b,c,d,e),a,b,c,d,e分别代表流的源主机节点,目的主机节点,到达时刻,最晚截止时间,传输的带宽量,对于每个数据流我应该通过控制器给他进行流调度方案,这里也就是我选择最短路,一个数据流在其传输过程中是要占用网络拓扑的带宽的,在其传输完毕后,他所占用的带宽应该释放,问题在于我要怎么设计代码让该流在其传输完成时释放呢,因为在他传输的过程中也许还有其他的流在传输,所以路径上的可用带宽是实时变化的,举个例子,假设目的节点和源节点一样
假设有流f1=(u,v,0,7,30)
f2=(u,v,3,8,40)
f3=(u,v,2,5,30)
理论上是f1先到,其次f3,最后f2,但是f1传输时直到时刻7才传输完毕,那么这段时间,由于区间[2,5]在[0,7]的范围内,所以这段带宽事实上要考虑已经占用了30带宽的流f1的,我要怎么写循环或者怎么存储去判断每个流传输后更新拓扑同时又兼顾在其传输时间内的其他流接入分配路径时用的是实时带宽情况呢?
PS:可以对流先进行自主排序,然后再调度


