300 likes | 452 Views
COACS: A Cooperative and Adaptive Caching System for MANETs. Hassan Artail, Member, IEEE, Haidar Safa, Member, IEEE, Khaleel Mershad,Zahy Abou-Atme, Student Member, IEEE, and Nabeel Sulieman, Student Member, IEEE IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 7, NO. 8, AUGUST 2008.
E N D
COACS: A Cooperative and AdaptiveCaching System for MANETs Hassan Artail, Member, IEEE, Haidar Safa, Member, IEEE, Khaleel Mershad,Zahy Abou-Atme, Student Member, IEEE, and Nabeel Sulieman, Student Member, IEEE IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 7, NO. 8, AUGUST 2008 Manuscript received 8 June 2006; revised 12 Mar. 2007; accepted 23 Jan. 2008; published online 28 Jan. 2008. Present:I-Wei Ting Date: Sep. 17, 2008
Outline • Related work • Data discovery under ICP (Internet Cache Protocol) • Proposed protocol • Election of Query Nodes (QN, Proxy) in MANETs • Life time, Battery, Bandwidth, Memory • Data discovery phase • Management of the QN and Caching Node • Performance Evaluation • Analysis
Internet Cache Protocol • The ICP protocol was designed to be lightweight in order to minimize round-trip time between caches. It is intended for unreliable but quick connections, using short time-outs before a cache starts to retrieve an object on its own. UDP is commonly used as delivery protocol. • The ICP protocol is described in RFC 2186, its application to hierarchical web caching in RFC 2187. • Web proxies that support ICP include: • Squid cache • Microsoft Proxy • Cisco Content Engine • ProxySG
Internet Cache Protocol (1/6) How to find a data object (web page)? Case 1 Server S sibling E F G sibling C B D Client A
Internet Cache Protocol (2/6) Case 2 Server S sibling E F G sibling C B D 1 2 Client A
Internet Cache Protocol (3/6) Case 3 Server S sibling E F G 3 sibling C B D 2 2 1 4 Client A
Internet Cache Protocol (4/6) Case 4 Server S sibling E F G 3 4 sibling C B D 2 2 1 5 Client A
Internet Cache Protocol (5/6) Case 5 Server S 5 sibling E F G 4 4 6 3 sibling C B D 2 2 1 7 Client A
Internet Cache Protocol (6/6) Case 6 Server S 5 6 sibling E F G 4 4 3 7 sibling C B D 2 2 1 8 Client A
Election of Query Nodes (1/6) Initial: No QD (Query Directory; Proxy server) S E F G C B D A RN :Requesting Node Each RN only cache its requested data object. Then, query index is sent to the nearest QD
Election of Query Nodes (2/6) Find out the first QD (Query Directory; Proxy server) Traverse all nodes in the networks sequentially (need to adopt routing table, DSDV) S E F G C B D COACS Score Packet (CSP) A RN :Requesting Node
Election of Query Nodes (3/6) S E F G C B D Send QD Assignment Packet To the E (highest score) A RN :Requesting Node
Election of Query Nodes (4/6) Find out Other QDs based on the # of QDs and score S QD1 E F G C B D A RN :Requesting Node
Election of Query Nodes (5/6) S QD1 find other QDs (ex:3) high. score ACK:OK QD1 E F G ACK:OK C B D A RN :Requesting Node
Election of Query Nodes (6/6) S QD Information packet QD1 Broadcast QD list to all nodes E F G C B D A
Data discovery phase S E F G RN :Requesting Node K C B D A
Case 1: QD E has an entry for the query S E F G RN :Requesting Node K C B D A
Case 2: QD forwards the request to the nearest QD S E F G K C B D A RN :Requesting Node
Management of QD and CN • A new QD is added to the system when a query needs to be cached but no QD agreed to cache it. • The last QD to receive the caching request will initiate a CSP • When a QD receives a query and related CN is offline • Delete associated entries and forward the query to the original server • CN offline • QD detect and remove related entries • Lookup routing table (proactive routing) • QD ack CN periodically (on-demand routing) • QD offline • First node detect • Run “add a new QD”
Comments • Node join • The available caching space can not be utilized efficiently
Simulation parameters 1000m*1000m Nodes: 100 Cache size: 200Kb Trans. Range: 100m DSDV routing protocol Random Waypoint mobility model Speed:0.01~2, 10~20 m/s Query interval: 10 seconds Number of QD nodes: 7 DB: 10,000 items, 10Kb/item
Analysis • 1. Expected Number of Hops between Two Nodes • E[H] = 0.521 * (a/r) • expected minimum number of hops between any two nodes in the network, • Ex: rectangular topology a=1000m2, r=250m, 0.521*4=2.084 • 2. Expected Number of Hops within the System of Query Directories
Analysis • 3. Expected Number of Hops to the External Network • 4. Query Directory Access and Delay Tin: the delay for transmitting packets between nodes inside the network Tout: the delay for accessing a node outside the network (data source)
Analysis • 5. Determining the Maximum Number of Query Directories
Analysis • 6. Load Balancing on Query Directories