A Framebuffer is a OpenGL object that aggregates images together, which rendering operations can use as their eventual destination. Every OpenGL context has a Default Framebuffer, which is usually associated with a window or other display device. Rendering operations that are intended to be directly visualized should go to the default framebuffer.
Users can construct Framebuffer Objects, framebuffers built from images provided by Textures or Renderbuffers. These are useful for rendering data off-screen; the data can later be transferred to the default framebuffer.