DCCast-master

所属分类:matlab编程
开发工具:matlab
文件大小:2558KB
下载次数:0
上传日期:2020-02-03 08:24:43
上 传 者kalpana
说明:  dc cast communication

文件列表:
DCCAST_POSTER.png (1145554, 2018-04-02)
Infocom18-paper-noormohammadpour.pdf (834366, 2018-04-02)
LICENSE (1082, 2018-04-02)
dccast (0, 2018-04-02)
dccast\Dccast.java (9663, 2018-04-02)
dccast\Distribution.java (2268, 2018-04-02)
dccast\NetworkP2MPWeighted.java (11821, 2018-04-02)
dccast\Requests_P2MP.java (2281, 2018-04-02)
dccast\Topology.java (1005, 2018-04-02)
dccast\graphTheory (0, 2018-04-02)
dccast\graphTheory\LICENSE (1077, 2018-04-02)
dccast\graphTheory\algorithms (0, 2018-04-02)
dccast\graphTheory\algorithms\Algorithm.java (2629, 2018-04-02)
dccast\graphTheory\algorithms\minimumBranching (0, 2018-04-02)
dccast\graphTheory\algorithms\minimumBranching\EdmondChuLiuIterAlgorithm.java (9422, 2018-04-02)
dccast\graphTheory\algorithms\minimumBranching\MinimumBranchingAlgorithm.java (1068, 2018-04-02)
dccast\graphTheory\algorithms\shortestDistance (0, 2018-04-02)
dccast\graphTheory\algorithms\shortestDistance\arcCost (0, 2018-04-02)
dccast\graphTheory\algorithms\shortestDistance\arcCost\ArcDijkstraOneDestinationAlgorithm.java (5940, 2018-04-02)
dccast\graphTheory\algorithms\shortestDistance\arcCost\ArcDijkstraOneSourceAlgorithm.java (5856, 2018-04-02)
dccast\graphTheory\algorithms\shortestDistance\arcCost\RoyWarshallFloydAlgorithm.java (4615, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems (0, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\eolienneApproximationAlgorithms (0, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\eolienneApproximationAlgorithms\EolienneApproximationAlgorithm.java (889, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\eolienneApproximationAlgorithms\GFLAC2EolienneAlgorithm.java (16516, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\eolienneApproximationAlgorithms\GFLAC2EolienneAlgorithm2.java (24885, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\eolienneApproximationAlgorithms\GFLAC2EolienneAlgorithm3.java (25521, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation (0, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLAC2Algorithm.java (17214, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLAC3Algorithm.java (19078, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLACAlgorithm.java (17065, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLACDisctributedAlgorithm.java (17991, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLACTR2Algorithm.java (27778, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLACTR3Algorithm.java (29686, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\GFLACTRAlgorithm.java (4276, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\RoosAlgorithm.java (11844, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\ShP2Algorithm.java (2645, 2018-04-02)
dccast\graphTheory\algorithms\steinerProblems\steinerArborescenceApproximation\ShPAlgorithm.java (1968, 2018-04-02)
... ...

# DCCast: Efficient Point to Multipoint (P2MP) Transfers Across Datacenters P2MP transfers are a simplified version of multicasting where the sender and all receivers are known and fixed upon a transfer's arrival as well as the volume of data to be delivered. This repository provides Java code implementing the algorithms presented in "DCCast: Efficient Point to Multipoint Transfers Across Datacenters". This includes a minimal implementation to represent network topologies and point to multipoint (p2mp) transfers, and to generate transfers with uniform or exponential distribution. # How Does the Program Work? - It generates a list of P2MP transfers from time 0 up to a user specified time each assigned a unique transfer ID. The arrivals follow the Poisson distribution while transfer sizes follow either uniform or exponential (latter by default). - A random network topology is then generated ([GScale](https://github.com/noormoha/DCCast/blob/master/dccast/Dccast.java#L110) topology is also included). - The topology along with requests are supplied to the DCCast algorithm. The algorithm receives requests in an online manner in the order of arrival and processes them. We used the library provided by [mouton5000](https://github.com/mouton5000/DSTAlgoEvaluation) for approximation of minimum weight Steiner Trees upon arrival of each request. When a tree is selected, the program prints the tree and then the request is allocated starting from next timeslot using as much of the available bandwidth over all edges of the tree to finish as early as possible (FCFS policy). - At the end of each slot, the program prints the schedule for next timeslot. # Running the Program - All the necessary dependencies are included (the [graphTheory](dccast/graphTheory) directory for Steiner Tree selection). - The file that has the main function is [dccast/Dccast.java](dccast/Dccast.java). - The output is simply printed out to the terminal. # DCCast Algorithm The main algorithm is implemented in three functions all in [dccast/NetworkP2MPWeighted.java](dccast/NetworkP2MPWeighted.java): - [routeTraffic](https://github.com/noormoha/DCCast/blob/master/dccast/NetworkP2MPWeighted.java#L199) performs the tree selection and then calls PathAllocate. - [PathAllocate](https://github.com/noormoha/DCCast/blob/master/dccast/NetworkP2MPWeighted.java#L282) schedules the request to finish as early as possible given available bandwidth on the tree selected by routeTraffic. - [walk](https://github.com/noormoha/DCCast/blob/master/dccast/NetworkP2MPWeighted.java#L324) moves one step forward at the end of every timeslot. It prints the schedule for next slot and updates load variables for all edges. Thank you for visiting this repository. Please view the poster we presented at the HotCloud'17 conference below. The DCCast paper can be found [HERE](hotcloud17-paper-noormohammadpour.pdf?raw=true). ![DCCAST: Adaptive Tree Selection for Efficient Point to Multipoint Transfers Across Datacenters](DCCAST_POSTER.png?raw=true "DCCAST: Adaptive Tree Selection for Efficient Point to Multipoint Transfers Across Datacenters") # Recent Publications We have been working on improving DCCast using a variety of techniques and will post related research efforts in the following. - [QuickCast: Fast and Efficient Inter-Datacenter Transfers using Forwarding Tree Cohorts](Infocom18-paper-noormohammadpour.pdf?raw=true) has been accepted to INFOCOM 2018. We partitioned receivers into multiple subsets each attached to the sender using an independent tree. With this approach, overall throughput increases for many trees by avoiding bottlenecks. We also exercise the fair sharing policy of Max-Min Fairness and show that it can improve utilization significantly at higher loads and over larger forwarding trees. - [Minimizing Flow Completion Times using Adaptive Routing over Inter-Datacenter Wide Area Networks](infocom2018_poster_noormohammadpour.pdf?raw=true) has been accepted to INFOCOM 2018 Poster/Demo Sessions. We have comprehensively evaluated a variety of weight assignment techniques for path selection over inter-datacenter WAN and have shown that the weights used in DCCast actually lead to minimum completion times and bandwidth consumption for a variety of scheduling policies and traffic patterns.

近期下载者

相关文件


收藏者