3HWHU�.H\
SHWHUNH\#PLFURVRIW�FRP
)DLUQHVV��)ORZ�&RQWURO�0XOWL�8VHU�*DPHV
3DUWQHUV
❚ )UDQN�.HOO\��5LFKDUG�*LEEHQV��6WDWV�/DE�
❚ 'HUHN�0F$XOH\��'DYH�6WHZDUW��0LFURVRIW5HV�/WG�
&XUUHQW�6ROXWLRQV
HJ�$70❚ µ3ROLFH�XVHUV¶❚ 7LJKW�4R6�JXDUDQWHHV❚ 7RR�FRPSOH[�IRUXVHUV
❚ &�2���LQHODVWLF�ELDV�
❚ HJ�,QWHUQHW❚ µ%HVW�HIIRUW¶���� �4R6
❚ /RZ�XVDJH�XVHUVVXEVLGLVH�KHDY\�XVHUV
❚ 5HOLHV�RQ�µQLFH¶�XVHUV�HJ�FRPSOLDQW�7&3�
❚ )DLOV�WR�DFFRXQW�IRUFRQJHVWLRQ�H[WHUQDOLW\
:KDW�LV�4R6"
❚ &XUUHQW�WKLQNLQJ�WHQGV�WRZDUG�GHILQLWLRQV�LQYROYLQJPDSSLQJV�RQ�D�PXOWLGLPHQVLRQDO�VSDFH��HJ�&&,77�VHULHVRI�UHFRPPHQGDWLRQV�KDYH�D�ZKROH�OD\HUHG�VWUXFWXUH�
❚ 0RVW�6/$V�IRU�WHOHFRPPXQLFDWLRQV�GHILQH�TXDQWLWLHVWKDW�DUH�QRW�PHDVXUDEOH��HVSHFLDOO\�E\�SURYLGHU��
❚ ,V�WKLV�FRPSOH[LW\�QHFHVVDU\���RWKHU�VHUYLFHV�DUHGLIIHUHQWLDWHG�E\�D�IHZ�FULWHULD"
❚ 2QO\�QHHG�WR�EH�KDYH�QRQ�LGHQWLFDO��PHDVXUHV�WRDSSO\�&DNH�VOLFLQJ�WKHRUHP�
5HVRXUFH�V\VWHP��¶QHWZRUN·�
5HVRXUFH�M�∈
&DSDFLW\�&M
8VHU�URXWHU�∈ Ajr links users to resources
6HUYLFH�5HTXLUHPHQWV�6KHQNHU�
Convex
“Hard”real time
Utility U(x) Utility
bandwidthbandwidth
Real TimeLimited capacity Rejection
DataNo calls rejectedShare bandwidthThe Internet!
Telcos
7KH�SUREOHP�RI�WKHFRPPRQV
)DLUQHVV
❚ 7KHUH�DUH�ORWV�RI�ZD\V�WR�EH�IDLU�❚ ,Q�D�QHWZRUN�FRQWH[W��0D[�0LQ�DQG�0D[�8WLOLVDWLRQ�DUH�OLNH�³ERXQGDU\´�YDOXHV
❚ 3URSRUWLRQDO�IDLUQHVV�KDV�OLQNV�ZLWK�1DVKDUELWUDWLRQ�VFKHPH
:KDW�LV�IDLU""
❚ $V�PDQ\�GHILQLWLRQV�DV�XWLOLW\�IXQFWLRQV�SUHIHUHQFH�IXQFWLRQV�RQ�[�V�W�$[≤�&�
❚ 0D[�PLQ�IDLU�SRSXODU❚ 3URSRUWLRQDO�IDLUQHVV�DGYRFDWHG�E\�HJ.HOO\
❚ 5HYHQXH�PD[LPLVDWLRQ�DQRWKHU�RSWLRQ
)DLUQHVV�([DPSOHV�
❚ 7ZR�UHVRXUFHV❚ (DFK�ZLWK�FDSDFLW\QRUPDOLVHG�WR��
❚ 9HUWLFDO�VWUHDPV�XVHRQH�UHVRXUFH
❚ +RUL]RQWDO�VWUHDPVXVH�WZR�UHVRXUFHV
)DLUQHVV�([DPSOHV��HJ
Max-min
ò
ò ò
Proportional
���
������
�
� �
TCP approx
���
��� ���
Max load
)DLUQHVV�([DPSOHV��HJ
Max-min
ò
ò ò
Proportional
���
������
�
� �
TCP approx
���
��� ���
Max load
( ) ( )xxU Log=
( ) ( )xxU += 1Log ( ) ( )( ) 2/3Log xxU −−=
( ) ( )( )∞−−= xxU Log
)DLUQHVV�([DPSOHV��SURS�IDLU�SULFHV
Max-min
ò
ò ò
Proportional
���
������
�
� �
TCP approx
���
��� ���
Max load
1=w
2=w
1=w
0=w
1=w
1=w
1=w
34=w
6RPH�SUREOHPV�ZLWK�7&3�&$�PRGH�
❚ /RVH�FHOOV❘ KHQFH�NHHSV�QHWZRUN�DW�KLJK�ORDG��EXW�«�❘ VORZ�WR�UHDFW��TXHXH�VL]H�UDWKHU�WKDQ�UDWH�
❚ ,I�S�LV�SUREDELOLW\�ORVH�FHOO��WKURXJKSXW∝��√S
�VKRXOG�EH���S�
❚ 'RHV�QRW�VFDOH��HJ�LI�GRXEOH�FDSDFLW\❘ ZURQJ�VKDGRZ�SULFHV❘ RQO\�ZRUNV�LI�³FDSDFLW\´�!�QXPEHU�RI�VRXUFHV�ZKHUH�FDSDFLW\� ��ERWWOHQHFN�[�UWW�PVV�
6LPSOH�7&3�PRGHO�ZLWKIHHGEDFN
5HVRXUFH�ORVHV�H[FHVV�ORDG��Q�QXPEHU�RI�VRXUFHV�
Q&�FDSDFLW\�� Q�[�UHVRXUFH�FDSDFLW\ 577�066���
1
2C+ 8+C2
ZLQGRZ
577 �PV��FDS �0%�V��& ���
2 4 6 8 10C=capacity �sources
0.2
0.4
0.6
0.8
1window �C Asymptotic loss rate
)UDPHZRUN��*LEEHQV.HOO\�
❚ 8VHUV�JHQHUDWH�ORDG❚ )HHGEDFN�VLJQDO�LV�³VDPSOH�VKDGRZ�SULFH´
❙ HJ�LQ�VLPSOH�VORWWHG�PRGHO��PDUN�HYHU\�SDFNHWLI�ORDG�H[FHHGV�FDSDFLW\��VKDGRZ�SULFH�DVGHVFULEHV�HIIHFW�RI�DGGLQJ�H[WUD�SDFNHW
❙ LI�D�EXIIHUHG�V\VWHP��PDUN�SDFNHWV�IURP�VWDUWRI�EXV\�SHULRG�WR�ODVW�SDFNHW�ORVW�LQ�WKLVSHULRG
6DPSOH�3DWK�6KDGRZ3ULFHV
C
1 2 3 4 5 6 7 8 9 10
Time
Capacity
pktsC slotted time
6DPSOH�SDWK�6KDGRZSULFHV��EXIIHUHG�PRGHO
Time
Bu
ffer
Co
nte
nt
Pkts
6KDGRZ�SDWK�VKDGRZSULFHV��EXIIHUHG�PRGHO
Time
Bu
ffer
Co
nte
nt
B
B
Pkts
)HDWXUHV�RI�(IILFLHQW3ULFLQJ�6FKHPH
❚ 7KRVH�ZLWK�WKH�KLJKHVW�FRVW�RI�GHOD\�JHW�VHUYHGILUVW
❚ 3ULFHV��VHQG�WKH�ULJKW�VLJQDOV�IRU�FDSDFLW\H[SDQVLRQ
❘ ,I�DOO�RI�WKH�FRQJHVWLRQ�UHYHQXHV�DUH�UHLQYHVWHG�LQ�QHZFDSDFLW\�WKHQ�FDSDFLW\�ZLOO�EH�H[SDQGHG�WR�WKH�SRLQW�ZKHUHLWV�PDUJLQDO�YDOXH�LV�HTXDO�WR�LWV�PDUJLQDO�FRVW
❚ HJ�³6PDUW�PDUNHW´�DSSURDFK�RI�0DFNLH�0DVRQ�9DULDQ��WKRXJK�VRPH�LVVXHV�ZLWK�WKHLU�PRGHO
❚ 3ULFHV�UHODWHG�WR�FRQJHVWLRQ
2SWLPLVDWLRQ�)UDPHZRUN�IRU�IDLUQHVV�
( )
CAxts
xUMaxr
r
≤
= ∑..
U 6\VWHP�RSWLPXP
8�LV�XWLOLW\
( ) rr txxUMax − 8VHU��RSWLPXP
( ) ( )
rr
jr
jj
rr
xAy
yCxUMax
∑
∑∑=
−=U &�LV�FRVW�IXQFWLRQ�HJ
& \ &M M= −+2 7
6ROXWLRQ
&RQVLVWHQW�VHW�RIWD[HV��SULFHV��DQGORDG�H[LVW�V�W�
( )
( ) rr
jj
jj
rrj
jr
txU
dy
dC
onstraineddC
d
xxU
=′
=
=
>=′ ∑∈
nedunconstrai
case c
0 if
µ
µ
µ
U
(J�1HWZRUN�FKRRVHV�WD[HV��XVHU�FKRRVHV�ORDG�VROXWLRQ�LV�QHWZRUN��XVHU�DQG�6\VWHP�RSWLPDO�%XW�GHSHQGHQW�RQ�8WLOLW\�IXQFWLRQ��VR�«�
([DPSOH
( ) ( ) { }( )
{ }( ) { }jrr
jj
jjj
cYxcYIxE
yYEY
cYdy
dCcYEyC
≥=≥
=
≥==⇒−= +
Pr
Also,
. andPoisson if
Prµ
Hence mark packet if exceed capacity
( )
{ }jrr
rrr
cYxw
xwxU
≥=
=
Pr
then),Log( If
$GDSWLYH��SURS�IDLU��VFKHPH
6XJJHVWV�WKH�DGDSWLYH�DSSURDFK
( ) ( ) ( ) ( )
−= ∑
∈ttxtwtx
dt
d
rjjrrrr µκ
PD[LPLVHV�
( ) yjyC j is load when resourceon function cost is
( )
− ∑∑∑
∈rjr
jjr
rr xCxU
( ) ( ) ( ) ( )ypyCdy
dtxpt jj
rjrj =
= ∑
∈
, where jµ
([DPSOH���HODVWLF�FRQWURO
( )( )tfwxx ttt −+=+ κ1
( ) network thefrom receivedfeedback is
pay, toss willingnereflects
tf
wt
( ) 0 else )overloaded bottleneck (resource/ if == txtf
HJ
7&3��7&3�OLNH�VFKHPHV
80 100 120 140 160 180 200N
120
140
160
180
200
Load
100 150 200 250 300N
86
88
90
Load
80 100 120 140N
200
400
600
800
Load
TCP w=1
w=0.05
80 100 120 140
120
140
160
180
200
TCP with shadow price
6LQJOH�QRGH�QHWZRUN
%XIIHUHG�0RGHO
'LVWULEXWHG�PXOWL�SOD\HUJDPH
Internet
MSRCambridge
3URWRFRO�VWUXFWXUHV
User’s Algorithm
Interface / Stub
Game Protocol
TCP
TCP
C++ /J++
ASCII basedTelnet
Network/Game
,QIRUPDWLRQ�IORZ
User Game / controller
Request
AckDestination
Start & type of game
virtual pcktack,mark,time
virtual pcktack,mark,time
End of game
3URWRFRO
Notes:•All single word (32bit) unsigned,•pkt size integer•marks integer •Time=sec.µsec•Token generated by user•Corrupted/lost token=packet drop
User<destination><token><pkt size>
<token><marks>
=pckt
=ACK “Network”
<time>
([DPSOH�2EMHFWLYHV
$VVXPHV�QRWLILHG�FRVW�SHU�PDUN❚ 0D[LPLVH��DYH��WKUXSXW���DYH��FRVW�❚ 0D[�'LVFRXQWHG�∑�WKUXSXW���FRVW�❚ )RU�JLYHQ�XWLOLW\�IXQFWLRQ��PD[�∑�XWLOLW\���FRVW�❚ 7UDQVIHU�DQ�DPRXQW�RI�GDWD�)�ILOH��DW�PLQ�FRVW❚ 7UDQVIHU�)�LQ�VHW�WLPH�7�DW�PLQ�FRVW❚ 7UDQVIHU�)�DV�TXLFNO\�DV�SRVVLEOH�DW�PLQ�FRVW❚ *LYHQ�IL[HG�EXGJHW��PD[LPLVH�WUDQVIHU
,WHUDWLYH�$SSURDFK
❚ 1HZ�8VHU�SOD\V�RQ�WHVW�KDUQHVV❚ 3OD\V�DJDLQVW�FRQWUROOHG�ORDG
� �HJ�DJDLQVW�FRSLHV�RI�VLQJOH�JDPH�RU�DJDLQVW�VDPSOHIURP�UDQGRP�SRSXODWLRQ�
❚ 3OD\V�DJDLQVW�RWKHU�XVHUV�HDFK�ZLWK�VDPHREMHFWLYH
❚ 3OD\V�DJDLQVW�RWKHUV�ZLWK�PXOWLSOHREMHFWLYHV
'LVFLSOLQHV
❚ &RPSXWHU�VFLHQFH❚ &RQWURO�7KHRU\❚ *DPH�7KHRU\���HFRQRPHWULFV❚ 6WRFKDVWLF�'HFLVLRQ�7KHRU\❚ 2SWLPLVDWLRQ���'\QDPLF�3URJUDPPLQJ
Let the games begin!