360 likes | 499 Views
Service Deployment in Large Scale Network. Yung-Mu Chen, Wei-Jr Yin, Wei-Hua Chen, and Yu-An Chen U90.armor@netlab.cse.yzu.edu.tw Internet System Measurement and Analysis Team. Outline. Introduction Algorithm Experiment environment Simulation Plan Problem Future work. Introduction.
E N D
Service Deployment in Large Scale Network Yung-Mu Chen, Wei-Jr Yin, Wei-Hua Chen, and Yu-An Chen U90.armor@netlab.cse.yzu.edu.tw Internet System Measurement and Analysis Team
Outline • Introduction • Algorithm • Experiment environment • Simulation Plan • Problem • Future work
Introduction • Finding an optimal deployment in a large scale computer network is a NP-Hard Problem. • Using heuristic algorithm can find a feasible solution. How to Assign the task graph ? Task Internet
Algorithm Step Partition Group map Fail CSP Fail Success
Partition - use Metis 0 Dst 2 1 Src Topology
2 1 3 S 5 4 6 7 11 8 9 10 12 D 13 14 Partition - use Metis Y X Z Task Graph
Group mapping • 先將具有source node或 destination node 的 group做相對應的 mapping • 分別以 task graph 和 topology graph 兩圖具有source node 的 group 當作起點做 BFS,依照拜訪的順序,分別做 mapping
Group mapping BFS 2(dst) 0 X(src) Y BFS 1(src) Z(dst) Topology group Task group
Built Level build level : we will build level in the every group there is a source of group to be needed. 4 Src. 3 3 0 1 1 2 4 3 3 2 2 4 1 3 0 Src. In the topology use the source to build level by BFS. In the task graph use the source to build level by BFS. Topology Task
Merge Level Merge level : by a rule to make the topology and the task graph’s level to be the same y Topology graph definition : k Task graph Ω The graph group total numbers Φ The graph node total numbers ¥ The graph total level number of group Gn the group of graph , n = 0 ~ Ω- 1 Nn n = 0 ~Φ - 1 the node of graph , Ln n = 0 ~ ¥ - 1 the level of graph group , Φn the node total numbers of the level
rule: By group mapping we will allocate task group α to topology groupβ If ¥y > ¥k Gyβ ¥y = ¥k Merge Until If ¥k > ¥y Gkα ¥y = ¥k Merge Until
Gx Merge Ln Φn Choose the which have the min L0 has been choose If L1 L0 Add nodes of into Gx Adjust level of L¥ - 1 has been choose If L¥ - 1 L¥ - 2 Add nodes of into Gx Adjust level of else Li Lj Φn Choose the near which have the min Li Lj Add nodes of into Gx Adjust level of
Example: Topology will be merged Level 0 : Level 1 : Level 2 : Level 0 : Level 1 : Level 2 : Level 3 : Level 4 : Level 0 : Level 1 : Level 2 : Level 3 : merge level 0 and level 1 merge level 0 and level 1 done
CSP definition : Cy The cpu capacity of the topology node Ck The cpu consumption of the task node Dy The disk capacity of the topology node Dk The disk consumption of the task node
node allocating : we will allocate the task node to topology node by a rule. rule: After mergelevel we will allocate nodes of task to nodes of topology with the same level in and Gkx Gyx Li Gkx Gyx for all of and Lki Lyi Ni for all of and Cy > Ck and Dy > Dk If Allocate else Nyi Check next Nyi Li If all of doesn’t match Multiply allocate
Example : task topology Level 0 : Level 1 : Level 2 : path allocating : after node allocating we will allocate task path on the topology by Dijkstra algorithm with checking bandwidth.
Experiment environment • Pentium !!! 1GHz ,RAM 512 MB • Platform: Debian 3.0 • C language • Implement a timer • Total time:10800 sec • Time unit: 0.000001 sec
S 2 0 1 3 4 6 7 5 11 10 8 9 12 13 15 14 D Task Graph File Format Node Edge metis constraint Group 0 1 2 3 GroupID CPU Disk [nodeID delay BW] 15
Topology File Format Node Edge NodeID1 NodeID2 Delay
Request File Format EventTime Src Dst HoldTime
Simulation • Physical topology • capacity: node - CPU 100%, Disk 100% link - BW 100%, delay(by time or hop count) • Task graph • consumption: node - CPU, Disk (by config file) link BW (by config file)
Simulation plan • 預計要做的分析: • Request hold time • Disk / CPU / BW consumption • Topology graph (topology generator, ISP map ) • Task graph (N = 2, 3… or D = 2, 3... ) • number of group • 其他種方法
Problem 0 2 • Metis problem : connectivity 1 0
Solution • Other Group map method: 1. First each node is a group 2. Random choose the smallest group. 9 9 1 1 8 8 7 7 6 6 4 4 5 5 3 3 2 2 0 0 (b) (a)
Solution 3. Then choose the smaller group which it connect to 4. Repeat the step 2 until reach your goal. (group number) 9 9 1 1 8 8 7 7 6 6 4 4 5 5 3 3 2 2 0 0 (b) (c)
Solution 9 9 1 1 8 8 7 7 6 6 4 4 5 5 3 3 2 2 0 0 (f) (e)
Problem – Level assignment 4 2 3 5 2 4 Dst 2 4 5 1 3 3 1 5 2 2 1 3 2 0 2 2 3 3 3 random choose a node with upperlink to be the src of group ? 4
Problem solution 1 Grouping according to cut edge 4 2 3 5 2 4 Dst 2 4 5 1 3 3 1 5 2 2 1 3 2 0 2 2 3 3 3 4
Problem solution 2 Built level according to cut edge 2 2 Dst 1 3 3 2 0
Future work • Group method problem • Performance improvement • Simulation graph • Experiment report