Future pervasive applications, like mobile augmented reality, have huge bandwidth and computation demands and very stringent delay constraints. Edge computing has been proposed to cope with such challenging requirements, since it shortens significantly the distance between the end users and the servers. On the other hand, serverless computing is emerging among cloud technologies to respond to the need of highly scalable event-driven execution of stateless tasks. In this paper, we investigate the convergence of the two to enable very low- latency execution of short-lived stateless tasks whose computation is offloaded from the user terminal to servers hosted by or close to edge devices in mobile pervasive environments. We realized a proof-of-concept implementation to delve into the specific issue of efficient dispatching of tasks in a distributed manner to achieve high scalability. We evaluated our proposed algorithm with experiments in a large-scale emulated network environment, showing that our solution achieves similar or better delay performance than a centralized solution, with far less network utilization.
4. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Example#1
• Client attaches to another point of access
• The application server remains the same
5. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Example#2
• Client attaches to another point of access
• The application is migrated to follow the user
6. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Example#3
• The client’s point of attachment becomes a hot spot
• The application is migrated to balance load
8. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Serverless computing
9. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Serverless computing
10. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Serverless edge computing
• No overhead due to state migration (there is no state)
11. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
What do we need for that?
• Discovery protocol
• Open / standard interfaces
• SDK for applications
• DevOps tools
• Security mechanisms
• Engagement of relevant stakeholders
• Patience, money, luck, …
• Distributed algorithm to dispatch tasks (= execution requests of serverless
functions)
12. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
What do we need for that?
• Discovery protocol
• Open / standard interfaces
• SDK for applications
• DevOps tools
• Security mechanisms
• Engagement of relevant stakeholders
• Patience, money, luck, …
• Distributed algorithm to dispatch tasks (= execution requests of serverless
functions)
Next time…
Focus of this work
13. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Distributed dispatcher
• Ideal objective function:
Shortest
Remaining
Processing
Time
14. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Distributed dispatcher
• In practice:
The dispatcher can’t
control these
Should be as
short as possible
Depends on choice
made by dispatcher
¯k = arg min
k
{ˆ⌧jk + ˆpjk}
<latexit sha1_base64="(null)">(null)</latexit><latexit sha1_base64="(null)">(null)</latexit><latexit sha1_base64="(null)">(null)</latexit><latexit sha1_base64="(null)">(null)</latexit>
Communication delay towards k-th executor
Processing time if job is done by k-th executor
15. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Distributed dispatcher
Communication delay
• Every dispatcher
• For every destination k
• Keeps W samples <request size, delay measured>
Request size
Delay
p
p
Dispatcher Computer
T
delay = T - p
16. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Distributed dispatcher
Processing time
• Every dispatcher
• For every destination k
• For every function type
• For every request size S
• Keeps W samples <load, processing time>
Load
Proc.time
load
Dispatcher Computer
Load
Proc.time
Request size S1
Request size Sn
17. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Putting it all together
• Computers report: i) recent load, and ii) processing time
• Dispatchers collect measures, used to estimate
communication delay and processing time of future
function execution requests
Pros:
- simple
- efficient
- fully distributed
Cons:
- assumes linear world
- relies on probing
19. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Performance evaluation
• Dispatcher C++ implementation
• User applications execute functions via gRPC
• Traffic pattern emulates augmented reality application
• Network emulation using mininet
• Two computer types:
1. Emulated computer
2. Face & eyes detection (using OpenCV)
PU#1PU#11 2
3
waiting scheduled memory
1
2
3
PU#1PU#24 5
4
5
container
Not shown in the presentation
20. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Scenario
21. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Scenario
22. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Delay
0
20
40
60
80
100
0 0.2 0.4 0.6 0.8 1
95thpercentileofdelay(ms)
Fraction of users
Pure serverless
Distributed (proposed)
Distributed (oracle)
Pure edge
75 ms
23. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Throughput
1
10
100
1000
10000
0 5 10 15 20 25 30 35 40 45
Networkthroughput(Mb/s)
Drop#
Pure serverless
Distributed (proposed)
Distributed (oracle)
Pure edge
24. C. Cicconetti, M. Conti, A. Passarella - Presenter: @ccicconetti
Low-latency distributed computation offloading for pervasive environments - PerCom 2019
Takeaways
• Edge computing is an opportunity for pervasive systems
• Suitable for low latency, real-time applications
• Serverless model looks promising
• High scalability, low migration overhead
• Done
• Architecture for serverless edge computing
• Algorithm, with proof-of-concept implementation, to dispatch efficiently function execution
requests without a priori knowledge on application or environment (though under some
assumptions)
• To be done
• Adoption of standard protocols, e.g., ETSI MEC
• Integration with existing frameworks, e.g., Apache OpenWhisk
• … much more