fault-tolerant computing in wireless ad hoc networks - people - mit

123
! " #" ! " #" $%% $%% & " " "%’ & " " "%’ $%% $%% " " #"% %% " " #"% %%

Upload: others

Post on 25-Feb-2022

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

������������������� ������������������� ������������

��������������������������������������

�������������������������������������� ����������

� ����!��"�#�"���� ����!��"�#�"���

���$%% ���$%%� �&"�����"���"��%'��� ��� �&"�����"���"��%'��� ��

���$%% ���$%%���"��� "�#�"���%����%�%� �������"��� "�#�"���%����%�%� ����

Page 2: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������

�� ��������#���������������������#�������������()&*++,()&*++,��-������-����

�������������� �������-�-����������������� �������-�-���

��� ���� ��#��������� ����--����� ���� ��#��������� ����--����

��� �� ���������� .��� �� ���������� .

// � �-�����0����������#��0����#������ �-�����0����������#��0����#����� ���$%% ���$%%���"��� "�#�"���%����%�%� �������"��� "�#�"���%����%�%� ����

Page 3: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

.�������.�������

�� ����������������������������������������������������������������������������&�0��0������� �����������&�0��0������� ���// � ��������������#&���������1 �����0� ��������������#&���������1 �����0

// ���&�����������������������0������ ����&�����������������������0������ ���������������������-������������������������-����

��� ����������������-��������������� ����������������-��������������1�����&�����������������1����1�����&�����������������1����// �������������� �������������������� ������

// 2��&����������������������������2��&����������������������������

Page 4: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������������������������������������

��������������3�������0���3�������0���

�� 4�����������������0��&4�����������������0��&

// ��������������-���������������������-�������

Page 5: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������������������������������������������

��.0���-�����.0���-�����

// 5������#���&���-5������#���&���-

// 4�������*�����-������&4�������*�����-������&

// 4�-����#���4�-����#���

����������������������

// �������������-���� ������������ �������������-���� ������������

Page 6: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���5�������������5����������

�� ������3���.�������3���.�

�� 6��������������&6��������������&

��������������������-���������������������������-���������

��.�-�����������.�-�����������

����#����&��#����&

Page 7: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��#������������������#����������������

�����&����������������������0���� ����&����������������������0���� �#��#����

--��--�� ��������������

// 7"�"�����������������������������3�&�����7"�"�����������������������������3�&�����

��������������������������88

EventData

EventData

Page 8: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��#������������������#����������������

�� ���������-�����-��������������������������������������-��-������������������������������������������// 7����&������7����&������

// �������������� ������������������������������

// ��0���0���������0���0�������

// ����������-��� ����������������-��� ��������--������������--����������

// ��������� ���������6�9�6�9�

Page 9: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

4�����������#������4�����������#������

��.0������������-��0����:.0������������-��0����:��������������;�;���������-�������������-�����

// ���������-������������-�����������

// ��� ���0 ��� ���0

// <��-��<��-��

// ����������������

// 4�����������������������4�����������������������

// ������������

Page 10: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������������������������������

��5�������-�������5�������-�������// 5����������5����������

// 4������� ���4������� ���

// 9����������9����������

��=��#�����-�������=��#�����-�������// �������&�� ���*������������&�� ���*�����

// ����������������

// >�����>�����

��������������������������

Page 11: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������������������������������

��5�������-�������5�������-�������

// 4������� ��������0����������4������� ��������0����������

// 5����������5����������

��=��#�����-�������=��#�����-�������

// �������&�� ���*������������&�� ���*�����

// ����������������

// >�����>�����

Page 12: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

5�������-�������5�������-�������

��2#?���0$�������2#?���0$��������������������#����#�����&�����&�

-����������������-������&���������-����������������-������&���������

�����#������#��0����0���

������ 2������

Page 13: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

5�����4������� ��5�����4������� ��

������� ��������� ���� �������������������� ��������� ���� ���������������

�����-�������� ����������������������-�������� �����������������

�������� ���������� ��

// ������������$��0��������������$��0��������������

// 2������2������$�������������������#�������� �$�������������������#�������� �

�������� �������������-��������������� �������������-�������

Page 14: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

71����$�9��������--���5�� ��71����$�9��������--���5�� ��

01+11

ESWN

1000

ESWN

03+10

ESWN

01+11

ESWN

�

7

4

�

Page 15: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

71����$�9��������--���5�� ��71����$�9��������--���5�� ��

01+11

ESWN

1000

ESWN

03+10

ESWN

01+11

ESWN

Page 16: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

71����$�9��������--���5�� ��71����$�9��������--���5�� ��

1000

ESWN01+11

ESWN

03+10

ESWN

01+11

ESWN

Page 17: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������������������������������

��5�������-�������5�������-�������

// 4������� ��������4������� ��������0����������0����������

// 5����������5����������

��=��#�����-�������=��#�����-�������

// �������&�� ���*������������&�� ���*�����

// ����������������

// >�����>�����

Page 18: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

9����������9����������

�� 7����������������7����������������0�����0����� ��������� ���������� �

�������&����������#&��������&����������#&�� &������ &����� ��������

�������$������$��������������0�0:;:;

��2�����$�2�����$����:0����������:0�������;;

��� ��������������������&�����0������� ��������������������&�����0������

��������� ��� �� &������������������� ��� �� &����������

// <������������������������#����<������������������������#����

@@��������������������AA �-��������������-�������������

Page 19: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

9����������9����������

Page 20: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

9����������9����������

Page 21: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

������������������������

��5����������������5����������������

����������������

����������������

��������������������������������������

����--�������������--�����������

����--����������������--��������������

�����&��� ����&��� �

Page 22: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

=� ���=� ��� ��������������

��5�������5���������#����������#����������

// �3��������������������������3�������������������������

�� 6��#�������������������������������6��#�������������������������������

� ���� #��� ���� #��

��� ���� #������������� ������������� ���� #������������� ������������

�����-������ ����������� ����������-������ ����������� �����

��������

Page 23: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

=� ���=� ��� ��������������

4���������������0���������

Page 24: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����5�����������5�������

� B��� �@&����A ���C

Page 25: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

<����<������������<������������<������������

��������� �@&����A ���C

Page 26: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�������������9����������������������9���������

�� 4���4�������� ��������������� ������������(D,(D,

����������������� �0������������������� �� �0������������������� �

� &�������������� ���� ������ &�������������� ���� �����

������������� ���0����������� �������������� ���0����������� ���

� ��������������� �����������������������������#����������#�������

�����������������#��������:�2���#��������:�2������������������;$�;$�

������������0������ ��������������������0������ ��������

����������������������

Page 27: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�������������9����������������������9���������(E�F�G,(E�F�G,

����� ���������&�� ���� ������������ ���������&�� ���� ���������

��5�������%�����������:=<4;5�������%�����������:=<4;

��H�����#�����������������&�H�����#�����������������&�

��2��������������2��������������

Page 28: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

������������2������������2��������������������(E�G�D,(E�G�D,

�

�I �J

�I

�J

�IK� �JK�

.��0��I .��0��J

Page 29: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

������������2������������2��������������������(E�G�D,(E�G�D,

���--�1��������������3����������$�--�1��������������3����������$// �4�$L������:;�4�$L������:;

��5�����&�#��������:5�����&�#��������:���4�4�����4�4��;;

�� ����� ���0��:����� ���0��:����������������;���� �� ���;���� �� ��������:;L�����:;L��K���K�����0�:����0�:����������������;�������;���������#�--#�--

��.��0������������ ����.��0������������ ������#�--����� �#�--����� �������������������������// ��������������� ���������������������� �������

Page 30: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�������������9����������������������9���������

����� &������������0���$��� &������������0���$

// �2�2����������:���������:�;���� ���� �����;���� ���� �����

�� 6�������0&��-����2��������$6�������0&��-����2��������$

// <-���� �����������������#&��<-���� �����������������#&��

// �-��������������-�������������BB � �����#����$� �����#����$

�� �-�:���C;�� ��������-�:���C;�� �������BB ���� ������������9������ ������������9��

������������=�����=�����

Page 31: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������������������������������������������������

��� �9����������������������� �9����������������������

// ����#��������#�����������#��������#�������

// H����������-��H����������-��

// H��������#��-�����H��������#��-�����

��� ������������������������&����������� ������������������������&����������

������������������������������

�����������1�� ����������������������������1�� �������������������

������-�����&C������-�����&C

Page 32: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� ��������� ��������

�� 6����������#��-�������������3�����6����������#��-�������������3�����

�� �����������#�����������������������#������������������������������������

�� ����������� ���������

�� ������������#���������������$�7�� ����������#���������������$�7�� ����������

�� �����$�� �����$I"I" ����������������������������������

J"J" ���0�����������0��������

M"M" <-���������������<-���������������

�� �������#����������������0������������#����������������0�����

Page 33: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������� ��������������� ����������

�� ������������������������� �������������������������

������� ���������� �������<$����� ���������� �������<$// 4�����������4�����������

// ���0�����������0��������

// <-���������������<-���������������

����� ����������������#�������#�����&���� ����������������#�������#�����&����������� ���������� // ���������-����������������������&���������-����������������������&

�� ��BB������������������������������������������������

Page 34: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

5����������5����������

�� ���������������������9�C ���������������������9�C

// � �����������&�-��� ��C� �����������&�-��� ��C

�� 4����4������ ����0������ ����0������

�� ����0�������� ���������������0�������� ��������������������������������� ��#�����#�����

Page 35: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������������������������������

��5�������-�������5�������-�������

// 4������� ��������0����������4������� ��������0����������

// 5����������5����������

��=��#�����-�������=��#�����-�������

// �������&�� ���*������������&�� ���*�����

// ����������������

// >�����>�����

Page 36: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

5�����������: �������;5�����������: �������; (J�M,(J�M,

�� 4������� ������#�&���--���������0����4������� ������#�&���--���������0����

�������$�����$

// .�--���.�--����������������� :0������&;�� �����:0������&;�� �����

������������������� ���������������������� �����������������

��9������&$�9������&$�

// 7�� ������������ ��������-����������7�� ������������ ��������-����������

Page 37: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�����*���� �������� �����*���� ��������

Page 38: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�����*���� �������� �����*���� ��������

?

?

����� ����� ����� ��� ���������������������� �����������������

Page 39: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

6�-�������&6�-�������&88

Agreement is impossible with non-uniform collisions.

Page 40: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

4�������$�4�������$� ���������.������ ���������.������

Page 41: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.������ ���������.������

!!

!

!!

Page 42: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.������ ���������.������

!!

!

!!

������������������������������

Page 43: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.����� ���������.�����

�� <�����$<�����$

// �������� ��������$��-�<���������������$��-�<���������������88

// ������&������&$��-�<�����������������$��-�<�����������������88

�� >������$�������� .�� �� ����#�� �>������$�������� .�� �� ����#�� ���������������

�����������-�����-�� ���� �������0����������� �������0�������

--������&--������&

Page 44: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.�� ���������.��

Always Complete Majority Complete Zero Complete

Collision!

Page 45: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.�� ���������.��

Collision!

Always Complete Majority Complete Zero Complete

����������

Page 46: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.�� ���������.��

Collision!

���������� ����������

Always Complete Majority Complete Zero Complete

Page 47: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.����� ����� ���������.����� �����

���� ��������������++�� �����$ �����$

������

� �� ��� ������� �� ���������?���&� �����$��?���&� �����$

� �� �����

����������:����&�;� �����$�:����&�;� �����$���

70������&�70������&�������$�������$�����

:����&�;�:����&�;�������$�������$���

����� �������� ���������� �����

Page 48: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.����� ����� ���������.����� �����

���� ��������������++�� �����$ �����$

������

� �� ��� ������� �� ���������?���&� �����$��?���&� �����$

� �� �����

����������:����&�;� �����$�:����&�;� �����$���

70������&�70������&�������$�������$�����

:����&�;�:����&�;�������$�������$����-��N ���������������� ���������������"

����� �������� ���������� �����

Page 49: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������.����� ����� ���������.����� �����

���� ��������������++�� �����$ �����$

������

� �� ��� ������� �� ���������?���&� �����$��?���&� �����$

� �� �����

����������:����&�;� �����$�:����&�;� �����$���

70������&�70������&�������$�������$�����

:����&�;�:����&�;�������$�������$����-��N ���������������� ���������������"

�-��������������������� ��������

���������"

����� �������� ���������� �����

Page 50: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� ��������������� ��

��������� � .��������� � .

Page 51: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

(Always) Accurate

� ��������������� ��

��������� � .��������� � .

Page 52: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� ��������������� ��

Eventually Accurate

��������� � .��������� � .

Page 53: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

70������ �������������70������ �������������

�� 70������&���-����&�70������&���-����&�II ����#������������#��������88

Page 54: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

70������ �������������70������ �������������

�� 70������&���-����&�70������&���-����&�II ����#���������������#�����������

� ��������������������� ��������������������

�� 6����6����������������������������������

// 2�������2�������@@����0%�����0����0%�����0AA ����� ��������� ����

// ������������$�������*��������������$�������*��#����--#����--��"�"��"�"

Page 55: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

70������ �������������70������ �������������

�� 70������&���-����&�70������&���-����&�II ����#������������#��������OO������

� ��������������������� ��������������������

�� 6����6����������������������������������

// 2�������2�������@@����0%�����0����0%�����0AA ����� ��������� ����

// ������������$�������*��������������$�������*��#����--#����--��"�"��"�"

OO �-��-��� ## �����#���������� ��������������������#���������� ���������������

// #�#����������������� ���&������������������������� ���&���������

// #�#�������#�����������I������#�����������I

Page 56: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� � .��������� � .

� ��������������� ��

Page 57: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� � .��������� � .

� ��������������� ��

Page 58: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� � .��������� � .

� ��������������� ��

Page 59: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� ���� �

�� 7�������$L���������0���7�������$L���������0���

�������� ��1����������������� ��1������������������$�����$

// ������I������I$�9�������$�9�������

�� ����0������0��������0�������0������0��������0���

�� �-����������������������� ���������$L�� ��-����������������������� ���������$L�� �

��������0���� ����������0���� ��

// ������J������J$�9�������$�9�������

�� ��&#��&�����0����-��������������������������I��&#��&�����0����-��������������������������I

�� �-���#��&�0������ ������������������ ����-���#��&�0������ ������������������ ���

Page 60: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0J

0J

0I

Round 1

Page 61: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0J

0I

0I

Round 1

0J

0I

0I

Round 2

Page 62: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0J

0I

0I

Round 1

0J

0I

0I

Round 2

0��

0��

Continue…

Page 63: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0J0I

Round 1

0I

Page 64: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0J0I

Round 1

0I

P0I������Q(false positive)

Page 65: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

Round 1

0J

0I

0I

Round 2

0J0I

0I

Page 66: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

Round 1

0J

0I

0I

Round 2

0��

0��

Continue…

0J0I

0I

Page 67: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0J0I

Round 1

0I

Page 68: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

0I0I

Round 1

0I

Page 69: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

Round 1

0I

0I

0I

Round 2

0I

0I

0I

Page 70: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

Round 1

0I

0I

0I

Round 2

0I

0I

0I

Decide 0I

Page 71: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �������

Round 1

0I

0I

0I

Round 2

0I

0I

0I

Decide 0I

.����������������M��������-�����#���*�����O

O4��#���*�����$�������&���������������-���

Page 72: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� � .��������� � .

� ��������������� ��

Page 73: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �� �� ���������

�� 7�������$L���������0���7�������$L���������0���

�������� ��1����������������� ��1������������������$�����$// ������I������I$�9�������$�9�������

�� ����0������0��������0�������0������0��������0���

�� �-����������������������� ���������$L�� ��-����������������������� ���������$L�� ���������0���� ����������0���� ��

// ������J������J$�9�������$�9��������� 9����-��������������������������I���9����-��������������������������I���� ���������� ���������������������� �������� ������������������� �������� ������

�� �-���#��&�0������ ������������������ ����-���#��&�0������ ������������������ ���

Page 74: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �� �� ���������

0J

0J

0I P0JQ

Round 1

Page 75: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �� �� ���������

0J

0I

0I P0JQ

Round 1

Page 76: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �� �� ���������

0J

0I

0I

Round 1

0J

0I

0I

Round 2

0��

0��

Continue…

.����������������R��������-�����#���*�����O

O4��#���*�����$�������&���������������-���

Page 77: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� �� ����������� �������$�4���������� �������$�4����������

�4�J��D+J"II

Page 78: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������� � . ����������� � .

� ��������������� ��

Page 79: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� ���������

��NN����������������������������������������������������������������

0I 0J

JJ#���������� �����-��#���������� �����-��

� �-����������� �-����������

S9S������#��0����S9S������#��0����

�����T������T����:S9���:S9S;����������S;����������

S9S%J�#��������S9S%J�#��������

�� ��������-�������� ��������-��������

71���������0�������������71���������0�������������

���� �����#������������ �����#��������

�� �����-����� ���� �����-����� ��

Page 80: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� ���������

��NN����������������������������������������������������������������

0I 0J

JJ#���������� �����-��#���������� �����-��

� �-����������� �-����������

S9S������#��0����S9S������#��0����

�����T������T����:S9���:S9S;����������S;����������

S9S%J�#��������S9S%J�#��������

�� ��������-�������� ��������-��������

71���������0�������������71���������0�������������

���� �����#������������ �����#��������

�� �����-����� ���� �����-����� ��

Page 81: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������� ���������� �����������

�� 70&#��&�#���������������������0���70&#��&�#���������������������0���

// �������$L��������$L�������C���C�����9������9�� $�$����:����:�;;

// �#���$L�+�#���$L�+

�� ���0&�#������-�������$���0&�#������-�������$

// �-�:��L�I����#��;�� ��#��������9���-�:��L�I����#��;�� ��#��������9��

// �-���0������ ���������L+���#���$L�I�-���0������ ���������L+���#���$L�I

���-��#����� ��#��������9���-��#����� ��#��������9��

// �-���� ������0���������������� ����-���� ������0���������������� ���

����

������

�����

Page 82: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������� ���������.����������������� ���������.������

�� ���������� ����������

// 4��$�D+J"II��D+J"IE"R��������������� 4��$�D+J"II��D+J"IE"R���������������

// 4����������� ��������4����������� ��������

�� &�������������&� ���: � ; &�������������&� ���: � ;

�� <��#���������<��#���������

// ������&�����#��������&����������� �������&�����#��������&����������� �

�&�� ���*�����������&�� ���*����������

// �-����������� ���0�������-����������� ���0�������� ������������������

Page 83: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

5����������$� ����������5����������$� ����������

��5�������-��������-��������������������5�������-��������-��������������������

����������

// �����������-���������������-������������

�� �����&�#��������#�����$�����&�#��������#�����$

// ���������������-�����������& ���������������-�����������&

// ���������������-������� ���������������-�������

��� ��������������&�����-�������������� ��������������&�����-�������������������������������� �� ���������

Page 84: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

<����&��������������<����&��������������

Page 85: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

<����&��������������<����&��������������

Page 86: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������������������������������

��5�������-�������5�������-�������

// 4������� ��������0����������4������� ��������0����������

// 5����������5����������

��=��#�����-�������=��#�����-�������

// �������&�� ���*������������&�� ���*�����

// ����������������

// >�����>�����

Page 87: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������������������������������������������

Page 88: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������-���������������-�������������������������������(I,(I,

����������������

��������.����

�������������

������4&�� ���*

��������.����

�������������

����

���0���0����� ���0��������0

������4&�� ���*

�������� ������� ���������������

�����-- ����

�����--

Page 89: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

������4&�� ���*������4&�� ���*

�� 4��������&�� ��������������4��������&�� ��������������

�� ������&�� ����� ���� #��������&�� ����� ���� #��

During each round r, a protocol running on process p is allowed to broadcast one or zero messages to

p’s neighbors. The component returns to the protocola set containing all round r messages sent

by p’s neighbors and successfully received by p.

Page 90: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���71����$�����#�������������71����$�����#����������

Page 91: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����#��������������#����������

Page 92: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����#��������������#����������

Page 93: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����#��������������#����������

Page 94: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����#��������������#����������

Page 95: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����#��������������#����������

Page 96: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����#��������������#����������

Page 97: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�����������������4&�� ���*�����������������4&�� ���*

�� 6��6��@@��������AA ������������������������������������������������������

����&�� ���� ���� #������&�� ���� ���� #��

�� 6�������������������������������&�� 6�������������������������������&��

-��#���������#��-������-��#���������#��-������

�� <�������&�� ���*�������3���<�������&�� ���*�������3���

// ��������-����������-� ��������-����������-�

Page 98: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������������������������������

��5�������-�������5�������-�������

// 4������� ��������0����������4������� ��������0����������

// 5����������5����������

��=��#�����-�������=��#�����-�������

// �������&�� ���*������������&�� ���*�����

// ����������������

// >�����>�����

Page 99: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

>�����4&����>�����4&����

�� 6��0��6��0��66 �-��0���-��0��

�� >������&���>������&���$�$�

// ����������-��������������������-������������������-��������������������-��������

� ������������������ �����������������

����0��������0������$�����0��$�����0���������� ��������

�0����#����&�0����#����&

��������������������������$����������������������$����������������������

���������������������1�����������"���������������������1�����������"

����� 2121 QQ:Q,Q:2 QQ U

Page 100: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

>�����4&����71�����>�����4&����71�����

��� � ����>4$�������-��������������������� � ����>4$�������-��������������������

������?���&��?���&�-��0������-��0�����66

��=���>4$=���>4$

4I 4J 4M 4R

4E 4F 4G 4D

4U 4I+ 4II 4IJ

4IM 4IR 4IE 4IF

>I

>J

Page 101: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

.���.����� �����70���4���� �����70���4����

PDA

-�

Page 102: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������������>�����

�� �����:��������;�����������0���������� �����:��������;�����������0����������

-����3������-����������������-����3������-����������������

// 9���&��-���&��-��������� ��9���&��-���&��-��������� ��

��� ���������������#��#������ ���������������#��#����������-&�����-&

��������������������������

// ��?���&$���������������?���&$�������������

// =��$������-&�� ��3������-���=��$������-&�� ��3������-���

Page 103: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������������>�����

��������

3�����

3�����

3�����

3�����

3�����

4I

4J

4M

4R

4E

:�S3V����S;

Page 104: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������������>�����

��������

T4 I���������W

T4J���������W

T4R���������W

4I

4J

4M

4R

4E

P4I�4J�4RQ

:�����:�;�S��V����S;

:���:�;�S��V����S;

Page 105: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>������������������>���������4������4������

��������

Page 106: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>������������������>���������4������4������

��������

Page 107: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>������������������>���������4������4������

�����������������#�$2:�����:�;�S��V����S;

�����X

Page 108: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

������������� ����1��&��-� ������������� ����1��&��-�

>4>4��Y#���Y#���������������������������������3����������3����������

// .���������������� ������������.���������������� ������������

<<��

������

����������

����� ������������ �������

����������

=�����=�����

:� � ���;:� � ���;

<<������������

:� � ���;:� � ���;

))log(( NN

))(log(N

))log(( 2 NNO

))log(( NNO

))log(( NN

))log(( NN

))(log(N

=�����$

������$

))(log(|resp_data||req_data| nO��

Page 109: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

5����������� �>�����������5����������� �>�����������(R,(R,

�����$�6����#�#�����������������������$�6����#�#��������������������

�� �0��� �0����&������&�������������������������������

�����1��&�����1��&

��6���������:-�������;�-���#������6���������:-�������;�-���#������

Page 110: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

4�������4��������������>����������������>�����������(R,(R,

����������$��������$

:I;�)$L:I;�)$L:��:�����:����:�;;;;����*���������-��������*���������-������

� ����6"�"�"�� ����6"�"�"�

:J;�=������T:J;�=������T)�3V����)�3V����WW

�� 70&#��&�-������T70&#��&�-������T)�3V����)�3V����WW

�� �����$������$�

// �-������)���������#����T�-������)���������#����T)���V����)���V����WW

�� 70&#��&�-������T70&#��&�-������T)���V����)���V����WW

Page 111: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������� �4����������������>��������� �4�������

��������

Page 112: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������� �4����������������>��������� �4�������

��������

Page 113: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������� �4����������������>��������� �4�������

��������

Page 114: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������>��������� �4����������������>��������� �4�������

��������

2:���J:�;;�#���������

Page 115: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� &�� �������C� &�� �������C

��5���5���$��-�)�������������-���*�$��-�)�������������-���*�:��:��

���:����:�;;�;;�� ���� ���6"�"�6"�"���� ��Z��-��������� ��Z��-������

� �����0�� �3�������� ��������� �����0�� �3�������� ��������

#�� �)������ ����������������#�� �)������ �����������������" "��" "�""

�� <��-$���������-�����<��-$���������-����� ��-- ��--#����#����

// 4�� �����-��������4�� �����-��������

Page 116: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

6������0�"�>���6������0�"�>���

�� 6����6����$�7����� ������� ����������� �$�7����� ������� ����������� ������� ��� ����&������������ ��� ����&����������*����������*��������������������// � �������������#��� ���-�� �������������#��� ���-�

�� >�&>�&$�7����� ���� �������$�7����� ���� �������@@ ��� ���AA ������������������������������// 6�������������-���*�6�������������-���*�:��:�����:����:�;;;; �������������������������������������" "��" "�""

// <��-$�<��-$� ��-- ��--#���������������#����#���������������#����

Page 117: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

��������������������������������������

����������-����������-������������� �����������-����������-������������� ���

������������������

������-&�� ������������������� ������&�������-&�� ������������������� ������&���

-���������-���������)����3�������-���������-���������)����3�������

����������

// ���� ����$��T+"JE��L+"F���� ����$��T+"JE��L+"F

// ������#�������&����������&���������+"E������#�������&����������&���������+"E

Page 118: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� ����������<������� ����������<������

L�����:�;

�L:I��;%E

L�����:�;

�L:I��;%E

Page 119: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

>�����4&�����4����&>�����4&�����4����&

��5����������������������1��&����5����������������������1��&����

���������-���0����������� ����������-���0����������� ���������

���������� ���������������� ������������� ���������������� ���

������������

�� <�#�#�����������������<�#�#�������������������#����>4�#����>4�

// ���&������&����������������������1��&�������������������1��&

// �0����#��������������0����#���������������E+Z��-�����������0�E+Z��-�����������0�

����������������������

Page 120: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

���������� ����������

�� ��������-��-������������-��-��������������������������������������������������������������� �������������������������� ���������

�� 5��5�����0������������0�����������// ��������������� ���������������

// �������������� ��������������

// �������&�� ���*�������&�� ���*

// ����#��#�����������#��#�������

// >�����>�����

�� ��� ��� ���0������������0�����������// 9����������������������� ���9����������������������� ���

// 5����������5����������

Page 121: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

����������������

������������-���������������-�����

�� ����������������������-�����������������������������-�������

��������������������������������������������������������

�����--�����%�����������������������--�����%��������������������

������������������������������������������������������

��������������������������

Page 122: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

�-����-���(I,�="�(I,�="� ���� �������"����"�.��#��.��#����4"�=��#������� "������"���4"�=��#������� "������"����� ������� ��!������������"�������� ������� ��!������������"�����##���������������������� �$����������%��##���������������������� �$����������%�<��������-�� �RM��<��������-�� �RM�������������� ��-������ ��-������ �������������� ����������� �������� �������������� ����������� ����������4���#��J++E��4���#��J++E

(J,="�(J,="� ���� �������"����"�.��#��.��#����4"�=��#��� "�������������"�����"���4"�=��#��� "�������������"�����"������������� ����������������������� �����������&��������������������� �$����������&��������������������� �$����������"�"�JR� ��������4&������������ �<���������-�JR� ��������4&������������ �<���������-�.����#���� ���������:<2. ;.����#���� ���������:<2. ;��[��&��J++E���[��&��J++E�

(M,�="�(M,�="� ���� �������"����"�.��#��.��#����4"�=��#����"�5&�� �� "�������������"�����"���4"�=��#����"�5&�� �� "�������������"�����"���������������������������'������� �(���������'������� �(���������)������"��)������"�� ���������*��� ���%����������*��� ���%����������������� ���������������������� �����������������.����#����4&����������������:�.4�;�����������.����#����4&����������������:�.4�;��[����J++E��[����J++E

(R,�="�(R,�="� ���� ������4"�=��#��������"���4"�=��#��������"�<���<�����4 ���4 ���"�"���!!����������!!��������++,��������(��"�"�������-����!�,��������(��"�"�������-����!�.����!�%�.����!�%�<���������-�� ����������������� ���������������������������� ���-�����������������:����;����� ��J++F"

(E,�4"�(E,�4"�.��0.��0��4"�=��#���5"���4"�=��#���5"�5� ����5� �������"�5&�� �������"�����"����"�5&�� �������"�����"�'�!� �/�������.��������������!��������'�!� �/�������.��������������!����������"������������%���"������������%�U� ������������� ��-������<���������-�.����#����4&���U� ������������� ��-������<���������-�.����#����4&�����:2<2.�4;��:2<2.�4;����.��#��J++E.��#��J++E

(F,�4"�(F,�4"�.��0.��0��4"�=��#����"�5&�� ���"���4"�=��#����"�5&�� ���"�4 0������4 0������������["���� "�������["���� "����-����!����-����!�0�1!#��!�������0�1!#��!����������!����!���������"����� �$����������%����!����!���������"����� �$����������%�.����#���� ��������.����#���� ����������IJE��IJE//IEE����0�#��IEE����0�#��J++EJ++E

(G,�4"�(G,�4"�.��0.��0��4"�=��#����"�5&�� ��7"�4� ������"���4"�=��#����"�5&�� ��7"�4� ������"�4 0������4 0������������["���� "�������["���� "�/���������"������ ���/���������"������ ���������"����������"����� �� � ��������%���������%�<��������-�� �ID� ������������� ��-������.����#����<��������-�� �ID� ������������� ��-������.����#���� ���������:.�4 ; ���������:.�4 ;��2���#��J++R"��2���#��J++R"

(D,�(D,�5"�5�����"�'�!�2�����2��� ������ ��������������������� �����"��� ������!"� ���������������-�� �� �$�JI:G;��IUGD

6�5�$�6�5�$�

9����������$�9����������$� ���$%%� �&"���"���"��%'�� �%#�#��� ���$%%� �&"���"���"��%'�� �%#�#�������?���" ���Y0���?���" ���Y0�

��������������������������$���������������$� ���$%%� �&"���"���"��%'�� �%#�#��� ���$%%� �&"���"���"��%'�� �%#�#�������?���" ���Y����������?���" ���Y��������

Page 123: Fault-Tolerant Computing in Wireless Ad Hoc Networks - People - MIT

� ����\���X� ����\���X