560 likes | 572 Views
This project focuses on the design and analysis of rate aware ad hoc 802.11 networks, including the development of a WLAN MAC simulator and a rate switching mechanism at the device driver level.
E N D
Summary of Projects Sandhya G ME (Computer Science) IISc, Bangalore
Summary • Design and Analysis of Rate Aware Ad Hoc 802.11 networks • Secure NFS • OS Fingerprinting tool • Compiler Compiler in Python • Code generator for C • Check pointing utility • Search efficiency in indexing structures for similarity searching • Source Code Search Engine • ELECTRON
Design and Analysis of Rate Aware Ad Hoc 802.11 Networks M E Project
Contributions • Developed a WLAN MAC simulator • Added multi-rate support to the wireless extensions to ns2. • Proposed a multi-rate aware IP stack. • L2 layer • Proposed an automatic rate switching mechanism which could be implemented using the statistics available at the device driver. • L3 layer • Proposed transmission time as a metric to guide routing decisions. Use link quality to guide routing Use link quality to decide the tx rate
802.11 PHY • PHY supports different data rates • 802.11b – 1Mbps, 2Mbps, 5.5Mbps, 11Mbps • Lower data rates – larger coverage • Higher data rates – high throughput • Issue • Find the optimal transmission rate.
802.11 MAC • Uses CSMA/CA for transmission • ACK required for DATA packets • Two schemes • RTS/CTS Scheme(RCS) - RTS/CTS handshake • Basic Access Scheme(BAS) - no RTS/CTS handshake (small pkts) • Retransmissions at MAC level • Retry limit – 7 • Congestion window (32 to 1024) incremented with each retransmission SIFS DIFS Backoff RTS DATA CTS ACK SIFS SIFS
Modes of Operation Ad Hoc mode Infra-structure mode
Analysis • P0+ P1(1 − P2) + P2P1(1 − P3) + P3P2P1(1 − P4) + P4P3P2P1(1 − P5) + P5P4P3P2P1(1 − P6)(1 + P6+ P62) + P5P4P3P2P1P63= 1 • effSBAS= average system delay + Psucc(S + SIFS + ACK) + Pcoll(S + AckTimeOut) • effSRTS= average system delay + Psucc(RTS + CTS + S + ACK + 3*SIFS) + Pcoll(RTS + AckTimeOut) • where • S – time to send a data packet • Psucc – Probability of successful transmission • Pcoll – Probability of collision
WLAN MAC Simulator • Predict the throughput of WLANs • Used at Wibhu Technologies, Pune for throughput computations. • Generalized the model for infra-structure networks. • Assumptions • System operates in saturated conditions. • All stations transmit at the same rate (11Mbps).
Performance Anomaly • Assumptions • One station transmits at 1Mbps.All others at 11Mbps • System operates in saturated conditions. • effSBAS = average system delay + Psuccslow(Sslow+ SIFS + ACKslow) + Psuccfast(Sfast+ SIFS + ACK) + Pcollslow(Sslow+ AckTimeOut) + Pcollfast(Sfast+ AckTime- Out) • effSRTS= average system delay + Psuccslow(RTSslow + CTSslow+ Sslow+ ACKslow+ 3*SIFS ) + Psuccfast(RTSfast+ CTS + Sfast+ ACK + 3*SIFS) + Pcollslow(RTSslow+ AckTimeOut) + Pcollfast(RTSfast+ AckTimeOut)
Design • Highly adaptive rate control mechanism required • Modern WLAN products provide rate control support as part of chipset • But cards like Atheros do not have rate control support • Alternative - Provide at device driver level. • FER based design • Statistics available at device driver • Successful transmission • Number of retries • Frame Error • When to switch the rate? • Frame Error • Successful transmission with more number of retries
Analysis – Basic Access Scheme Packet Size = 512B Packet Size = 1024B
Analysis – RCS Scheme Packet Size = 512B Packet Size = 1024B
Simulation • Modified wireless extensions to ns2 to add • Multi-rate capability • Proposed state machine
Simulations TCP Throughput UDP Throughput
Implementation in device driver • Each node maintains a table at link layer to keep track of rate to its neighbors • Experimental Setup • Two node setup – one equipped with SparkLAN and other with DLink DWL 650+ • Iperf traffic used
Ad Hoc Routing • Dynamic routing protocols used. • DSDV • Periodically exchange probe messages • Advertise routes with metric • Route Entry accepted if new seq no.or current seq no with better metric • Metric part incremented by one to compute minimum hop metric Typical DSDV Routing Table
Routing metrics • Minimum Hop count • Link Quality • Rate metric • Transmission time (Xtime) • Minimize air time • Takes into consideration • Link rate • Contention for channel • Asymmetry of links
Modifications to DSDV • If route entry accepted, metric incremented by link cost, in the case of rate and Xtime metrics • Computation of Link Cost • Rate Metric • 1/r * 10 • Xtime Metric • current_xtime = Pxtime/packetsize • new_link_cost = w * old_link_cost + (1 − w) * current_xtime • link_cost_initial = 1/r * 10 • Smoothing factor w = 0.85
Experiments • 5 nodes equipped with SparkLAN and DLink DWL 520+ cards • Netperf used for generating traffic
TCP Throughput 1 connection (A – C) 3 conns (A–B, B-C, A-C)
TCP Throughput 1 connection (A – C) 5 conns (A–D, D-B, B-E, E-C, A-C)
Conclusions • The automatic rate control mechanism results are close to that of Manual configuration and simulation results are comparable to the real world experiments • Xtime metric is found to perform consistently well across the different scenarios considered
Secure NFS • Goal: • Secure all NFS transactions • Secret key established using Diffie- Helman. • All transactions secured using RC4.
OS fingerprinting tool • Goal: • Utilize TCP inflexible parameters to identify remote system. • Used window size to predict the OS.
Compiler compiler in Python • Tool similar to lex yacc in C. • Input • Regular expression and Grammar. • Output • LALR parser
X86 Code Generator for C • Input • Three address code • Output • X86 assembly code • LANCE used as front end to generate three address code. • Machine independent optimizations like global dead code elimination, constant propagation, loop invariant code motion has been done. • Implemented register allocation schemes.
Check pointing tool • Allows to check point a process at an arbitrary location and resume the process at a later stage. • Core saved when we do a checkpoint. • It is replaced when process resumes.
Search efficiency in indexing structures for similarity searching • Motivation • Need for similarity searching in new application domains like multi-lingual databases. • Issue: • Expensive distance computation. • Way Out • Similarity Indexing structures • Analysis of various indexing structures • BK Tree, FQ Tree, Bisector tree, M Tree, VP Tree, Clustering…
Search efficiency in indexing structures for similarity searching • Distance function satisfies following conditions • Symmetry d(a,b) = d(b,a) • Non Negativity If (a != b) d(a,b) > 0 else d(a,b) = 0 • Triangle Inequality d(a,b) <= d(a, c) + d(c, b) • Search pruning criterion • d(q, x) > e • d(q, p) <= d(q, x) + d(x, p) d(q, x) >= d(q, p) – d(x, p) d(q, x) > d(q, p) – k • d(q, p) – k > e
Example: BK Tree p0 1 2 n p11 p12 p1n … Pruning criterion d(p, q) – e <= i <= d(p, q) + e
Search efficiency in indexing structures for similarity searching