lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi...
Transcript of lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi...
![Page 1: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/1.jpg)
ProjectDetailsJiasi Chen
CS179i:ProjectinComputer Science(Networks)Lectures:Monday3:10-4pminSpieth 1307
http://www.cs.ucr.edu/~jiasi/teaching/cs179i_winter16/
1
![Page 2: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/2.jpg)
Outline
• Virtualreality
• Videostreaming
• Downloadbooster
• Proposal
2
![Page 3: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/3.jpg)
VirtualRealityUsingCommodityHardware
3
![Page 4: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/4.jpg)
TwoDifferentPlatforms
• GoogleCardboard• $20cardboardviewertouseanysmartphone asaVRdisplay
• SamsungGearVR• OnlycertainSamsungphones (GalaxyS6,Note5)• Bettermotion-tracking, higherresolution screens• Passthrough-camera enabled
• Resources• CardboardAndroidAPI:https://developers.google.com/cardboard/android/• GearVRAndroiddevelopment: http://www.gearvrf.org/
4
![Page 5: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/5.jpg)
VirtualRealityProjectIdeas
• StreetView• Createavirtualtourofalocation
• Livestreaming• Streamthescene fromyourVRdevicetoanotheruser
• AugmentedrealitywiththeSamsungGearVR• Haspassthrough camera,butnotpowerfulenoughforaugmented reality[1]• Whatifsomeprocessing couldbeoffloadedtonearbydevices?
5
![Page 6: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/6.jpg)
MPEG-DASHVideoStreaming
6
![Page 7: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/7.jpg)
MPEG-DASHProtocol
• MPEG-DASH• APP-layerprotocolforadaptingvideoqualitytonetworkconditions
• Client-driven: clientestimates networkconditions andrequests appropriatevideoquality
• Standarddoesn’tspecifyadaptationalgorithm, justthecommunication protocolbetween clientandserver
• Whousesit?
7
time
rate network bandwidth
video rate
![Page 8: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/8.jpg)
ProjectGoal
• Currentapproaches• Numerousapproaches proposed inresearchliterature andinpractice• Needaapples-to-apples comparisonundercommonsetoftestconditions
• Resources• MPEG-DASHvideoplayer:https://github.com/Dash-Industry-Forum/dash.js/wiki
8
![Page 9: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/9.jpg)
Server
ManifestFile Multiplebit-rate/resolutionvideosdivided
intomulti-second segments
HowDASHWorks
9
Clients
§ ClientsrequestanewvideosegmenteveryX seconds.§ Thebit-rateoftherequestedsegmentisbasedonthe
averageTCPthroughputoflastY segments.
HTTP
GET
VIDEOVIDEOVIDEO
![Page 10: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/10.jpg)
GeneralVideoRateAdaptationAlgorithm
1. Estimatebandwidth1. Updatebandwidthestimate ofith chunk,B[i]2. Basedonpreviousbandwidthestimates B[1],B[2],...,B[i],predictnew
bandwidthB[i+1]
2. Makenewvideorateselection1. PickthenewvideorateR=f(videobitrate,networkbandwidth,buffersize)2. t++
3. Gotostep1
10
![Page 11: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/11.jpg)
CurrentApproach1:Bandwidth-based
• Defaultapproach:R[t+1]=max{r:r<B[t+1]}
• Problem:higherbitratesà higherbandwidth estimateà unfaircompetition betweenclients• Loweroverheadforhigherbitrates
• R=f(previousvideobitrate,bandwidthestimate)=f(R[t],B[t+1])
• Compensate byrampingupquicklyforlowerbitrates,rampingupslowlyforhigherbitrates
11Reference:http://conferences.sigcomm.org/co-next/2012/eproceedings/conext/p97.pdf
current videobitrate
rateofincrease
![Page 12: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/12.jpg)
CurrentApproach2:Buffer-based
• Insteadystate,R=f(buffersize)
12Reference:http://yuba.stanford.edu/~nickm/papers/sigcomm2014-video.pdf
![Page 13: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/13.jpg)
CurrentApproach3:Bandwidth+Buffer-based• Lookintothefuture:makebandwidthpredictionsforthenextNtimeslots
• R=f(previousvideobitrate,bandwidthestimate,buffer)
=f(R[t],B[t],…,B[t+N],buffer size)
• Markovdecisionprocesswithonlinetablelookup• Multi-criterionobjective
13Reference:http://conferences.sigcomm.org/sigcomm/2015/pdf/papers/p325.pdf
![Page 14: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/14.jpg)
DownloadBooster
14
![Page 15: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/15.jpg)
DownloadBooster• Wanttospeedupdownloadsoflargefilesbyusingmultipleinterfacessimultaneously(e.g.,WiFi,4G,Ethernet)
• SamsungintroducedDownloadBooster,butitgotblockedbymajorcarriers
• Multipath-TCPisanothermajorstandardizationefforttoenablemultiplenetworks
15
![Page 16: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/16.jpg)
ReviewofTCPThroughput
• Controltransmissionratebysettingwindowsize• Windowsize=min{cwnd,rwnd}• cwnd =congestionwindow(setbysender)
• rwnd =receivewindow(setbyreceiver)
• Scheduler(multiplenetworksonly)• If#ofpkts tosend<windowsize,whichpipeshould Isendthepkts on?
16
time
cwnd
slow start congestion avoidance
IfACK received:cwnd ß cwnd +1/cwnd
Ifloss:cwnd ß cwnd/2
TCPcongestion avoidance:
![Page 17: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/17.jpg)
TransportandApplicationLayerApproaches
Transportlayer:multipath-TCP• MPTCPcongestion control+(default,roundrobin)scheduler
• Fine-grained scheduler control(operateonpackets)
Applicationlayer:HTTPproxy• TCPcongestioncontrol+yourscheduler
• Coarse-grained scheduler control(operateonchunks)
17
Client
Internet
Applica
tion
Virtualinterface
Remote server
![Page 18: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/18.jpg)
Multipath-TCP
• Congestioncontrol• Separatecongestionwindowforeachsubflow r
• Scheduler• Default:Sendpackets onthepipewiththelowestRTT• Round-robin:Mayleavespaceopenincongestionwindow
18[1] https://www.eecs.berkeley.edu/~sylvia/cs268-2014/papers/mptcp.pdf[2] http://conferences.sigcomm.org/co-next/2012/eproceedings/conext/p1.pdf
IfACK received:
cwndr ß cwndr +!"#%
&'()*+,,*
-
∑ /012*/* 455*-
Ifloss:cwnd ß cwnd/2
MPTCPdefault [1] Pareto-optimal [2]
IfACK received:
cwndr ß cwndr +/0126/4556-
∑ /012*/* 455*- +
89/0129
Ifloss:cwnd ß cwnd/2
![Page 19: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/19.jpg)
HTTPProxy
• Congestioncontrol• StandardTCPcongestioncontroloneachpipe
• Scheduler• Howtoschedule packets ontoeachpipe?Yourdesign!• E.g.,schedule packetsproportional toestimated bandwidth
19
IfACK received:cwnd ß cwnd +1/cwnd
Ifloss:cwnd ß cwnd/2
![Page 20: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/20.jpg)
Proposal
• 2-pagesummaryandplanofyourproject• Worth10%ofyourgrade
• Sections• Executivesummary• Comparisonagainstotherapproaches
• e.g.,startups,research papers,commercial products• Targetfeatures
• Milestone 0(oralprogressupdateon2/16/16)• Milestone 1
• Methodology (e.g.,tools,programminglanguages)• Evaluation(e.g.,testbed,metrics)
20
![Page 21: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/21.jpg)
Proposal
• Makesuretoaddress• Whatmakesyourprojectinteresting?Doesitfulfilsomeunmetneed?Whoisitusefulfor?
• Atleastonefigureshowingsystemdesign/architecture
• Ifyou’rechoosinganexistingproject(MPEG-DASHorMPTCP)• Readthereferences,comparethem,anddiscusswhatyouexpecttofind/improve
• Ifyou’rechoosingyourownproject• Whyshouldsomeoneinvestinyour“startup”?
• Writtenfeedbackby1/22/1621
![Page 22: lec2 project details - UCR Computer Science and Engineering · lec2_project_details Author: Jiasi Chen Created Date: 1/12/2016 12:25:41 AM ...](https://reader034.fdocuments.net/reader034/viewer/2022042321/5f0b1b5a7e708231d42ee1af/html5/thumbnails/22.jpg)
Conclusions
• Nextclass• Designtips
• Labthisweek• Workonyourproposal
• TodobynextMonday(1/18)• SubmitproposalviaiLearn by3:10pm(onepergroup)
22