Find all functions $f:\mathbb{R}\rightarrow\mathbb{R}$ such that for all real numbers $x$ and $y$ satisfies,
$$2+f(x)f(y)\leq xy+2f(x+y+1).$$
1. **Substitute \( x = y = -1 \):**
   \[
   2 + f(-1)f(-1) \leq (-1)(-1) + 2f(-1 + -1 + 1)
   \]
   Simplifying the inequality:
   \[
   2 + f(-1)^2 \leq 1 + 2f(-1)
   \]
   Let \( f(-1) = a \). Then:
   \[
   2 + a^2 \leq 1 + 2a
   \]
   Rearrange the inequality:
   \[
   a^2 - 2a + 1 \leq 0
   \]
   This simplifies to:
   \[
   (a - 1)^2 \leq 0
   \]
   Since the square of a real number is non-negative, the only solution is:
   \[
   a - 1 = 0 \implies a = 1
   \]
   Therefore, \( f(-1) = 1 \).

2. **Substitute \( y = -1 \):**
   \[
   2 + f(x)f(-1) \leq x(-1) + 2f(x - 1)
   \]
   Since \( f(-1) = 1 \):
   \[
   2 + f(x) \leq -x + 2f(x - 1)
   \]
   Rearrange to find a lower bound for \( f(x) \):
   \[
   f(x) \leq -x + 2f(x - 1) - 2
   \]

3. **Substitute \( y = -x - 2 \):**
   \[
   2 + f(x)f(-x - 2) \leq x(-x - 2) + 2f(x - x - 2 + 1)
   \]
   Simplifying:
   \[
   2 + f(x)f(-x - 2) \leq -x^2 - 2x + 2f(-1)
   \]
   Since \( f(-1) = 1 \):
   \[
   2 + f(x)f(-x - 2) \leq -x^2 - 2x + 2
   \]
   Rearrange to find an upper bound for \( f(x)f(-x - 2) \):
   \[
   f(x)f(-x - 2) \leq -x^2 - 2x
   \]

4. **Consider \( x \in (-2, 0) \):**
   \[
   (x + 2)(-x) \leq f(x)f(-x - 2) \leq -x^2 - 2x
   \]
   Simplifying the left-hand side:
   \[
   (x + 2)(-x) = -x^2 - 2x
   \]
   Therefore:
   \[
   f(x)f(-x - 2) = -x^2 - 2x
   \]
   This implies equality holds, so:
   \[
   f(x) = x + 2 \quad \text{for} \quad -2 < x < 0
   \]

5. **Generalize for all \( x \):**
   Substitute \( y = -x - 1 - c \) where \( 0 < c < 2 \):
   \[
   2 + f(x)f(-x - 1 - c) \leq x(-x - 1 - c) + 2f(x - x - 1 - c + 1)
   \]
   Simplifying:
   \[
   2 + f(x)f(-x - 1 - c) \leq -x^2 - x - xc + 2f(-c)
   \]
   For \( x \in (-2, 0) \):
   \[
   f(x) = x + 2 \quad \text{for} \quad -1 - c < x < 1 - c
   \]
   Iterating this argument shows that:
   \[
   f(x) = x + 2 \quad \text{for all} \quad x
   \]

Thus, the only solution is \( f(x) = x + 2 \).

The final answer is \( \boxed{ f(x) = x + 2 } \).