Symfony 2.3, el libro oficial

5.9. El objeto Request

Además de las variables definidas por la ruta, el controlador tiene acceso directo al objeto Request. El motivo es que Symfony inyecta automáticamente el objeto Request si el controlador define un argumento de tipo Symfony\Component\HttpFoundation\Request (no importa ni el nombre del argumento ni su posición):

use Symfony\Component\HttpFoundation\Request;

public function indexAction(Request $request)
{
    // ¿es una petición Ajax?
    $request->isXmlHttpRequest();

    $request->getPreferredLanguage(array('en', 'fr'));

    // obtiene el valor de un parámetro $_GET
    $request->query->get('page');

    // obtiene el valor de un parámetro $_POST
    $request->request->get('page');
}

Al igual que el objeto Response, las cabeceras de la petición se almacenan en un objeto HeaderBag y son fácilmente accesibles.