2013/2/1 Seminar 	      Keiichi	  Maeda	  
Bcube: A High Performance, Server-centricNetwork Architecture for Modular Data Centers	•  The	  Paper	  published	  in	  A...
Switch	Bcube structure	                                                                                                   ...
Bcube Address (baddr)	•  Every	  server	  connect	  directly	  every	  level	  switch.	  •  Bcube	  use	  Bbube	  address	...
Single-path Routing	/*	  A=akak−1	  ·∙·∙·∙a0	  and	  B=bkbk−1	  ·∙·∙·∙b0;	  A[i]	  =	  ai;	  B[i]	  =	  bi;	  	  Π	  =	  [...
Path from 000 to 222                                                                                                      ...
•  MulN-­‐paths	  	       •  There	  are	  k(=Max	  Level)	  +1	  parallel	  paths	  between	  any	  two	  servers	  in	  ...
Implementation 	•  We	  have	  prototyped	  the	  BCube	  architecture	  by	  designing	  and	       implemenNng	  a	  BCu...
Upcoming SlideShare
Loading in …5
×

2013/2/1 ゼミ発表 資料

404 views

Published on

サーバ セントリック ネットワーク アーキテクチャ "BCube" とは何か?

Published in: Technology
  • Be the first to comment

  • Be the first to like this

2013/2/1 ゼミ発表 資料

  1. 1. 2013/2/1 Seminar Keiichi  Maeda  
  2. 2. Bcube: A High Performance, Server-centricNetwork Architecture for Modular Data Centers •  The  Paper  published  in  ACM  SIGCOMM  ’09  by  Microso>  Research  Asia.  •  Designed  for  shipping-­‐container  based  modular  data  centers.  •  Server-­‐centric  Network  Architecture   •  Server  act  as   •  End  hosts   •  Relay  nodes  for  each  other   •  Use  Low-­‐end  commodity  switches  •  Layer  structure  •  Graceful  performance  degradaNon  as  servers  or  switches  fail.
  3. 3. Switch Bcube structure Server Level  0 Level  1 Level  2 000 001 002 010 011 012 020 021 022 100 101 02 110 1 111 112 120 121 22 00 01 02 210 11 212 220 221 222 1 2 2 2 2
  4. 4. Bcube Address (baddr) •  Every  server  connect  directly  every  level  switch.  •  Bcube  use  Bbube  address  (baddr)  to  denote  a  server.   •  Use  digit  array.  (Example:  120)   •  Array  length  is  layer  number.   •  Every  digit  mean  port  number  index  of  each  level  switch.  •  Two  servers  are  neighbors  if  they  connect  to  the  same  switch.   •  The  Hamming  distance  of  two  neighboring  servers  is  one.   •  202  and  222  are  neighbors.  
  5. 5. Single-path Routing /*  A=akak−1  ·∙·∙·∙a0  and  B=bkbk−1  ·∙·∙·∙b0;  A[i]  =  ai;  B[i]  =  bi;    Π  =  [πk,πk−1,·∙·∙·∙  ,π0]  is  a  permutaNon  of  [k,k  −  1,·∙·∙·∙  ,1,0]    */    BCubeRouNng(A,  B,  Π):    path(A,  B)  =  {A,  };  I_Node  =  A;  for(i  =  k;i  ≥  0;i−−)    if  (A[πi]  ̸=  B[πi])  I_Node[πi]  =  B[πi];  append  I  Node  to  path(A,B);    return  path(A,  B)    BCubeRou(ng  to  find  a  path  from  A  to  B.  The  algorithm  corrects  one  digit  at  one  step.  The  digit  correc(ng  order  is  decided  by  the  predefined  permuta(on  Π.    
  6. 6. Path from 000 to 222 Switch 000→200→220→222 Server Level  0 Level  1 Level  2 000 001 002 010 011 012 020 021 022 100 101 02 110 1 111 112 120 121 22 00 01 02 210 11 212 220 221 222 1 2 2 2 2
  7. 7. •  MulN-­‐paths     •  There  are  k(=Max  Level)  +1  parallel  paths  between  any  two  servers  in  Bcube.   •  h(A,B)  paths  are  the  first  categories.   •  k  +  1  –  h(A,B)  are  the  second  categories.      •  Bcube  Source  RouNng  (BSR)   •   use  Source  RouNng.
  8. 8. Implementation •  We  have  prototyped  the  BCube  architecture  by  designing  and   implemenNng  a  BCube  protocol  stack.  We  have  implemented  the   stack  as  a  kernel  driver  in  the  Windows  Servers  2003  and  2008.  •   The  BCube  stack  locates  between  the  TCP/IP  protocol  driver  and  the   Ethernet  NDIS  (Network  Driver  Interface  SpecificaNon)  driver.    •  TCP/IP  applicaNons  are  compaNble  with  Bcube.  •  Each  packet  includes  a  BCube  header  between  the  Ethernet  header   and  IP  header.      

×