28
Implementation of an optimal scheduling algorithm in NCRAWL Delimpasis Dimosthenis University of Thessaly October 14, 2011 Delimpasis Dimosthenis Diploma Thesis Presentation

Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Implementation of an optimal scheduling algorithmin NCRAWL

Delimpasis Dimosthenis

University of Thessaly

October 14, 2011

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 2: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Click Modular Router

Flexible software architecture for building configurable routers

Written in C++

Belongs to OSI-Layer 3 but it can also give hints toOSI-Layer2

Consists of packet processing modules (elements)

Elements perform simple packet actions (classification,queueing, scheduling, interfacing with network devices)

An individual can write his own elements

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 3: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Click Modular Router (cont.)

Router configurations form an acyclic directed graph

- Written in a declarative language- Describes connectivity between elements- Elements at the vertices- Packets follow along the edges of the graph

Click can be run as:

- A kernel module- A userlevel program- A routing agent withing ns-2 simulator

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 4: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Roofnet

- GoalsOperate without extensive planning or central managementProvide wide coverage and acceptable performance

- Design DecisionsUnconstrained node placementOmni-directional antennasMulti-hop routingOptimization of routing for high throughput

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 5: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Roofnet’s Routing Protocol

- Srcr

Find the highest throughput route between any pair of RoofnetnodesSource-routes data packets like DSRMaintains a partial database of link metrics

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 6: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Contribution #1 (enable Roofnet working using Ath9k)

Roofnet was initially working only with atheros madwifi driver(atheros chipset 5413)

We enable roofnet running with 802.11 n cards drived byath9k

- Raw packet is the packet including all the headers (not justthe payload). The point is that we want to get a raw packet inapplication level without the previous OSI stack layers of theoperating system remove the respective headers

- Roofnet needs the ability of sending and receiving raw packets- Ath9k did not provide raw socket support- We enable the use of raw sockets with Ath9k

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 7: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Wireless Network Coding

In case (a) four transmissions required but in case (b) only three⇒ increased throughput

Cards in monitor mode

PseudoBroadcast

Local intersession NC

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 8: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Usefull Terms

native packet: a non-encoded packet

encoded packet: a packet that is the XOR combination ofmultiple packets

key: the packet needed by a node in order to decode anencoded packet

packet id: a 32-bit hash that identifies a packet uniquely

OutQueue: a FIFO queue in which a node’s packets arestored in order to be transmitted

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 9: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

COPE

A network architecture which allows Opportunistic Listening

The first integration of network coding into the network stack

Click+Roofnet

Utilize the broadcast nature of wireless networks

Opportunistic Listening: each node listens to thecommunications over the wireless medium and stores theoverheard packets for a limited period T

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 10: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

COPE (cont.)

Learning Neighbor State:

Explicit acking

Probabilistic acking (Fixed Threshold Policy)

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 11: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Network Coding Architecture for Wireless Adaptive Links(NCRAWL)

Modular System

Based on Click+Roofnet

Uses solely statistical information

Enables user to implement his own scheduling algorithms

Experiments with max-weight scheduling (suboptimal)

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 12: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Contribution #2 (porting NCRAWL to the newer click,working with Ath9k)

NCRAWL was written in Click version 1.4

It was based on the old Roofnet setup (supporting only cards5413 drived by old madwifi)

Port NCRAWL in click version 1.8

Now NCRAWL also uses the new roofnet setup (supporting802.11 n cards drived by Ath9k)

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 13: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Description of an Optimal Scheduling Algorithm

Throughput Optimal Algorithm

Aquires knowledge about key ownership by getting feedbackfrom the nodes

A virtual subnetwork for each flow is created

- Each node represents the possible states of a packet(unknown, good, bad)

- Each node is associated with the respective queue (Unknown,Good, Bad)

- The edges of the virtual network represent the state transitionsof a packet and are associated with a transition probability (w)

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 14: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

The Virtual Network for the two Flows

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 15: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Getting the Feedback

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 16: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Example

For overhearing probabilities q12 = 0.8 and q21 = 0.5

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 17: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Example (singleton contol)

For I = n1b we have C (I ) = x1b

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 18: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Examle (control pairs)

For I = (n1u, n2u) we have C (I ) = c1(I ) + c2(I ) = 16.2

•c1(I ) = q21x1u +(1−q21)q12(x1u−x1g )+(1−q21)(1−q12)(x1u−x1b ) =

0.5 · 8 + 0.4 · 5 + 0.1 · 6 = 6.6•c2(I ) = q12x

2u +(1−q12)q21(x2u−x2g )+(1−q12)(1−q21)(x1u−x1b ) =

0.8 · 10 + 0.1 · 10 + 0.1 · 6 = 9.6

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 19: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Contribution #3 (Implemantation of the above algorithm)

Based on NCRAWL framework

Implemented as userspace Click module

Additions1 Four new queues added (Good1, Bad1, Good2, Bad2). The

original NCRAWL’s queues were transformed to act asunknown ones.

2 The acknowledgment procedure of NCRAWL was re-designedfrom scratch. In addition now the receivers can not onlypiggy-back acknowledgments, but they are able to send explicitacks (this is usefull in the case of asymmetric flow senarioswhere piggy-backing does not work)

3 A categorizing mechanism has been added. Its purpose is toinsert a packet in the apropropriate queue (Unknown, Good,Bad) based on feedback the router gets via acknowledgements.

4 The scheduling procedure of NCRAWL has been modifiedtowards taking into acount the proposed algorithm’s metrics

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 20: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

System Overview (relay side)

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 21: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

System Overview (lateral nodes side)

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 22: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Performance Experiments Setup

Rate of each link = 12 Mbps

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 23: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Comparative Results (throughput)

λ1 = λ2

0 . 0 0 . 5 1 . 0 1 . 5 2 . 0 2 . 5 3 . 0 3 . 5 4 . 00 . 0

0 . 5

1 . 0

1 . 5

2 . 0

2 . 5

3 . 0

3 . 5

4 . 0

3 0 . 8 % ( 3 3 % )8 . 5 % ( 9 . 7 5 % )

3 . 1

2 . 5 7

Th

rough

put o

f flow

1 (M

bps)

I n p u t r a t e �� ( M b p s )

N C R A W L + I m p l . A l g o r i t h m p 1 = p 2 = 1 N C R A W L + I m p l . A l g o r i t h m p 1 = 0 . 5 p 2 = 0 . 8 W i F i

2 . 3 7

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 24: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Results for controls selected (case 1)

λ1 = λ2Symmetric case (p12 = 1 and p21 = 1)

1 . 0 1 . 5 2 . 0 2 . 5 3 . 0 3 . 5 4 . 00 . 0

0 . 5

1 . 0

w e a k r e c e i v e r

Pe

rcenta

ge (%

)

A r r i v a l r a t e �� ( M b p s )

s i n g l e x o r s u u u g g u

8 6 . 5 %

s t a b i l i t y

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 25: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Results for controls selected (case 2)

λ1 = λ2Asymmetric case (p12 = 0.5 and p21 = 0.8)

1 . 0 1 . 5 2 . 0 2 . 5 3 . 0 3 . 5 4 . 00 . 0

0 . 2

0 . 4

0 . 6

0 . 8

1 . 0

1 . 2

w e a k r e c e i v e r ( b o t h i n t e r f e r e n c e a n d o v e r h e a r i n g )

7 0 %

s t a b i l i t y

Pe

rcenta

ge (%

)

A r r i v a l r a t e �� ( M b p s )

s i n g l e x o r s u u u g g u

t i m e s h a r i n g g a p

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 26: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Throughput Region

0 . 0 0 . 5 1 . 0 1 . 5 2 . 0 2 . 5 3 . 0 3 . 5 4 . 0 4 . 50 . 0

0 . 5

1 . 0

1 . 5

2 . 0

2 . 5

3 . 0

3 . 5

4 . 0

4 . 5

�����

����������

� �

��

S y m m e t r i c c a s e p 1 = p 2 = 1 ( t h e o r y ) A s s y m e t r i c c a s e p 1 = 0 . 5 , p 2 = 0 . 8 ( t h e o r y ) N C R A W L + I m p l . A l g o r i t h m p 1 = 0 . 5 , p 2 = 0 . 8 W i F i ( t h e o r y ) W i F i

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 27: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

Future Work

Software optimizations

Modification in order for the algorithm to run as a kernelmodule

More experiments in various settings

Delay experiments

Delimpasis Dimosthenis Diploma Thesis Presentation

Page 28: Implementation of an optimal scheduling algorithm in NCRAWL · Delimpasis Dimosthenis Diploma Thesis Presentation. Click Modular Router Flexible software architecture for building

End of presentation

Thanks for listening.Any questions?

Delimpasis Dimosthenis Diploma Thesis Presentation