120 likes | 228 Views
This document outlines the implementation of mobile agents within the Click modular router framework, focusing on the use of simple elements to streamline network flows. It details the configuration of Home and Foreign Agent elements, handling registration requests, encapsulation, and de-encapsulation of packets. Key features include reducing function calls and optimizing port handling (PUSH, PULL, AGNOSTIC). The objectives include enhancing protocol compliance, speeding up processing with hash classes, and thorough integration with existing toolkits.
E N D
Mobile Agents in Click Tushar Mohan
Click Elements • Graphs made of simple elements • Separate flows have separate ports • Common case fast • Reduce function calls • Ports of elements - PUSH, PULL, AGNOSTIC
Router/Agent Advertisement Element ToDevice EtherEncap FromDevice Classifier Queue AgentAdvertisement
Home/Foreign Agent Element ToDevice eth1 To Classifier 1 1 FromDevice eth1 2 IP 0 0 Strip Agent LookUpIPRoute FromDevice eth0 ARPResponder Classifier
Home Agent Configuration • Input 0 : • Normal IP + IP for forwarding + UDP registration requests • Input 1 : • Agent Interface Ethernet packets for which we Proxy/Gratuitous ARP • Possible de-registration request • Output 0 : • Normal IP + Encapsulated IP • Output 1 : • Unprocessed Ethernet packets from Agent Interface • Output 2 : • Proxy/Gratuitous ARPs
Foreign Agent Configuration • Input 0 : • Normal IP + Encapsulated IPIP + UDP registration replies • Input 1 : • Registration requests Eth/IP/UDP + Passing ethernet packets • Output 0 : • Normal IP + Relayed registration requests • Output 1 : • Unprocessed Ethernet packets from Agent Interface • Output 2 : • De-capsulated packets + Relayed replies
Test Configuration MH 202.54.15.1 202.54.1.1 H 192.168.0.1 F 192.168.10.1 202.54.15.10 202.54.15.1 Ex-MH
Schematic for agent.click InfiniteSource 1(in) F H 0(in) (out)0 InfiniteSource 1(out) 0(in) 0(out) 1(out) Discard Discard 2(out) 2 (out) Print Print Discard Discard
Adv.click AgentAdvertise( HOME, 192.168.123.116, 224.0.0.1, 0.0.0.0, REG_LIFE=255, MAX=5, ENCAP=GRE, DEFAULT_ROUTER=false, MIN=5 ) ->IPPrint("Adv", CONTENTS=hex, ID=true) ->Discard;
What Remains ? • Not fully compliant (RFC2002) • ARPs, validation, authentication • multiple simultaneous binding • Speed-up (hash classes) • Hardware testing • Documentation • Integration with the MIT toolkit
Objectives • Add to the Click tool-kit • Practically implement a protocol • Enjoy the project