Given a distributed network represented by a weighted undirected graph on vertices, and a parameter , we devise a distributed algorithm that computes a routing scheme in rounds, where is the hop-diameter of the network. The running time matches the lower bound of rounds (which holds for any scheme with polynomial stretch), up to lower order terms. The routing tables are of size , the labels are of size , and every packet is routed on a path suffering stretch at most . Our construction nearly matches the state-of-the-art for routing schemes built in a centralized sequential manner. The previous best algorithms for building routing tables in a distributed small messages model were by \cite[STOC 2013]{LP13} and \cite[PODC 2015]{LP15}. The former has similar properties but suffers from substantially larger routing tables of size , while the latter has sub-optimal running time of .
View on arXiv