��u�����Y���8O=�M��(��n�][��Z�����0�s�I� �[B�o ���<����%�O1��?��_� /���&��m�k�~o���������{��8(�tX�{\ƺ������s�8������?�\F�}�|����E��X����7��{�rkǤG;��6���m�[=���F�,ˡ߽
.c�۸)�vdp�k�yV�&:��s���c�ۦ�c���ۆ˨��쏾m/������R��+���W?O'3/�}�mR��} \@���T��r�����w���G�v�C�����57+��0�|R>C���J��='��0�C�#FZ>78�����{���=�#mQc��Y�u�ml�y�-�_�?'}�pz��s/�,ˡ���e,��9�-��i.��]�l� ����{��/�Y�ɍ�]P����+�3�����b�Sn��hG�������O�|�Y�C?��X>�������9�N����xFV����E��|������K���>�J��G������<�K�|�
�yK��:�W,�;Aq����o9��ߢ��ˡ��.��%����n�o�\����#z����_�TU2kx���OC�̠PT�3�����ȏ�����73e�:�?oF� -7j$����.�<�6>m��s���}"�p�%'���GԷ����1�����e?s"J�Wds.�g�P3�����|��M���ɶV7OC�5嫌��j\SD"���ړLlr��u;>
mGa� G�Q����^f�s3�eY�[Φź�(�3���u���p��d�������m��AY�6�,m\��kp�e�I�-[��q].���\7���zm4�^[(}��K����Q�oT��Y�*�>q��c�u"��Í�<�Y_��Xs]�ܲ����W{�dk�M�O�y�;V��f�s�����ꔯ�)W��dk�M�O<��g�볬��z��j?�Zr�����u�꛳��z��j?�Zr��'Y}Ұ�!��i���i��j?�Zr���E�'��ɲ����fW��dk�M�O4��Ѱzn�ս�V��Z�'[Kn�}bS �7V�˲z����\����%7�>1�����YV������~���&�'�d���շfY}��j��H[�'[��)��O��I�O�Xe�L��s^�1r]�1��c�u��X`UoG��U}����\�]�k�2W{[ٻD�;Dz����W{k|��q�wF {'K{�-{��zj����s�����{���{�L{o����w���A_{]�=��7��
��)_{S���|�M���| {�J{oI{Ѿ�&]�M�ڛt�wk {ۥ�s-{��ڻ�����.w�we {����5����5���d�di����u[���5ٲ��Z���<Н���H��ڇ-�|Gtft��3�K��Nm]&ƅhs�i�眗�s��6��#�����
�/3�MC~�Thu�ȳ.�җ��E�u_��se�o��+w�4?��e�u��x�xw�5��p��'�ۖ|0�ֱ>ѕ�[G2���ӓ���ZN1�+�{T��F|���c�p,J�YeZz~�6FcyL�,J_fX�]�ե2ϺJ_vh��17#ũG�5i+�)o�Z#52�%�z�e�o�J�&���Iv����Ԗ��Dwwgw����&����Zۺ1�4G������q�FN�6�ʬ2�Fm��m��̝E]��11��cy�p��e��Mc���ͳ.�җ���*�EF�����xT��L�V��X��k����x����u흭�=m�p�|a����]�dF���F@��~]a����8��qy�_(}���/�������Q��A�w�^~����ӓtf���<��x�Ce
β-��-�����rZ��u�/s�ߘ����y��B���3�M��2!ϺJ_vh��[�aOq[��$^�f�4����݉�����P�/��}%��9L�Ve>�+�~��ٗ�r��Y���ȯ���V�ʳU
�/3,��B��y֥P��C�w,�F��#��]_���ېh��Pz����'���y.>��O���������R�����Q��`!��O��0���ρu�a��� ~ 8�u�x��R�K�P���46�TDD!8�)hg��QMW�
Q�-������t�š����Ί��~����/��{w�ݽB@T�_0rټ��C�hR��
-ᴱ-S�4��~f��Bff �a�1o1j�~b���1�'���Q1��>����t�\���sO���h�Ѩ�m�P���jl��;����UuY^��u+���jT����s�>|�-�eI�� H���ڵeo�d8ߕ������ݏ�|�����֥%3��}�C͵�i��:\wv�n�CF�#�Bׯ�>(�nx��@����:?^�D��c�{Ϛ�u�#���u_wn����:[M\3}W�!��u-8�C�� �7��s���J�����;*���{�`!������c
������@�M(���x����kA�ߙ�|mV�$MB�Ji�r)�B��DH��.f��F�bΞ<�?���Q�x�^""��f��3����&,;���g���dA��#f�}"�J`��r[۶�[�Q�}���ޤ?B×(N��|4E��0HS���Kzu?�I�
V��ͪ������{���y�&����X���3M����{k�^��[�TP����qz��>��
�aMқ��A=������*q&qs�.��|f�>]���O��@�;��^!�;�߬�7+�� �4&���-�2]�o(����I��Xvuۇc���9��6^�1�3��o�a~w���t��Q(�G�0��Қ�*ml��-�w(�����ʖW�>�%�{������52��cg}>���X_4��q�<�2�E���ӌ���Ϗӿ,�Ɩ�=����R���lyF��\6<~<#C\4�漼�>�����=¬eü2��R�7|���|�j�o���i�|p�6�� �{�s�g��-��&��������_\�#�]���!���߈<��3��g�qy��0݆�ux����Y����o��AS��R����5��u��;�T~��{n�!��5?Ƨ*�^S7�u-y{3�yQ��Ś�r$p�`!�w�\ъo"��1�:ѱ��1l`��� �E�x�cd�d``6cd``b�aV �d����,F�����Yz�P1C&�,7\��6! K���A��?H���Z�
l~@��P5<��%!��
`W�f:��� ��P �27)?�������R����@|!�}9������T�T����~2���i%ļ���Kc���l��0�L����q8Dl��*���e����Z���Z�����ǀ�NwdwB�e�����2!��g`��
��=@����;`{�*a|7�\�c��[�����cF&&�����\�r+fv�.F�}�He��������p���@�(��O
%H �
^����6B��Equation �Equation.30�,Microsoft Equation 3.0���0�
:E��Equation �Equation.30�,Microsoft Equation 3.0���e0�AF��Equation �Equation.30�,Microsoft Equation 3.0���0�BG��Equation �Equation.30�,Microsoft Equation 3.0��/�0��0�DTimes New Roman�6�|�d�v�0|�(�
0��DArialNew Roman�6�|�d�v�0|�(�
0�" �DArial Narrowan�6�|�d�v�0|�(�
0�"0�DSymbolarrowan�6�|�d�v�0|�(�
0���b�����(.2�
@�n��?" dd@��������� @@``�����0�eSE �
�$OI# AA%T(C%�"
]}
�U~JF=B
,!b"@#L'&
93232/0/.D$<�,(:$&��<2�$��"J���6bpUC�;����2�$��x?Hhy�'�Xq����2�$S�W����{Y��v��x� ��$���$���$��2�$ϣ'n��Q���.&�����%3�2�$�O��0���ρu�a����
H��$���$���$��2�$�����c
��������I�2�$�\ъo"��1�:ѱ��1�zL���0e����0e���������
��������� �A������������������������@�������� ��A�������5%���������� 8c8c
?�����1�������� ����d��������0u���0����@T��������y��2� N�P���'�p���<����'�p��A�)BCD|�E�|���|��`��3������f3�3�@������3������Z��g��4KdKdv�0p������p�pp�@<��4!d!d`�
0,��7��g��4ddddv�0p�����p�' p��<��4dddd`�
0,��7��u�ʚ;2N��ʚ;<��4dddd��{�
0���h�`�___PPT9�B/�0��&�%�?��%O��=��,���8FEC and Pseudo-ARQfor Receiver-drivenLayered Multicast��hPhilip A. Chou, Alex Mohr,Albert Wang, Sanjeev Mehrotra
(Microsoft, University of Washington, Stanford)�i90�(1���Problem���Efficient and robust broadcast of real-time audio and video over the near-term Internet
Best-effort
packet loss, jitter, out-of-sequence
Heterogeneous
transmission rate, loss rate, delay, jitter, receivers
Feedback available�vX%7X%7�]'��Problem��Find ways to multicast real-time audio and video efficiently and robustly over the near-term Internet
Best-effort
packet loss, jitter, out-of-sequence
Heterogeneous
transmission rate, loss rate, delay, jitter, receiver capacity
Dynamic
Influence design of network services in longer term��f%?4f%?4���Outline��>Multicast
Receiver-driven Layered Multicast
FEC and Pseudo-ARQ��� Multicast��BMechanism for broadcasting in packet networks: any receiver able to receive broadcast packetsby tuning in to broadcast address
Our focus: IP networks
Protocols:
How to dynamically maintain a multicast routing tree
IGMP, DVMRP/PIM/CBT/&
How to forward packets along the tree
IP Multicast�b�5&
�5&
���-Packet Forwardingin a Multicast Routing Tree��
�!�� Grafting / Joining / Subscribing��
� ��!Pruning / Leaving / Unsubscribing���
�
��Observations��(Bandwidth is conserved.
Sender has no knowledge of receivers(likewise any interior router).
Scalable: As new receivers join, no new resources (bandwidth, computation) are needed at the sender, and resources needed at any individual router are bounded.
Joining and Leaving are a form of feedback.���"Growth of Multicast Infrastructure��!MBONE has grown from 901 routers in 1994 to 12000 routers in 1998
Commercial routers (e.g., Cisco) have been multicast enabled for last two years
ISPs (e.g., UUNET, @HOME) have begun to provide multicast service
Intranets are widely multicast enabled
Much research and standardization work� ��Types of Multicast Applications��2Reliable Multicast
1-to-M file transfer, distributed software updates, synch. of distributed databases, filesystems
must be reliable, but delay is not constrained
Real-time Multicast
for broadcast of live or pre-recorded audio/video
need not be reliable, but delay is constrained�L�c�c�$h��
��Reliable Multicast���ARQ-based error control
need to avoid repeat request implosion
protocols use hierarchical re-transmitters(SRM, RMTP, RAMP, RMP, & )
FEC-based error control
digital fountain
Multiple channels for flow control�`n#n#���Real-time Multicast��Error resilient source coding for error control
in MBONE tools (nv), commercial systems
FEC-based error control
in MBONE tools (RAT), commercial systems
fixed amount of redundancy
ARQ-based error control
commercial systems, LVMR
Layered source coding for flow control��0(D'0(D'�@����dReceiver-driven Layered Multicast (S. McCanne 96)�$3" �&���Code source in layers (base, enh1, enh2, & )
Send each layer to different multicast group���Dynamic Joining/Leaving��
�"��The Case for FEC��
�2 ��)FEC forReceiver-driven Layered Multicast��ZAmount of redundancy must be receiver-driven to deal with heterogeneity, dynamics
Generate FEC in layers, using a systematic rate-compatible code (for each source layer)
Send each layer to different multicast group
At each receiver, subscribe to number of source layers, number of parity layers for each source layer, to optimize received quality�[Z[���Generation of Parity Packets���Block each source layer into K packets per block
Apply systematic Reed-Solomon type code to packets (bytewise) to produce N-K parity packets�e �3!��Optimization at Each Receiver��6Measure transmission rate and loss probability
For this transmission rate and loss probability, minimize expected distortion (over number of source layers, and number of parity layers for each source layer)
Subscribe to optimal number of source layers, and optimal number of parity layers for each source layer�7"��Expected Distortion and Rate��
�C#��Lagrangian Optimization�
��
���Unequal Error Protection��
�
��The Case for ARQ���FEC does not achieve capacity C = 1-p
ARQ makes optimal use of forward channel
Adapts to loss (erasure) probability p
Used extensively for data transmission (e.g., TCP) and media transmission (e.g., VOD)
Must avoid repeat-request implosion
Observe: for broadcast of real-time media, delay (number of repeat-requests) is bounded�RJO����0Pseudo-ARQ forReceiver-driven Layered Multicast���Sender transmits delayed versions of source
Receivers request repeats by subscribing and unsubscribing to delayed versions�[
���Hybrid FEC & Pseudo-ARQ���Sender delays parity packets
Repeated info is actually parity info�EPE���Reduction in Network Traffic��
�D$��Markov Decision Process��=Finite-state stochastic process in whicha decision can be made at each step to influence the transition probabilities,in order to maximize an expected reward
Sequence of decision rules is a policy
Optimal policy, which minimizes expected cost (D+lR) of paths through state space, can be found by dynamic programming�6>�2E��D���State Space for FEC/Pseudo-ARQ��
�G&��Caveats��No experiments so far, only analysis
no actual network transmissions,no source coding, no channel coding
source is modeled as D=s 22-2R
channel is modeled as iid 20% packet loss,no packet jitter or resequencing
assumed no join or leave latencies
Little analysis of aggregate behavior��%�&%Z o&�6�&I�F%��Analyzed Systems���- No error protection (original RLM)
- Equal error protection, redundancy determined by sender; K=8; N=11,14,17,20
- Unequal error protection, determined by receiver; K=8; Ni=Ni* (RLM w/FEC)
- FEC and Pseudo-ARQ; W=1,2,4,8, KW=8��%�1�3��N�2�3��L�3&�4`A����$
���Results of Analysis���
��� Issues for Further Investigation���Estimation of channel condition
Accommodation for join/leave latency
Clustering of channels
Study of aggregate (social) behavior
Implementation���Summary��3FEC & Pseudo-ARQ allow error controlwhen flow control alone is insufficient
Layered (rate-compatible) FECallows receiver-driven approach
Pseudo-ARQ is more effective than FECand uses only standard multicast machinery
Hybrid FEC/Pseudo-ARQ enhances scalability
Many issues remain for further investigation/���&�'�(�)�*�+�,�-�.�/ �0
�1�I�J
�K�L�M�N�O�P�Q�R�S�T�U�V�W�X�Y�Z�[�\�^ ���� `� ������̙33�������`� ��������������`� ���ff3��3�3�3���f`� ���333������MMM���`� ��������f������`� ���������f���`� ������3�����������>��?" dd@���������,�|��?" dd�@��������� � � �" �@� �`��� �n��?" dd@��������� @@``��P�R @ ` �`�p�>��>$����( �����������������
���
�
��6�Tu������� ����P���
�T�� Click to edit Master title style�!�
!�
�
��0�x������ �������
���RClick to edit Master text styles
Second level
Third level
Fourth level
Fifth level�!
�
S��
�
��0��|������ �`�`����
�X��*�����
�
��0�T������� �`����� �
�Z��*�����
�
��0�(������� �` �����
�Z��*����H
���0�������h�� ?� ������3�̙33������� �$Blank Presentation���0���@���j�( �
���
��
��T�|چ��?�����?������
��?�d���
�
�x��*� 2�����
��
��T����?�����?������
��?�� ����
�z��*�(2�����p
��
��0���� ?�`�
=����:
��
��T����?�����?������
��?��F�����
���RClick to edit Master text styles
Second level
Third level
Fourth level
Fifth level�!
�
S�
��
��Z�,����?�����?�������
��?��dO�� �
�x��*� 2�����
��
��Z�����?�����?�������
��?��� O���
�z��*�(2�����H
����0�����i���q�� ?� ������̙33��������P �P���( �@�
��
�
��T���y��?�����?������
��?�d���
y
�x��*� 2�����
�
��T�4�y��?�����?������
��?�� ���y
�z��*�(2�����
�
��Z�L�y��?�����?�������
��?��dO�� y
�x��*� 2�����
�
��Z�8�y��?�����?�������
��?��� O��y
�z��*�(2�����H
���0�����i���q�� ?� ������̙33�������������� ���( �
��l
� C��Ѐ�������p���
���l
� C��`������ ��
���
���H
���0�������h�� ?� ������̙33����������
�
�������P���( ���0C
��l
� C����������P��
�
���l
� C��t������`���
���H
���0�������h�� ?� ������̙33���������
� ������p���0�( �
���x
�� c�$��و�������P��
�
���x
�� c�$�ڈ�����P����
���H
����0�������h�� ?� ������̙33����������
� �������( �����
��l
� C����������P��
���l
� C��ġ����������
���H
���0�������h�� ?� ������̙33����������
��������( �
��l
� C���\ ������P��
���l
� C��A ���� ��
���H
���0�������h�� ?� ������̙33���������
���� �'�x@�P
���( �
�x�r
�x S��p �������P��
���^B
�x
��6��D���� ��
�0p�2
�x
��<���w��������� ��� �
�1��S��^
�x
��6�������� ���
���^
�x
��6�������� �� ���
�^B
� x@
��6��D���� ��@�
� �^B
�
x
��6��D���� ��
�` �^B
�x@
��6��D���� �`��^B
�x@
��6��D���� ��
��^B
�
x
��6��D���� �����2
�x
��<��P{��������� ��Pp�
�1��R��2
�x
��<���~��������� �����
�1��R��^B
�x
��6��D���� �``��
�x
��<�� ���������� �0 P
�:���
�^B
�x@
��6��D���� �@ �
@�^B
�x
��6��D���� �
� � @�^B
�x
��6��D���� �@�
�
��2
�x
��<���p��������� ��� �
�1��R��2
�x
��<��4o��������� ��p� �
�1��R��^B
�x
��6��D���� �@ ��^
�x
��6�������� �0P
�^B
�x@
��6��D���� �@�@�^B
�x
��6��D���� �
��@�2
�x
��<��쌈�������� ��p��
�1��R��^B
�x
��6��D���� �@��^
�x
��6�������� �� �
��
�^B
�x
��6��D���� ���@� �^B
� x@
��6��D���� ��
��
��
�2x
��T�������������?�
���
&
�5��1�(2��
�3x
��T�������������?�
��p&
�5��2�(2�pB
�Fx
��H��D�����>��?����
�
`�vB
�Gx
��N���D�����>��?��`�
@`�vB
�Ix
��N��D�����>���?��`@@���
�Jx
��<��ԡ��������?��`�
�@��
S,G | data�(2��
��x
#�l�p¹�G`�H�5I�|J
Kh[L
M4�N�O�����?��`��
�C�� :S,G - 1,2 :� 2��
��x
��6��� �����?�� �
�K��multicast routing table�(2��
��x
��6�(� �����?���`
�:��packet�(2���
��x
��6��� �����?�����
�`��.S = Source AddressG = Multicast Group Address�/ 2/�H
�x��0�������h�� ?��
�x� ������3�̙33��������_�
��@�:}�P��[�( �
���r
�� S��H"\�����P0P��
\
���.�8 ���P�
�^����P��2
��
��<��$\���������� ��
�1��S��f
��
��6����������
����fB
��
��6��D�����@`@��f
� �
��6����������� ��
�fB
�
�
��6��D������
`@`�fB
��B
��6��D�����@��
� �fB
��
��6��D�������
` �fB
�
�B
��6��D�����`��fB
��B
��6��D����� �
��fB
��
��6��D���������2
��
��<��x)\���������P�p�
�1��R��2
��
��<���,\�������������
�1��R��fB
��
��6��D�����``��
��
��<��� ���������0 P
�:���
�fB
��B
��6��D����� @�
@�fB
��
��6��D������
� @�fB
��
��6��D������
@�
��2
��
��<��r ���������� ��
�1��R��2
��
��<��`u ���������p�� �
�1��R��fB
��
��6��D����� @ ��f
��
��6���������0P
�fB
��B
��6��D�����@�@�fB
��
��6��D������
�@�2
��
��<���x ���������p���
�1��R��fB
��
��6��D�����@��f
��
��6����������
� ��
�fB
� �
��6��D�������@� �fB
�!�B
��6��D�������
�
�fB
�"�B
��6��D������
��
`�2
�#�
��6��J ����������p���
�1��R��`
�M�
��0��������0P
�2
�Q�
��6����������p���
�1��R��4�l ��
�`�
�o����
`��,$�D0�xB
�\��
��H��D�����>���?���
���
�e�
��N�|�����������?��
�
@f
�5��1�(2��
�f�
��N�������������?�@�
�f
�5��2�(2�lB
�i��
��<���D���?�@��lB
�j��
��<���D���?��
�@�lB
�k��
��<���D���?�@�@��
�l�
��6�����������?���
�
�>��Join S,G� (2 ��
�m�
�f��Ո�G���H/AI����J
L
M�>��N���������?���r
�C�� :S,G - 1,2 :� 2��
�n�
��6�,�������?�`�`�
�K��multicast routing table�(2��z ��p��
�q�����
��,$�D0�rB
�r�
��B��D�����>��?��0 �� �xB
�s�
��H���D�����>��?��0 p0 �xB
�t��
��H��D�����>���?�pp0 ��
�u�
��6��҈�������?�����
�>��Join S,G� (2 ��
�v�
�f� ��G���H�(I����J
L
M4���N�p�������?��Pb
�A�� :S,G - 1 :� 2��
�w�
��6��������?��p��
�K��multicast routing table�(2��
�x�
��N�Ĉ���������?��p�
�5��1�(2��l ���
��
�}���
����,$�D0�`B
�y�B
��0��D����@�@�`B
�z�
��0��D������
��`B
�{�
��0��D����@��`B
�|�
��0��D�����
�@�H
����0�������h�� ?/� �m��v�� ������3�̙33���������&�
�Z&�R&`�GT}0��
! "#$%&'()*+,-.-/0123��$�( �
�|�r
�| S����\�����P0P��
\
���x�8 ���P�
�Q}���P��fB
�|
��6��D����0���
��2
�|
��<����\��������0�� ��
�1��S��f
�|
��6��������0��
����fB
�|
��6��D����0�@`@��f
�|
��6��������0��� ��
�fB
� |
��6��D����0��
`@`�fB
�
|B
��6��D����0�@��
� �fB
�|
��6��D����0���
` �fB
�|B
��6��D����0�`��fB
�
|B
��6��D����0� �
��fB
�|
��6��D����0�����2
�|
��<��4 \��������0�P�p�
�1��R��2
�|
��<���\��������0�����
�1��R��fB
�|
��6��D����0�``��
�|
��<���� ��������0�0 P
�:���
�fB
�|B
��6��D����0� @�
@�fB
�|
��6��D����0��
� @�fB
�|
��6��D����0��
@�
��2
�|
��<��d� ��������0�� ��
�1��R��2
�|
��<���� ��������0�p�� �
�1��R��fB
�|
��6��D����0� @ ��f
�|
��6��������0�0P
�fB
�|B
��6��D����0�@�@�fB
�|
��6��D����0��
�@�2
�|
��<���� ��������0�p���
�1��R��fB
�|
��6��D����0�@��f
�|
��6��������0��
� ��
�fB
�|
��6��D����0���@� �fB
�!|B
��6��D����0��
��
`�B
�F}
��B���D���?�` �,$�D0�G�l ��
p�
�R}��
p�
��,$�D0�2
�N}
��6��� �������/�� �
�1��R��`
�J}
��0�������1������fB
�K}B
��6��D����1��P�fB
�L}
��6��D����1�P�P�fB
�M}
��6��D����1�����rB
�O}�
��B��D���?�1�P�
p���l ��@�
�S}�
p���,$�D0��
�}
��<���� �����?�2��@� �
�K��multicast routing table�(2�`
��|
��0�������2�P p@�fB
��|B
��6��D����2� ` �` �fB
��|
��6��D����2��@�` �fB
��|
��6��D����2� ` � �2
��|
��6�� �������2��� �
�1��R��rB
��|�
��B��D���?�2�� �xB
�}
��H��D�����>��?�2� ` � �~B
�}
��N���D�����>��?�2� ` �` �~B
�}�
��N��D�����>���?�2��@�` ��
�}
��H�4� ���������?�2��P`
�?�� Leave S,G�
(2
��
�}
#�l�0� �GdQ��H�9Iʦ��J
L
M�k��N���������?�2� `` 2
�A�� :S,G - 1 :� 2���
�}
��T�P� ���������?�2�P@��
�5��1�(2�xB
�7}
��H��D����Ԕ�?�2�P ���xB
�8}
��H��D����Ԕ�?�2�� 0 ��xB
�9}
��H��D����Ԕ�?�2� p��xB
�:}�
��H��D����Ԕ�?�2�0 � ��xB
�;}�
��H��D����Ԕ�?�2�p ���xB
�<}�
��H��D����Ԕ�?�2�� ��xB
�=}�
��H��D����Ԕ�?�2�� P��(�l ��
@
�T}���
�,$�D0�`
�&}
��0�������3�0 P@�xB
�+}�
��H���D���?�3���P �~B
�,}�
��N��D�����>���?�3��� ��
�-}
��H�D� ���������?�3��
��
�?�� Leave S,G�
(2
��
�.}
#�l��� �G@���H�9IA���J
L
Mt��N���������?�3�` ��
�C�� :S,G- 1, 2 :� 2��
�/}
��<��Ы �����?�3�F
�K��multicast routing table�(2�xB
�2}�
��H��D����Ԕ�?�3����@�xB
�3}
��H��D����Ԕ�?�3����@���
�B}
��T�� ���������?�3��@�
�5��1�(2�H
�|��0�������h�� ?/� �}�.}� ������3�̙33����������
������$��( �
�$�l
�$ C���' ������P��
���l
�$ C���E ��������
���H
�$��0�������h�� ?� ������̙33����������
����������(��( �\�@d@
�(�l
�( C������ `P��
���l
�( C��l� ��������
���H
�(��0�������h�� ?� ������̙33����������
���������,��( ��
�,�l
�, C��S ��������
���l
�, C��� ������P��
���H
�,��0�������h�� ?� ������̙33����������
����������0��( �2����
�0�l
�0 C���� ������P��
���l
�0 C��<� ��������
���H
�0��0�������h�� ?� ������̙33����������
����������4��( �
�4�l
�4 C����������P��
�
���l
�4 C��Ŀ������`���
���H
�4��0�������h�� ?� ������̙33��������^�
����%�8 ����( �
�8�l
�8 C��O\����P`P��
\
����
�28
��<��<�\�����?��� p�
�@��
Base layer� 2��
�=8
��<����\�����?��� ��
�9��...�(2�jB
�@8
��B��D���?���
��
�jB
�A8
��B��D���?��` �` ��
�G8
��<��4�\�����?��� p��
�K��to multicast group G0� 2���
�H8
��<����\�����?��@ p
�\��Enh. layer 1�
2
�
��
�J8
��<����\�����?��@�
�9��...�(2�jB
�K8
��B��D���?��`�`��
�Q8
��<����\�����?��@p�
�K��to multicast group G1� 2���
�R8
��<����\�����?��� p�
�\��Enh. layer 2�
2
�
��
�T8
��<����\�����?�����
�9��...�(2�jB
�U8
��B��D���?���
��
��
�[8
��<��\�������?���p��
�K��to multicast group G2� 2�vB
�n8
��N���D����?����`���
�o8
��<����\�����?���`�
�<���time�(2�
�q8
��<�� �\����� ��������\
���
�s8
��0���\����� �p���
�D��0Receivers subscribe to as many layers as desired���
�w8
��T��\������������?�� ���
�Y��S0t�:(2�����
�x8
��T���\������������?�� P��
�Y��S0t+1�8(2�����
�y8
��T�0�\������������?�� P
�
�Y��S0t+2�8(2�����
�z8
��T�p�\������������?�� �
�
�Y��S0t+3�8(2�����
�{8
��T���\������������?�� `�
�
�Y��S0t+4�8(2�����
�|8
��T���\������������?�� `�
�[��S0t+5�:(2�����
�}8
��T�0�\������������?�@��
�W��S1t�8(2�����
�~8
��T���\������������?�@P�
�Y��S1t+1�8(2�����
�8
��T�t�\������������?�@ P
�Y��S1t+2�8(2�����
��8
��T��`������������?�@�
�Y��S1t+3�8(2�����
��8
��T�`������������?�@`�
�Y��S1t+4�8(2�����
��8
��T�P `������������?�@`
�Y��S1t+5�8(2�����
��8
��T�`������������?�����
�W��S2t�8(2�����
��8
��T��`������������?��P��
�Y��S2t+1�8(2�����
��8
��T�H`������������?�� P
�
�Y��S2t+2�8(2�����
��8
��T��`������������?���
�
�Y��S2t+3�8(2�����
��8
��T��`������������?��`�
�
�Y��S2t+4�8(2�����
��8
��T�$`������������?��`�
�Y��S2t+5�8(2���H
�8��0�������h�� ?� ������̙33��������3"�
��!��!��=N@@��[!�( ��p
�@�l
�@ C��L,`������P��
`
���:�8 �@�@�
�K@��@@��2
�@
��<���/`���������`���
�1��S��f
�@
��6��������� �@��f
�
@
��6���������
� @�
�lB
�@B
��<���D�����Ԕ����
��� �lB
�
@
��<���D�����Ԕ����
��lB
�@B
��<���D�����Ԕ�����
P
�lB
�@
��<���D�����Ԕ���P
P
��2
�@
��<���/`������������
�
�1��R��2
�@
��<���3`���������@�`�
�1��R��lB
�@
��<���D�����Ԕ�������
�@
��<��8`�����������
�:���
�2
�@
��<���:`���������`@�`
�1��R��2
�@
��<���������������
@`
�1��R��f
�@
��6�����������
�lB
�@B
��<���D�����Ԕ���p�lB
�@
��<���D�����Ԕ���
�2
�@
��<��4@`������������
�1��R��lB
�@
��<���D�����Ԕ���pp��f
� @
��6��������� � @�
�lB
�!@
��<���D�����Ԕ���@��� �lB
�"@B
��<���D�����Ԕ���0�
P�~B
�%@
��N���D�����Ԕ�?�������~B
�&@
��N���D�����Ԕ�?�������~B
�'@
��N���D�����Ԕ�?�������xB
�(@
��H��D�����Ԕ�?�����`�~B
�)@
��N���D�����Ԕ�?�� 0�0�~B
�*@
��N���D�����Ԕ�?���0���~B
�+@
��N���D�����Ԕ�?�� � 0�~B
�,@
��N���D�����Ԕ�?���`�`�xB
�-@
��H��D�����Ԕ�?���`���lB
�.@B
��<���D�����Ԕ���@��� �lB
�/@B
��<���D�����Ԕ����
� � �lB
�0@
��<���D�����Ԕ������� �lB
�1@
��<���D�����Ԕ����
�@�lB
�2@B
��<���D�����Ԕ���p
�@�lB
�3@B
��<���D�����Ԕ���`�
��lB
�4@B
��<���D�����Ԕ�����
�
0�lB
�5@
��<���D�����Ԕ��������lB
�6@
��<���D�����Ԕ���0��lB
�7@
��<���D�����Ԕ����
0�
��lB
�8@
��<���D�����Ԕ���
�
��xB
�9@
��H��D�����Ԕ�?���P
�xB
�:@
��H��D�����Ԕ�?����
��xB
�;@
��H��D�����Ԕ�?��0�
0�lB
�<@B
��<���D�����Ԕ���`�
��lB
�=@
��<���D�����Ԕ���0
0@�lB
�>@
��<���D�����Ԕ����@���lB
�?@B
��<���D�����Ԕ����@0@��
�D@
��0��J`����� ���`�
���GReceivers subscribe and unsubscribe according to instantaneous capacity�HG���8 ��M
� �
�N@�M
�� ��xB
�A@
��H��D����?���`� `�~B
�B@�
��N���D����?���P
�`��
�F@
��<���O`�����?���`� �
�C��transmission rate�(2���
�G@
��B��S`�����?��PM
p^
�]�� loss prob�
(2
���B
�H@
��T���D�����?����
� �
�
�I@
����0e����0e���������
B�CPDE�@F� ��������� �A������������������������@���� ��5%���������� 8c8c
?A�)BCD|�E�|���|�����PHt���K��C ����8��]E�0���
@� � � � � ����� `��
�L@
��6��W`�����?���
�T
�5��1�(2��
�M@
��6�[`�����?�����
�5��0�(2�H
�@��0�������h�� ?� ������̙33���������&�
��&�&��AE�0��&�( �����
���r
�� S���Y`�������P��
`
���:�8 �@�@�
�B���@@��2
��
��<���``���������`���
�1��S��f
��
��6��������� �@��f
��
��6���������
� @�
�lB
��B
��<���D�����Ԕ����
��� �lB
� �
��<���D�����Ԕ����
��lB
�
�B
��<���D�����Ԕ�����
P
�lB
��
��<���D�����Ԕ���P
P
��2
��
��<���e`������������
�
�1��R��2
�
�
��<���h`���������@�`�
�1��R��lB
��
��<���D�����Ԕ�������
��
��<��Tm`�����������
�:���
�2
��
��<��p`���������`@�`
�1��R��2
��
��<���s`����������
@`
�1��R��f
��
��6�����������
�lB
��B
��<���D�����Ԕ���p�lB
��
��<���D�����Ԕ���
�2
��
��<���v`������������
�1��R��lB
��
��<���D�����Ԕ���pp��f
��
��6��������� � @�
�lB
��
��<���D�����Ԕ���@��� �lB
��B
��<���D�����Ԕ���0�
P�~B
��
��N���D�����Ԕ�?�������~B
��
��N���D�����Ԕ�?�������~B
��
��N���D�����Ԕ�?�������xB
��
��H��D�����Ԕ�?�����`�~B
��
��N���D�����Ԕ�?�� 0�0�~B
��
��N���D�����Ԕ�?���0���~B
� �
��N���D�����Ԕ�?�� � 0�~B
�!�
��N���D�����Ԕ�?���`�`�xB
�"�
��H��D�����Ԕ�?���`���lB
�#�B
��<���D�����Ԕ���@��� �lB
�$�B
��<���D�����Ԕ����
� � �lB
�%�
��<���D�����Ԕ������� �lB
�&�
��<���D�����Ԕ����
�@�lB
�'�B
��<���D�����Ԕ���p
�@�lB
�(�B
��<���D�����Ԕ���`�
��lB
�)�B
��<���D�����Ԕ�����
�
0�lB
�*�
��<���D�����Ԕ��������lB
�+�
��<���D�����Ԕ���0��lB
�,�
��<���D�����Ԕ����
0�
��lB
�-�
��<���D�����Ԕ���
�
��xB
�.�
��H��D�����Ԕ�?���P
�xB
�/�
��H��D�����Ԕ�?����
��xB
�0�
��H��D�����Ԕ�?��0�
0�lB
�1�B
��<���D�����Ԕ���`�
��lB
�2�
��<���D�����Ԕ���0
0@�lB
�3�
��<���D�����Ԕ����@���lB
�4�B
��<���D�����Ԕ����@0@��
�5�
��0��`����� ���@�
�i��9Problem is that ambient congestion may always be present
�::�d�
�?�
��<������3���?� P��
��
�@�
��He�s���`�����������?���,�
�>��(2�
��
�A�
��HQϣ�Ĉ`�����������?�@�,T
�>��(2�
�V
�8 ��K
� �
�E��K
�� ��xB
�7�
��H��D����?���`� `�~B
�8��
��N���D����?���P
�`��
�9�
��<�� �`�����?���`� �
�C��transmission rate�(2���
�:�
��B���`�����?��PK
p\
�]�� loss prob�
(2
���B
�;�
��T���D�����?����
� �
�
�<�
����0e����0e���������
B�CPDE�@F� ��������� ��������������������������@���� ��5%���������� 8c8c
?A�)BCD|�E�|���|�����PHt���K��C ����8��]E�0���
@� � � � � ����� `��
�=�
���0e����0e���������
B�CpDE�LF�$��������� ��������������������������@������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|�����p/a�Sf��i�+��Ci��� ��]�Eh0���@� � � � � � ����` ���
�C�
��6�ȓ`�����?���
�T
�5��1�(2��
�D�
��6�p�`�����?�����
�5��0�(2�H
����0�������h�� ?� ������̙33����������
���������( ���
���l
�� C����`����P0P��
`
���l
�� C����`�����0��`
���H
����0�������h�� ?� ������3�̙33��������t�
�$���'HH ���( �
�H�d
�1H
��<��������?�� @P
`�l
�H C��p�`������P��
`
���l
�H C��,�`��� ��@��`
����
�H
��<��ܦ`�����?��� �@�
�B��Source layer�
2
��
�H
��<��<�`�����?��� ���
�9��...�(2�jB
�H
��B��D���?��p��jB
� H
��B��D���?��� p�� ���
�H
��<����`�����?��� @��
�m��to multicast group Gx� 2���
�H
��<��d�`�����?��p�@0
�D��Parity layer 1� 2��
�H
��<���`�����?��p��0
�9��...�(2�jB
�H
��B��D���?���p�����
�H
��<���`�����?��p@�0
�o��to multicast group Gx.1� 2���
�H
��<����`�����?����@�
�D��Parity layer 2� 2��
�H
��<����`�����?������
�9��...�(2�jB
�H
��B��D���?��p����
�H
��<��D�`�����?���@��
�o��to multicast group Gx.2� 2���
�&H
��<��`�`�����?��p�@0
�D��Parity layer 3� 2��
�'H
��<����`�����?��p��0
�9��...�(2�jB
�(H
��B��D���?���p�����
�)H
��<����`�����?��p@�0
�o��to multicast group Gx.3� 2����
�5H
��T�D�`������������?�� p��
�s��StK�:(2������
�6H
��T���`������������?�� p�
�u��StK+1�:(2������
�7H
��T���`������������?�� �
�
�u��StK+2�:(2������
�8H
��Z���`�������������?�� �
��
�]��S(t+1)K�:(2�����
�;H
��T��`������������?�p�
�0
�\��Pt+1,1�:(2�����
�H
��T��`������������?��P��
�Z��Pt,2�:(2�����
�?H
��T��b������������?�p�
00
�\��Pt+1,3�:(2�����
�@H
��T�b������������?�p�
0
�Z��Pt,3�:(2�����
�AH
��Z�x b�������������?�� 0�
�
�_�� S(t+1)K+1�:
(2�����
�BH
��Z��b�������������?�� �
0�
�_�� S(t+1)K+2�:
(2�����
�CH
��T�$b������������?�� p`
�G��K�*(2�pB
�DH@
��H��D����o��?� @P �pB
�EH@
��H��D����o��?� @P
�pB
�FH�
��H��D����o��?�@������
�GH
��Z���b������������?��P�
�I��N-K�*(2�pB
�HH�
��H��D����o��?��
��`�H
�H��0�������h�� ?� ������̙33����������
��������( ���
���l
�� C��tb������P��
b
���l
�� C��0 b��������b
���H
����0�������h�� ?� ������3�̙33����������
����%a���(�( ���
���l
�� C��x$b������P��
b
���`�
��
c�$A?��?�X
` ����`�
��
c�$A
?��?�@���
�pB
�
�
��H��D����?���PPM �pB
��@
��H��D����?��M P M �
��
#���0e����0e���������
B}C�DE�@F� ���� ������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|�����@@��� ����@o����.�}�
@� � � � � ���`P� ��
�
�
��<���(b�����?��M �� 4
�9��layer�(2�j
��
��B�������?��CP�M �j
�(�
��B�������?��VP�M �j
�)�
��B�������?��
PM �j
�.�
��B�������?���PPM ���
�0�
��T�L-b���������?���P�
�P��D0�2(2
�����
�1�
��T�t1b���������?����P�
�P��D1�2(2
�����
�2�
��Z�h5b����������?����m{
�B��& �$(2���
�3�
��T�,9b���������?����P<
�P��D8�2(2
�����
�4�
��T��=b���������?����P�
�P��D2�2(2
�����
�5�
��T��Bb���������?��M �p�
�A��1�$(2���
�6�
��T�Gb���������?��M p0�
�A��2�$(2���
�7�
��T��Jb���������?��M 0��
�A��3�$(2���
�8�
��T��Nb���������?��M ���
�A��0�$(2���
�:�
��T��Rb���������?��M ���
�A��8�$(2���
�;�
��T��Vb���������?����P�
�P��D3�2(2
�����
�>�
��T�L[b���������?�� ��
�B��& �$(2�jB
�@�
��B��D����?� P
P
W ��
�B�
#���0e����0e���������
B�C�DE�(F����� ������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|���
��A�����7`��9�'��� @� � � ����P
�` ��
�H�
��N��_b���������?���P
-
�A��1�$(2��
�Q�
��N��cb���������?�` ��
�A��0�$(2��
�T�
��N�`hb���������?� �P
�
�A��0�$(2��
�U�
��N�bb���������?�` p0
�A��1�$(2��
�V�
��N��ob���������?�` p0
�A��3�$(2��
�W�
��N��sb���������?�` ��
�A��2�$(2��
�Y�
��N��wb���������?�� �=
���Ri=Ni /K�X (2
��
����d
�[�
��<��������?�pP
�` �jB
�_�
��B��D����?�` P
P` �1�
�`�
��N�Tb���������?�@�
��
��� pi=p(Ri )�l
(2
��
������
�a�
��N�4�b���������?��
�
�g��
raw loss prob�$(2
��H
����0�������h�� ?� ������3�̙33����������
�h�` �?����( ��
���r
�� S��h�b�������P��
b
���`�
��
c�$A?��?��0����`�
��
c�$A?��?���"����jB
� �
��B��D����?�P���
��
��
��N�Аb���������?��
0��
�A��0�$(2��
��
��N��b���������?��
�p�
�A��1�$(2��
��
��N�D�b���������?��
�
p�
�A��3�$(2��
��
��N���b���������?��
0 � �
�A��2�$(2���
��
��N���b���������?�@�
�`��R=N /K�>(2
���jB
��
��B��D����?��
���
��
�#�
#���0e����0e���������
B�C�DE�(F����� ������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|���
��A�����7`��9�'��� @� � � ����
��
��
�*�
#���0e����0e���������
B�C�DE�(F����� ������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|���
��A�����7`��9�'��� @� � � ���`��
��
�,�
#���0e����0e���������
B�C�DE�(F����� ������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|���
��A�����7`��9�'��� @� � � ����
��
��
�-�
#���0e����0e���������
B�C�DE�(F����� ������ ��Ԕ���������� 8c8c
?A�)BCD|�E�|���|���
��A�����7`��9�'��� @� � � ������
���
�.�
��N��b���������?����]
�P��S1�2(2
�����
�/�
��N�Ьb���������?��
��-
�P��S2�2(2
�����
�0�
��N�L�b���������?����
�P��S3�2(2
�����
�2�
��T��b����������?���i
�B��& �$(2�dB
�3�
��<���D����?���� �
�dB
�5�
��<���D����?��
�� ��dB
�6�
��<���D����?���� �dB
�7�
��<���D����?�
�� @�dB
�8�
��<���D����?��`���dB
�9�
��<���D����?��`���dB
�:�
��<���D����?�`�
�dB
�;�
��<���D����?�``��
�pB
�<�
��H��D������?��
���
�pB
�=�
��H��D������?��
v�
�pB
�>�
��H��D������?��
.7�
�pB
�?�
��H��D������?��
���
�H
����0�������h�� ?� ������3�̙33����������
�z�r0�L�
�( �����
�L�l
�L C����b������P��
b
���^�
�L
��6�A����?� ����H
�L��0�������h�� ?� ������̙33����������
����@�<���( �\�@�~@
�<��l
�<� C����b������P��
b
���l
�<� C��l�b�����`��b
���H
�<���0�������h�� ?� ������̙33��������X�
�
�P�*SX0����( �����
�X�l
�X C���b����P0P��
b
���l
�X C����b������ ��b
����
�X
��<���b�����?���@�
�C��
Source stream� 2��
�X
��<��L�b�����?�����
�9��...�(2�jB
�X
��B��D���?��0p�0�jB
� X
��B��D���?���
p��
��
�X
��<����b�����?��@��
�J��to multicast group G� 2��
�X
��<����b�����?����@P
�F��Delayed stream 1� 2��
�X
��<��t�b�����?�����P
�9��...�(2�jB
�X
��B��D���?���
p��
��
�X
��<��<�b�����?���@�P
�K��to multicast group G1� 2��
�X
��<��0�b�����?���@�
�F��Delayed stream 2� 2��
�X
��<����b�����?�����
�9��...�(2�jB
�X
��B��D���?��0p�0��
�X
��<��x�b�����?��@��
�K��to multicast group G2� 2�vB
�:X
��N���D����?��
p0
��
�;X
��<����b�����?��` p0
�<���time�(2���
�>X
��T��b������������?�p��
�X��St�:(2�����
�?X
��T�(�b������������?� p�
�Z��St+1�:(2�����
�CX
��T�h�b������������?��
�
�Z��St+2�:(2�����
�DX
��T�Hh������������?��
��
�Z��St+3�:(2�����
�EX
��T�h������������?�0�
�
�Z��St+4�:(2�����
�FX
��T�� h������������?��
0�
�Z��St+5�:(2�����
�GX
��T�Th������������?�� pP
�X��St�:(2�����
�HX
��T�h������������?��p�P
�Z��St-1�:(2�����
�IX
��T��h������������?� p�
�Z��St-1�:(2�����
�JX
��T��h������������?�p��
�Z��St-2�:(2�����
�KX
��T��!h������������?��
�
�X��St�:(2�����
�LX
��T��%h������������?���
P
�Z��St+1�:(2�����
�MX
��T��*h������������?��
��
�Z��St+1�:(2�����
�OX
��T��/h������������?���
�P
�Z��St+2�:(2�����
�PX
��T�t4h������������?��0�
P
�Z��St+3�:(2�����
�QX
��T��8h������������?�`�
�Z��St+3�:(2�����
�RX
��T�|=h������������?���
0P
�Z��St+4�:(2�����
�SX
��T�xBh������������?�`�
�
�Z��St+2�:(2���vB
�4X
��N���D����>��?��pp�pB
�5X@
��H��D����>��?��pp�vB
�6X
��N���D����>��?����
��pB
�7X@
��H��D����>��?����
��vB
�8X
��N���D����>��?��p�p�pB
�9X@
��H��D����>��?��p�p�H
�X��0�������h�� ?� ������̙33����������
����`�-@P ���( �����
�P�^
�6P
��6������?��P
`@�^
�)P
��6������?��@P
@���
�*P
��T��Mh������������?��p��
�s��StK�:(2������
�+P
��T��Rh������������?�� p�
�u��StK+1�:(2������
�,P
��T��Wh������������?���
�
�u��StK+2�:(2������
�-P
��Z�]h�������������?���
��
�]��S(t+1)K�:(2�����
�.P
��T��ah������������?�P
�
�
�\��Pt+1,1�:(2�����
�/P
��T�deh������������?�P
p�
�Z��Pt,1�:(2�����
�0P
��T��ih������������?��`�
�
�Z��Pt,2�:(2�����
�1P
��T��,h������������?��P��
�\��Pt-1,2�:(2�����
�2P
��T��rh������������?�P
�
0
�Z��Pt,3�:(2�����
�3P
��T�Xwh������������?�P
�
�\��Pt-1,3�:(2�����
�4P
��Z��{h�������������?��0�
�
�_�� S(t+1)K+1�:
(2�����
�5P
��Z���h�������������?���
0�
�_�� S(t+1)K+2�:
(2���l
�P C��ԃh������P��
h
���l
�P C���h��� 0���h
����
�P
��<��Ȇh�����?����@�
�B��Source layer�
2
��
�P
��<���h�����?������
�9��...�(2�jB
�P
��B��D���?��� p�� �jB
� P
��B��D���?��pp�p���
�P
��<���h�����?���@��
�m��to multicast group Gx� 2���
�P
��<����h�����?��P
�@
�D��Parity layer 1� 2��
�P
��<��l�h�����?��P
��
�9��...�(2�jB
�P
��B��D���?��pp�p���
�P
��<����h�����?��P
@�
�o��to multicast group Gx.1� 2����
�P
��<���h�����?����@
�V�� Parity layer 2 (delayed 1 block)�! 2!��
�P
��<����h�����?������
�9��...�(2�jB
�P
��B��D���?���p�����
�P
��<��Уh�����?���@��
�o��to multicast group Gx.2� 2����
�P
��<��$�h�����?��P
�@�
�V�� Parity layer 3 (delayed 1 block)�! 2!��
�P
��<����h�����?��P
��
�9��...�(2�jB
�P
��B��D���?��pp�p���
�P
��<���h�����?��P
@�
�o��to multicast group Gx.3� 2��vB
�"P
��N���D����>��?���p0 �pB
�#P@
��H��D����>��?���p0 �vB
�&P
��N���D����>��?����
0 �pB
�'P@
��H��D����>��?����
0 ���
�8P
��T� �h������������?����@
�I��K=3�*(2�pB
�9P@
��H��D����o��?��@ ��pB
�:P@
��H��D����o��?��pP
����
�;P
��T���h������������?���@�
�a��W=2 waves (decision epochs)�*(2�pB
�P@
��H��D����o��?� ` ��
�@P
��0�Լh����� �P`�
�|��*Delay is blocklength times number of waves�+P+� �H
�P��0�������h�� ?� ������̙33����������
��mz�rp�h�
�( ��p
�h�l
�h C���h������P��
h
���^�
�
h
��6�A����?� ����H
�h��0�������h�� ?� ������̙33����������
���������( ���
���l
�� C����h������P��
h
���l
�� C��\�h��������h
���H
����0�������h�� ?� ������3�̙33��������gD�
�D�D��u�a ��C�( �\�@d@
�`�l
�` C����h����P0P��
h
����9�8 ���`�
�da���`����
��`
��N�l�h���������?��� ��
�m��
# pktsto req�(2�$�lB
��`�
��<���D���?��� P
�lB
��`
��<���D���?��P
P
���
��`
��N���h���������?� � @�
�b��# pktsrecvd�
(2
�
���
��`
��N���h���������?� @@`
�b��# pktsrecvd�
(2
�
�B
��`
��<���D���?��P
��,$����0��
��`
��6�L�h�����?�0 ��
�5��0�(2�l
��`
��<��������?� @@` ��
��`
��6�\�h�����?�@� �
�5��3�(2��
��`
��6���h�����?��
�@
�5��4�(2���
��`
��N��h���������?��
@�`
�m��
# pktsto req�(2�$�lB
��`�
��<���D���?�@P
�
P
���
�a
��N�X�h���������?��
� ��
�m��
# pktsto req�(2�$���
�a
��N���h���������?��
@�`
�m��
# pktsto req�(2�$�lB
�a�
��<���D���?�@��
��lB
�a�
��<���D���?�@��
��lB
�a�
��<���D���?�@��
P
�lB
� a�
��<���D���?�@P
�
���
�
a
��6���h�����?�� @�
�5��0�(2�lB
�a
��<���D���?�@P
�
��lB
�a
��<���D���?�@��
P
�lB
�
a
��<���D���?�@��
��lB
�a
��<���D���?�@P
�
P
��
�a
��6���h�����?�� � �
�
�5��1�(2��
�a
��6�(�h�����?�� ��
`
�5��2�(2��
�a
��6��k�����?��
�
�
�5��3�(2��
�a
��6��k�����?�� ��
`
�5��4�(2�l
�a
��<��������?��
���
�l
�a
��<��������?��
@�`�lB
�a�
��<���D���?����
��lB
�a�
��<���D���?��P�
��lB
�a
��<���D���?��P
�
����
�a
��N��k���������?��
� �
�b��# pktsrecvd�
(2
�
���
�a
��N��k���������?��
@`
�b��# pktsrecvd�
(2
�
���
�a
��N��k���������?��
@`
�b��# pktsrecvd�
(2
�
���
� a
��N��k���������?��
��
�b��# pktsrecvd�
(2
�
���
�!a
��N��k���������?��
��
�b��# pktsrecvd�
(2
�
���
�"a
��N��k���������?��
@`
�b��# pktsrecvd�
(2
�
�lB
�$a
��<���D���?��P
�
P
�lB
�%a
��<���D���?����
P
�lB
�&a
��<���D���?����
��lB
�'a
��<���D���?����
P�lB
�(a�
��<���D���?��P�
��lB
�)a�
��<���D���?����
P
��
�*a
��6�� k�����?�����
�5��0�(2��
�+a
��6� $k�����?�0��@
�5��1�(2��
�,a
��6�h'k�����?�0��
�5��2�(2��
�-a
��6�+k�����?��0 ��
�5��0�(2��
�.a
��6��-k�����?�� ��
�5��1�(2��
�/a
��6��0k�����?���
�p
�5��2�(2��
�0a
��<��@4k�����?������
�5��2�(2��
�1a
��<��\7k�����?��0`�
�5��1�(2��
�2a
��<���:k�����?��0���
�5��0�(2�lB
�5a�
��<���D���?�P
@P
�l
�6a
��<��������?�@@``�l
�7a
��<��������?�@�`�
�l
�:a
��<��������?�@� `�
�l
�;a
��<��������?�@@`` �l
�a
��<��������?��
��
�l
�?a
��<��������?�@�`��lB
�@a
��<���D���?��@P��
�Aa
��6�@k�����?���@�
�5��0�(2��
�Ba
��6��Ck�����?��@@
�5��1�(2��
�Ca
��6��Fk�����?��� @�
�5��2�(2��
�Da
��6�$Jk�����?��@@
�5��3�(2��
�Ea
��6�(Mk�����?���@�
�5��4�(2�lB
�Ha
��<���D���?��@��lB
�Ia
��<���D���?�P@��lB
�Ja
��<���D���?�P@P
�lB
�Ka�
��<���D���?�P@P�lB
�La�
��<���D���?��@P
�lB
�Ma�
��<���D���?�P
@P�lB
�Na�
��<���D���?��@��lB
�Oa�
��<���D���?��@��lB
�Pa�
��<���D���?�P
@��lB
�Qa�
��<���D���?��@P�lB
�Ra�
��<���D���?�P
@P�lB
�Sa�
��<���D���?�P
@��lB
�Ta�
��<���D���?��@���
�Ua
��6�(Sk�����?�0p�0
�5��0�(2��
�Va
��6��Vk�����?�0��
�5��1�(2��
�Wa
��6��Yk�����?����
�5��0�(2��
�Xa
��6�@]k�����?�0P�
�5��1�(2��
�Ya
��6�D`k�����?���p
�5��2�(2��
�Za
��6�|ck�����?�� �P
�5��0�(2��
�[a
��6��fk�����?�
��
�5��1�(2��
�\a
��6�ljk�����?��
��
�5��0�(2��
�]a
��6�mk�����?�0@�
�5��1�(2��
�^a
��6�Hpk�����?���`
�5��2�(2��
�_a
��6��sk�����?��
�@
�5��0�(2��
�`a
��6��vk�����?���
�5��1�(2��
�aa
��6��yk�����?���`
�5��0�(2��
�ba
��6�t}k�����?�`� `
�5��1�(2��
�ca
��6��k�����?�`0 �
�5��2�(2���l ��P@�
��a�P�@��,$�D
0�xB
�ea
��H���D�����Ԕ�?��P
��~B
�fa
��N���D�����Ԕ��?�@��
P
�xB
�ga
��H��D�����Ԕ��?�@��
��xB
�ha
��H��D�����Ԕ��?�@��
��xB
�ia�
��H��D�����Ԕ��?�@P
�
��xB
��a�
��H��D�����Ԕ��?�@��
��rB
��a�
��B��D�����Ԕ�?��P�
��xB
��a
��H���D�����Ԕ�?��P
�
��rB
��a
��B��D�����Ԕ�?����
��xB
��a
��H��D�����Ԕ��?�P@P
�xB
��a
��H��D�����Ԕ��?�P@��xB
��a
��H��D�����Ԕ��?�P@P�xB
��a�
��H��D�����Ԕ��?�P
@��xB
��a�
��H��D�����Ԕ��?��@��xB
��a
��H��D�����Ԕ��?��@��xB
��a�
��H��D�����Ԕ��?��@��xB
��a�
��H��D�����Ԕ��?�P
@��H
�`��0�������h�� ?� ������̙33����������
��������( ���
��l
� C����k������P��
k
���l
� C��P�k��������k
���H
���0�������h�� ?� ������3�̙33����������
���������( ���
���l
�� C����k������P��
k
���l
�� C��T�k�����0��k
���H
����0�������h�� ?� ������3�̙33��������[�
���� B\p��w�( �
�\�l
�\ C��(�k������P��
k
�����8 ����y
�B\����y�l�
�\
��<��A����?�����y���T ��
��
�"\#���p�� �
��
�\
��<��H�k�����3��?���
��
�7��1�(2�3���r2
�\
��B�������3��?���
�����T ��� �
�!\#����
� �
��
�\
��<��,�k�����?���� �
�7��2�(2�3���r2
�\
��B�������3��?���� �
���T �����
�\#���@`0��
�\
��6���k�����?�����
�E��3�((2�l2
�\
��<��������?��������T �����
�\#���0 ��
�\
��6�L�k�����?�����
�E��4�((2�l2
�\
��<��������?��������
� \
��Nv�(�\�k��G�
����3��?��
��
�B��(2�
��
�/\
��<����k�����?���
�@
�E��4�((2�r2
�0\
��B�������?���
�@���T �����
�1\#���������
�2\
��6��k�����?�����
�E��3�((2�l2
�3\
��<��������?������}�T ��
��
�4\#�����
����
�5\
��6�<�k�����3��?��
��
�7��2�(2�3���l2
�6\
��<��������3��?��
���}�T ��
��
�7\#����0 �P
��
�8\
��6���k�����3��?��
��
�7��1�(2�3���l2
�9\
��<��������3��?��
����
�:\
��<��p�k�����?���
0@
�K�� FEC/P-ARQ�&
2 ���
�<\
��<��t�k�����?������
�P��FEC (receiver)�& 2���
�=\
��<��4�k�����?����
��
�N��FEC (sender)�&
2���
�>\
��<�� �k�����?���0 �P
�N��original RLM�&
2�H
�\��0�������h�� ?� ������̙33����������
������l��( �\�@d@
�l�l
�l C����k������P��
k
���l
�l C��t�k��������k
���H
�l��0�������h�� ?� ������̙33����������
������d��( �)pM@
�d�l
�d C���� ������P��
���l
�d C��l� �����0��
���H
�d��0�������h�� ?� ������̙33����������0z�r����
�( ���
���X
�� C�����`�
=�� �r
�� S���G �����F�W ��
���H
����0�����i���q�� ?� ������̙33����������0z�r0���
�( �����
���X
�� C�����`�
=��p�r
�� S����p�����F�Y ��p
���H
����0�����i���q�� ?� ������̙33����������
0��� ����( ��@P
���X
�� C�����`�
=��p��
�� S��h�p�����F�Y ��p
���
�H
����0�����i���q�� ?� ������̙33���������� 0�������( �P�`
���X
�� C�����`�
=��y��
�� S��x�y�����F�Y ��y
���
�H
����0�����i���q�� ?� ������̙33����������0�������( �P�`
���X
�� C�����`�
=�� ��
�� S��P" �����F�Y ��
���
�H
����0�����i���q�� ?� ������̙33��������
�0�������]�( �P�`
���X
�� C�����`�
=�� ��
�� S���f �����F�d
��
�_���Some observations: Bandwidth is conserved. No link carries duplicate packets, no matter how many receivers there are, because packets are copied only as necessary within the network. In particular the sender sends only one copy of each packet, no matter how many receivers there are. In this sense, the sender has no knowledge of the number of receivers, and the same goes for any interior router. As new receivers join in, no new resources are needed at the sender, and the resources needed at any individual router are bounded although they may increase slightly. Hence the system is scalable to an arbitrary number of receivers. Finally, joining and leaving are a form of scalable feedback from the receivers to the sender, which we can take advantage of.�H�+�u���H
����0�����i���q�� ?� ������̙33��������L�0�p����( �P�`
���X
�� C�����`�
=��\�
�� S��L<\�����F�%��\
����If a different receiver now want to unsubscribe to the multicast, it sends a Leave message upstream towards the receiver, and the router deletes the entry from the routing table, and in turn sends a Leave message upstream to the next router, which if it has other downstream receivers on a different link, simply deletes the link in the appropriate entry. This prunes off a branch of the tree.�H
����0�����i���q�� ?� ������̙33����������0z�rP���
�( �P�`
���X
�� C�����`�
=��\�r
�� S���/\�����F�Y ��\
���H
����0�����i���q�� ?� ������̙33����������0z�r0���
�( �Pv@�M@
���X
�� C�����`�
=�� �r
�� S��@� �����F�Y ��
���H
����0�����i���q�� ?� ������̙33����������0z�r����
�( �%�
���X
�� C�����`�
=�� �r
�� S���������F�Y ��
���H
����0�����i���q�� ?� ������̙33����������0z�r`���
�( �Pv@�M@
���X
�� C�����`�
=����r
�� S��������F�Y ���
���H
����0�����i���q�� ?� ������̙33����������0z�r0���
�( �P�`
���X
�� C�����`�
=����r
�� S���������F�Y ���
���H
����0�����i���q�� ?� ������̙33����������0z�r`��
�( ��� @�
��X
� C�����`�
=��y�r
� S��L�\�����F�Y ��y
���H
���0�����i���q�� ?� ������̙33����������0z�rp� �
�( �X�@�X@
� �X
� C�����`�
=��y�r
� S����p�����F�Y ��y
���H
� ��0�����i���q�� ?� ������̙33����������
0z�r��$�
�( �X�@�X@
�$�X
�$ C�����`�
=��y�r
�$ S��x#y�����F�Y ��y
���H
�$��0�����i���q�� ?� ������̙33����������0z�r��(�
�( ���
�(�X
�( C�����`�
=��y�r
�( S���sp�����F�Y ��y
���H
�(��0�����i���q�� ?� ������̙33����������#0z�r��,�
�( �X�@�X@
�,�X
�, C�����`�
=��y�r
�, S��l^p�����F�Y ��y
���H
�,��0�����i���q�� ?� ������̙33����������0z�rP�0�
�( �����
�0�X
�0 C�����`�
=��y�r
�0 S����p�����F�Y ��y
���H
�0��0�����i���q�� ?� ������̙33����������$0z�r@�4�
�( �b��G
�4�X
�4 C�����`�
=��y�r
�4 S��y�����F�Y ��y
���H
�4��0�����i���q�� ?� ������̙33����������0z�r0�8�
�( ��j
�8�X
�8 C�����`�
=��p�r
�8 S��@�p�����F�Y ��p
���H
�8��0�����i���q�� ?� ������̙33����������&0z�r �<�
�( �X�@�X@
�<�X
�< C�����`�
=��p�r
�< S��Qp�����F�Y ��p
���H
�<��0�����i���q�� ?� ������̙33����������%0z�r�@�
�( ���4l�
�@�X
�@ C�����`�
=��p�r
�@ S�� �p�����F�Y ��p
���H
�@��0�����i���q�� ?� ������̙33����������0z�r�D�
�( ��j
�D�X
�D C�����`�
=��k�r
�D S��� �����F�Y ��k
���H
�D��0�����i���q�� ?� ������̙33����������0z�r��H�
�( ���4l
�H�X
�H C�����`�
=��k�r
�H S��T[\�����F�Y ��k
���H
�H��0�����i���q�� ?� ������̙33����������0z�r��L�
�( �X�@�X@
�L�X
�L C�����^�
;��k�r
�L S���8\�����F�Y ��k
���H
�L��0�����i���q�� ?� ������̙33����������0z�r@�P�
�( ��
�P�X
�P C�����`�
=��y�r
�P S��({�����F�Y ��y
���H
�P��0�����i���q�� ?� ������̙33����������0z�r�T�
�( ��j
�T�X
�T C�����`�
=��y�r
�T S��8�������F�Y ��y
���H
�T��0�����i���q�� ?� ������̙33����������0z�r��X�
�( �X�@�X@
�X�X
�X C�����`�
=��y�r
�X S��l� �����F�Y ��y
���H
�X��0�����i���q�� ?� ������̙33���������� 0z�r��\�
�( ���
�\�X
�\ C�����`�
=��y�r
�\ S����y�����F�Y ��y
���H
�\��0�����i���q�� ?� ������̙33����������0z�r��h�
�( �
�h�X
�h C�����`�
=��y�r
�h S��8�y�����F�Y ��y
���H
�h��0�����i���q�� ?� ������̙33����������!0z�r��t�
�( �0�
�t�X
�t C�����`�
=��y�r
�t S���wy�����F�Y ��y
���H
�t��0�����i���q�� ?� ������̙33����������"0z�r����
�( ��
���X
�� C�����`�
=��y�r
�� S��}y�����F�Y ��y
���H
����0�����i���q�� ?� ������̙33���������'0�������^�( �
���^
��S�����`�
=�����
��#�l� �&e����&e����������������F�J���
���H
����0�����i���q�� ?� ������̙33�������x��W]lTE>s�^vwv�?�ڲ-��G�Rۢ��i�Xly1�d�*�/�%�(M҂��� B�y�b} �1kB��4�1)c| �H�����,[�J_Pf���wϙ9gf���s�b���+.CFyt�N�a��ِ�@��t:�v^����L!��z�i Ě{>�m�����J+��o�����d�Qp�R��q��vA��S��E�M�{���'?c:���;gJvAǬb�������ڮ��O������/�:~�3P�)���ߴ�=�-8�0u�{)���E|�������ʹ��� \��"B�<�X>�@!�9(kNK@h`��
�Q�X�� *U���(�C,B,F,A,E<�X�X�X��A<�X�����T�h@�B<�x�шhB�A<�X�x�a��Y��]Ψ�-�e�}��M���{z��hs����Ξ���:)�
m�;)/�Ԯ�kk��r�/�
={��W2ۖ@E1�~.l�d��ÍH�P�_sj�.5�a�V���w��c
�-��,�_:/5."[{"�5�
:ŭ�#|���}p��d/w�4��M�i+׃�G����]��C�֞��n��+C�v\���G�^#]ɬ����9��˓��/�y��&���5�j���j�קP�!j�����<���F��&��&;>���-��+���|!�_�G��q꿃S�f�������Z�h:������n���?�uI���Ɏ�Q�2ք(�BƑ2n�S��*�\��R�?���)_�s�˃a����]^��O��?���k�j�`���x�����B�7�n��5��~,D��|&��O溱��1uY���u;=t�q��=^�'�>���-�*o�Q�����y�{�x&��C~�g�w����z,��<[�s�9���S2�6��)ϼ
6�R�q/��R��1���'��Aj�Q~����F��>���P���S��/�Q��R�_k!�ʧ��Ԟ樂��d�.R�&{����G�}i��)�.��R;��d�����-ݤ�݀��nڒ]�zv�����Q�����C?�4D��q>�?6~�y�����<���Nz�R��5��������{�=a��}���_��qZ��w���B��/�S�����0�/�Q^B���7}�ePN�7�Ψڟ�.TR�s���d�"�o�Q�j��M������ρ��Y?)�ߊ�M�<۴5���`;x��}��Yq�9?������>��Mv���p)���,.n;����1X7��Z��|*�2M��%;�`�!`�xa��|�ۓUϜ�D���|����{�y�D�u�Wm��0���:OϽ��5��o�>�
�x���{p7Da��^��V���}"��A���T�6�\��9��wh��Q�Xx��UG�T��w9hcWc3y5���!�j�-��{��%&Ɠm3��I�m������K��֊2�q�s������ݪ�i��cNx4�4Dz�}�*a��:��p��:�l�.�h#�ծ�����&� n�ȑ����sԩ5��O9]����OV��x��VMhQ��vӘMb~���"K�բ�PA��ԨI�L%�+I�iRÂ�B�O�+X/=
z+�T�ū"�Q� �Hg�{�.�֍��,�7����f������D�ѓ���E�A�V;C�9�XP�+��n�������v��u5���O�w��:�0���n�Qtj������\N{�6�_�|�4Rt��\�z����y����0��1�2,��p�g�$�S�����������*~��`R<�iTů��O�n�c��a���P�"B}c�0r9����8��&&��?&�Y�2��kf��Kv�.�͙�r�n�s*5)R�R�3'��URS���Ӫ?|¥|�A֕�C�1�?�Rⴆ���ᎋU��w%Y�$1�&��b�j�$wWÝ7"|��J�t|(c���?J��M,���C{"0��/�9���V�?����u�8>�S��KXi#����[�[��S-R�'���S��%|��H{+����7�=���11~���`��L+�f۵K�:ڝ�ʅ��)4̬]�W���e���.Sv/�N,G���R���w8�����'p����A�:
T�#I��z��3�'rN�^(C�\���{��dw�rw�����и8��/N+��p��YcxU,���6
�1t�-� ���S$D�Zb�gx����y��-�+�? ��;�ne���?��������+�ߦ~��sS���x��XMLcU>��B��P~*�@�Ɍ��I\��n���)����FR1�ƕ��0nLܨ��h&.4�g2;3�cbb��h=�������01$��������s�}��}�������@@����:�UJX*���ұ)�Gm�s��g*�Y��g��r�d2��B&!��ȹ���҉+ƲE���������oa������� ,_0�3�IX�d]>�bg�xj����
���5x�n�a�Og �T��?��\��f> �0"�K���W��z˯�E=o��?�t�TP��-�'P[A� ��vP9�� �.�
�5�zj/�I��Q@���B����� � �i�!],�N�z��ga8C�PkϽ�i
L�ϬdV3�����Z"kfұ��#r)M��:��,0|�~������_Z�>P�J��m�����Ԇ+Y|#(�^�J+��[%����8���a֭�F���G�Di�6��'�jO�`��.�?��;�'S���ln ���dq�����d�9��k��R�2��>h��z��ۨ7��]'L{�"}������
�,h��A��;N{���c���î��L\=�.��p��p�Tv�m�)T3�=߽j|�z�|w���o��7���^�����X��.��w����+[�ĸ��Q�·�ŷӛ��$gs�:P�?jR~-<Р�+�>�1k������zl&�J��_�;�`E�7���-����AxD�9�/��9�b
W�OU^���j�y9B&����Nx(�'�d���s��d
�/��p]ơn��+�$�0��p��a��D�(�۽`��a0q��SΛ�i|!����� 㯍�-6��瀿>���uL�q!02Ɓ����SA݀�y�*�ƁZi`��@����H�:����זt��\����m��3e��Z��b�+�������eX�~�����;��F/��U��;�Y?�%v`���^��-G��
�>�c9�/FO8x��VMhA~3���Mڤ�4�(,=x3Ts�Pl=٪M�*���H�M��R��Az�
��A/"<��Ń꽢OJ7��ٸ��lT�B�e��������{oRݷ����h�1`�4�����T�N��p�]�)lc��j�(���vu�w0>0a��^���Л9��ݠ��&�Oz��_{x.��a(/knM9
���(�����~p�O��(�3p�c����}�����*�*�����#��A��?�u�I�Q���?��������1@[[�^l1�M�zw�7A�5�� x�̐�מ�I���_Z���l�_X�V�V�L�FD(�e�}"�\%��/G�,���<�5�y%�Pc5�����a$�"�ѿ_��HSW�Y�%Bq !�Ƞ�;L��H�(�$P:���ʾ8�Ei�&N[�d��9Q��V���;����J��<8D����"��K�P��e�YH����:��5U�?vi���B�lN��U��������OU-h�x.K"���qC;�s�Jv�zkb?v[�Y�������uOiw4�Bޖ��"D�g��˃v��vK�x�X�I���A�
}L�5z\�E�'^~���3vaƚ@�7�����ٿ-6 x�6y��5Z��چ:}T�!�-qQeݳ#�g�r%W���l6� ��X��{�vN��X�,��y���?`RiW}��&n���������nA��{��G"�W//(=H��`RȌ�_5�$V2�b"(�������0g ��q�J�+cM��:a�{�-�Ko�To������rP`�@V�]�W�[
p��ݼվ������#� �,�5G����$
+�g!�@�_K��t^%��IG# %�&�(s*G,\1�4r648�9�;=*�H6 �byJ:�hA@�kbpug�F�Dd �Pz=Multicast
Receiver-driven Layered Multicast
FEC and Pseudo-ARQ��� Multicast��BMechanism for broadcasting in packet networks: any receiver able to receive broadcast packetsby tuning in to broadcast address
Our focus: IP networks
Protocols:
How to dynamically maintain a multicast routing tree
IGMP, DVMRP/PIM/CBT/&
How to forward packets along the tree
IP Multicast�b�5&
�5&
���-Packet Forwardingin a Multicast Routing Tree��
�!�� Grafting / Joining / Subscribing��
� ��!Pruning / Leaving / Unsubscribing���
�
��Observations��(Bandwidth is conserved.
Sender has no knowledge of receivers(likewise any interior router).
Scalable: As new receivers join, no new resources (bandwidth, computation) are needed at the sender, and resources needed at any individual router are bounded.
Joining and Leaving are a form of feedback.���"Growth of Multicast Infrastructure��!MBONE has grown from 901 routers in 1994 to 12000 routers in 1998
Commercial routers (e.g., Cisco) have been multicast enabled for last two years
ISPs (e.g., UUNET, @HOME) have begun to provide multicast service
Intranets are widely multicast enabled
Much research and standardization work� ��Types of Multicast Applications��2Reliable Multicast
1-to-M file transfer, distributed software updates, synch. of distributed databases, filesystems
must be reliable, but delay is not constrained
Real-time Multicast
for broadcast of live or pre-recorded audio/video
need not be reliable, but delay is constrained�L�c�c�$h��
��Reliable Multicast���ARQ-based error control
need to avoid repeat request implosion
protocols use hierarchical re-transmitters(SRM, RMTP, RAMP, RMP, & )
FEC-based error control
digital fountain
Multiple channels for flow control�`n#n#���Real-time Multicast��Error resilient source coding for error control
in MBONE tools (nv), commercial systems
FEC-based error control
in MBONE tools (RAT), commercial systems
fixed amount of redundancy
ARQ-based error control
commercial systems, LVMR
Layered source coding for flow control��0(D'0(D'�@����dReceiver-driven Layered Multicast (S. McCanne 96)�$3" �&���Code source in layers (base, enh1, enh2, & )
Send each layer to different multicast group���Dynamic Joining/Leaving��
�"��The Case for FEC��
�2 ��)FEC forReceiver-driven Layered Multicast��ZAmount of redundancy must be receiver-driven to deal with heterogeneity, dynamics
Generate FEC in layers, using a systematic rate-compatible code (for each source layer)
Send each layer to different multicast group
At each receiver, subscribe to number of source layers,
!"#$%&����()*+,-./0123456789:;<�=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a�cde����ghijklmnopqrstuvwxy�������������~��������Root Entry����������d�O�����)�@����.���Pictures���������MCurrent User������������IJSummaryInformation(�����PowerPoint Document(������������';DocumentSummaryInformation8��������0���������������������������������������������������������f���������b������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������0�
:E��Equation �Equation.30�,Microsoft Equation 3.0���e0�AF��Equation �Equation.30�,Microsoft Equation 3.0���0�BG��Equation �Equation.30�,Microsoft Equation 3.0��/�0��0�DTimes New Roman�6�|�d�v�0|�(�
0��DArialNew Roman�6�|�d�v�0|�(�
0�" �DArial Narrowan�6�|�d�v�0|�(�
0�"0�DSymbolarrowan�6�|�d�v�0|�(�
0���b�����(.2�
@�n��?" dd@��������� @@``�����0�eSE �
�$OI# AA%T(C%�"
]}
�U~JF=B
,!b"@#L'&
93232/0/.D$<�,(:$&��<2�$��"J���6bpUC�;����2�$��x?Hhy�'�Xq����2�$S�W����{Y��v��x� ��$���$���$��2�$ϣ'n��Q���.&�����%3�2�$�O��0���ρu�a����
H��$���$���$��2�$�����c
��������I�2�$�\ъo"��1�:ѱ��1�zL���0e����0e���������
��������� �A������������������������@�������� ��A�������5%���������� 8c8c
?�����1�������� ����d��������0u���0����@T��������y��2� N�P���'�p���<����'�p��A�)BCD|�E�|���|��`��3������f3�3�@������3������Z��g��4KdKdv�0p������p�pp�@<��4!d!d`�
0,��7��g��4ddddv�0p�����p�' p��<��4dddd`�
0,��7��u�ʚ;2N��ʚ;<��4dddd��{�
0���h�`�___PPT9�B/�0��&�%�?��%O��=��,���8FEC and Pseudo-ARQfor Receiver-drivenLayered Multicast��hPhilip A. Chou, Alex Mohr,Albert Wang, Sanjeev Mehrotra
(Microsoft, University of Washington, Stanford)�i90�(1���Problem���Efficient and robust broadcast of real-time audio and video over the near-term Internet
Best-effort
packet loss, jitter, out-of-sequence
Heterogeneous
transmission rate, loss rate, delay, jitter, receivers
Feedback available�vX%7X%7�]'��Problem��Find ways to multicast real-time audio and video efficiently and robustly over the near-term Internet
Best-effort
packet loss, jitter, out-of-sequence
Heterogeneous
transmission rate, loss rate, delay, jitter, receiver capacity
Dynamic
Influence design of network services in longer term��f%?4f%?4���Outline��>Multicast
Receiver-driven Layered Multicast
FEC and Pseudo-ARQ��� Multicast��BMechanism for broadcasting in packet networks: any receiver able to receive broadcast packetsby tuning in to broadcast address
Our focus: IP networks
Protocols:
How to dynamically maintain a multicast routing tree
IGMP, DVMRP/PIM/CBT/&
How to forward packets along the tree
IP Multicast�b�5&
�5&
���-Packet Forwardingin a Multicast Routing Tree��
�!�� Grafting / Joining / Subscribing��
� ��!Pruning / Leaving / Unsubscribing���
�
��Observations��(Bandwidth is conserved.
Sender has no knowledge of receivers(likewise any interior router).
Scalable: As new receivers join, no new resources (bandwidth, computation) are needed at the sender, and resources needed at any individual router are bounded.
Joining and Leaving are a form of feedback.���"Growth of Multicast Infrastructure��!MBONE has grown from 901 routers in 1994 to 12000 routers in 1998
Commercial routers (e.g., Cisco) have been multicast enabled for last two years
ISPs (e.g., UUNET, @HOME) have begun to provide multicast service
Intranets are widely multicast enabled
Much research and standardization work� ��Types of Multicast Applications��2Reliable Multicast
1-to-M file transfer, distributed software updates, synch. of distributed databases, filesystems
must be reliable, but delay is not constrained
Real-time Multicast
for broadcast of live or pre-recorded audio/video
need not be reliable, but delay is constrained�L�c�c�$h��
��Reliable Multicast���ARQ-based error control
need to avoid repeat request implosion
protocols use hierarchical re-transmitters(SRM, RMTP, RAMP, RMP, & )
FEC-based error control
digital fountain
Multiple channels for flow control�`n#n#���Real-time Multicast��Error resilient source coding for error control
in MBONE tools (nv), commercial systems
FEC-based error control
in MBONE tools (RAT), commercial systems
fixed amount of redundancy
ARQ-based error control
commercial systems, LVMR
Layered source coding for flow control��0(D'0(D'�@����dReceiver-driven Layered Multicast (S. McCanne 96)�$3" �&���Code source in layers (base, enh1, enh2, & )
Send each layer to different multicast group���Dynamic Joining/Leaving��
�"��The Case for FEC��
�2 ��)FEC forReceiver-driven Layered Multicast��ZAmount of redundancy must be receiver-driven to deal with heterogeneity, dynamics
Generate FEC in layers, using a systematic rate-compatible code (for each source layer)
Send each layer to different multicast group
At each receiver, subscribe to number of source layers, number of parity layers for each source layer, to optimize received quality�[Z[���Generation of Parity Packets���Block each source layer into K packets per block
Apply systematic Reed-Solomon type code to packets (bytewise) to produce N-K parity packets�e �3!��Optimization at Each Receiver��6Measure transmission rate and loss probability
For this transmission rate and loss probability, minimize expected distortion (over number of source layers, and number of parity layers for each source layer)
Subscribe to optimal number of source layers, and optimal number of parity layers for each source layer�7"��Expected Distortion and Rate��
�C#��Lagrangian Optimization�
��
���Unequal Error Protection��
�
��The Case for ARQ���FEC does not achieve capacity C = 1-p
ARQ makes optimal use of forward channel
Adapts to loss (erasure) probability p
Used extensively for data transmission (e.g., TCP) and media transmission (e.g., VOD)
Must avoid repeat-request implosion
Observe: for broadcast of real-time media, delay (number of repeat-requests) is bounded�RJO����0Pseudo-ARQ forReceiver-driven Layered Multicast���Sender transmits delayed versions of source
Receivers request repeats by subscribing and unsubscribing to delayed versions�[
���Hybrid FEC & Pseudo-ARQ���Sender delays parity packets
Repeated info is actually parity info�EPE���Reduction in Network Traffic��
�D$��Markov Decision Process��=Finite-state stochastic process in whicha decision can be made at each step to influence the transition probabilities,in order to maximize an expected reward
Sequence of decision rules is a policy
Optimal policy, which minimizes expected cost (D+lR) of paths through state space, can be found by dynamic programming�6>�2E��D���State Space for FEC/Pseudo-ARQ��
�G&��Caveats��No experiments so far, only analysis
no actual network transmissions,no source coding, no channel coding
source is modeled as D=s 22-2R
channel is modeled as iid 20% packet loss,no packet jitter or resequencing
assumed no join or leave latencies
Little analysis of aggregate behavior��%�&%Z o&�6�&I�F%��Analyzed Systems���- No error protection (original RLM)
- Equal error protection, redundancy determined by sender; K=8; N=11,14,17,20
- Unequal error protection, determined by receiver; K=8; Ni=Ni* (RLM w/FEC)
- FEC and Pseudo-ARQ; W=1,2,4,8, KW=8��%�1�3��N�2�3��L�3&�4`A����$
���Results of Analysis���
��� Issues for Further Investigation���Estimation of channel condition
Accommodation for join/leave latency
Clustering of channels
Study of aggregate (social) behavior
Implementation���Summary��3FEC & Pseudo-ARQ allow error controlwhen flow control alone is insufficient
Layered (rate-compatible) FECallows receiver-driven approach
Pseudo-ARQ is more effective than FECand uses only standard multicast machinery
Hybrid FEC/Pseudo-ARQ enhances scalability
Many issues remain for further investigation/���&�'�(�)�*�+�,�-�.�/ �0
�1�I�J
�K�L�M�N�O�P�Q�R�S�T�U�V�W�X�Y�Z�[�\�^ ����0z�r����
�( �P�`
���X
�� C�����`�
=�� �r
�� S���f �����F�Y ��
���H
����0�����i���q�� ?� ������̙33����������0z�rp���
�( �P�`
���X
�� C�����`�
=��\�r
�� S��L<\�����F�Y ��\
���H
����0�����i���q�� ?� ������̙33�������r�t+ ��c���
�t%�^s��@�(��O
%H �
^����6B��Equation
!"#$%&'()*+,-./����123456789:;<�=>?@ABCDEFGH����J�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Oh��+'��0�
px�� 8D
dp|
����9FEC and Pseudo-ARQ for Receiver-driven Layered Multicast\Philip A. ChouACC:\Program Files\Microsoft Office\Templates\Blank Presentation.potPhilip A. Chous61lMicrosoft PowerPointoso@P���@`�I��@ ��$�@����.�yG� �����g �N&������ &����&#����TNPP��2��OMi
&
TNPP� &����&TNPP��
����-�-- !���-����-��-&����G��&��������w@�
�z��w���w0- &����G�y�&���� �--iyHH-- ����@Times New Romanz��w���w0-� 3�.2
��FEC and Pseudo%'!. 3�. 2
�]-. 3�.2
�pARQ�*'+. 3�.2
��for Receiver'. 3�. 2
�-. 3�.2
�0driven. 3�.!2
4Layered Multicast#4.--Q��H-- 3�����@Times New Romanz��w���w0-� .'2
��Philip A. Chou, Alex . .
2
�iMohr&. . 2
��,. .2
��
Albert Wang, ). .2
��Sanjeev Mehrotra'.����@Times New Romanz��w���w0-� .N2
0~/(Microsoft, University of Washington, Stanford)
.--��"System
0-�&TNPP &���� number of parity layers for each source layer, to optimize received quality�[Z[���Generation of Parity Packets���Block each source layer into K packets per block
Apply systematic Reed-Solomon type code to packets (bytewise) to produce N-K parity packets�e �3!��Optimization at Each Receiver��6Measure transmission rate and loss probability
For this transmission rate and loss probability, minimize expected distortion (over number of source layers, and number of parity layers for each source layer)
Subscribe to optimal number of source layers, and optimal number of parity layers for each source layer�7"��Expected Distortion and Rate��
�C#��Lagrangian Optimization�
��
���Unequal Error Protection��
�
��The Case for ARQ���FEC does not achieve capacity C = 1-p
ARQ makes optimal use of forward channel
Adapts to loss (erasure) probability p
Used extensively for data transmission (e.g., TCP) and media transmission (e.g., VOD)
Must avoid repeat-request implosion
Observe: for broadcast of real-time media, delay (number of repeat-requests) is bounded�RJO����0Pseudo-ARQ forReceiver-driven Layered Multicast���Sender transmits delayed versions of source
Receivers request repeats by subscribing and unsubscribing to delayed versions�[
���Hybrid FEC & Pseudo-ARQ���Sender delays parity packets
Repeated info is actually parity info�EPE���Reduction in Network Traffic��
�D$��Markov Decision Process��=Finite-state stochastic process in whicha decision can be made at each step to influence the transition probabilities,in order to maximize an expected reward
Sequence of decision rules is a policy
Optimal policy, which minimizes expected cost (D+lR) of paths through state space, can be found by dynamic programming�6>�2E��D���State Space for FEC/Pseudo-ARQ��
�G&��Caveats��No experiments so far, only analysis
no actual network transmissions,no source coding, no channel coding
source is modeled as D=s 22-2R
channel is modeled as iid 20% packet loss,no packet jitter or resequencing
assumed no join or leave latencies
Little analysis of aggregate behavior��%�&%Z o&�6�&I�F%��Analyzed Systems���- No error protection (original RLM)
- Equal error protection, redundancy determined by sender; K=8; N=11,14,17,20
- Unequal error protection, determined by receiver; K=8; Ni=Ni* (RLM w/FEC)
- FEC and Pseudo-ARQ; W=1,2,4,8, KW=8��%�1�3��N�2�3��L�3&�4`A����$
���Results of Analysis���
��� Issues for Further Investigation���Estimation of channel condition
Accommodation for join/leave latency
Clustering of channels
Study of aggregate (social) behavior
Implementation���Summary��3FEC & Pseudo-ARQ allow error controlwhen flow control alone is insufficient
Layered (rate-compatible) FECallows receiver-driven approach
Pseudo-ARQ is more effective than FECand uses only standard multicast machinery
Hybrid FEC/Pseudo-ARQ enhances scalability
Many issues remain for further investigation/���&�'�(�)�*�+�,�-�.�/ �0
�1�I�J
�K�L�M�N�O�P�Q�R�S�T�U�V�W�X�Y�Z�[�\�^ �re���
A��^s��@�(��O
%H �
^����6B��Equation �Equation.30�,Microsoft Equation 3.0���0�
:E��Equation �Equation.30�,Microsoft Equation 3.0���e0�AF��Equation �Equation.30�,Microsoft Equation 3.0���0�BG��Equation �Equation.30�,Microsoft Equation 3.0��/�0��0�DTimes New Roman�6�|�d�v�0|�(�
0��DArialNew Roman�6�|�d�v�0|�(�
0�" �DArial Narrowan�6�|�d�v�0|�(�
0�"0�DSymbolarrowan�6�|�d�v�0|�(�
0���b�����(.2�
@�n��?" dd@��������� @@``�����0�eSE �
�$OI# AA%T(C%�"
]}
�U~JF=B
,!b"@#L'&
93232/0/.D$<�,(:$&��<2�$��"J���6bpUC�;����2�$��x?Hhy�'�Xq����2�$S�W����{Y��v��x� ��$���$���$��2�$ϣ'n��Q���.&�����%3�2�$�O��0���ρu�a����
H��$���$���$��2�$�����c
��������I�2�$�\ъo"��1�:ѱ��1�zL���0e����0e���������
��������� �A������������������������@�������� ��A�������5%���������� 8c8c
?�����1�������� ����d��������0u���0����@T��������y��2� N�P���'�p���<����'�p��A�)BCD|�E�|���|��`��3������f3�3�@������3������Z��g��4KdKdv�0p�,�������p�pp�@<��4!d!d`�
0,��7��g��4ddddv�0p�����p�' p��<��4dddd`�
0,��7��)�u�ʚ;2N��ʚ;<��4dddd��{�
0���h�`�___PPT9�B/�0��&�%�?��%O��=��,���8FEC and Pseudo-ARQfor Receiver-drivenLayered Multicast��hPhilip A. Chou, Alex Mohr,Albert Wang, Sanjeev Mehrotra
(Microsoft, University of Washington, Stanford)�i90�(1���Problem���Efficient and robust broadcast of real-time audio and video over the near-term Internet
Best-effort
packet loss, jitter, out-of-sequence
Heterogeneous
transmission rate, loss rate, delay, jitter, receivers
Feedback available�vX%7X%7�]'��Problem��Find ways to multicast real-time audio and video efficiently and robustly over the near-term Internet
Best-effort
packet loss, jitter, out-of-sequence
Heterogeneous
transmission rate, loss rate, delay, jitter, receiver capacity
Dynamic
Influence design of network services in longer term��f%?4f%?4���Outline��>Multicast
Receiver-driven Layered Multicast
FEC and Pseudo-ARQ��� Multicast��BMechanism for broadcasting in packet networks: any receiver able to receive broadcast packetsby tuning in to broadcast address
Our focus: IP networks
Protocols:
How to dynamically maintain a multicast routing tree
IGMP, DVMRP/PIM/CBT/&
How to forward packets along the tree
IP Multicast�b�5&
�5&
���-Packet Forwardingin a Multicast Routing Tree��
�!�� Grafting / Joining / Subscribing��
� ��!Pruning / Leaving / Unsubscribing���
�
��Observations��(Bandwidth is conserved.
Sender has no knowledge of receivers(likewise any interior router).
Scalable: As new receivers join, no new resources (bandwidth, computation) are needed at the sender, and resources needed at any individual router are bounded.
Joining and Leaving are a form of feedback.���"Growth of Multicast Infrastructure��!MBONE has grown from 901 routers in 1994 to 12000 routers in 1998
Commercial routers (e.g., Cisco) have been multicast enabled for last two years
ISPs (e.g., UUNET, @HOME) have begun to provide multicast service
Intranets are widely multicast enabled
Much research and standardization work� ��Types of Multicast Applications��2Reliable Multicast
1-to-M file transfer, distributed software updates, synch. of distributed databases, filesystems
must be reliable, but delay is not constrained
Real-time Multicast
for broadcast of live or pre-recorded audio/video
need not be reliable, but delay is constrained�L�c�c�$h��
��Reliable Multicast���ARQ-based error control
need to avoid repeat request implosion
protocols use hierarchical re-transmitters(SRM, RMTP, RAMP, RMP, & )
FEC-based error control
digital fountain
Multiple channels for flow control�`n#n#���Real-time Multicast��Error resilient source coding for error control
in MBONE tools (nv), commercial systems
FEC-based error control
in MBONE tools (RAT), commercial systems
fixed amount of redundancy
ARQ-based error control
commercial systems, LVMR
Layered source coding for flow control��0(D'0(D'�@����dReceiver-driven Layered Multicast (S. McCanne 96)�$3" �&���Code source in layers (base, enh1, enh2, & )
Send each layer to different multicast group���Dynamic Joining/Leaving��
�"��The Case for FEC��
�2 ��)FEC forReceiver-driven Layered Multicast��ZAmount of redundancy must be receiver-driven to deal with heterogeneity, dynamics
Generate FEC in layers, using a systematic rate-compatible code (for each source layer)
Send each layer to different multicast group
At each receiver, subscribe to number of source layers, number of parity layers for each source layer, to optimize received quality�[Z[���Generation of Parity Packets���Block each source layer into K packets per block
Apply systematic Reed-Solomon type code to packets (bytewise) to produce N-K parity packets�e �3!��Optimization at Each Receiver��6Measure transmission rate and loss probability
For this transmission rate and loss probability, minimize expected distortion (over number of source layers, and number of parity layers for each source layer)
Subscribe to optimal number of source layers, and optimal number of parity layers for each source layer�7"��Expected Distortion and Rate��
�C#��Lagrangian Optimization�
��
���Unequal Error Protection��
�
��The Case for ARQ���FEC does not achieve capacity C = 1-p
ARQ makes optimal use of forward channel
Adapts to loss (erasure) probability p
Used extensively for data transmission (e.g., TCP) and media transmission (e.g., VOD)
Must avoid repeat-request implosion
Observe: for broadcast of real-time media, delay (number of repeat-requests) is bounded�RJO����0Pseudo-ARQ forReceiver-driven Layered Multicast���Sender transmits delayed versions of source
Receivers request repeats by subscribing and unsubscribing to delayed versions�[
���Hybrid FEC & Pseudo-ARQ���Sender delays parity packets
Repeated info is actually parity info�EPE���Reduction in Network Traffic��
�D$��Markov Decision Process��=Finite-state stochastic process in whicha decision can be made at each step to influence the transition probabilities,in order to maximize an expected reward
Sequence of decision rules is a policy
Optimal policy, which minimizes expected cost (D+lR) of paths through state space, can be found by dynamic programming�6>�2E��D���State Space for FEC/Pseudo-ARQ��
�G&��Caveats��No experiments so far, only analysis
no actual network transmissions,no source coding, no channel coding
source is modeled as D=s 22-2R
channel is modeled as iid 20% packet loss,no packet jitter or resequencing
assumed no join or leave latencies
Little analysis of aggregate behavior��%�&%Z o&�6�&I�F%��Analyzed Systems���- No error protection (original RLM)
- Equal error protection, redundancy determined by sender; K=8; N=11,14,17,20
- Unequal error protection, determined by receiver; K=8; Ni=Ni* (RLM w/FEC)
- FEC and Pseudo-ARQ; W=1,2,4,8, KW=8��%�1�3��N�2�3��L�3&�4`A����$
���Results of Analysis���
��� Issues for Further Investigation���Estimation of channel condition
Accommodation for join/leave latency
Clustering of channels
Study of aggregate (social) behavior
Implementation���Summary��3FEC & Pseudo-ARQ allow error controlwhen flow control alone is insufficient
Layered (rate-compatible) FECallows receiver-driven approach
Pseudo-ARQ is more effective than FECand uses only standard multicast machinery
Hybrid FEC/Pseudo-ARQ enhances scalability
Many issues remain for further investigation/���&�'�(�)�*�+�,�-�.�/ �0
�1�I�J
�K�L�M�N�O�P�Q�R�S�T�U�V�W�X�Y�Z�[�\�^ �r;���
��:^s