You are on page 1of 101

Broadcast

Assumptions A spanning tree of the network is given A root processor has a message M it wishes to send to all other processors Each processor has a distinguished channel that leads to its parent and set of channels that leads to its children
3

synchronous

n nodes

d levels

Time complexity: O (d ) Message complexity: O (n)

asynchronous

10

11

12

13

14

n nodes

d levels

Time complexity: O (d ) Message complexity: O (n)

15

Convergecast

16

Convergecast The broadcast problem requires one-way communication from the root to all the nodes of the tree Convergecast is the complementary problem: collecting information from the nodes to the tree A specific variant of the problem: Each processor pi starts with a value xi and we wish to forward the maximum values to the root
17

synchronous

18

19

20

21

n nodes

d levels

Time complexity: O (d ) Message complexity: O (n)

22

asynchronous

23

24

25

26

27

n nodes

d levels

Time complexity: O (d ) Message complexity: O (n)

28

Flooding and Building a Spanning Tree

29

synchronous

30

31

32

33

34

35

36

37

38

reject

39

40

41

Alternative solution

42

43

reject

44

45

46

n nodes m edges

D diameter

Time complexity: O (D ) Message complexity: O (m)

47

asynchronous

48

49

50

51

52

53

54

55

56

57

58

reject

59

60

61

reject

62

63

n nodes m edges

D diameter

Time complexity: O (D ) Message complexity: O (m)

64

Building a DFS (Depth-First Search) Spanning Tree

65

2 2 1 3 4 1 4

1 3 2 1 3 1

2 3

1 2

3 1

66

2 2 1 3 4 1 1 4

1 3 2 1 3 1

2 3

1 2

3 1

67

2 2 1 3 4 1 1 4

1 3 2 1 3 1

2 3

1 2

3 1

68

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

69

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

70

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

71

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

72

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

reject

1 2

3 1

73

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

74

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

75

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

76

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

77

2 2 1 3 4 2 1 4

1 3 2 1 3 1

reject

1 3

1 2

3 1

78

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

79

2 2 1 3 4 2 1 4

1 3

reject

2 1 3 1

1 3

1 2

3 1

80

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

81

2 2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

82

n nodes m edges
2 1 3 4 2 1 4

1 3 2 1 3 1

1 3

1 2

3 1

Time complexity: O (m) Message complexity: O (m)

83

Building a DFS Spanning Tree with no specified root

84

DFS Without a Specified Root The nodes have unique identifiers Each node which wakes up spontaneously, attempts to build a DFS tree with itself as the root If 2 DFS trees try to connect to the same node, the node will join the DFS tree whose root has the higher identifier

85

2 2 1 3 4 1 1 4

1 3 2 1 3 1

2 3

1 2

3 1

86

2 2 1 3 4 2 1 4 3

1 3 2

1
1

3 1

3 2 1

87

2 2 1 3 4 2 1 4

1 3 2

1
1

1 3

3 2 1

88

2 2 1 3 4 2 1 4

1 3 2

1
1

1 3

3 2 1

89

2 2 1 3 4 2 1 4

1 3 2

1
1

1 3

3 2 1

90

2 2 1 3 4 2 1 4

1 3 2

1
1

1 3

3 2 1

91

2 2 1 3 4 2 1 4

1 3 2

1
1

1 3

reject
1

3 2 1

92

2 2 1 3 4 2 1 4

1 3 2

1
1

1 3

3 2 1

93

2 2 1 3 4 2 1 4

1 3 2

8
1

1 3

3 2 1

94

2 2 1

1 3

8
4

8
1

2 1 4

1 3

3 2 1

95

2 2 1

1 3

8
4

8
1

2 1

8
4

1 3

3 2 1

96

2 2 1

1 3

8
4

8
1

2 1

8
4

1 3

3 2 1

97

2 2 1

1 3

8
4

8
1

2 1

8
4

1 3

3 2 1

98

2 2 1

1 3

8
4

8
1

2 1

8
4

1 3

3 2 1

99

2 2 1

1 3

8
4

8
1

2 1

8
4

1 3

3 2 1

root

100

n nodes m edges
2 1

1 3

8
4

8
1

2 1

8
4

1 3

3 2 1

root

Time complexity: O (m) Message complexity: O ( n m)

101

You might also like