ANTS Goals • Today’s networks lack flexibility … Seek to allow new network services to be introduced rapidly. • Active networks are an appealing solution, but no convincing demonstration that they can work … Evaluate the hypothesis that they can provide useful flexibility at a reasonable security/performance cost. Nov 97 djw 1 ANTS Architecture • Approach – uncoordinated introduction, automatic deployment – application-specific protocols used “on-the-fly” • Model – programmable routers generalize IP forwarding – mobile code used to implement new services • Goal – show feasibility/usefulness, explore tradeoffs Nov 97 djw 2 ANTS Glossary • Node – programmable router that implements services • Capsule – generalized packet (header + data + program) – different capsule types have different programs • Protocol – communication rules that provide a service – codified as set of related capsule types • Application – network client that uses services via protocols Nov 97 djw 3 Capsules are Generalized Packets Protocol+Program Id Header Node Data Node Capsule • carry the program and protocol by reference using a fingerprint to prevent code spoofing • header includes at least fields for default forwarding, resource limits and source identification Nov 97 djw 4 Node Operating System • hosts user-defined protocols – capsule API: soft-storage, routing, … – admits new protocols at its discretion • protects network/protocol integrity – executes untrusted code, limits resource use – provides each protocol with its network “view” • distributes code among nodes Nov 97 djw 5 Code is Loaded at Routers need to be efficient, adaptive, and load-limited previous node load request loading node time load response • application provides code at end systems, while node loading is triggered by capsules Nov 97 djw 6