Presentation is loading. Please wait.

Presentation is loading. Please wait.

15-744: Computer Networking L-19 Active Networks.

Similar presentations


Presentation on theme: "15-744: Computer Networking L-19 Active Networks."— Presentation transcript:

1 15-744: Computer Networking L-19 Active Networks

2 L -17; 03-14-01© Srinivasan Seshan, 20012 Active Networks Active networks Active services Assigned reading [W99] Active network vision and reality: lessons from a capsule-based system [AMK98] An Active Service Framework and its Application to Real Time Multimedia Transcoding

3 L -17; 03-14-01© Srinivasan Seshan, 20013 Overview Active Networks Active Services

4 L -17; 03-14-01© Srinivasan Seshan, 20014 Why Active Networks? Traditional networks route packets looking only at destination Also, maybe source fields (e.g. multicast) Problem Rate of deployment of new protocols and applications is too slow Solution Allow computation in routers to support new protocol deployment

5 L -17; 03-14-01© Srinivasan Seshan, 20015 Active Networks Nodes (routers) receive packets: Perform computation based on their internal state and control information carried in packet Forward zero or more packets to end points depending on result of the computation Users and apps can control behavior of the routers End result: network services richer than those by the simple IP service model

6 L -17; 03-14-01© Srinivasan Seshan, 20016 Why not IP? Applications that do more than IP forwarding Firewalls Web proxies and caches Transcoding services Nomadic routers (mobile IP) Transport gateways (snoop) Reliable multicast (lightweight multicast, PGM) Online auctions Sensor data mixing and fusion Active networks makes such applications easy to develop and deploy

7 L -17; 03-14-01© Srinivasan Seshan, 20017 Variations on Active Networks Programmable routers More flexible than current configuration mechanism For use by administrators or privileged users Active control Forwarding code remains the same Useful for management/signaling/measurement of traffic “Active networks” Computation occurring at the network (IP) layer of the protocol stack  capsule based approach Programming can be done by any user Source of most active debate

8 L -17; 03-14-01© Srinivasan Seshan, 20018 Case Study: MIT ANTS System Conventional Networks: All routers perform same computation Active Networks: Routers have same runtime system Tradeoffs between functionality, performance and security

9 L -17; 03-14-01© Srinivasan Seshan, 20019 System Components Capsules Active Nodes: Execute capsules of protocol and maintain protocol state Provide capsule execution API and safety using OS/language techniques Code Distribution Mechanism Ensure capsule processing routines automatically/dynamically transfer to node as needed

10 L -17; 03-14-01© Srinivasan Seshan, 200110 Capsules Each user/flow programs router to handle its own packets Code sent along with packets Code sent by reference Protocol: Capsules that share the same processing code May share state in the network Capsule ID is MD5 of code

11 L -17; 03-14-01© Srinivasan Seshan, 200111 Capsules Active Node IP Router Active Node Capsule IP HeaderVersionDataType Previous Address Type Dependent Header Files ANTS-specific header Capsules are forwarded past normal IP routers

12 L -17; 03-14-01© Srinivasan Seshan, 200112 Capsules Active Node 1 IP Router Active Node 2 Capsule Request for code Capsule When node receives capsule uses “type” to determine code to run If no code at node requests code from “previous address” node Likely to have code since it was recently used

13 L -17; 03-14-01© Srinivasan Seshan, 200113 Capsules Active Node 1 IP Router Active Node 2 Capsule Code Sent Code is transferred from previous node Size limited to 16KB Code is signed by trusted authority (e.g. IETF) to guarantee reasonable global resource use

14 L -17; 03-14-01© Srinivasan Seshan, 200114 Research Questions Execution environments What can capsule code access/do? Safety, security & resource sharing How isolate capsules from other flows, resources? Performance Will active code slow the network? Applications What type of applications/protocols does this enable?

15 L -17; 03-14-01© Srinivasan Seshan, 200115 Functions Provided by Capsule Environment Access Querying node address, time, routing tables Capsule Manipulation Access header and payload Control Operations Create, forward and suppress capsules How to control creation of new capsules? Storage Soft-state cache of app-defined objects

16 L -17; 03-14-01© Srinivasan Seshan, 200116 Safety, Resource Mgt, Support Safety: Provided by mobile code technology (e.g. Java) Resource Management: Node OS monitors capsule resource consumption Support: If node doesn’t have capsule code, retrieve from somewhere on path

17 L -17; 03-14-01© Srinivasan Seshan, 200117 Performance User level Java implementation ok for T1 (1.5Mbps)

18 L -17; 03-14-01© Srinivasan Seshan, 200118 Performance Based on profile of code  Java specific overheads and user level send/receive are bulk of extra overhead Safe evaluation and type demultiplexing only add 30% overhead Other more efficient technologies available Software fault isolation (SFI) Proof carrying code (PCC)

19 L -17; 03-14-01© Srinivasan Seshan, 200119 Applications/Protocols Limitations Expressible  limited by execution environment Compact  less than 16KB Fast  aborted if slower than forwarding rate Incremental  not all nodes will be active Proof by example Host mobility, multicast, path MTU, Web cache routing, etc.

20 L -17; 03-14-01© Srinivasan Seshan, 200120 Discussion Active nodes present lots of applications with a desirable architecture Key questions Is all this necessary at the forwarding level of the network? Is ease of deploying new apps/services and protocols a reality?

21 L -17; 03-14-01© Srinivasan Seshan, 200121 Overview Active Networks Active Services

22 L -17; 03-14-01© Srinivasan Seshan, 200122 Active Service Way of doing “application-level active networking” for a specific domain Service agents (“Servents”) Perform operations like transcoding and multicast-to-unicast conversion in a cluster environment

23 L -17; 03-14-01© Srinivasan Seshan, 200123 Components of Architecture Service environment: defines programming model and execution environment Service location: how to locate AS1 cluster Service management: resource allocation in cluster Service control: how to control servent Service attachment: how to attach a cluster if a client doesn’t have multicast Service composition: not explored

24 L -17; 03-14-01© Srinivasan Seshan, 200124 Service Environment Environments at application layer and uses MASH infrastructure Claim: a good environment is domain- specific as are the APIs Safety not addressed Can leverage work on type-safe languages, etc.

25 L -17; 03-14-01© Srinivasan Seshan, 200125 Service Location/Management How to locate cluster? Use mechanism like DHCP (or even DNS) Listen on well-known multicast address for advertisements Static configuration (/etc/X.config) Service Management This topic is the bulk of the paper

26 L -17; 03-14-01© Srinivasan Seshan, 200126 Servent Launching (ASCP) Uses announce/listen protocol model and no centralized manager Periodically announce set of (key; value) pairs on multicast group Receivers either update, refresh or age entries out of table Error recovery subsumed as part of normal operation Host managers, on per cluster machine, use this to launch servents Servent floods Prevent using multicast damping (random timers/suppression)

27 L -17; 03-14-01© Srinivasan Seshan, 200127 Processor Sharing Use of a birth-death process to grow and wean number of cluster machines N is the desired target number of machines and n is the number of actual machines in current operation If n<N, randomly fork copy on an idle machine with probability p l = min(1, N/n-1) And if n>N,kill with probability 1-N/n Property that no HMs exist can be made exponentially small in the target number

28 L -17; 03-14-01© Srinivasan Seshan, 200128 Other Issues Service Control Application specific control In MeGa architecture, uses SCUBA (Scalable ConsensUs–based Bandwidth Allocation) to control servents Service Attachment Uses “soft-state gateways” to bridge multicast- to-unicast regions Paper describes deployment experience on Berkeley NOW

29 L -17; 03-14-01© Srinivasan Seshan, 200129 Discussion Framework for active services in the context of media gateways and real time Mbone applications Specific to restricted class of applications Soft-state announce-listen protocols is different from “standard” centralized managers

30 L -17; 03-14-01© Srinivasan Seshan, 200130 Review Papers present two ways of building flexible networks Changes the way IP forwarding is done Works at application layer

31 L -17; 03-14-01© Srinivasan Seshan, 200131 Announcements Approximately 1month to project due date!!! Final exam on May 8 th – time TBA No HW3 Spend extra time on your project Make sure you keep up with reading – it will be critical on exam

32 L -17; 03-14-01© Srinivasan Seshan, 200132 Next Lecture: Application Networking HTTP APIs Assigned reading [BSR99] An Integrated Congestion Management Architecture for Internet Hosts [PM95] Improving HTTP Latency


Download ppt "15-744: Computer Networking L-19 Active Networks."

Similar presentations


Ads by Google