Loo, Boon ThauCondie, TysonHellerstein, Joseph MManiatis, PetrosRoscoe, TimothyStoica, Ion2023-05-222023-05-222005-10-012007-03-01https://repository.upenn.edu/handle/20.500.14332/6342Overlay networks are used today in a variety of distributed systems ranging from file-sharing and storage systems to communication infrastructures. However, designing, building and adapting these overlays to the intended application and the target environment is a difficult and time consuming process. To ease the development and the deployment of such overlay networks we have implemented P2, a system that uses a declarative logic language to express overlay networks in a highly compact and reusable form. P2 can express a Naradastyle mesh network in 16 rules, and the Chord structured overlay in only 47 rules. P2 directly parses and executes such specifications using a dataflow architecture to construct and maintain overlay networks. We describe the P2 approach, how our implementation works, and show by experiment its promising trade-off point between specification complexity and performance.declarative overlaysdataflow enginesexecutable pseudocodeImplementing Declarative OverlaysPresentation