Input: traffic requests $(s,d)$, ${G}_{\text{inter}}$, ${G}_{\text{intra}j}$, ${\text{Threshold}}_{1}$, ${\text{Threshold}}_{2}$. |

Output: ${P}_{\mathrm{dlr}}$, $\lambda $. |

1) Domain level partition and domain set determination are implemented: |

1-1) Calculation of the distance between domains: |

For $\forall j\in [1,{N}_{\text{dom}}]$, |

${P}_{s}({D}_{j})=\mathrm{Dijkstra}({D}_{s},{D}_{j},{G}_{\text{inter}})$; |

${P}_{d}({D}_{j})=\mathrm{Dijkstra}({D}_{d},{D}_{j},{G}_{\text{inter}})$. |

1-2) Domain level partition. |

For $\forall j\in [1,{N}_{\text{dom}}]$, |

If ${P}_{s}({D}_{j})\in [{a}_{i},{b}_{i}],{\text{Level}}_{\mathrm{src}}({D}_{j})=i,i\in \{1,\dots ,{I}_{\mathrm{src}}\}$; |

If ${P}_{d}({D}_{j})\in [{a}_{{i}^{\prime}}^{\prime},{b}_{{i}^{\prime}}^{\prime}],{\text{Level}}_{\mathrm{dst}}({D}_{j})={i}^{\prime},{i}^{\prime}\in \{1,\dots ,{I}_{\mathrm{dst}}\}$. |

1-3) Domain set determination. |

For $\forall j\in [1,{N}_{\text{dom}}]$, |

If ${L}_{\text{sum}}({D}_{j})<{\text{Threshold}}_{1}$, |

${S}_{\text{sel}}={S}_{\text{sel}}\cup \{{D}_{j}\}$. |

For $\forall j\in [1,{N}_{\text{dom}}]$ and $j\ne s,d$, |

If all neighbor domains of ${D}_{j}$ are at the same domain level that is different from the domain level of ${D}_{j}$, |

${S}_{\text{sel}}={S}_{\text{sel}}-\{{D}_{j}\}$. |

$G({V}^{\prime},{E}^{\prime})$ is determined by ${S}_{\text{sel}}$. |

2) IDRT growth and pruning within $G({V}^{\prime},{E}^{\prime})$ are implemented. |

For $\forall {i}^{\prime}\in \{1,\dots ,{I}_{\mathrm{src}}\}$, |

2-1) Type I growth, Type I and Type IV pruning: |

a) If there exists a pair of nodes (${b}_{{k}_{1}^{\prime}},{b}_{{k}_{2}^{\prime}}$) with ${b}_{{k}_{1}^{\prime}}$ being the leaf node on ${\text{Branch}}_{a}$ and ${b}_{{k}_{2}^{\prime}}$ being an aggregated node in domain ${D}_{j}$ (${D}_{j}\in {S}_{\mathrm{trv},a}$), and this node pair satisfies the conditions of Type I growth, |

${w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}}=\mathrm{Dijkstra}({b}_{{k}_{1}^{\prime}},{b}_{{k}_{2}^{\prime}},{G}_{\text{intra},j})$. |

b) If ${u}_{{k}_{2}^{\prime}}>{u}_{{k}_{1}^{\prime}}+{w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}}$, |

${u}_{{k}_{2}^{\prime}}>{u}_{{k}_{1}^{\prime}}+{w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}}$ |

$\text{pred}({b}_{{k}_{2}^{\prime}})={b}_{{k}_{1}^{\prime}}$, |

remove other branches arriving at node ${b}_{{k}_{2}^{\prime}}$, |

${S}_{\mathrm{trv},a}={S}_{\mathrm{trv},a}\cup \{{D}_{j}\}$; |

else |

remove ${\text{Branch}}_{a}$. |

c) If ${b}_{{k}_{2}^{\prime}}=d$ and Type I growth is successful, |

compare length of other branches with ${u}_{d}$, and remove those branches longer than it. |

2-2) Type III growth based on ${\text{Level}}_{\mathrm{src}}$. Type II and Type III pruning. |

a) If there exist two groups of nodes (${b}_{{k}_{1}^{\prime}},{b}_{{k}_{2}^{\prime}},{b}_{{k}_{3}^{\prime}}$) and (${b}_{{k}_{4}^{\prime}},{b}_{{k}_{5}^{\prime}},{b}_{{k}_{6}^{\prime}}$) with ${b}_{{k}_{1}^{\prime}}$ and ${b}_{{k}_{4}^{\prime}}$ being the leaf nodes on ${\text{Branch}}_{a1}$ and ${\text{Branch}}_{a2}$ in neighbor domains ${D}_{{j}_{1}}$ and ${D}_{{j}_{2}}$ (${D}_{{j}_{1}}\in {S}_{\mathrm{trv},{a}_{1}}$ and ${D}_{{j}_{2}}\in {S}_{\mathrm{trv},{a}_{2}}$), respectively, and they satisfy the conditions of Type III stage 1 growth based on ${\text{Level}}_{\mathrm{src}}$, |

${w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}}=\mathrm{Dijkstra}({b}_{{k}_{1}^{\prime}},{b}_{{k}_{2}^{\prime}},{G}_{\text{intra},{j}_{1}})$, |

${w}_{{k}_{4}^{\prime}{k}_{5}^{\prime}}=\mathrm{Dijkstra}({b}_{{k}_{4}^{\prime}},{b}_{{k}_{5}^{\prime}},{G}_{\text{intra},{j}_{2}})$. |

b) If $\mathrm{\Delta}u=|({u}_{{k}_{1}^{\prime}}+{w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}})-({u}_{{k}_{4}^{\prime}}+{w}_{{k}_{4}^{\prime}{k}_{5}^{\prime}})|\le {\text{Threshold}}_{2}$, |

${\text{Branch}}_{a1}$ and ${\text{Branch}}_{a2}$ are removed and no growth is implemented. |

else |

if $({u}_{{k}_{1}^{\prime}}+{w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}})<({u}_{{k}_{4}^{\prime}}+{w}_{{k}_{4}^{\prime}{k}_{5}^{\prime}})$, |

$\text{pred}({b}_{{k}_{2}^{\prime}})={b}_{{k}_{1}^{\prime}}$, |

Type III stage 2 growth: |

${w}_{{k}_{5}^{\prime}{k}_{6}^{\prime}}=\mathrm{Dijkstra}({b}_{{k}_{5}^{\prime}},{b}_{{k}_{6}^{\prime}},{G}_{\text{intra},{j}_{2}})$. |

if $({u}_{{k}_{1}^{\prime}}+{w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}}+{w}_{{k}_{2}^{\prime}{k}_{5}^{\prime}}+{w}_{{k}_{5}^{\prime}{k}_{6}^{\prime}})<{u}_{{k}_{6}^{\prime}}$, |

${u}_{{k}_{6}^{\prime}}=({u}_{{k}_{1}^{\prime}}+{w}_{{k}_{1}^{\prime}{k}_{2}^{\prime}}+{w}_{{k}_{2}^{\prime}{k}_{5}^{\prime}}+{w}_{{k}_{5}^{\prime}{k}_{6}^{\prime}})$, |

$\text{pred}({b}_{{k}_{5}^{\prime}})={b}_{{k}_{2}^{\prime}}$, |

$\text{pred}({b}_{{k}_{6}^{\prime}})={b}_{{k}_{5}^{\prime}}$, |

remove ${\text{Branch}}_{a2}$ and other branches |

arriving at node ${b}_{{k}_{6}^{\prime}}$, |

${S}_{\mathrm{trv},{a}_{1}}={S}_{\mathrm{trv},{a}_{1}}\cup \{{D}_{{j}_{1}},{D}_{{j}_{2}}\}$; |

else |

remove ${\text{Branch}}_{a1}$ and ${\text{Branch}}_{a2}$. |

else |

$\text{pred}({b}_{{k}_{5}^{\prime}})={b}_{{k}_{4}^{\prime}}$, |

Type III stage 2 growth: |

${w}_{{k}_{2}^{\prime}{k}_{3}^{\prime}}=\mathrm{Dijkstra}({b}_{{k}_{2}^{\prime}},{b}_{{k}_{3}^{\prime}},{G}_{\text{intra},{j}_{1}})$. |

if $({u}_{{k}_{4}^{\prime}}+{w}_{{k}_{4}^{\prime}{k}_{5}^{\prime}}+{w}_{{k}_{5}^{\prime}{k}_{2}^{\prime}}+{w}_{{k}_{2}^{\prime}{k}_{3}^{\prime}})<{u}_{{k}_{3}^{\prime}}{u}_{{k}_{3}^{\prime}}=({u}_{{k}_{4}^{\prime}}+{w}_{{k}_{4}^{\prime}{k}_{5}^{\prime}}+{w}_{{k}_{5}^{\prime}{k}_{2}^{\prime}}+{w}_{{k}_{2}^{\prime}{k}_{3}^{\prime}})$, |

$\text{pred}({b}_{{k}_{2}^{\prime}})={b}_{{k}_{5}^{\prime}}$, |

$\text{pred}({b}_{{k}_{3}^{\prime}})={b}_{{k}_{2}^{\prime}}$, |

remove ${\text{Branch}}_{a1}$ and other branches |

arriving at node ${b}_{{k}_{3}^{\prime}}$, |

${S}_{\mathrm{trv},{a}_{2}}={S}_{\mathrm{trv},{a}_{2}}\cup \{{D}_{{j}_{1}},{D}_{{j}_{2}}\}$; |

else |

remove ${\text{Branch}}_{a1}$ and ${\text{Branch}}_{a2}$. |

2-3) If ${i}^{\prime}\ge {\text{Level}}_{\mathrm{src}}({D}_{d})$, Type II growth, Type I and Type IV pruning are fulfilled: |

a) All domains on this level are added into the set ${S}_{\mathrm{src},{i}^{\prime}}$, and divided into subsets based on ${\text{Level}}_{\mathrm{dst}}$. |

b) If conditions for Type II growth are satisfied, a similar procedure as described in 2-1) is carried out for domains within ${S}_{\mathrm{src},{i}^{\prime}}$, except the growth is based on level partition from the view of the destination domain. |

c) A similar procedure as presented in 2-1) is carried out from the domains with lowest ${\text{Level}}_{\mathrm{dst}}$ in ${S}_{\mathrm{src},{i}^{\prime}}$ to the destination domain. |

2-4) If ${i}^{\prime}\ge {\text{Level}}_{\mathrm{src}}({D}_{d})$, Type III growth based on ${\text{Level}}_{\mathrm{dst}}$, Type II and Type III pruning are fulfilled. A similar procedure as described in 2-2) is carried out, except the growth is based on level partition from the view of the destination domain. |

3) Type V pruning is implemented. |

For every leaf node ${b}_{{k}_{1}^{\prime}}$ on ${\text{Branch}}_{a}$ of the IDRT, if ${b}_{{k}_{1}^{\prime}}\ne d$, the branch is removed. |

The branch with length of the full path as ${u}_{d}$ is kept as ${P}_{\mathrm{dlr}}$. |

4) Choosing suitable wavelength $\lambda $ from $\{{\lambda}_{q}\}$ for the connection provisioning, return ${P}_{\mathrm{dlr}}$ and $\lambda $; stop. |