Facebook: Flere switche har gjort netværket i vores datacenter enklere

Facebook tæller sine servere i hundredetusinder i selskabets enorme datacentre, og det har givet store udfordringer for opbygningen af netværket i datacentret. I det nyeste datacenter i Altoona i delstaten Iowa har Facebook derfor forsøgt sig med en ny arkitektur. Det skriver netværksingeniør Alexey Andreyev fra Facebook i et blogindlæg.

Tidligere har datacentret været opdelt i fire klynger, hvor den ene fungerede som redundans for de tre øvrige. Denne opbygning betød imidlertid, at der skulle bruges nogle meget store og dyre switche til hver klynge, og det gav ikke Facebook tilstrækkelig kapacitet til kommunikation mellem klyngerne.

Facebooks særlige udfordring er, at hver bruger får leveret sin egen version af Facebook med indhold, der er tilpasset hver enkelt. Derfor skal serverne tale sammen på kryds og tværs i datacentret for at sammensætte Facebook-nyhedsstrømmen for brugeren.

I det nye datacenter har Facebook derfor opbygget netværket som et stort væv, der ganske vist bruger flere switche, men tillader Facebook at bruge switche, der er nemmere at administrere, og tilsammen giver det større båndbredde.

Datacentret er opbygget af ‘pods’, som hver indeholder 48 serverracks, der hver er udstyret med en switch, som har fire 40 gigabit/s forbindelser, der hver er forbundet til én af fire fabric switches, som knytter enhederne inden for pod’en sammen. Disse pods er så igen forbundet på kryds og tværs af yderligere et lag af switches.

Den nye arkitektur gør det lettere at udvide datacentret løbende. Som udgangspunkt er der lagt fire gange overkapacitet ind, som gør det muligt hurtigt at udvide. Selvom den nye arkitektur kan virke mere kompleks, så er den bygget op af simple gentagne strukturer, der ifølge Facebook gør det let både at trække kabler og konfigurere netværket.


Foto: Facebook
Posted in computer.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>