why buffering?