Simple ¡and ¡Cheap Theia: ¡Networking ¡for ¡Ultra-‑ Dense ¡Data ¡Centers meg ¡walraed-‑sullivan, ¡Jitendra ¡Padhye, ¡David ¡A. ¡Maltz ¡ Microso= ¡ ¡ HotNets ¡2014 ¡
Ultra-‑Dense ¡Data ¡Centers ¡ ¡(UDDCs) • Data ¡centers ¡are ¡expensive ¡to ¡build ¡ • So ¡we ¡try ¡to ¡pack ¡more ¡hardware ¡into ¡exisIng ¡data ¡centers ¡ • One ¡way: ¡pack ¡more ¡CPUs ¡into ¡a ¡rack ¡ SeaMicro ¡ Intel ¡RSA ¡ HP ¡Moonshot ¡ FireBox ¡
UDDC ¡Challenges • System ¡management ¡ • System ¡management ¡ • Power ¡and ¡cooling ¡ • Power ¡and ¡cooling ¡ • Failure ¡recovery ¡ • Failure ¡recovery ¡ • How ¡to ¡tailor ¡applicaIons ¡ • How ¡to ¡tailor ¡applicaIons ¡ • Networking ¡ • Networking ¡ TradiIonal ¡ToR-‑based ¡architectures ¡no ¡longer ¡appropriate ¡due ¡to ¡ ¡ monetary ¡cost ¡ physical ¡space ¡requirements ¡ ¡ oversubscripIon ¡ ¡
Data ¡Center ¡Networks ¡Today ……… ¡ Rack ¡ Rack ¡ Rack ¡ Rack ¡ Rack ¡ Rack ¡ Rack ¡ Rack ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ……… ¡ ……… ¡ servers ¡ servers ¡ servers ¡ servers ¡ servers ¡ servers ¡ servers ¡ servers ¡
Why ¡Rethink ¡the ¡Architecture? Rack ¡ Rack ¡ Rack ¡ Rack ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ servers ¡ servers ¡ servers ¡ servers ¡ ToR ¡ servers ¡ ToR ¡ servers ¡ servers ¡ ToR ¡ servers ¡ servers ¡ servers ¡ Hundreds/ servers ¡ ToR ¡ servers ¡ servers ¡ Thousands ¡ servers ¡ of ¡Servers ¡ servers ¡ or ¡ servers ¡ servers ¡ SoCs ¡ servers ¡ servers ¡ servers ¡ Fewer ¡ Server ¡ servers ¡ servers ¡ servers ¡ Server ¡ servers ¡ Server ¡
Why ¡Rethink ¡the ¡Architecture? Rack ¡ ToR ¡ ToR ¡ ToR ¡ • Problem: ¡need ¡to ¡connect ¡hundreds/thousands ¡of ¡servers ¡ ¡ ToR ¡ ToR ¡ ToR ¡ ToR ¡ • To ¡each ¡other ¡ ToR ¡ • To ¡rest ¡of ¡data ¡center ¡ Fewer ¡ servers ¡ • Naïve ¡soluIons ¡won’t ¡work ¡(cost, ¡power, ¡space) ¡ • Can’t ¡build ¡a ¡thousand-‑port ¡ToR ¡ Rack ¡ • Can’t ¡add ¡many ¡ToRs ¡per ¡rack ¡ ToR ¡ • Trade ¡star ¡topology ¡for ¡fixed, ¡direct-‑connect ¡topology ¡ Hundreds/ Thousands ¡ of ¡Servers ¡ • Upside: ¡cheap, ¡no ¡power, ¡small ¡physical ¡space ¡ or ¡ SoCs ¡ • Downside: ¡lose ¡full ¡bisecIon ¡bandwidth, ¡flexible ¡topology ¡
Theia • Preliminary ¡design ¡for ¡UDDC ¡network ¡architecture ¡ • Building ¡out ¡and ¡evaluaIng ¡new ¡vendor ¡hardware ¡ • Design ¡will ¡undoubtedly ¡change ¡as ¡we ¡progress ¡ • Goal ¡is ¡a ¡simple, ¡pracIcal, ¡cheap ¡design ¡ • Beg, ¡borrow, ¡and ¡steal ¡from ¡exisIng ¡technologies ¡ • Throw ¡hardware ¡at ¡the ¡problem ¡when ¡it ¡is ¡cheap, ¡so=ware ¡when ¡not ¡ • Theia ¡is ¡meant ¡to ¡start ¡a ¡conversaIon ¡about ¡UDDCs ¡ ¡
The ¡Theia ¡Architecture Rack ¡ ToR ¡ • Start ¡with ¡tradiIonal ¡rack ¡ Hundreds ¡of ¡ servers ¡ ……… ¡
The ¡Theia ¡Architecture Rack ¡ ToR ¡ • Start ¡with ¡tradiIonal ¡rack ¡ • Divide ¡servers ¡into ¡SubRacks ¡ SubRack ¡ SubRack ¡ SubRack ¡ SubRack ¡ SubRack ¡ SubRack ¡ ……… ¡ SubRack ¡
The ¡Theia ¡Architecture Rack ¡ • Start ¡with ¡tradiIonal ¡rack ¡ • Divide ¡servers ¡into ¡SubRacks ¡ SubRack ¡ SubRack ¡ • Replace ¡ToR ¡with ¡fixed ¡circuit ¡interconnect ¡ SubRack ¡ (patch ¡panel) ¡ SubRack ¡ SubRack ¡ SubRack ¡ ……… ¡ SubRack ¡
The ¡Theia ¡Architecture Rack ¡ • Start ¡with ¡tradiIonal ¡rack ¡ • Divide ¡servers ¡into ¡SubRacks ¡ SubRack ¡ SubRack ¡ • Replace ¡ToR ¡with ¡fixed ¡circuit ¡interconnect ¡ SubRack ¡ (patch ¡panel) ¡ SubRack ¡ • Connect ¡racks ¡to ¡one ¡another ¡using ¡spare ¡ SubRack ¡ patch ¡panel ¡ports ¡ SubRack ¡ ……… ¡ ToR ¡ ToR ¡ SubRack ¡ ……… ¡ ……… ¡ ……… ¡
Theia ¡Architecture: ¡SubRacks Rack ¡ • SubRack ¡≈ ¡1-‑2 ¡rack ¡units ¡ ¡ • CPUs ¡connected ¡via ¡In-‑Chassis ¡Switch ¡(ICS) ¡ • Like ¡our ¡own ¡“mini ¡ToR” ¡but.. ¡ • ICS-‑to-‑CPU ¡connecIons ¡are ¡copper, ¡not ¡cable ¡ ……… ¡ • Very ¡licle ¡physical ¡space ¡required ¡ 10s ¡of ¡ SubRacks/rack ¡ SubRack ¡ ¡ CPU ¡ CPU ¡ ICS ¡ CPU ¡ CPU ¡ CPU ¡ CPU ¡ CPU ¡ CPU ¡ SubRack ¡ ……… ¡ CPU ¡ CPU ¡ 10s ¡of ¡ ¡ ICS ¡ CPU ¡ CPU ¡ CPUs/SubRack ¡ CPU ¡ CPU ¡ CPU ¡ CPU ¡
Theia ¡Architecture: ¡SubRacks Rack ¡ • Can ¡tune ¡(at ¡deployment ¡Ime) ¡number ¡of ¡downlinks ¡(ICS-‑CPU) ¡ vs. ¡uplinks ¡(ICS-‑patch ¡panel ¡and ¡rest ¡of ¡rack) ¡ ¡ • Tradeoff ¡at ¡ICS: ¡aggregaIon ¡vs. ¡oversubscripIon ¡ ……… ¡ • OversubscripIon ¡raIo: ¡# ¡uplinks ¡: ¡# ¡CPUs ¡ ¡ SubRack ¡ CPU ¡ CPU ¡ ICS ¡ CPU ¡ CPU ¡ SubRack ¡ CPU ¡ CPU ¡ CPU ¡ CPU ¡ IniIally, ¡≤ ¡ten ¡ CPU ¡ CPU ¡ ICS ¡ uplinks ¡ ¡ CPU ¡ CPU ¡ ……… ¡ CPU ¡ CPU ¡ CPU ¡ CPU ¡
Theia ¡Architecture: ¡Patch ¡Panel Rack ¡ • Patch ¡panel ¡connects ¡ SubRacks ¡ ¡to ¡one ¡another ¡ • 10s ¡of ¡SubRacks ¡with ¡~10 ¡uplinks ¡= ¡hundreds ¡of ¡ports ¡ ¡ • OpIcal ¡patch ¡panel ¡implements ¡a ¡fixed ¡circuit ¡topology ¡ SubRack ¡ • No ¡acIve ¡components ¡ SubRack ¡ • Draws ¡no ¡power ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ • Compact ¡ SubRack ¡ • Adds ¡no ¡queuing ¡delay ¡ SubRack ¡ • Cabling ¡is ¡simple ¡(underlying ¡topology ¡is ¡hidden) ¡ SubRack ¡ SubRack ¡ • Tradeoff: ¡ ¡ ……… ¡ ¡ ¡ ¡ ¡ ¡ ¡cost ¡(power, ¡space, ¡$) ¡vs. ¡fixed, ¡direct ¡topology ¡ SubRack ¡
Theia ¡Architecture: ¡Inter-‑Rack ¡ConnecHvity • Repurpose ¡“le=over” ¡patch ¡panel ¡ports ¡to ¡interconnect ¡racks ¡ • Link ¡between ¡2 ¡racks ¡may ¡be ¡groups ¡of ¡mulIple ¡links ¡ ¡ ToR ¡ ToR ¡ ToR ¡ ……… ¡ ……… ¡ ……… ¡
Theia ¡Architecture: ¡Inter-‑Rack ¡ConnecHvity • Repurpose ¡“le=over” ¡patch ¡panel ¡ports ¡to ¡interconnect ¡racks ¡ • Link ¡between ¡2 ¡racks ¡may ¡be ¡groups ¡of ¡mulIple ¡links ¡ • Build ¡larger ¡topology ¡w/ ¡each ¡rack ¡as ¡a ¡“super ¡node” ¡ ¡
What ¡about ¡oversubscripHon? • At ¡this ¡scale, ¡oversubscripIon ¡is ¡unavoidable ¡ ToR ¡ • More ¡rack-‑locality ¡can ¡be ¡expected ¡ ¡ ToR ¡ ……… ¡ ……… ¡ Tune ¡this ¡oversubscripIon ¡by ¡allocaIng ¡patch ¡panel ¡ports ¡to ¡in-‑rack ¡ interconnect ¡(purple) ¡or ¡inter-‑rack ¡interconnect ¡(red) ¡
What ¡about ¡through-‑traffic? • Traffic ¡passes ¡through ¡intermediate ¡racks ¡ ¡ • Traffic ¡traverses ¡the ¡patch ¡panel ¡(and ¡therefore ¡ICSs) ¡ ToR ¡ ToR ¡ ToR ¡ ……… ¡ ……… ¡ ……… ¡
Patch ¡Panel ¡Topology • Graph ¡in ¡which ¡ • Each ¡node ¡is ¡an ¡ICS ¡(and ¡its ¡corresponding ¡SubRack) ¡ • Links ¡are ¡implemented ¡by ¡patch ¡panel ¡internals ¡ • What ¡we ¡care ¡about: ¡ • Minimize ¡through-‑traffic: ¡latency ¡and ¡failure ¡resilience ¡ • Support ¡wide-‑range ¡of ¡graph ¡sizes: ¡UDDCs ¡are ¡sIll ¡new ¡ • No ¡dependency ¡between ¡number ¡of ¡nodes ¡and ¡ports ¡per ¡node ¡ • Reduce ¡disrupIons ¡caused ¡by ¡failures ¡and ¡miscablings ¡ ¡
Recommend
More recommend