LoopBuster Hardware Loop Detection in Fast Mesh Ethernet Networks Uriel Peled and Tal Kol Guided by Boaz Mizrahi Advised by Gideon Kaempfer Digital Systems Laboratory Faculty of Electrical Engineering, Technion Winter 2007 – Winter 2008 Algorithm Presentation
Algorithm Goal Identify looping (repeating) Ethernet packets Packet may loop several times before being identified Use limited amount of memory Naïve implementation requires 10Mbit for a single 10Gbps interface Zero false positives Minimal effect on hosting network
Conceptual Diagram packet packet packet packet packet packet packet packet packet packet Filter
Filters The LoopBuster consists of several filters connected serially Packets suspicious of looping arrive at filter Filter decides if packet is still suspicious YES – packet passed to next filter NO – packet is forwarded to out interface Packets suspicious at all filters are removed
A Single Filter Next Filter Out Interface Seen Packets (Memory) packet A packet B From Prev packet A packet B packet A
Multiple Filters in out Filter Seen: A A A packet A packet A packet A packet A
Why Does It Work Each filter takes very little memory Large filters are 256Kbit-128Kbit Memory usually drops in half from one filter to the next Smaller filters mean bad filtering, but… Packet rate decreases from filter to filter Filtering is still effective with smaller memory! Where do we pay? Packet has to loop N+1 times before removed N is the number of filters