\documentclass[varwidth=true, border=2pt]{standalone}
\usepackage{brunnian}
\usetikzlibrary{arrows}

\begin{document}
\tikzset{%
    every path/.style={red,line width=2pt},%
    every node/.style={transform shape,knot crossing,inner sep=1.5pt},%
    >=triangle 60,%
    text node/.style={rectangle,transform shape=false,black}%
}

\begin{tikzpicture}
\foreach \brk in {0,1,2} {
    \begin{scope}[rotate=\brk * 120]
        \node (k\brk) at (0,-1) {};
    \end{scope}
}
\draw (0,0) \foreach \brk in {0,1,2} {
    let
    \n0=\brk,
    \n1={int(Mod(\brk+1,3))},
    \n2={int(Mod(\brk+2,3))} in (k\n0) .. controls (k\n0.16 south east) and (k\n1.16 south west) .. (k\n1.center) .. controls (k\n1.4 north east) and (k\n2.4 north west) .. (k\n2)} (k2);
\end{tikzpicture}
\end{document}
