  Previous research on SDN traffic engineering mostly focuses on static
traffic, whereas dynamic traffic, though more practical, has drawn much less
attention. Especially, online SDN multicast that supports IETF dynamic group
membership (i.e., any user can join or leave at any time) has not been
explored. Different from traditional shortest-path trees (SPT) and graph
theoretical Steiner trees (ST), which concentrate on routing one tree at any
instant, online SDN multicast traffic engineering is more challenging because
it needs to support dynamic group membership and optimize a sequence of
correlated trees without the knowledge of future join and leave, whereas the
scalability of SDN due to limited TCAM is also crucial. In this paper,
therefore, we formulate a new optimization problem, named Online Branch-aware
Steiner Tree (OBST), to jointly consider the bandwidth consumption, SDN
multicast scalability, and rerouting overhead. We prove that OBST is NP-hard
and does not have a $|D_{max}|^{1-\epsilon}$-competitive algorithm for any
$\epsilon >0$, where $|D_{max}|$ is the largest group size at any time. We
design a $|D_{max}|$-competitive algorithm equipped with the notion of the
budget, the deposit, and Reference Tree to achieve the tightest bound. The
simulations and implementation on real SDNs with YouTube traffic manifest that
the total cost can be reduced by at least 25% compared with SPT and ST, and the
computation time is small for massive SDN.
