An efficient implementation of a resizeable circular byte buffer in C#