1. A method for optimizing configuration of a network node system, wherein at least a first network node is communicatively connected to a second network node, the system comprising: by a preprocessing module implemented on a computing device, receiving node data and network data, wherein the network data is selected from the group consisting of: backbone network data, metro network data and third party network data; by the preprocessing module, analyzing the node data and the network data to generate tabular output identifying at least a plurality of network node identifiers each associated with at least one cost; and by an optimization module implemented on a computing device, receiving the tabular output generated by the preprocessing module and analyzing the tabular output in conjunction with traffic demand data to generate an optimal configuration for the network node system, wherein the optimal configuration comprises a connection between the first network node and a third network node distinct from the second network node, wherein the connection is operable for the transmission of traffic between the first network node and the third network node without said traffic passing through the second network node therebetween.