PDP09 Byte-Range Asynchronous Locking in Distributed Settings
Martin Quinson & Flavien Vernier UHP-Nancy I
- Univ. Savoie
PDP09 Byte-Range Asynchronous Locking in Distributed Settings - - PowerPoint PPT Presentation
PDP09 Byte-Range Asynchronous Locking in Distributed Settings Martin Quinson & Flavien Vernier UHP-Nancy I Univ. Savoie LORIA LISTIC Context & Objectives Context Mutual exclusion algorithms Large scale distributed
19 February 2009 PDP 2009 2
– Mutual exclusion algorithms – Large scale distributed systems – Large resource
– Request partialy a critical section – Asynchronous range locks
19 February 2009 PDP 2009 3
– The algorithm – A use case
– Comparison between: classical Naimi-Trehel,
19 February 2009 PDP 2009 4
– Partially lock a resource, – not be blocked by the request of a lock.
– if the access to the resource can be
– to continue to work until access to the
19 February 2009 PDP 2009 5
– lockCreate: range → lockId – lockTest: lockId → bool – doLock: lockId → data – unLock: lockId x data → null
Distributed mutual exclusion manager (NT, Central, SWQ...) Interface Interface Interface Application Application Application
19 February 2009 PDP 2009 6
– The token request
– The token exchange
19 February 2009 PDP 2009 7
– The token can be split in sub-tokens. – The
– Two contiguous tokens can be merged in only
19 February 2009 PDP 2009 8
– owners (list of peers): the list of 'supposed'
– owned (list of tokens): the stored tokens – request (range): the requested token. – nexts (list of peer-token): the peers to which
19 February 2009 PDP 2009 9
– two supplementary lists must be managed:
– a request is always proceeded sequentially, – a request message contains the requested
– A node becomes the owner of a part only
19 February 2009 PDP 2009 10
19 February 2009 PDP 2009 11
19 February 2009 PDP 2009 12
19 February 2009 PDP 2009 13
19 February 2009 PDP 2009 14
19 February 2009 PDP 2009 15
– alpha: the time each lock is kept by nodes, – the number of nodes, – the size of the resource, – the size of requested range.
19 February 2009 PDP 2009 16
alpha range 2 12 22 42 82 162 0.25 1/16 central 0.2 1.6 3.6 7.6 16.3 33.5 SWQ 0.3 3 5 11 32.6 117 full NT 0.8 13.1 23.4 44.7 82.6 165 central 1 19.1 37.8 70.2 138 277 SWQ 0.9 26.6 72.1 228 745 2807 5 1/16 central 0.6 5.1 9.7 18.9 37.2 73.1 SWQ 0.6 6.2 13.1 31.3 60.9 153 full NT 4.5 64.8 122 237 463 922 central 5.7 71.7 137 264 520 1035 SWQ 4.5 64.8 122 268 787 2860 algo # of nodes
19 February 2009 PDP 2009 17
alpha 2 12 22 42 82 162 640kb 0.25 central 0,4 5,3 11,5 21,8 43,9 86,4 SWQ 0,5 4,3 6,4 14,2 36 124 5 central 0,7 7 13,4 24,4 47,7 92,9 SWQ 0,7 7,3 14 32,3 66,4 151 6.25Mb 0.25 central 4.9 48.2 92.8 165 318 618 SWQ 2.6 21 27.1 50.8 91.8 199 5 central 4.9 46 88.7 159 312 618 SWQ 2.6 19.9 30.3 66 113 240 size algo # of nodes
19 February 2009 PDP 2009 18
– It allows partial locks, – It has not central point, – It allows asynchronous lock.
– comparing the simulation results to live
– relaxing some constraints to improve the