˘ ˇˆ - cl.cam.ac.uk · 24 2 I ˘ # SENT to server (after logging in to server) 2A 00 CB 00...

Post on 28-Oct-2019

8 views 0 download

transcript

1

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

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

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

$������������ ����������� �!���%���&$�����������&' ��� � ���&������(������#����)�#���(��* �� "������

+,)������--

2

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

r $��������

r /�������

r �������#��(���������

3

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

4

���� ��������� ����� 0�������(������������ �����

5

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

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

r ������&�1 �������&�0������2�#����(�����

r ���(������ ��

r ����������������3�-�-&����������� ����4

6

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

r 5 2 6 (��������(����� ����(�������(�������7

r 5 2 6 (������ �������8�������������� ���7

r 5 2 .����9���:���� ����������(������������ �����;7m :� (��������(������� ��������(�����;�36 ��������(��������4

7

"������������"�����

r .���������m "����� ��������-����

m 0�����(�����80������

m ������

m 1 �������

r <�����������5 �����=�����

m =<�

m 0������

m �� ���

r ' ���� �����> �(�� � ��

m "(��

m "� �

m � ������

r /������ ���m !?� �

m @�/

m <������

r � ���������m ������

m "�#��������

8

"��������������-������������3)4

r =�"8=/.

r ����(���

r � ��������

r @��(����������������������������� ������������3�� ��.' �8?' = ������������4

r %�� ����������������A ����������&������

r /����

r � ���(���

r ���������

r @��(������������������&����������������&������������������������-

r � �������&�(��(������� �����&����������-

r > ���������������(��

9

"��������������-������������3�4������������=�"Cli_call(args)

Srv_main_loop()

{

while(true) {

deque(call)

switch(call.procid)

case 0:

call.ret=proc1(call.args)

case 1: call.ret=proc2(call.args)

… … …

default:

call.ret = exception

}

}

10

"��������������-������������3�4���Peer_main_loop()

{

while(true) {

await(event)

switch(event.type) {

case timer_expire: do some p2p work()

randomize timers

break;

case inbound message: handle it

respond

break;

default: do some book keeping

break;

}

}

11

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

r .�����������������������-

r =�����������������&����������������

r =�������������(������������������

r =�����������������(�����������(��(��

r =���������#������������&���(�������

r =���������������

12

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

r > ��������������(������r ���������������#� �����������#������-r > � ����&��(��������(������������� �����������(��#�m ����������������3����&������&�����&�������&����4

m ����( ����������������m � �����������������������3 ������ �����������&��������&����4

m =��������&�(��������������������#������m @����������

13

� ��(������ ����������������

r 6 ���������(������ ���(��������������������������������������

r ������������� �����r ����������#����������

r > �����������������#���:�(������;B

r ����#��������A � ������

14

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

r �������(�������#�������������������������� (��(�##�����������(�������� ��##���������(��.�������

r * �#�������� �� �������

r <#������������������ ����������(��� ������������������

r .��.���#�� ������������3�������(���������#����������4

r @�������������(BBB

15

=���#�����������������)C�����������#�������������

r ������D> D> D> D> D> D�������(�������

r ������

r 1 �������

r 0������

r �� ���

r ���

16

)-��� ��� @=

r � (�����3��4#���

r ����(��#����3�-#-��� � ���@�������&�#���=�� ���������"�� �����4

r $��������������#��� (�������������(�&����

r � ��� ���E

r � ��(������������������E��������������������E�����������

17

������

r �������#��(������#���������(��.�������r ��:���������;�����������8���(����7r (����2

m �8,,2 �(�� ��0�������3#��(���& ���(����� * -4�#��������� <�����������������

m )�8,,2 #������� ���m �8��2 ��F * 6 �� ���##�� ������m ����2 ��-�G�/����m �8�)2�* ��"�������"����#�

� �����2 ������ ���� ��������������������(�����

m +8�)2 H ��������������������2������ )G�%& 1 �������2�C�%& /��(��2����%

18

������2�(� �������� ��

� ��������� �����&������� �������������������� � ������ "��

0������2

r "������� ������ �����

r * �������������#�#����3��(4��������-

r 1 �������������� ���������(��(��#��������� ��(-

r �������: ��;�#����������� ��-�3����4

19

������

������-��

���

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

)-

20

������

������-��

���

=�I������

�����

* �������I��������(���������-

�-

21

������

������-��

���

���� ����

* ��������(���(��������������(��������-

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

�-

22

������

������-��

���

=�������#���

* ������������#���

C-

23

������ �����General Packet Format

[chunksize] [chunkinfo] [data...]

CHUNKSIZE:Intel-endian 16-bit integersize of [data...] in bytes

CHUNKINFO: (hex)Intel-endian 16-bit integer.

00 - login rejected02 - login requested03 - login accepted0D - challenge? (nuprin1715)2D - added to hotlist2E - browse error (user isn't online!)2F - user offline

5B - whois query5C - whois result5D - whois: user is offline!69 - list all channels6A - channel info90 - join channel91 - leave channel…..

24

������2���I���������#���SENT to server (after logging in to server)

2A 00 CB 00 username"C:\MP3\REM - Everybody Hurts.mp3"

RECEIVED5D 00 CC 00 username

2965119704 (IP-address backward-form = A.B.C.D)6699 (port)"C:\MP3\REM - Everybody Hurts.mp3" (song)(32-byte checksum)(line speed)

[connect to A.B.C.D:6699]RECEIVED from client

31 00 00 00 00 00SENT to client

GETRECEIVED from client

00 00 00 00 00 00

SENT to clientMyusername"C:\MP3\REM - Everybody Hurts.mp3"0 (port to connect to)

RECEIVED from client(size in bytes)

SENT to server00 00 DD 00 (give go-ahead thru server)

RECEIVED from client[DATA]

From: http://david.weekly.org/code/napster.php3

25

������2����(������������

r ��������J��������2�m ������������������#�#������

m �������� �����������������������' ���������

m ���������#���������

m ������ :��������;�3#�����������������4

r ���������2�m ��� ��������������K�

m �����(����������

m ����������

26

��1 �������

r �������#�K��

r <���������

r ' ���� ����

r �������������������E

27

1 �������

r ���� � ��������� �����2�������������������������������������

r #��2�����������J������(��#�����(����#��#���r ���(��������������������������2

m ������������#���m �����I������3#��������(�4�#����������������( �����

����m ��������I������3�����#���4��#�#���������������

r 1 ��������(����2m �8)C8��2�������� ��� <�&������������������� ��(���� �m ������2���%�������1 ������� ���L�����(��� /m ����������������#�K������������������3���������

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

28

1 �������2�(� ����� ��

�����(���� ��#�����2r .#������M��(�����(��#�������� ���&�I�����+�#�

�����������-r .#��(�����M��(������&��(����������+�#��(����

�������&�#������K�����(�������#�)�-r =�I��������#����&� ����(�������������

��������-r �������� �������������� ������������� ���-r =���������(�#�� ������374

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

(���288� � � -����� ���-��8����K-9�8���

29

0���������1 �������2�������������

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

30

1 ��������������#����

r /�����.' 2 )G� �����3��� ���4

r 0������.' 2�)� ���������������m �������2 �������� ��������������� ���#��(�

m �)����2 ������������������&��������H �#����(����

m L��I����2 ����(������&�������������������� ���� ���(

m L)2�I�����(��2 ���������������(����L�2I����&����.�������8���&������� �� ���� ���(

r =��������� � �2 ������������������(����������������� � � �����#�����

r > �� ����2���� ���#��������������#��� ���(�������

r ' ��������(2 �����(�#������#����

31

1 �������2����������� ��������#�K�

r 0���������2�6 6 6 �����##����������(8����������#���1 ������������ ���� ��(������������#����(��������I�����������-

m $����#��� ��������� �� �� ������ #��� (����������

r ������������������������� ����2�m ������ ������������������m ������������������������������� ���#���3�������

�� ������B4����������� �������������m #�K2����������������:.�(������&� ���.���� ��-�� ���������

�����;�m ���������2 ����)�F �#��� �����������m ���)2������(�����F ��� ���������#���3���(�������

��#������74

www.limewire.com/index.jsp/net_improvements

32

1 �������2����������� ��������#�K��3���4

r ����2 ��� �J��#�����(� ������� ����� C�� L���(�-�6 (��������7

m ��������2 �������(� ���� ���(��������������(������������ ������2�������� �����(��

r 0�K2 ������������(������(�� ���������� ������m ��������2�������������������&�������� ����(��

m ������������#��������2N #�������������� ��� �������������

N #��������������������(����(��������������������� ���#�#���2���������#���������

m ����� ��������� ���#��������������� ��������������������� �(��#�#��(��������3#������(���������4

www.limewire.com/index.jsp/net_improvements

33

� �����7

r �����������(�����M����� ��-

r � (�����������������������(��#����#������ �� (�������-�� (��M����������-

r <�(����������K���� (�����(��� ����#��(��#�������M����� ��(����I�����-

r ���� � ���������������K��-

r ����@�����������&���K�&�0������B

34

1 ��������' �����2

r � ��(���������������������7

r ' �1 �������M���������#�������7�' ������ ��� �������(������I����������������(�7�<������������ ��(�������7

r ��������������������7

r <�(��7

r 1 �������#�����(��������#8����I�����2(���288� � � -����� ���-��8����K-9�8���(O�����

35

����������A 35 ����4�=�����

r > � ������ �������I������3������(���&�������&�����4� �����7E

r E6 (���������������(���������������3�������4

36

�-�<������

r ��K�&�� ��������������������������������&������������������&���

r =�����E

r =<����������K�����E

37

=��������<����������� ��

<����������� ��2�

r ����������&���������������������

r �������:������;������3�-�-&�� "����* ' ����������4������ �� ��� �������(��(��

r ���(������������2�����������(����������&����������#����� ���������.��������������

r ���M�����������K�����&�������#��2r ' -�� �����&�> - $������(���&�0 - %��(��&�= -�/���&�P� (������#�

������� ����������� ��&P����- > �<� Q...&�/������)&�(���288��-��-���-���8�����8�� (����)-(���-

38

.��������=�����r $1 ����#��������� ��� ������ ����� ��

* "�� �(-���

$�������-���* /�-���

.���������

/������

"R 6

39

.��������=�����r $1 ����#��������� ��� ������ ����� ��

* "�� �(-���

$�������-���* /�-���

.���������

/������

"R 6

�( � * /�

40

.��������=�����r $1 ����#��������� ��� ������ ����� ��

* "�� �(-���

$�������-���* /�-���

.���������

/������

"R 6

�( � $�������

41

.��������=�����

"���������#������2 �(� $������$1 � ������������������������(�����3��� �����(������ ��4* "�� �(-���

$�������-���* /�-���

.���������

/������

"R 6

�( � $�������

42

.��������=�����

"���������#������2 �(� $������$1 � ������������������������(�����3��� �����(������ ��4* "�� �(-���

$�������-���* /�-���

.���������

/������

"R 6

�( � $�������

�( ��* /����$�������

r ����������� ����������� �������$1 �B�

r /����<�� ���M���������$������������.��������

43

=<�2�=��������<����������� ��

������2 �� ������������������������������ ��&����������������#������&������ ������#�������

� � (��3���������� �����4�( � $������������

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

44

=<��@K��������

r /�������&��������&������(���(����� ��(������ ��(���=<�

r )��(������(��* ������@����r ������#������������#��������������������/���(����)

r �� ���������������������m � ����������������������������B

r ���2�@K�������������� ��(�:� .�������� #� ��������� ��;������

45

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

��)�)��F

��)CL�F

������F

������F

)�C)�+��F

C+�+C+,)�F

=<��6 ��

��"(����

=<��$�����

��=���

30-minute average loss rates

6,825 “path hours” represented here12 “path hours” of essentially complete outage76 “path hours” of TCP outage

RON routed around all of these!One indirection hop provides almost all the benefit!

6,825 “path hours” represented here12 “path hours” of essentially complete outage76 “path hours” of TCP outage

RON routed around all of these!One indirection hop provides almost all the benefit!

46

=<��=�����(�.��

N > � �������������������� ��7N /����������������# ��#��������

N * ���������������#�������#���������������-

N 0���#��� ���-

N ��(���������������-

N ���������� ��������3�-�-&�������������(���(���4����(��������-

N @##����#�=<������������������� ��N .#������������=<�&������ �� ������##7

47

C-�0������2 ������6 ���

48

r "�������J�������m �-�-�������

m �� �������K�(���� �������������(����

m �������������� ��� ������I����������������

r ' ���������J�������m �-�-�0������&�1 �������&�"(��

m ���� �������K�A �������� ���������

3����K��������� ��4

m ���������������� ���(����#��������������

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

49

0�������(����

r 0�����S������9����.���"����� &�@��� ���(�* ��������&��������&�!���&�),,,

r �����#��� ��9���&����������

r Q-�-)�3��������/���(�����4�

r �����������3����&����)42��-C

50

6 (�����0�����������6 (�7

r ' ���� ����&������������&�#����(����������

r "���������������&�#�������������������#���#������

r =������������������ ���(���������������������������#������

51

0������2�> � ����� ��

r ' ������������

r %���/���������

r �� ���m > � ��������������� �� ����(��

m > � �����������������#������������

m > � ���������� �������0������

m > � ����#����������������������

r ������' �����m > ��������#������

52

' ������������

r =������� � ��m ����2����������2���&����T����������������������

r ' ��������m =�I��������2

N ��������#�����(������������������������������

N ��������#�����(������������������������

N ������������(������������#���������������� �� (��(������������������� (����������������

53

%���/���������3)4

r � �� ������������������������� (���r %�������������#�����* =.r � � ��������������M��������(��� 9����#��(��#��������������B

r %��� �� ������%��3%�%4m $��������(�������������������&�������������#����� ����(������������ ���(���������

m @K�����2�* ��������8���8�8(J(���m * ��I�����������#�����������m ����������� ����A �� �����������

54

%���/����������3�4

r ������ � �����%��3��%4m � �����������#�������������������������#����

m �����������������8��� ��������������#�

r "����� (�(�%��3"> %4m /�����������������(�&�$����������(�(�#��(���������

Darling, Tell me

the truth!

Believe me, I don’t have it.

0������2�=������� �����(�2�����(��������

But I know Joe may have it

since I borrowed

similar stuff him last time.

0������2�=������� �����(�2�����(��������

��

��

��

��

��

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

Sorry, No

0������2�=������� �����(�2�����(��������

��

�� ��

��

��

58

�������(�#��������������(�3)4

r =����������#�' ����"���������3)4

3���2����� 9��� ���������� ������� ���������B4

r =���� ���=���������2������������������� �����-

59

�������(�#��������������(�3�4

r ��� �@���������(��=������� � ��2��(������(�� ���� ����������������������-� ������������

60

������' �����

r > ��������#������m

61

�������������������(�������������r > � �����������������2

m ��������������������� ����(����I���������������� ���(�����������(������������#�����I���

m > � � ���������������#�JJ�

m � (�����M����� ����������� ������������������������������

m ���������&���M����� ������������� (��(����������������������������-

62

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

r ? �K�2�����

r S �K�2�H �#����(�����(

r )�������&����������������&��������������������� ��

r �(����������� ���� ������������J��������� �������������

r ���(�����(2��(����� ���#�(����������������� �#���#��������(������-

63

����� �����

r ? �K�2�H �#����

r S �K�2�H �#����(�����(

r � (���������� ��� �������� ����J�����������������(����(-

r .��������&�������-�� ����������������-

64

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

r ? �K�2�H �#�����#������

r S �K�2�H �#����(�����(

r � (������������(�����(�������� ��� ���������� (����������F �����#���-

65

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

r ? �K�2�H �#�����#������

r S �K�2�H �#����(�����(

r /��#�����(��������#�� ����������� (�������������� ���#���� �(�������������#���������-

r � (�����(�����������#��� ��� ������ -�

66

��#��&���M�����������������

r %������������

r ' ���� ���������T������������ ��

r "�������#��

r � �������

67

.�������#���7

r > � ������ ������������������(��������7m � �����##� ��� ���������������������(�����##��2�

"(�����0������

m "���� ����������� ������������(�7�� �������2�:�����(������ �� ��� ����� ��;

r > ������������ ����#�����(�#��������������(�����������9�������M��#������-

r 0������#�����-�0������ ���M�������������������������� ���������� �����K�������� BB

68

5 �����77

r � �������7���������7

r $����������(�������(�7��� ������ 7

r E

69

�- �� ���2�� �� ��&������� �������&�����(�� ��������� � ��� ��(���������A ������@�������E

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

70

<������

r ' �����1 ��

r %����#�� �������

r �� ����0������

r �� ������������������� (����

r 5 �����

71

' �����1 ��

r "���(����������m ' �##������#�����(���������������#�����������������

r � �������������m * ����(��J����(�����(���� ��������� ��

r ������������m ��� ����������� (��� ��(����(��������

r * ������ ��m "(�����������������#��������(���� ���� ���#���� ��(��

72

' �����1 ��

r ' ���� ��m .��������(�����������(���� ��� ������������� ������#�� (������� ��(��

r 0������ ������m �������������#��������&�������#�����(���������������#���������������

r ��������m ���K����������������� ��(�����������

73

6 � �� �������

r "��������$���m > �����(�����������#��(���������������I���������������@K�����2N � �����J������K��&���(���� (��� �����J�������K�����

N ��K��������J����<����=�����&���(���0�����

N "�� �&�� (������������(��"�� ���� � ���������������������������#���(�����������(��"�� �

74

6 � �� �������

r � ��(��$���m > �����(��������������(��#����������������������@K�����2N =�� � ��&�� (��(���K�����I����#������������* =�

N � (��@���������������&�� (��(�#����#�������������������������������� ���#������&������������������#�������K������

N 0������

m �� ������������(�����#���������

75

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

r �� ��(��m ����� ��� ����������(��� �

r ������m � ����������� (��(�(������� ������������

r =��������m $�� ���� ��� ���������� �

76

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

r �� ��(m � ��� ��(�������������������������������������������������#�(��

r =�������m � ����������������������#�����������������

r ' �����m � (������������ ��(���#��������������������#����(���� ���������

r * �����m � (������������ ��(������#������������

77

�� ������ ��(���

r � �����������������������������������%r �(����������������/ � ��(�����%&����������U/V%

r �(�������% ����� (���&�������(�����������(�����&���(��(�������� �������������%

r @��(�(���������I����������2

����� W�� ���3> 3/�- (����44

78

�� ��� �� ��(���

r � ����#�����������(��2������� W�3����� /<' ��4�X�)

r @��(�������� ����K�������(������#�������

r .#���YW�� ���I���������������� ������&���������

r � ������� ��(��U/V% ����(���� �������������������� ���(������������������

r � �* =���������������������(������������������������

79

�� ������ ��(���

...name = de26fe4fc8c6

name = 620a8a3d63b

name = 1e0995d66981

2

n

...

135.207.8.15

121.113.8.5

1

2

m 206.35.113.9

105.3.14.1

...

...

...

3

4

7

12

201.18.24.5

210.183.28.4

209.185.143.19

location = 7

location = 12

loction = 41

2

n

Publisher

Servers

/publius/1e0995d6698/{M}K

Server 3

Server 8

/publius/de26fe4fc8c6/{M}K/publius/620a8a3d63b/{M}K

Server 4

Server 12Server 7

201.18.24.5

209.185.143.19210.183.28.4

Server TableAvailable

80

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

r $ ������������(������ #���* =�&�����#�����(&�������2

������� W�3����� /<' ��4�X�)r $ ��(��� #��(��&���������������(��

����������#����U/V% ����(���� ������(������

r $ ��� �����(��(����������%&��������������(��#���

r $ �����#����(������(��������������������2

����� W�� ���3> 3/�- (����44

81

�� ����' �����

r � ������������������� ����6 � (����� ��(������#���

r � �������������> 3�����O�����O�����- �6 4������������������ � (����� ��(���m �����(������(�������(������ ��(�(&����������������������������������#������������������������������

r � ������������ ���������> 3�����O�����O�����- �6 4���������� �����(�#��(��� ������(�����������

82

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

r .���2��(������������� ��(����(���������������* =�&�����������(���* =�������K��

r .�������������(��#���&��(��(���&������(����� ��&��(�������� ������������#��������(������� ��������

r � (���������#����� ��������K����#�� �����(��������������(��������

83

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

r � �������&�� ���������#�������� �#���&��(����������* =�&��(������������� ����6 &���������� ���� ��

r 0���&��(����� ������������ ��(��&���������� �* =�������������

r � (��&����(�#��(��� ���#�������������&���������������#���&������������(����� �* =�&����������������(������ ���������

84

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

r 6 (���$ ������������������������&��(����������������(���������#����������

r $ ��(�����(�������#��(��* =���������������&��(�������������(�������������(����� �* =�

85

��������' ������

r ����������2�#����� ��������#����$m ������2��� ��(�$ �#���&��(������ �����* =������

r > �����2�#����"�����' �����������(��(��m "��������������������� ��

m � ������� ��(��"�����' ������������

m �(���(������ ������(��* =��������(�#���&���������(���� ����* ������������������(����� �#���

86

<�(���0������

r @�������������������� ���� ��(��� ���K���������(��������� ������#��� ���

r /��(������K�����������/./@������������ ����������

r �� ����* =���������������#����������(���#���&��(��������#��&������(�����������������m <����� �� ������������* =��#������(�Y�����(�������

m <�����(��������������������&�* =�����������������������&���������(�������� �����

87

��������������� (����

r �(����������������������m .#������ �����#���#���&���� �X)������#��(��(���&������������&��(����(��#������������� ��

m .����������&��������������&�������(���������(�����

88

��������������� (����

r * ������#�����������������������)m .#��(���������������#���&����������������������/��������������������&����������� ���������

m � (����I������(����������#���������� �(���������������&���������������(��(���������#��

m � (���� ��� * =��(���������#����&�������(������O������ #���&�� (��(�� �������������(�����#�������

89

��������������� (����

r * ������#������������������������m .#��� �����������(���������� �����������&�/������������������������#������� �X)������

m <#�����&��#�/�������������(�&�(����������������������

m �������� ������������ ������(��������##�����

r ' ���������������������#��� ����� ����##�����m ����������#���6 ������������-

90

��������������� (����

r �� ���&�������������������������&���� 9������' ��������m 0������������##������&���� �X)����������� ����������

m � ����������������������������#��������������������N �������(�������������������������(�

91

��������������� (����

r .#��(���� ��� ������������������������#�������#������&����������� ���� ����

r �� ������������������������������ ������������m .#�������������� ��(��&��������������J���������������� ��(��(���� ���������

92

5 �����

r > � �������� ��(��� ����* =����������7m 0��������������� ����������&� ����� ����* =������������������(�������������

m � (��#������������� ��(����� ����* =������(����������������� ��(��(���� ��(���#��(��������

m .#����(������� (������������������������� ��(��(���� ����* =�&�� (�������������� ���7N <����� ������ ��2�����(�����������N $���������������������(����������������� ��

93

5 �����

r > � ������ ������� ���7m �� ����* =�������� ���

m 6 ��(����������##��&����� ���������������������������������(��������� ����������

94

5 �����

r > � ������ �������������0������7m $�(���������� ��(�����������&������ �����&���������(�����������

m 0�����������������������#���������������������&���� ���N "����(��(2���������� �����(��������������

m �� ��� �����������������#�����N 0������������

N "��������������������������������7

95

5 �����

r "������ ���� �����������������������7

r 6 ������� �����������������7

96

���������2�' ���� �����> �(�� � ��

r "���� ����#��������������������������7

r "���� ���������������������7

r "���� �������������������

r ������"(��&�� ������&�"� ��3��������������E�E�E4

r ������(� ����� ���������������������������

97

Ion Stoica, Robert Morris, David Karger,M. Frans Kaashoek, Hari Balakrishnan

MIT and Berkeley

Now we see some CS in strength – Hash and Content based….for more scaleble (distributed) directory lookup

G-�"(��2�� ������ ������� � ������������������#��.��������� ���������

G-�"(��2�� ������ ������� � ������������������#��.��������� ���������

� ����������� ����������� ��= ����/����3�.1 "<//M�)4

98

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

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

� "�����������(���

� "(��

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

� "�����������������

99

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

> � ���#������������������� �����#����(����������7

� ��������(�������� ���

Internet

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

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

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

��

� ��

�!�"#���$�7

100

"�������J���������"�������J���������

� =�I�����<3/4�����

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

Internet

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

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

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

��

� ��

�!�"#���$�

%�

� "�������������3������4

101

' ���� ������������3)4' ���� ������������3)4

� 6 �������<3�4���������������

Internet

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

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

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

��

� ��

�!�"#���$�

� 0������31 �������&�/��(��&����-4

102

' ���� ������������3�4' ���� ������������3�4

� =�����������30������&�� ������&�"(��&�"� �&����-4

Internet

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

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

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

��

� ��

�!�"#���$�

� <�����K��������(�

103

=������"(�������=������"(�������

� ' �#��������#��������������������

� %�����(��(�����������

� %�����(����������� ���:���(���J�;

� ������ �����������������(����������� ��(��

� ��(�������2

� "(��2����(��J���##���������������������

104

"(���<�������"(���<�������

� ����������� � �����(�(������������2

� ����3���4�→→→→ .�������

� "(��������������(������

� > � ����"(��������������7

� > � ����"(��������������������� ��7�

� > � ����"(�������� ��(��(����������� ��(��7

105

"(�����������"(�����������

� @##������2�<3����4���������������

� �����(���������� ���#�������

� ����� ��2�<3����4�������������

� = ��2���������������(����������� ��(���

� ��#��������������8����(������

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

106

"(���.' "(���.'

� � ���������#���������#�� �(������������

� %���������#����W��> � )3���4

��� �������� �%�&'SHA-1

��� �()*�'*�'*�� �%�� �SHA-1� ����������#����W��> � )3.�������4

� $�(��������#���������� ����

� > � �����������.' �������.' 7�

107

"�������> �(����Z%������,+["�������> �(����Z%������,+[

� � �����������������������2������ ��(���K��(��(���.'

N32

N90

N123 K20

K5

#�+����,-����%����+�

0��� �()*�'*�'*��

K101

K60��� ��������

108

"�������> �(���"�������> �(���

� @������������ �#��������(������

� ��I������� �����#������

� =�������� �������������<3�4

� ���������#���<3)4

N32

N90

N123

0

.���� ������������&'

N10

N55

Where is “LetItBe”?

�('�����&'�

K60

109

"(��2�$��������"(��2�$��������

N32

N90

N123

0

.���� ������������&'

N10

N55

Where is “LetItBe”?

�('�����&'�

K60

� @������������ ��������������(������

� ��I�����<3�4�����

110

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

� @������������ �� �(�����������(������

� .����������������K����������

N8080 + 20

N112

N96

N16

80 + 2180 + 22

80 + 23

80 + 24

80 + 25 80 + 26

111

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

� 0������� ������������ #��X��

N120

N8080 + 20

N112

N96

N16

80 + 2180 + 22

80 + 23

80 + 24

80 + 25 80 + 26

112

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

� ����������<3����4�(�

N32

N10

N5

N20N110

N99

N80

N60

��������(�

�(

113

!�������(��= ���!�������(��= ���

� � (������������2

� .�������J������#������#���� ����

� * ������#������#��K���������

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

� ���������������(�����3��J��#������������42

� .�������J�������(��#�����������������

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

� ��������������#��(�#�������� ���������

114

!�������(��= ���� �����)!�������(��= ���� �����)

� .�������J���(����� �����#�������� ��

� ��������������� ����(������

� � ������� �������#������#���� �������G

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

N36

�*���������,/�)/"'/0/�''/�&"�

N60

N40

N5

N20N99

N80

115

!�������(��= ���� ������!�������(��= ���� ������

� * ��������#������#��K���������

� ��� �����������������#����������K���������

� �K��������������������������������#������#��(������

N36

N60

N40

N5

N20N99

N80

116

!�������(��= ���� ������!�������(��= ���� ������

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

� ������������(����������������#������

#��������� �**�&1�2��"'������&

�'�)

N36

N60

N40

N5

N20N99

N80

�'

�)

117

> �������0������> �������0������

� 0�������#��������(��������������������

N120N113

N102

N80

N85

N10

�������('�

� �L�����M����� �������������&�������#���

� �������#��������������(�#����������

118

> ��������0������> ��������0������

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

� @��(�������� �� ���������������

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

� "���������������������������������

� 1 ������������ ��(������ � �����

� "����(��� ��������� � ������#������#��������� �������������

119

@���������<�������@���������<�������

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

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

� = ����������������#������

� @K�����������#�����(��������������

120

"��#�����"��#�����

� "����<3����4������������� ���(���

� ���������)8�

��2����1������

34��5�������5������������

121

= ����= ����

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

� 0����������������������������� ��(�����#������3����������#����4

� =��������������� �������#�������������B

122

= ����= ����

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

� 0����������������#���������(�(����#���������

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

� ���������� ���J�3�4 �������

� )���������������3���4

� K�9��8#�������������3���4

123

"��������������������"��������������������

� "(����� ����2��&���������#�"XX

� ' ���������������.����������� ��

� .������2�

� "����������������9��8#���

� ��K����� �����������#���� �������374

� ����������#��(��������������374�

� =�����������#�������.' �374

124

�������(�������(

� $�������(���������� ���3��������(�(���4

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

� :� ��(�(��(��� � �����;���#

� = ���3.���74

125

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

� � � � �(���������3����������"� �4

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

� ������������(�������I����������������������������

� ���������#�����������������J��#���������(����

� %�����������������(�������K��� ��� ���������

� ���������������������������(����������#������

� "(�������#�������� (�������9���3�����������(����B4

� =�������� ������ �� ��(�H �#���� ����������

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

126

' �����' �����

� ���� �����K������3��������������74

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

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

� /�������"(����� �����#������

� %��� �������(���������K���

� ---

127

+-�� ������2�' ���������J���=����������������

$���S-�\ (�

"��' �����&�* -�" -�$�������

128

<������

r �� ����#������� ��� ���������������

r � �������<�������

r /��(��������������

r ������������@��������

r =�����������#������� ��

129

/�������

r �(������������������������������������8����������(����

m 0��������(���������������� ���� ���������##�������� ���

m @##�����������������������������#������������������������ �������������#����������

r @K�����������m "�������J��2��K�������������&����#�����

�������&������� �����' ���������3�-�-�������&' ��&�' �4

m 0�����2�������� ���3�-�-�1 �������4

130

%��2������������=�����

r > ������ ���2m �������������������������������������

r � �����(2�� ��� ��������������#����������2m ����� ��&�' ������&�0���� �������&����� ��������

131

' ���������J���> ������(��

r "�������J���(������(���m @��(�(��(������������������ ���#����������

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

r ' ���������J�2�"�������������#�� 9����<�3������B4

m < 9����< (����� ��������� ����

m ������������(������������������������ 9������������

m 5 ����������(������(������(��

Root ID = O

Directory servers tracking 2 replicas

132

6 (������ ������7

r � ���������#�������������J��&����� ��&�#���� �������&��������� ��������������������#����������3\ (�&�%� ���� ��J&�!��(������-�* -"-�$�������4

r ���� ���������#�<�������� �� ���������������##�K ����(������ ��������

m "���������������� ��������� � �������� 3���K��&=�9������&�= ��(� 3��� � ,+44

r "���� �.2m �� ��(< 9���3< 9���.' &�Z�����.' [4m ������ < 9���3< 9���.' 4m ������ ���3���.' 4

133

.�������������##�K�=�����

r ���������3�������� 9���4m ����������(���������������3]�)G�743�J��� ������3�4 ��4

r .�����< 9���2m > �(�< 9�����������������������< 9���.'

m 0��3�W�&��^���3�4&��X94�U����88' �#����(������(�• 9 �� ���#��������J�����&�39 W�C�� (�K������4�

• .���������������������������(�������(�������� ��

• 6 (���������(��#���&��(����������������(���3��– �4 ���� ��(�(��(���.' ������&����������

134

=��������< 9���

r ����� 9���m � �������������������������������&����� ��������

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

m 0��3�W�&��^���3�4&��X�4������(�#��������������������������(������������ ��

r @��(� 9����������(������(����#����� ����������

m f 3< 9���.' 4�W =�.'

r �� ��(�8�����(� �(������������������������

r =������W�f 3<4&�������� ���#��“��� ���” 9���’�������

135

< 9����������=�����J�������� �������

136

4

2

3

3

3

2

2

1

2

4

1

2

3

3

1

34

1

1

4 32

4

� �������/�(.������������##�K ����������

NodeID0x43FE

NodeID0x13FENodeID

0xABFE

NodeID0x1290

NodeID0x239E

NodeID0x73FE

NodeID0x423E

NodeID0x79FE

NodeID0x23FE

NodeID0x73FF

NodeID0x555E

NodeID0x035E

NodeID0x44FE

NodeID0x9990

NodeID0xF990

NodeID0x993E

NodeID0x04FE

NodeID0x43FE

137

"���� �����#��(��� ��

���K���� �����(�r ���������

m 1 � ������ ������������(�

m =������������� �����m �����#������� �����

� ������r ' ���� �����������(�

• ' ������������������• ' �����������������

m =������������������������������

m 0���� ��������������

m ���# ��#��������8���������

m �������#��� ���� 9���

r � ����������.�#����������

138

' �������.�������@K�����

NodeID0x243FE

NodeID0x913FENodeID

0x0ABFE

NodeID0x71290

NodeID0x5239E

NodeID0x973FE

NEW0x143FE

NodeID0x779FE

NodeID0xA23FE

Gateway0xD73FF

NodeID0xB555E

NodeID0xC035E

NodeID0x244FE

NodeID0x09990

NodeID0x4F990

NodeID0x6993E

NodeID0x704FE

4

2

3

3

3

2

1

2

4

1

2

3

3

1

34

1

1

4 32

4

NodeID0x243FE

139

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

r /�����J���#� ������-��K�������#���� �������

r /����������m < 9����(�(���� 8����������� �������������8��

m 5 ������������ ��(���������J��������������������

m �3#�������=�#�������� 8���������4�W�)�– 3)8�4�

� (����� W�H �#���

r �#� ����������������� ��(m ���� ������ #���8���&����������� ��(&�

�W�)G &���W��)G� &�C�$8��&�� �����������������##��2�)�G�� 8&�

m �K����������##���� 8��C� ��������2��,�� 8

140

0���� ��������=�����

r ' �������2m ���������� ��������� ��� ��������( �

r > �������2m @��(���������������������(�����������������m �������(�����������(��#���������������#������

m ���������#�������� ����������#����������������� ��

r �����2m 0����=���(� ����������������m ���������' ����������������=�����

141

����������@���������

r .������������ ���������������������� �������������

r ' �����������������������#����� ���(�

r ' ����������(���##����#�������##�����I������������

r 0���������2��� �&�/$��&�1 � .�/&�� .@=�

142

=����2���������������

/���������##���������#����������������3� .@=������4

RDP vs Object Distance (TI5000)

0

2

4

6

8

10

12

14

16

18

20

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Object Distance

RD

P

Locality Pointers No Pointers

143

=����2���� ����������=���������

Parallel queries on multiple roots. Aggregate bandwidth measures b/w used for soft-state republish 1/day and b/w used by requests at rate of 1/s.

Retrieving Objects with Multiple Roots

0102030405060708090

1 2 3 4 5

# of Roots Utilized

Lat

ency

(Ho

p U

nits

)

0

10

20

30

40

50

60

70

Ag

gre

gat

e B

and

wid

th

(kb

/s)

Average Latency Aggregate Bandwidth per Object

144

=�������6 ��

r "������� ����� ������� ��m =������� �����-&�3� ".=.�8�* "$ 4

r "(��m �����&�/���&�%�����&�%��(��&�$������(��� 3/.� �8�* "$ 4

r �����m ' ���(������=� ���3= ����8�/���#��=�����(4

145

����������

r ' ������������ ������� (����������������������3���K�� � �����(�4

r 0���������������J����������� ���������#����������������������������������� ���

146

6 ������8.���������

r �� ��������������������m @�&���������������������������(������ �������&��������(���������� ������������� ������� ���������#�����-

m � ��������������������#���������(����������

r 6 (����������“��” ����#���������� 9���m ��������������(�(����#������m �� ���������“��” ��������K�������������������������7

147

=�����������Example: Octal digits, 218 namespace, 005712 � 627510

005712

340880 943210

387510

834510

727510

627510

���5�������6�� !,� � �7+����

8����$5���4���

� �"

999�

!,�

999'

999�

999"

999!

999&

999,

99'

!,�

99

99�

99"

99!

99&

99,

9'�

9��

9 �

9��

9"�

9!�

9&�

!,�

',�

�,�

,�

�,�

",�

!,�

&,�

,,�

005712 0 1 2 3 4 5 6 7

340880 0 1 2 3 4 5 6 7

943210 0 1 2 3 4 5 6 7

834510 0 1 2 3 4 5 6 7

387510 0 1 2 3 4 5 6 7

727510 0 1 2 3 4 5 6 7

627510 0 1 2 3 4 5 6 7

148

' �������.������

<����������������#������ �����#���������������2

r �����)2�$���������’�����������m ����������������(�(����������(�#�������� �����

�������������’ �(��� �������K�������m � (����( (��������(�����(����������( ������������� ���

���m � �����J���(���� ���� (�����������

r ������2���������#����������������� ���������������� ��(�������������#���’�.' &������#�� ����������

r ������2�@��(����#���������������� ��(�������#����������� 9���

r �����C2�=�����#�� ���������#����������� ��(������������2����#�����������( �������#�����(���

149

' �������=��/������

r �� ���2��(�������������#�������� 9���m ' �������������������� ����(����

m 1 � ������������

r � ������m � �������� ��(���������(�����##�K����������������8�� ������������������K��������#�����������

m =�I����2������������ ������#������������� ��

150

���K�� ������

r 1 ������������.' ��&m 0�������� #���������K���������� ������������(�������H �#��##�K�������� ��(��

m "(���� W��������� � ��(�(��(����������.'

r .��2m /����������� ����������������������������� ������ �����

m /��� ���������(������������������������������(�����������������

m /������������� ��������� ����&���������������������������

151

������ =�������&��������0�����&���/����> ������&�

= ��(����%���&������ �(�����

L-�� ������ ��&�"����� � ����� ������� ��

� ".=. * -"-$������� � �(������ ��

) � �

)&� � )

)&� )

152

<������

r .���������

r ' ����

r @��������

r �������(�R �6 ������

r <������6 ��

153

.������� �����(�(��� ��

r > �(��� ��m �������� �������� �������#�� ��������

r .������� ���������� �����(�(��� ��m �I����������� ���������� ���������� ���������7

154

r > �(��� ��m �������� �������� �������#�� ��������

r .������� ���������� �����(�(��� ��m �I����������� ���������� ���������� ���������7

N ���� � ���������A ������& 1 �������&&�0������& /9�����E

N ����� ��������������������������A �� ���&�<��������&&�"0� ---

N ������������(��6 �

.������� �����(�(��� ��

155

"����� � ����� ������� ��3"� �4

r "� �2�.������� �����(�(��� ��

r .����#���m �����3���&�����4m ������W���������3���4�

156

"����� � ����� ������� ��3"� �4

r "� �2�.������� �����(�(��� ��

r .����#���m �����3���&�����4m ������W���������3���4�

r ��������m ���� ��m �����������������m ������#�������3� 8�����������4

157

"����� � ����� ������� ��3"� �4

r "� �2�.������� �����(�(��� ��

r .����#���m �����3���&�����4m ������W���������3���4�

r ��������m ���� ��m �����������������m ������#������

r =�����������2�"(��8�����8� ������8$�JJ8���K�� ---

158

�� ��������

4 ' �������������(�����������(�������#���� ���� ������� � ����� ���#��������5 ����������

6 � ��������� ����#��&�(��(������������������� ���� �������(����� ���� ����������� ��������

159

<������

r .���������

r ' ����

r @��������

r �������(�R �6 ������

r <������6 ��

160

%��Q

"� �2� ��������

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

161

"� �2� ��������

�����3%)&Q)4

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

162

"� �2� ��������

�����3%)&Q)4

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

163

"� �2� ��������

3%)&Q)4

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

164

"� �2� ��������

���������3%)4

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

%��Q

165

"� �2������

r ��������"���������������������

r ������������������������������������(������m ����������:� �;���J�������(�������������

r � �������m ����������������:����;�����(�������

m ���������#������:����;������(��

r ������W������(���� ���(����������J���

166

"� �2��������K�����

)

167

"� �2��������K�����

) �

168

"� �2��������K�����

)

169

"� �2��������K�����

)

C

170

"� �2��������K�����

171

"� �2��������K�����

172

"� �2��������K�����

����.22�����3%&Q4

173

3)4����W (K3%4

"� �2��������K�����

K�W��

����.22�����3%&Q4

174

3)4����W (K3%4 �W (�3%4

"� �2��������K�����

K�W��

��W�

����.22�����3%&Q4

175

3)4����W (K3%4 �W (�3%4

"� �2��������K�����

3�4������3%&Q4� Y 3�& 4

����.22�����3%&Q4

176

"� �2��������K�����

3�4������3%&Q4� Y 3�& 4

3�4��3�& 4�����3%&Q4�

3%&Q4

����.22�����3%&Q4

�3)4����W (K3%4 �W (�3%4

177

"� �2��������K�����

3�4�������:��������3%4;���3�& 4� 3%&Q4

3)4����W (K3%4 �W (�3%4

����!22��������3%4

178

' �������������(��"� ������������ �������3�-�-����4&�����������3�-�-�.�������4

"� �

179

"� �2���������� ��

180

"� �2�������

3�& 4

3K&�4

181

� �����������������������#�������������������( ��������

"� �2�������

182

"� �2������������

$��������

)4�' �������������:.;������������"� ���� ����

183

"� �2������������

.

��� ����)4���������������:.;������������"� �

184

"� �2������������

�4������������������������

.

3�&I4

��� ����

185

"� �2������������

3�&I4

�4�.��������3�&I4&������������!�

.

!

��� ����

186

"� �2������������

���!

C4������!M�J������(��#E���� �� �����(��#

187

.������������� ������##�����������������(����������������������������( �

"� �2������������

188

"� �2�����#������

r ���������������(�������

m ����������� ���3� ��������4N #� �����������N �������������&��� ��������� ���#����������

m ��������������N ��������������(�

189

"� �2���������������(�

r �������#������m ��� ���������( �M�����( �m � (���������#���&����#��������( ��������������

J��

r /��������K�#����������m ����������#�������#������������9����������m �����#�������������������( �m (��#����&�������������

190

<�����(��#���������M���������������( ��������I������#���������

"� �2�����#������

191

' ����������

r $����"� �m ��������������� ����m ��# �����J���m ����������������������#���(������������������( �

r � ���������������#������m ��������&������������������3��������4m ������������� ���������������(�m ������(��������������������#�������

192

<������

r .���������

r ' ����

r @��������

r �������(�R �6 ������

r <������6 ��

193

@��������

r ����� �����

r �� �������

r ���� ��������

r = ����

194

"� �2����� �����

r 0�������#���������������������� ��(�� ����������������

m �������&���� ���#�����( ������

m ������������������(����3����48C (�

m ���������(� ��(����(��� ���������(��������������

r "���������(������ ���� ��(���������������� ���������

r "(��8���K��8� ������8$�JJm ��3�4 � � � ��( ��3�4�(�

195

"� �2��� �������

r �� ���m �������������(�W�3"� ��������������4

3.��������������4m ���������� ������������������������(��(������(�

r ������m ���������������&����������3��������(�����(������(4

m > ��������3��������(����� "� � (���������4N =� � � ���(����������N �����������������J���3��������4N ����������������������������������

196

"� �2��� �������

H ���

��� �

���� �� �

��(

0

20

40

60

80

100

120

140

160

180

)G% ��% G�% )�)%

H ��������W��

� 8�(�������

� 8�(�������

197

0

2

4

6

8

10

"� �2��� �������

H ���

��� �

���� �� �

��(

)G% ��% G�% )�)%

H ��������W�)�

� 8�(�������

� 8�(�������

198

"� �2����� ��������

r � � ������

m ' �������� ��(�(� ��N �������3���&�����4�����

N �������(�������������I������������

N ��������������������������������������������( �

m * ��#����������������������������N ���#�����������3���&�����4�������

N ���#������������������������

199

* ��#��������������

r � ������(����m ���9�������&��������J��

m �(��������( �����J��

m ������(���������J�������������(�����

200

0

20

40

60

80

1 00

* ��#��������������

Q �Q CQ LQ

Q����

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

� 8��(���

� 8��(���

Q�W������������

Q)G

QL

QC

Q�

G�&�������&����������

201

"� �2�= ����

r "�������������� �����m �������������#�#�������3����������� �����������#�

���� ���� (�������#�������(�����4

r ����K����������� �����������3��������(����������������������#����� ��4

r =���������#�������m ������������������ ��

202

<������

r .���������

r ' ����

r @��������

r �������(�R �6 ������

r <������6 ��

203

�������(

r /�������������(���#������ ����������� ��

r @##��������������������#������

r 0�������������������

r ����R �' ����> ��(�� ����� ������3� 8�����������4

r /������ ������������ ����J��R ����� ������##��

204

6 ������

r .��� ��������#�����#�JJ������(

r ������� ���������������������

r /���������(�������#������(������K��������3���� ������(���&�@##������������ ����4

r �����������������(��(�����������������

r ������#�������� 8�����������

205

��������

r "����������/��������K��������#�������(�#������

r @K��������(���������� �����������##���������#��� � (����

r ������������(���������#�����������������

206

<������

r .���������

r ' ����

r @��������

r �������(�R �6 ������

r <������6 ��

207

<������6 ��

r � ��������� ��������"� �����������m ����� ����� ������

208

' ���� �����$ �������

r 1 ��m ���������(��(���� ����������������������� ��

r .���m � ������� �����#�������������(���m ���(�"� �����&�����������=� � ������(���������m ������(�������������������#�����������=� �

r "� �����������m ����������#����(������ �����������(������(��"� �

209

' ���� �����$ ������

m C����������3������������(���� ���#������(��(��4

m ��_���������������

��� ���#����

��G )% C%

����

���

���� �

�(

)�

)�

��

��G )% C%

� 8� ������� 8� ������

� 8� ������� 8� ������

H �������W� H �������WC

210

<������6 ���3���M�4

r � ��������� ��������"� �����������m ����� ����� ������

r "� �����������3�����/������ ����#��4

m ��������#�������

m ����������������� ������

211

<������6 ���3���M�4

r "� ���* ���

m � ��������� ������/��������3�1 "����)4

m 1 �� =��"������' ���� �����

m ' ���� �����' ��� ��������"� �3!-> ���������&��-=�������&��-�(�����&�.-�����&��-\ (����4

212

�������

r "� �

m ���.������� �����(�(��� ��

m ��������� �������� �������.������������������

r ����� �����

m <3�4���� ��������

r �� ��������������

m ������(��������(��������

r = ��

m ����������J��&������������������� ��

213

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

r 6 (�������� ���������������������������� ����#�������3���9���#����(�����&�����K���&����������I�����������4�A

r .-�-������������#����������������� �����������#������� �������������

r /����&�����������������������������������E-

214

(*:�$;����<�+��=>?3

?�+�$�+���74�4��@

215

����$�����$�7����$�

r �$����+���$�- @�������=>?3

r A����- @����=>?3�@�$��������

r ?�+�$���5��- @����=>?3����������$

r :��+����- ��@�=>?3���������

r ����+����- @��������+����=>?3����

r :�+�����- @������=>?3������+��

r 3����+����$��- @����=>?3�+�$���������1�

r #����������$�- ��@�=>?3�5�@�

216

�$����+���$

r =>?3��- ��$��$+������ �����������$� �����������

r ����������:�$B��#���1�:+��$�������� ���

r �$��11������+������������ ��������1��������$5��������������4�+����$�������+����$��

r ������/ A$������/��$�6��$����4���������@��������� �����������������+����$������$������������������@��������/���2���������+����$�

217

A���C������

r �$�������@�����$5���1������������+�2����$5������+����$�������4�����$5���+�22�$������1�5�$������������ ������+����

r �+���4������1�2��$����$��$+��- �$����$5��5�/��$��7:/��$�����@��

r �4�+�2��������2������$��1��$���$�2�$�������B��� �������+����$�

r �$�����$�@������+����$������$��$��$����4�+���������������5�����������������������+�2�����/���4��/�%3�/�+�������$��/��$�������+�$$�+������4�+���

218

?�+�$���5�

r =>?3���+�$���5������������$�>��/�=�4����+�$���5�/��$������+�$+������1�D��>�������$5������2

r ?�$�2�������$1�2����$������+��5������2����5��*������5�����1�$���$�>����$4����������$�1���$����$���1�����*

r ?��������1�=�4����$5��5�����$����E�����- =>?3�����+����+�$�����2���2�$�����$�#/�#FF/����/����$���������5�22�$5���$5��5�

219

���� ����

���� �������

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

:��+���

3$�������$�����G����%������/�+�������$�/��%3/�:�4��

�������

����A���� ��������� ������$����$5

=>?3�#�22�$����:�4�+��:�$

=>?3�:�4�+��

=>?3�#�22�$����3����+����$� :�$�3����+����$�

=>?3:����

���#�22�$��

220

�����-�������:��+���r ���� ����

H ���� ������- 2�+��$��2����C1��+������$��������/�<��$/���4�����/����+�4�/�+�22�$�+����$/���+����/�+�$��$������$5

H ���� ����- ��$�1���1�����/�+�$��$�/��$��+�����$�������+��-�$����$��$��2�$$�

H ���� ����� - �$+����$5��++����+�$���/�������������$5/���11�+�2����$5��$����$�@���������$+�$5

r ���� �������

H �9��$�����$�����+�������������1�����+����$��1�+�������������+����$���4����2�$�

H 2�+��$��2��1�����+��$5/�����$5/��$��9�$5/��$��+�+��$5�+�����$��+�$��$������$�����+���-�����+����$����5�$5��$����$������$��1�1����

r ���� �!���- 2�+�������D��>�7:H 1�+���������++�������+��-��4���1�$+���$������5����+�22�$����$�

r ���� ���������- ���������$5�������4�+������@�����������+�������

221

����+���

r =>?3�����������1���9�����+���

r ����%��+�4�������+���- 1�$������/�5����/���4�����2�$��

r ��� 8����4� ����+���- ��$�C�+��4�����+��E�����

r �����$1�2����$�����+���- ���$�����;�������C��������

r ������2�����������+���- ��5$��$/���5$����/������$��+����$

r �������$��$5�����+���- �������4�����2�$�����������$����$�

r I$����$��8����$5�����+���- �4����������������������$����$

222

:�+����

r #�$1���$�������/��$��5���/��4�����������- �����$��+����$/��++����+�$���/��$+�����$/���+���+�22�$�+����$/���+*�

r %�4�����$5�2���+�$+�����$����+������+������+����+��������$

�$5��$5���<�+�

r =>?3������$���2�$�����+����$���+���������+��/��$+�����$���5����2��������+�����2���2�$�����$�

r =>?3��*'���4�����:�+�������2���4��J

H +�������������%!/�8#"/�8:3/���+*�

H ���55���� 3����$��+����$����������3���

H ����@��-��������5�$

H ��$�������+�����2�+��$��2�2��������1���::�C?�:

223

����$�����3����+����$�

r :��+�������$����@����$����������+�$$�+������4�+����$���<������4����1��$�������$1�2����$

r :�4��1������$���$1�2����$�����������������+����$���$�����$��@��

r #�$$�+��5�2�������2����������2����������������$�2����������+����$�

r ����+�������$���+���$���2�$5�����+����5������1��$��4������

r #�����������$���<�+���1�2��$�@�������$5��$��+�$$�+������4�+�

r :����+�2�������4�+��/���+�������+�����+�+����������5�������2�/��5��������1�@�������������2������������������+����

224

=>?3�:��+��74�4��@

r :�������$�=�$�� '''�����$1����+������$�������������������E���������$��@�������������+��������1��$�@��$5����2

r ��@�������������1��������+��$5�2��������5��1������=>?3�1�2�@����$�����1�2��1�=>?3�:��+�

r #�22�$�+����$�4����$�>�������+���+������K����8����$5�����+����K8��

r ���@���+�2��$�$��J���4����/�#�$��2��/�.���

r #��������1���4���$5������@�����$����������+�L���������+������@������2������$�1���

r %���5$�5����J�:�2���+���/�:��+���/�I9��$��������/�:+���������

225

=>?3�:��+����$�1���

r :������1��������- ����+������$���+�������$���������+�/�@������5��������$���������������++���������+����@���������$�������+�������+�$�����$��9*

r 3++����- �$�+�@��$5������������+��2�$��+�2��$�������������$�����5�$���++�������@���+�@���*��$�����������������+������+�2��$����+�$���4�������������������1�������������*

r I11�+��$+��- $��$�������+�������+�$���������+����$��2��$���$����$��9�1������@�����@��*

226

=>?3�:��+��3+����+���

r I�+��=>?3�����+�$��$��$���$+����1���4���/�#�$��2�/��$��8�5�������$���4�+����$������1�����=>?3�+��*

r I�+�������$���+���@��������=>?3�:��+��.���:�4�+��/�@��+�����������$$�$5��$������1�����=>?3�+��*

227

=>?3�:��+��3+����+���

r I�+������@����$�����$��@����$���+���@���������������$5�����������������4�+�

8�5�������$

#�$��2�

��4���

.��

=>?3����

228

#����������$

r #��$�����4�� !�+�2��$�����������+�����$5��$���4�����$5�=>?3��<�+��*

r #����,���<�+���

H ��+����/ <�9��-+/�<�9�����/���+���<9��

r :�4�+���� '���<�+���H ���+�/�<�9�����+��/�� �-�2���/�<�9��-5��/����2�$�/�2�$����$5

r 3����+����$���� ���<�+���H �����/�<$�����/��1@����/���$��

r 7������<�+����!��- ��2��/���������/���+*

229

6�����G��/�K������$�

r 6�����G��

H #C#FF��2���2�$�����$

H ����������2���2�$�����$���%3�/�+�������$���

H ��2�$5��$����$��$5���4�+��

H :�+�������4�+���������$��+����$/��++����+�$����

H :������$��1��1��@������$���3?�5���@���

r �������������5������+���M

r %��=>?3�����+������+���������2�+��������������M

230

)�-�� ����������������� ��������2��� ������������������ ��(�������������* �����=����������6 � ��������

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

" ���� ��� &����� ����������� ���������������1 ���

1 ������� ��(&�� ������&�1 �

' �� ��� (��������)' ����������#�"��������������

* ���������#�/�������&�"����������&�/'

231

� �����

r �� �������������

r � (��� �������� "�������������������

r ����=�������6 ��

r � ����������������� ��������

r @K�����������=����

r "������

232

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

r @##������������������������� ������������� ��

r =����������������

r � ����������� ������������(�� ��������

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

233

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

r ������������(��I���������������� ������#���������

r .����������������������m �������#������

m "�����������������

m ��������������

r ����������������� ���m > � ������������������������ (��(�#��(��������������������������7

Client

Content Equivlent Servers

Request

??

235

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

r � ����������m ' ���������3�-�-�������4������

m =����� ������������3�-�-�' ��������4

m @K������������ ��(������������

m ������������(���������3�-�-�" ���' ���� ����' ������4

r � ��������� ������� ��������2m "��������I��������������������� ����

m � ����� ����������#������������3�I��������4������

m ����������������������������������

236

� �������� "�������������������

r � ����� ������#��������#����������#��I���������(�

r =�I�������������� ���(������(������

Client

Content Equivlent Servers

Request

Reply

Anycast mechanism resolves to one of

possible many

238

@K������� ����� ��������������������

r @K������������2m =0"�)�CG�> ��� �������� �������

N ' �#�������#���������� ��������������������N .���������������������#���(������ ��������

m .@� 0���������������������A �������K������7m � %� /� .������(����������������(�8"' �m "���' ���� ����' ������

r ���������m 1 � ��������������m �����������������������������m �����������#�������m �������#����������������������������m � ��������#�.�������������#�������� �����

239

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

Application

Client filters

Anycast group table

Resolver filters

Anycast-aware client Anycast Resolver

Anycast query

(truncated) list of servers

List of serversBest

server

240

0�����

r "����� ������������#�����m @ -�-�=��� � ��

r /����� ����#�����m @ -�-�/�����������������

r ����� ����#�����m @ -�-�/���������

r 0�����������#�������A /������ 5 ����#����� ' �2m ^/������O�������YF ^' ���������Y

m ���������-' ����O��� F ��-�����(-���

241

� ��������� ������� ��������� ��(��������

Client-Server Communication

Push Daemon

Content Server

AnycastResolver

Resolver Probe

Anycast aware Client

Client

Server Resolver

Probes

Server Pushes

AnycastQuery/ Response

Probe Updates

Performance Updates

242

� ����� 1 ���

r � ����� ����������#����������#�.��������&�������������������

r 1 ������� �����������I���������������&��-�-&���������0� ����������� � �����(�������

r � ����� �����������#���� ��� �����' ���������

r 1 ������� ��(��������(������������(��������������

243

� ����� ' ���������

r ���������2�^�������YF ^' ���������Y

r @K�����2m ' ���� ��� F ��-�����(-���

Local anycast resolverAuthoritative anycastresolver for AND X

Anycast client

1. Request ADN X

2. Determine auth. resolver

3. Request members, metrics for ADN X

4. Members and metrics for ADN X5. Cache ADN X

6. Anycast response

244

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

r .������������������/������5 ����#����� ' �

r .����������������gethostbyname

r � �������������������������� � ��(������#������K����������������

gethostbyname

Anycast Resolver

DNS

Filters

ADN Domain Names

other

IP Address

245

=������ ����' ������������#��6 � �������r =���������2

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

m =������������(�������X���������������������

r <������� �#����(��I��2m =����� �� ��#�����( ��������������������

m ��������������������(�����( ������������������������

m ���(��� � ���(����(�����#��I������(���(������ � ��(��� �

m �� ������������������ �������(��������

246

���#�������/������' �����������

r /������������������(��I��m ���������(�������(�

m � ������� �����(����

m > � ������(8�� �����(��I��

247

���������(�����

r � ������������������������2assign process to handle query

parse querylocate requested file

repeat until file is writtenread from file

write to network

r ����2m /������������(������������#���������3� * 0= 4

m ��(��#�����#�������(����

248

=����� ���������> � ����� ��(��I��

r =����� �� ������2m =�I����������#����#��������

m /�����������������3=� 4

r > � ������( �� �����(��I��m ' �����#���������������������� * 0=

m @��(��� �2���������������#������0�W�=� 8� * 0=

m @��(���(2���������=� �W��0�K�� * 0=

249

���#�������#�> � ����� �����(�

250

6 ��� � ����@K��������

251

=�#�������

r �� ����#��������������������

r ����#�@I����������������3@�4m �� ���#��(�������������������� (�������������#���������� ��(������(��(���#� ������#������

252

���#�������#�� ����� � =�������������

253

���#�������#�����������������(���

G-,G�-)�=����

�-C+)-)��������������

�-G,�-C,� ��������

���������' ��������3��-4

� �������=������ ����3��-4

��������������� �����(�

50% improvement using Nearest Server50% improvement using Nearest ServerAnother 50% improvement using Another 50% improvement using AnycastingAnycastingMore predictable serviceMore predictable service

254

���#���������/���"������� �����

255

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

r $�������(��I��2m @������������������#�����(������

m .���������(�� ���������� (���I������

r .�����#�������� ������������������������������

r * �����#��I��������������

r "(����������������I��������������

256

@##����#�� ��(��I���������������

0������)-��� �� (��(���Q����

0�������2�> ��(���� (��(���Q����

257

����� ������� ��(��I��

r ����������������������(�������

r ����������������� �������������(���

r ������������������� ���#������� ����

r =����� ����������:����������;������

r * �������������������#��������

258

"������

r �������m ���������������������������������������A � � ��������

���-�

m � �������������������(����������(��������� ������������������������� �����J��������' ��������(������(�

m 6 � ����������#����������� ����������� ��(������ ��������������������-�� ��(��I����������� ����������J������(��������

m � �(� ������( �� �����(��I�������������� �����������-�/��� ����#�������(�������K�

m � ��������� ��������������� ���������#����������������������(��������������������(��I��

259

� ����� ����3����(���������������

r ' �����m 6 ���(��������K�����������(�7

N C�� ����� �� ����������A * "�� �3)4&�6 * ���3)4&�1 ����( 3�4N � ����� ������ A * /' &�1 ����(N ���� ����� �� �����������A * /' �3C4&�1 ����( 3)G4

r ������#������� � �������������m @K�����������������#�������(���A �������#�������

��##����������������(����������7

r 6 �������#���������������#����� �� ������#�����(����#�����������������������7

m 1 � ���.� ������ Z�.1 "<//��[

260

))-�� �"���0��@���������/�������

S��� (���"(�&����9���=������> ���\ (���

"��������/�����* ��������

261

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

r ' �#������&���������� ���#���R ��� ���r ����� ������ ������(�����#������r ���#������������������r ���#�������������� ����K��������r =�������� ��r ' �����

262

.��/�������

•No duplicate packets•Highly efficient bandwidth usageKey Architectural Decision: Add support for multicast in IP layer

Berkeley

Gatech Stanford

CMU

Routers with multicast support

263

%���"������� ��(�.��/�������r ����� ������� ��(���� ���#�����m =����������������� ���������

m � ����������� #�� ������#��5 � ���������

m � ����������#�����������������������������

r ����������(��(���������#����������������##�����m .��/�������2� �� �##�������� ��������������������

m @������������� ���#��(��������(��(���������#������������

m =���� ������������������������#��.��/������������������

r .���� ���������������(���-r �������������#�#��������������-r ' �������������##������������

m .��M��������������������.��/�������

264

@���������/�������Stanford

CMU

Stan1

Stan2

Berk2

Overlay TreeGatech

Berk1

Berkeley

Gatech Stan1

Stan2

Berk1

Berk2

CMU

265

r ����� ������3��� ���#���������(������ ��4m =���������������������� ���������

m @���������&� ����(�����������������������#�� �����

r @������������

r ����������������#���������#��(��(���������#�����������m �����������������������������#���������

m 0���K�����&�#�� �##������������&����������&�� "%�����������

m ���������������#�������������������������������� �����

���������$���#��

266

���#�������"�����

CMU

Gatech Stan1

Stan2

Berk1

Berk2

Duplicate Packets:Bandwidth Wastage

CMU

Stan1

Stan2

Berk2

Gatech

Berk1

Delay from CMU to Berk1 increases

267

6 (���������##������������������7r � (�������� ��� �����(��������������������������

r .������&

m � (����� ���#�������������������������(���������������

> ������� � ����2

m @�������� �������(�������(����������������

m ' �������(�������#����� ���� ���(�#������������.�������

Gatech

“Efficient” overlay

CMU

Berk2

Stan1

Stan2

Berk1Berk1

High degree (unicast)

Berk2

Gatech

Stan2CMU

Stan1

Stan2

High latency

CMU

Berk2

Gatech

Stan1

Berk1

268

6 (������# �����J�����(���7r ' ��������(���������������� ��(����

m /�� ���9������������������������m /�� ����������

r ����������� ������#����� ����������m /�� ����������� ������������(��(���� (����(���9��

m /�� ����� �����(��(��������������� �������������#�������

m <�������������# ������ ��������#������������� ��

r ' ��������(������������ ����������m ' ����� ��� ������� �����������������������������������

269

Berk2 Berk1

CMU

Gatech

Stan1Stan2

������ ' �����3)4

Step 1

“Mesh”: Subset of complete graph may have cycles and includes all group members• Members have low degrees• Shortest path delay between any pair of members along mesh is small

Step 0Maintain a complete overlay graph of all group members• Links correspond to unicast paths• Link costs maintained by polling

Berk2Berk1

CMU

Gatech

Stan1Stan2

270

�������' �����3�4

CMU

Berk2 GatechBerk1

Stan1Stan2

•Source rooted shortest delay spanning trees of mesh•Constructed using well known routing algorithms

– Members have low degrees– Small delay from source to receivers

Step 2

271

������ "������r /�(�/���������2

m @�������(��������������������#����#���� ��(����(����

r /�(�<�����J����2m ' ���� �����(��������#����������(��������(������� ��� ������� ����������(����(�������

r �����������������������2m =������������(��#����������������� ��������������

m ' �������������������&���������������(�#�� ������

272

<�����J����/�(�5 ������

r /�� ����������������� ���(������ ������������

r ��� �������������#* �������1 ����#���������������Y � ���� (��(��

r /�� �����������������������K����������

r @K�������������������#"��#��������������^�' ���� (��(��

Berk1

Stan2CMU

Gatech1

Stan1

Gatech2

A poor overlay topology

273

� (���������#����r * ������������#�������������� �����

m � (����� ���#���� ������ (��(���������������������

m > � �����#�������(���������������������������(���� ����

r "��#��������������� �����m � (����� ���#���� ������ (��(���������������������&�#�����(�������( �

r � ��8' ���� (��(�� ����#�������#2m /�� ��M����������#�������J��

m "�������������K����������� #����� ��������(����(

274

' ���� ������������#�(�������

r ��� �����2 � �������������� ������� ���������������������

r ���������� �������2 � ����������#��(����(��������������� ������������������#���������������� �����������

Delay improves to Stan1, CMU but marginally.

Do not add link!

Delay improves to CMU, Gatech1 and significantly.Add link!

Berk1

Stan2CMU

Gatech1

Stan1

Gatech2

Probe

Berk1

Stan2CMU

Gatech1

Stan1

Gatech2Probe

275

Used by Berk1 to reach only Gatech2 and vice versa.Drop!!

An improved mesh !!

Gatech1Berk1

Stan2CMU

Stan1

Gatech2

Gatech1Berk1

Stan2CMU

Stan1

Gatech2

276

������ @��������

r �����������K��������

r @���������#���������������������(��.�������

277

���#�������/�����r ' ���� ��� ������� ��������������

r ����&���#��������(����� ���#����������������#�����������(��������������(����������

Berk2

Gatech Stan1Stress = 2

CMU Stan2

Berk1

Berk2CMU

Stan1

Stan2Gatech

Berk1

Delay from CMU to Delay from CMU to Berk1 increasesBerk1 increases

278

0������##����������#������r � �����/���

m 6 �K��� Q�������

m /�����2 "�������������������#�����������.��� ��� ��

m � �/��2 $����������� ������.�������������������

r � �������J�m $��� ����GC�����)��C������

r 1 ������J�m $��� ����)G�������G

r 0���� �����m ��� ���#�����( �����(���� �����������������������(����(

279

' �������������������4 x unicast delay 1x unicast delay

Waxman : 1024 routers, 3145 linksGroup Size : 128Fanout Range : <3-6> for all members

280

Naive Unicast

Native Multicast

Narada : 14-fold reduction in worst-case stress !

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

281

<���(���

r � � �����m ����� ����K�(�����#��������������������#������

m �������#����(������������-

r "����2�=����#��� ���������������##������ ����������� ��(�������J�-

r ������ �����������������������-

282

=�������6 ��

r S�� 3�����0�����&�� ".=.4m /������(��������(���������������&������

���#������

m * ����(�������������������������������� ��

N /��������� ��������������������#�#������

N ' ���� �����(��������#��������������������J������������������������������������������ ��������

r ���������� 3"(�� ��(�������&�* "�$�������4m @��(�������#�����������������������K� ����

��������

N � ��&����������������������(�������#���K��

m � ���������(&� �����##����������������������

283

"������

r ���������),L,&�.��/������������������ �������������

m ��� ���������&�����������������K���������������������

m ' �##��������������(��(���������#�����������m ' �##�������������&���������.��M����������.��/�������

r .�.���(�����(��������#��������������������#�����������7

r 0������ �J�������&������� ������������������(�

m ��#��� ��m (������ ����#�������������� ����������.��/�������m (���(������������������#��������#��(��(���������

#�����������m ���� �#������������ ����#��������J����

284

<����5 �����

r � (��������� ������(� ��������@�/����������������.��������������#������-

r � ���������������(2�6 ���� ��(�������������(� ������#�����������������������-

r ����������������������� ����������������������-�

r ���#�����������������2�=����������������(���-

285

.��������@����������

r )��(�&�����9����(����������� ����(����������

r ��#���(����(���������������� ��(��

r @��(���� �������������������� C�����( ������(����(

r > �����"/* ���������������

Berkeley

UCSB

UIUC1

UIUC2 CMU1

CMU2

UKY

UMass

GATech

UDelVirginia1

Virginia2

UWisc

8

31

110

13

15

14

111

381

10

286

������ ' �����Q-�* ������' ����

Internet Routing can be sub-optimal

(ms)

(ms)

2x unicast delay 1x unicast delay

287

)�-�<������2�=���� ���/������������ ��(����<����������� ��

���������(�2�!������&�1 �##��&�!(��&�%��(��&�<M� ���!�-

288

' �����1 ��

r ����������������� ���������������������������������K���������(����������*��������

r ����� ��&��##������&���������� �������� �����#�(��(�I�����������

r "������� ������������� $ #����������

289

<������������.��/�������

Overcastingimposes about twice as much network loadas IP multicast (for large networks). This difference is in O(n). (Figure 4)

290

� ��(���������#����<�����������

r � (����������� (��(�#����(�����(���������#��(��<��������������������������-

r �����������������������������J��������(����������#���� ��-

r @��(����#� �������������&�� (��(��������������������(�#��(�����-�� ���������������� �����������������������(����������-

r + ����� ������� ������������#�������-�

291

=������3)4

r "�������������������(������������������������� ���(������� ���������-

r � (��������(������������������������#��(������-

r 6 (����������9����(������&��(���������� � ���������(����&�� (��(�����������(������(��: ��;�����������

r .��(������������������#�#������7

292

=������3�4

• Linear roots can alleviate this problem. For the source to fail, all roots must fail.

• Using round robin IP resolution, you can stop your content serving cluster from being ‘slashdotted’ (overloaded by sheer popularity) by client requests.

293

' ���� ���������

r � (������� ������������ ������������������������������,������-��� ������(�-

r � (����������(��������#��(��������(��������K���J�����. ��� #����(��������������������-�

r (��/��� ��� ��������� (��(���������������������������� ��� ��� ��-�<����������#��� ������� (����(��� ��� ����������������������(�����#��(�������3��&��(�������� ���(�����#���4

294

� ���� ��������������3)4

r � �������������-� �� �������&� �����������.�&��������������:�� ��&�� ��� ��� ���������;�3�� ��������#�#������74�� ��(������I�������� �#� ��-

r 0������ �������������#��������9��-

r � (�����������������(���(���������������-�� ������#���#�� � ���� ��������� (��(��(�������������� (�������(����������(���� �-

295

� ���� ��������������3�4

r 0�����(�����&�����������(�� ���� ���(�� ��(���������������-�� ����������(�� ���� ���(����(������#����������M��(������-�

r .#��(������������3 ���� ���(���##������� ��� ����������������� ��(���)�F 4&� �������� ���(����� ���#�(���������� ��������#�-

r � (���(�����������(�� ���#���M���������(��������������� �������-

r ����������������������� ���� ����������9���#���(�������(�������� (�����M��������#���-

296

=���(�������� �������

Overcast nodes can still receive content from the root, even when the tree is not stabilized. A typical round period is about 1 to 2 seconds.

297

� ���� ��������������3�4

r $��(���������������������#������ �������&��(������� ����������������������������������������(����������������� ��-

r � (��#���. � �������������������������#�������� ����(�������#����-

r @��(���������(������ ���������������� ���#���#�������� �������#���M����������-

r � #�����(��������� ���J�&������ ��������������������������������#�������*��#����� ����-

298

* �8�� �������

r � ���������(������������ ��(�������������������������� ���������&�� (��(�������������(����-�� (�����M��1#�� �#� �� �������������� ��)-���I��������� �����������������������������������-

r 6 (�����������M��(����#��������������������3����������/��4&��#�����������(�#������������������ ����&��(����������������������� ��������� #������(��������(������-

r � ��(�����������������������#���������(��������(��������������#�����������(�����-

299

�� ���

r � �������������(���������������������2�

r ��������������#��#�� ����3�����������������#���B4

r ��������������#�������3������������(��(B4

r 6 (���� ���������#��������7�� ��(���������(����#����� �������� �(�����������(������&��(������(����#����#������ 3��������������� "�8.�����(����&�� (��(�� �����(��������������������4-�.��(������������7

300

"������(��(�

r �������������������������� ���������31 ������� ��(�.�������� ���� �����/���4-�� ����������� ��(���������#�����3���� 4-

r /��(��� ������� ���������������-�"��������(��(��������#��(��(���#�����������������(�����&�������������8��������� ��������������������3"��&> ���� ������&<������4-�<������������ �������������������#��.���� ��� ���Z�������� ����&� � � �(����[-

301

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

r =����� ����"�#��������

r 1 ����������0 ���������

r <�(��E

r "�������#��������������E

302

)�-�@�� �����"�#���������� �������������(��.����������������<�������/��������� ��(��������S���(���"(�������-�3"/* 4�.1 "<//M�)

most slides comes from authors presentation

303

internet

Overlay Multicast Architecture

304

����6 ��

r ���# �����J���������m S�� 3� ".=.4&��������3"/* 4& ���������� 3$�������4&�<�������3".�"<4& $����K 3$�������4&�E

m "��������������������������� �����#�(��m ���# �������� ��(��������� �����#������

r ���#�������������(� ��������&� ��Em @�����������������������������m ' ��������������������#����� �����������������������#������

305

0���#�� (�������

r "���@���������/������������������ � �������������� ���(��.�������7m �������������K��#���#�������������������

m �(� ����#�������������� �������������������������(����������.������������������

r 0�������������.����������������� ��(� ��(��#��� ������#�@���������/��������

306

6 (��"�#��������7

r .������������� ��� ������m @����������������#����������3���&����4

r �������������#���������I��������m > ��(� ���� ���(&��� ��������

r =�������������#�����������������������m @ -�-&�����������������&�� ���������

307

����������"�#������������@�/

r 0����� ��m $���� ���(���������

m � ����������������� ���� ���(���-� ����������������

r < 9������m > ��(� ���� ���(������� ������������������������������(��

������

D

C

A

B2 Mbps

2 Mbps 0.5 MbpsSource rate

2 MbpsEstimated bandwidth

Transcoding (possible)

(DSL)

308

@�(���������#�<�������' ����

r � � ���� ������������m ' ��������������������(������������ ����������

m <�����J���������#�����������������N ������������ ���� ���(

r ����������(������K��#��(���������������3��������������4m * �������������#����������������

m � ��(��I��������������������������# �����J���������

309

• Capture the long term performance of a link– Exponential smoothing, Metric discretization

� �������' �������/�����r � ��������������������(������������ ����������m /����� ���� ���(�������������#������������

r �������������������� �����m � �������������������������������������� �����m "������������������������������� ������#������

time

band

wid

th raw estimatesmoothed estimatediscretized estimate

transient: do not react

persistent:react

310

<�����J��<�������#��' ����/�����

r �������J�� ���� ���(������������

r $���������� ��(�(������������

SourceReceiver X

30ms, 1Mbps

60ms, 2MbpsSource rate

2 Mbps

311

@K������#�������$�(����M

ean

Rec

eive

r Ban

dwid

th

Reach a stable overlay• Acquire network info• Self-organization

Adapt to network congestion

r � ������ ���9������������

r ������������&�"$= ����##��

312

@���������1 ��

r "���@�/����������������������������#������������� �����.��/�������7

r 6 (������� �������������� ������������ (���������������������7

r 6 (������(������ �������������(���7

313

@���������<�������

r "���������#�������#�����(����� ��(m $���(�����3�I��������������&��������� .��/�������4

m <�(�����������(�����(����������#�� ������� ���������

r @���������(���������##������������m Q����(����&����������

r ���#�������������m � ��������������������2��������&� ���� ���(m ���� �������������2������������&����(���

314

$���(�������(���

r .��/������������������

r ��I��������* �����2��������K������m $���� ���(�������������#�����������(�#�������������(���������

m ���#����������������.��/��������� ��(�� �I��������������

C

A B

Source

315

<���������(���

"(����#�/�����

�������

=����

������� <���

$���� ���( <���

$���� ���( �������

$���� ���(

<���������(���

316

@K���������/��(����

r "��������##�������(�������(��.�������m .������2�������##�������(���������������

m .�����������K���������#��(���

m =�����������K��������������##�����������#����

m � �����������������)���K��������

r 0�����(��K��������m � ������ ���9�������(����������

m �����������&�"$= ����##��

m @��(��K�������������#�����������

317

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

r $���� ���( 3�(���(���4� ������ �����(���������

r =� � ��� ����������������(���������������������

D

C

A

B

Source Data path

RTT measurement

These measurements include queueing and processing delays at end systems

318

���#�������#�<���������(���

:5 ������;�#��������������������� �����(���r ����3:����;4���������� ���������#������

r � ���������������-����-������#�������#������������������������K��������

r ���-����-�(� ������ ������#������I������

Rank1 2

RTTCMU

MIT

Harvard

CMU

MIT

Harvard

Exp2Exp1

Different runs of the same scheme mayproduce different but “similar quality” trees

32ms

42ms

30ms

40ms

Exp1Exp2

Mean Std. Dev.

319

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

r > ������������#�(����m �����������2�)������������(�����* -�-�����"�����

m @K����������2����(�&�� (��(���������(�����������������&�@����&�`� ��&����� �(����� ' ���

r ����������m 0�� ���.�����������(�����������(��(������������

320

� (������������"�������

r ' ��@�/�� ��������##������������7

r > � �����##�������(�������#���������������������7

Primary Set1.2 Mbps

Primary Set2.4 Mbps

Extended Set2.4 Mbps

(lower) ← “stress” to overlay schemes → (higher)

Primary Set1.2 Mbps

321

$6 &������������&�)-��/ ��

Naïve scheme performs poorly even in a less “stressful” scenario

RTT results show similar trend

Internet pathology

322

��������"�������

r ' ������������������(������������ ���������������:���#��;�������7

r .�����##����������������9�����������������7m $���� ���( <���& ������� <���

Primary Set1.2 Mbps

Primary Set2.4 Mbps

Extended Set2.4 Mbps

(lower) ← “stress” to overlay schemes → (higher)

323

$6 &�@K����������&��-C�/ �

no strong correlation betweenlatency and bandwidth

Optimizing only for latency has poor bandwidth performance

324

=� � &�@K����������&��-C/ �

Bandwidth-Only cannot avoidpoor latency links or long path length

Optimizing only for bandwidth has poor latency performance

325

���������#��E

r 0�� �����������������#������2��������������������� �(������������� ���� ���(�������

r $���� ���( �����������#��������� �����.��/��������3��I������� * �����4

r 6 (������(������ �������������(���7

326

=������* ����3=* 4

"����������������#����� ����������#������������

r <������������=* �W����������������

r � ����=* �W����#������=*

UCSD

CMU

U.Pitt

UCSD

CMU

U. Pitt

40ms2ms

40ms

40ms

Efficient (RU = 42ms)

Inefficient (RU = 80ms)

�-�C=����

)-C,$���� ���( �������

)-�.��/�������

�-G���_���* �����

Scenario: Primary Set, 1.2 Mbps(normalized to IP Multicast RU)

327

������<���(���

r =����2������������&�)-��/ �m � ����������(����W�)�-LF �

m ,�-�F �#����(������������ ���� ����(��� �

r "��������(������������������� ����#�������� ��� ���� ���(m �������(�������������������������������� �

m 0���#������������������(

Protocol overhead = total non-data traffic (in bytes)

total data traffic (in bytes)

328

"���� ����

r 0�������������.����������������� ��(� ��(��#��� ������#�@���������/�����������(��������m �������������K��#��8����#��������

m ���#������������� �����.��/�������

r .������#��������������������#������m 0�� ������#������2 ��� �(������������� ���� ���(

r /�����#2�(���288� � � -�-���-���8]������

329

' ������3)4

r ���� � ������������K�� �������(��������

��K�� ������� � ����

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

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

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

�(�������� �����#�������&�(�������������

' ���� ����

330

' ������3�4

r /�������(�#����� ���� (�������(��������������������#����(������������������������(&�� ��(���#�������#��(�������#�� ����������������������(m � �����������������(����M�������������##��������������#������

m =������������� (������������

331

' ������3�4

r = ������(��������������������(�m <���(��"�������#�.�����������(���������

N � � � -�����-��8����8��� ���) �����8�L-�-�J

m .����#�����#�������������#������(�����N � � � -��������-��8���8���(8�(��������-(���

332

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

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

���

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

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

�������

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

333

� �������

r !������� ��������������� ��������������������� ��������������������� ���������� �����������������������������������������

r !������������������������������������������ ����������� ���������������������������� ���� �������� �������������� ����������������������� ������� ������� ��������������������������������������������� ������������������������ �������������������������������� ���

r !������� ��� �������� ��������� ����������������� ������������������������������������ ��������� ������������������������������������ ����������� ������������������������������������ ��������������

334

�! �"���� ����� ��������� �������������������"� ������ ���

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

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

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

335

Access protocol allows hosts to read and write dataon a storage device as long as there are no failures or layoutchanges for the virtual store. It must provide serialized, atomic writes that can span multiple devices.Layout retrieval protocol allows hosts to obtain the current layout of a virtual store — the mapping from the virtual store’s address space onto the devices that store parts of it.Reconciliation protocol runs between pairs of devices to bring them back to consistency after a failure.Layout control protocol runs between managers and devices —maintains consensus about the layout and failure status of the devices, and in doing so coordinates the other three protocols.

! ������

336

#�����$�� ���! �����

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

����������������������������������� ���������������������������������!����������

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

���������������������������&����������� ����� ��'�� ��������������'�� ������������� ��� ���������� (�������������������� ��� ���������used to detect possible failure.

337

%�� ������� ������������

����������������(��������� ������������� ����)����� �������������*+�� ���������� ���������������������������������������������������� ����������������*+�� ����������������������������������������������� �� �������������������������������������������������!����"�����

�,����������������������(������� �������������� ������������������������ ����������������������

338

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

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

339

&��� ���"� ����'�����

�#���������� (���������� ��������������������� ������������������� �������

340

&��� ���"� ����'������(��������)

������������ ��������������������������(��������� ���������������� ����� �������������������������.� ������������ � �� �����/� �����0

341

&��� ���"� ����'������(��������)

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

342

�*�������

•Single manager v.s. Multiple managers•Whole devices v.s. Device parts (chunks)•Reintegrating devices•Synchrony model (future)•Failure suspectors (future)

343

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

!�������- Replication management system featuring

» Modular protocol design» Active device participation» Distributed management function» Coverage and quorum condition

344

,�����������*�����

#����������

+ 2����34���+ ��#-%5

"�����������

+ 2����34���+ ��"�%���5

)������������� ���

Very popular content

345

,�����������*������ ����-��

"�����������������

"������������������

�"���������������������

�+� �������������������

�)�����������������������

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

�6���������������� ��������.70

346

6 ����� �������I������3)42r 6 (����������� ��������� ���3� (�������������� � �����

���� ��74-��������2m ����� ����������������3 ���������� �������(���4�

���������������� �(���(�����(�����������(������ �������������

m ��) �����������������m ���(����������������(���(����������� �����&�

#������������3��� ���������� �������(���4N �������2� �������&���(����3#����������4������������ �����#�������������������������

m ��������������3�-�-&�������4���������K�#����� �����������������J���3���������������J��&�#����������������� ����4�Z�����������#-�#����� ����[

m 3����������������������(����(����(�����������������4��������� ����������������������������

347

<������7

r 6 (������(���������(��� ��� �������� ������������������������������� ��7

m ���� ���������������������������������##�������(���-��.������ ���#������������������������������� �� �������������� �����3�����������4� ��������� ����������

m <������2������� ��������2��#��� ������������������������(�������������������(��(������� �(�����(��(������ ����������������� ������#����#���(��-������������� ��������#���������������� ��N �����������7

m 6 ���������(������A � (����������������(����=@� ��S7

348

6 ����� �������I������3�42

r 6 (���� �����(�� �����������

r Q����� �3����(������� ���������� ����������@��������

349

6 ����� �������I������3�42

r .����(������ ������������ ���������������7m S��3�� )4

r 6 (������ ��������������� �����7m � �� ��� ������������������� ������:��� �����;

r 6 (�������� ������#����� ����m ���� �������(������������������ ��m ������ ��������##������#��������� ������3����������

#����������������������:��;4m �������������I�����

r .#����������� ����#��������(��#������3���������J��4&�� ����� ��(�������� ����-

m .��(�������(������2����(������ �����&�����������(��������&����� �����������������(�������������������&���������

r @�������H )�)�A � (�������� ��������� �������7