1 / 22

Foundations of Communication on Multiple-Access Channel

Foundations of Communication on Multiple-Access Channel. Dariusz Kowalski. Motivation. Local Area Networks ( LANs ) ETHERNET Synchronous communication assumed fast access and bounded delay for message delivery Messages are sent in slots of known length. Model of Communication.

sleon
Télécharger la présentation

Foundations of Communication on Multiple-Access Channel

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Foundations of Communication on Multiple-Access Channel Dariusz Kowalski

  2. Motivation Multiple Access Channel • Local Area Networks (LANs) • ETHERNET • Synchronous communication assumed • fast access and bounded delay for message delivery • Messages are sent in slots of known length

  3. Model of Communication Multiple Access Channel Collection of n stations with known labels which communicate via global channel Global clock is provided to all stations Every station can transmit Every station receives a message M if exactly one station transmits message M in the current step Transmission is reliable, which means that either all stations receive message or none

  4. Failures Multiple Access Channel • Stations can stop theirs activity by crashing (crash-failures) • Time of failures are not known by stations • we say that failures are generated by adversary according to the worst-case pattern to achieve worst complexity • Failures mean also unavailability

  5. Protocol and Correctness Multiple Access Channel • Protocol : function in which • inputs are sequences of messages • outputs are one message (to transmit in the current step) • empty message means no transmission (or no message received) • Weak correctness : protocol is correct in the absence of failures • Strong correctness : protocol is correct in the presence of any adversary

  6. Complexity measures Multiple Access Channel • Time : number of clock ticks (steps) since the beginning of protocol till the end • Work : sum of steps, over all stations, taken by the end of protocol, e.g. • if all stations do not fail, work is equal to Time multiplied by number of stations • if there are two stations, first is working by 9 steps till the end of protocol, second has been failed after 4th step, work is 9+4=13

  7. Asymptotic notations Multiple Access Channel Let f(n,k) and g(n,k) be mathematical formulas depending on variables n,k (some of these variables may not be represented in formulas). We use notations: • f(n,k) = (g(n,k)) if there is a constant c > 0 and fixed parameters m,l such that for all n > m and k > l inequality f(n,k) > c ·g(n,k) holds • f(n,k) = O(g(n,k)) if g(n,k) = (f(n,k)) • f(n,k) = (g(n,k)) if g(n,k) = (f(n,k)) and f(n,k) = (g(n,k))

  8. Problems Multiple Access Channel • Detecting collision • some set K of k stations want to transmit; • how to recognize if k >1 ? • Solving collision • some set K of k >1 stations want to transmit; • how to select one of them to transmit successfully (without collision) ?

  9. Problems (cont.) Multiple Access Channel • Performing tasks (Do-All problem) • set of t tasks is given to all stations; • each task takes one step to perform; • tasks may be performed many times (even in the same step or by the same stations) and in any order; • how to complete all the tasks and stop simultaneously ?

  10. Detecting collision - nofailures Multiple Access Channel Protocol ECHO(K) : STEP 1: all stations in K transmit concurrently together with the station with the smallest label STEP 2: all stations in K transmit Output : • 2+ (collision, k >1) : if no message received in step 1 and step 2 • 1 : if k = 1 then either the same message received in step 1 and step 2 ormessage receivedonly in step 2 • 0 : in all other cases

  11. Detecting collision - failures case Multiple Access Channel • For every deterministic protocol detecting collision there is a set of stations K such that this protocol requires time (k log n / log k) to detect collision among stations in K. • There is a randomized protocol DECAY(described later)detecting collision for every set K of stations in timeO(log n) with probability at least 1/2

  12. Solving collision - no failures Multiple Access Channel Procedure BIN-SELECTION(L) : • Mis initialized as a subset of L that contains |L|/2 stations with the smallest label • ifECHO(M) = 0 thenBIN-SELECTION(L\M) • ifECHO(M) = 2+ thenBIN-SELECTION(M) • if ECHO(M) = 1 then stop (successful step) Protocol BIN-SELECTION : • L is initialized as the set of all stations, |L|=n • BIN-SELECTION(L)

  13. Solving collision - failures case Multiple Access Channel Protocol DECAY(v,K): counter is initially 0 Repeat • increase counter by 1 • if v is in K then transmit • set coin to 0 or 1 with equal probability until coin = 0 or counter = 2 log n

  14. Solving collision - failures case (cont.) Multiple Access Channel For every set of stations K, protocol DECAY(v,K) solves collision among stations in K by step 2 log n with probability at least 1/2 For every deterministic protocol solving collision there is a set of stations K such that this protocol requires time (k log n / log k) to solve collision among stations in K.

  15. Do-All problem - no failures Multiple Access Channel Protocol LOAD-BALANCE(v): • Perform tasks in consecutive steps and stop; l is an order of label of v in the set of all stations Complexity of protocol LOAD-BALANCE: • Time:(t/n + 1) • Work:(t + n)

  16. Do-All problem - failures case Multiple Access Channel Preliminaries : • Global means that, in any step, object is the same in all stations (which are not failed) • STATION is a (global) list of stations which are not known to be failed • Station is a (global) pointeron list STATION denoting station which transmits in the current step • TASK is a (global) list of unconfirmed tasks, where task is confirmed if it is performed and sent by some station via channel

  17. Do-All problem - failures case (cont.) Multiple Access Channel Task is a (global) pointer on list TASK denoting first unconfirmed task assigned to perform by Station Shiftis a (global) number that states the positions that pointer Task has to jump on list TASK in order to update this pointer TASK(v) is a local (stored in station v) list of tasks unconfirmed or unperformed by station v Global assignment :jth station on list STATION is assigned to jth task modulo #TASK on list TASK

  18. Shift =36 Task Task Example Station STATION s1 s2 sj s12 s18 TASK t12 tj t1 t2 Task Multiple Access Channel

  19. Do-All problem - failures case (cont.) Multiple Access Channel Protocol TWO-LISTS(v): Repeat • perform first task from list TASK(v) • perform task according to global assignment • if the pointer Station is on v then transmit list TASK(v) • update objects until list TASK(v) is empty

  20. Do-All problem - failures case (cont.) Multiple Access Channel Updating objects : Let w be the station thatStationpoints to; • move pointer Station by one position • if message from station w is received in the current step then TASK becomes TASK(w) else removestation wfrom the list STATION • if #TASK < Shift then Shift becomes Shift/2 • move pointer Task by square root of Shift positions

  21. Do-All problem - failures case (cont.) Multiple Access Channel Strong correctness of protocol TWO-LISTS : • task is confirmed if it has been performed by some station - proof by induction on number of steps • station v stops after every task is performed by v or confirmed Complexity of protocol TWO-LISTS : • Time :(t) • Work :(t + n·min{n,t})

  22. References and open problems Multiple Access Channel References : • B. Chlebus, D. Kowalski, A. LingasThe Do-All problem in broadcast networks in Proc. of 20th ACM Symp. on Principles of Distr. Computing (PODC 2001), 117 - 127 Open problems : • Considering these three problems in stronger models of failures, such as fail stop with restarts • Does randomization help to perform tasks more efficiently?

More Related