Graph spanners are sparse subgraphs which approximately preserve all pairwise shortest-path distances in an input graph. The notion of approximation can be additive, multiplicative, or both, and many variants of this problem have been extensively studied. We study the problem of computing a graph spanner when the edges of the input graph are distributed across two or more sites in an arbitrary, possibly worst-case partition, and the goal is for the sites to minimize the communication used to output a spanner. We assume the message-passing model of communication, for which there is a point-to-point link between all pairs of sites as well as a coordinator who is responsible for producing the output. We stress that the subset of edges that each site has is not related to the network topology, which is fixed to be point-to-point. While this model has been extensively studied for related problems such as graph connectivity, it has not been systematically studied for graph spanners. We present the first tradeoffs for total communication versus the quality of the spanners computed, for two or more sites, as well as for additive and multiplicative notions of distortion. We show separations in the communication complexity when edges are allowed to occur on multiple sites, versus when each edge occurs on at most one site. We obtain nearly tight bounds (up to polylog factors) for the communication of additive 2-spanners in both the with and without duplication models, multiplicative (2k − 1)-spanners in the with duplication model, and multiplicative 3 and 5-spanners in the without duplication model. Our lower bound for multiplicative 3-spanners employs biregular bipartite graphs rather than the usual Erdős girth conjecture graphs and may be of wider interest.In modern computational settings, graphs are often stored in a distributed setting with edges living across multiple servers. This may happen when traditional, single-server methods for representing and processing massive graphs are no longer feasible and require parallel processing capability to complete. In other real world settings, different sites collect information in different locations, naturally leading to a computational setting with an input graph distributed across servers. For example, the sites may correspond to sensor networks, different network servers, etc. Furthermore, the bottleneck in these settings is often in the communication between the servers, rather than the computation time within each of the servers. Computing synopses of distributed graphs in a communication-efficient manner has therefore become increasingly important.We consider the problem of efficiently constructing a graph spanner in the message-passing model of communication. A graph spanner is a subgraph of the input graph, for which shortest path distances are approximately preserved in the subgraph. This property can immediately be used to approximately answer shortest path queries, diameter queries, connectivity queries, etc. Spanners have applications to internet routing [TZ01, Co...