  Given an undirected graph G=(V,E), a collection (s_1,t_1),...,(s_k,t_k) of k
source-sink pairs, and an integer c, the goal in the Edge Disjoint Paths with
Congestion problem is to connect maximum possible number of the source-sink
pairs by paths, so that the maximum load on any edge (called edge congestion)
does not exceed c.
  We show an efficient randomized algorithm to route $\Omega(OPT/\poly\log k)$
source-sink pairs with congestion at most 14, where OPT is the maximum number
of pairs that can be simultaneously routed on edge-disjoint paths. The best
previous algorithm that routed $\Omega(OPT/\poly\log n)$ pairs required
congestion $\poly(\log \log n)$, and for the setting where the maximum allowed
congestion is bounded by a constant c, the best previous algorithms could only
guarantee the routing of $OPT/n^{O(1/c)}$ pairs.
