To achieve consistent update in software defined network
a consistent update algorithm which combines segment routing
two-phase commit and node scheduling mechanism is proposed in this work. The algorithm first leverages segment routing mechanism
which attempts to splice the final path with existing paths. According to whether the final path can be spliced by the existing paths
the algorithm divides flows into either segmentable flows or flows that are not segmentable. For the segmentable flow
segment routing mechanism can encapsulate the final path information into the packet header so that packets can be forwarded immediately along the final path. For the flows not segmentable
the algorithm calculates the longest consistent update sequences for them
and updates nodes in accordance with these sequences. Finally
the algorithm uses the two-phase commit mechanism to complete the update of the remaining nodes. We verified its performance by experiments and the outcome illustrates that our algorithm not only requires less additional ternary content addressable memory resources but also has better performance stability and applicability than prior techniques.