  Let $\mathfrak{g}$ be a semisimple complex Lie algebra of finite dimension
and $\mathfrak{h}$ be a semisimple subalgebra. We present an approach to find
the branching rules for the pair $\mathfrak{g}\supset\mathfrak{h}$. According
to an idea of Zhelobenko the information on restriction to $\mathfrak{h}$ of
all irreducible representations of $\mathfrak{g}$ is contained in one
associative algebra, which we call the \emph{branching algebra}. We use an
\emph{essential semigroup} $\Sigma$, which parametrizes some bases in every
finite-dimensional irreducible representations of $\mathfrak{g}$, and describe
the branching rules for $\mathfrak{g}\supset\mathfrak{h}$ in terms of a certain
subsemigroup $\Sigma'$ of $\Sigma$. If $\Sigma'$ is finitely generated, then
the semigroup algebra corresponding to $\Sigma'$ is a toric degeneration of the
branching algebra. We propose the algorithm to find a description of $\Sigma'$
in this case. We give examples by deriving the branching rules for $A_n\supset
A_{n-1}$, $B_n\supset D_n$, $G_2\supset A_2$, $B_3\supset G_2$, and $F_4\supset
B_4$.
