Pass-by-move semantics for function mobility in distributed systems.
In distributed computing systems, function entities live on single machines, and data is shared between nodes in order to carry out calculations. This leads to undesirable characteristics, such as increased network load, a greater amount of shared information, and data vulnerabilities. The introduct...
- Autores:
-
Bonet De Vivero, Juan Camilo
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2024
- Institución:
- Universidad de los Andes
- Repositorio:
- Séneca: repositorio Uniandes
- Idioma:
- eng
- OAI Identifier:
- oai:repositorio.uniandes.edu.co:1992/75067
- Acceso en línea:
- https://hdl.handle.net/1992/75067
- Palabra clave:
- Distributed computing
Metaprogramming
Fog computing
Ingeniería
- Rights
- openAccess
- License
- Attribution-ShareAlike 4.0 International
id |
UNIANDES2_6e717e29043aa1300c18a7d7099135c3 |
---|---|
oai_identifier_str |
oai:repositorio.uniandes.edu.co:1992/75067 |
network_acronym_str |
UNIANDES2 |
network_name_str |
Séneca: repositorio Uniandes |
repository_id_str |
|
dc.title.none.fl_str_mv |
Pass-by-move semantics for function mobility in distributed systems. |
title |
Pass-by-move semantics for function mobility in distributed systems. |
spellingShingle |
Pass-by-move semantics for function mobility in distributed systems. Distributed computing Metaprogramming Fog computing Ingeniería |
title_short |
Pass-by-move semantics for function mobility in distributed systems. |
title_full |
Pass-by-move semantics for function mobility in distributed systems. |
title_fullStr |
Pass-by-move semantics for function mobility in distributed systems. |
title_full_unstemmed |
Pass-by-move semantics for function mobility in distributed systems. |
title_sort |
Pass-by-move semantics for function mobility in distributed systems. |
dc.creator.fl_str_mv |
Bonet De Vivero, Juan Camilo |
dc.contributor.advisor.none.fl_str_mv |
Cardozo Álvarez, Nicolás |
dc.contributor.author.none.fl_str_mv |
Bonet De Vivero, Juan Camilo |
dc.subject.keyword.none.fl_str_mv |
Distributed computing Metaprogramming Fog computing |
topic |
Distributed computing Metaprogramming Fog computing Ingeniería |
dc.subject.themes.spa.fl_str_mv |
Ingeniería |
description |
In distributed computing systems, function entities live on single machines, and data is shared between nodes in order to carry out calculations. This leads to undesirable characteristics, such as increased network load, a greater amount of shared information, and data vulnerabilities. The introduction of fog computing architectures, mitigates these problems by moving part of the computation to edge devices. To further tackle these problems, this work explores the use of pass-by-move semantics to distribute functions between many nodes, effectively reducing network load and avoiding unnecessary information sharing. To build the new semantics, we use Elixir’s metaprogramming capabilities. In order to show the usability of this approach, we implement a proof-of-concept app that demonstrates reduced network load and a reduced amount of shared data, which protects data vulnerabilities and confidentiality. |
publishDate |
2024 |
dc.date.accessioned.none.fl_str_mv |
2024-08-13T16:10:23Z |
dc.date.available.none.fl_str_mv |
2024-08-13T16:10:23Z |
dc.date.issued.none.fl_str_mv |
2024-08-12 |
dc.type.none.fl_str_mv |
Trabajo de grado - Pregrado |
dc.type.driver.none.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
dc.type.version.none.fl_str_mv |
info:eu-repo/semantics/acceptedVersion |
dc.type.coar.none.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
dc.type.content.none.fl_str_mv |
Text |
dc.type.redcol.none.fl_str_mv |
http://purl.org/redcol/resource_type/TP |
format |
http://purl.org/coar/resource_type/c_7a1f |
status_str |
acceptedVersion |
dc.identifier.uri.none.fl_str_mv |
https://hdl.handle.net/1992/75067 |
dc.identifier.instname.none.fl_str_mv |
instname:Universidad de los Andes |
dc.identifier.reponame.none.fl_str_mv |
reponame:Repositorio Institucional Séneca |
dc.identifier.repourl.none.fl_str_mv |
repourl:https://repositorio.uniandes.edu.co/ |
url |
https://hdl.handle.net/1992/75067 |
identifier_str_mv |
instname:Universidad de los Andes reponame:Repositorio Institucional Séneca repourl:https://repositorio.uniandes.edu.co/ |
dc.language.iso.none.fl_str_mv |
eng |
language |
eng |
dc.relation.references.none.fl_str_mv |
Gul A. Agha. Actors a model of concurrent computation in distributed systems. The MIT Press series in artificial intelligence. MIT Press, Cambridge, Mass, 1986. ISBN 9780262255554. Andrew Black, Norman Hutchinson, Eric Jul, and Henry Levy. The development of the emerald programming language. In Proceedings of the third ACM SIGPLAN conference on history of programming languages, pages 11–1–11–51. ACM, 2007. ISBN 1595937668. Rajkumar Buyya and Amir Vahid Dastjerdi. Internet of things : principles and paradigms. Gale eBooks. Morgan Kaufmann, Cambridge, MA, 1st edition edition, 2016 - 2016. ISBN 0-12-809347-1. Lyn Dupré. BUGS in Writing: A Guide to Debugging Your Prose. Revised edition, 1998. ISBN 0-201-37921-X. Eric Jul, Henry Levy, Norman Hutchinson, and Andrew Black. Fine-grained mobility in the emerald system. ACM transactions on computer systems, 6(1):109–133, 1988. ISSN 0734-2071. Peter Kafka. Youtube revamps its android app with vertical video (updated). https://www.vox.com/2015/7/23/11615020/youtube-revamps-its-android-app-with-vertical-video-tells-iphone, Jul 2015. Accessed: 2023-04-01. Ajay D. Kshemkalyani and Mukesh Singhal. Distributed computing : principles, algorithms, and systems. Cambridge University Press, Cambridge ;, 2008. ISBN 9780521876346. Robin Milner, Joachim Parrow, and David Walker. A calculus of mobile processes, i. Information and Computation, 100(1):1–40, 1992. ISSN 0890-5401. DOI https://doi.org/10.1016/0890-5401(92)90008-4. URL https://www.sciencedirect.com/science/article/pii/0890540192900084. William Strunk and E.B. White. The Elements of Style. Longman, fourth edition, 2000. ISBN 0-205-30902-X. |
dc.rights.en.fl_str_mv |
Attribution-ShareAlike 4.0 International |
dc.rights.uri.none.fl_str_mv |
http://creativecommons.org/licenses/by-sa/4.0/ |
dc.rights.accessrights.none.fl_str_mv |
info:eu-repo/semantics/openAccess |
dc.rights.coar.none.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
rights_invalid_str_mv |
Attribution-ShareAlike 4.0 International http://creativecommons.org/licenses/by-sa/4.0/ http://purl.org/coar/access_right/c_abf2 |
eu_rights_str_mv |
openAccess |
dc.format.extent.none.fl_str_mv |
21 páginas |
dc.format.mimetype.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidad de los Andes |
dc.publisher.program.none.fl_str_mv |
Ingeniería de Sistemas y Computación |
dc.publisher.faculty.none.fl_str_mv |
Facultad de Ingeniería |
dc.publisher.department.none.fl_str_mv |
Departamento de Ingeniería de Sistemas y Computación |
publisher.none.fl_str_mv |
Universidad de los Andes |
institution |
Universidad de los Andes |
bitstream.url.fl_str_mv |
https://repositorio.uniandes.edu.co/bitstreams/a636104b-5ebf-4089-9020-f8aa5262905d/download https://repositorio.uniandes.edu.co/bitstreams/f9e9620e-6de5-4fbf-b183-4ec6a362bb72/download https://repositorio.uniandes.edu.co/bitstreams/80f3fee9-1d45-4073-a383-bcf24d5fc91a/download https://repositorio.uniandes.edu.co/bitstreams/40e896f6-4973-44fa-9a8b-4ce90b0229ad/download https://repositorio.uniandes.edu.co/bitstreams/711d9bb7-fc18-4ba8-a08f-f3d2209cb3ce/download https://repositorio.uniandes.edu.co/bitstreams/c3b18bcd-8c83-4598-a379-f6823e8722cd/download https://repositorio.uniandes.edu.co/bitstreams/da9d43d4-b334-4d45-acee-1127b53baa68/download https://repositorio.uniandes.edu.co/bitstreams/6d15fb15-2e28-44d0-8ac8-94d9a80eecc0/download |
bitstream.checksum.fl_str_mv |
1156f60ce7d7a81e75212fa75dd308fd 872bc98e3f821255d4f7a9d126c74607 84a900c9dd4b2a10095a94649e1ce116 ae9e573a68e7f92501b6913cc846c39f 589ed30c7b3d583a45499339bbe09e3d da52b5eb00880b87b9129ad967752c72 4fe044ded5f937fcd654f45e73038f88 90575734e2400883ea0f07bfaf677aa2 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio institucional Séneca |
repository.mail.fl_str_mv |
adminrepositorio@uniandes.edu.co |
_version_ |
1812133856023674880 |
spelling |
Cardozo Álvarez, Nicolásvirtual::19950-1Bonet De Vivero, Juan Camilo2024-08-13T16:10:23Z2024-08-13T16:10:23Z2024-08-12https://hdl.handle.net/1992/75067instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/In distributed computing systems, function entities live on single machines, and data is shared between nodes in order to carry out calculations. This leads to undesirable characteristics, such as increased network load, a greater amount of shared information, and data vulnerabilities. The introduction of fog computing architectures, mitigates these problems by moving part of the computation to edge devices. To further tackle these problems, this work explores the use of pass-by-move semantics to distribute functions between many nodes, effectively reducing network load and avoiding unnecessary information sharing. To build the new semantics, we use Elixir’s metaprogramming capabilities. In order to show the usability of this approach, we implement a proof-of-concept app that demonstrates reduced network load and a reduced amount of shared data, which protects data vulnerabilities and confidentiality.Pregrado21 páginasapplication/pdfengUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería de Sistemas y ComputaciónAttribution-ShareAlike 4.0 Internationalhttp://creativecommons.org/licenses/by-sa/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Pass-by-move semantics for function mobility in distributed systems.Trabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPDistributed computingMetaprogrammingFog computingIngenieríaGul A. Agha. Actors a model of concurrent computation in distributed systems. The MIT Press series in artificial intelligence. MIT Press, Cambridge, Mass, 1986. ISBN 9780262255554.Andrew Black, Norman Hutchinson, Eric Jul, and Henry Levy. The development of the emerald programming language. In Proceedings of the third ACM SIGPLAN conference on history of programming languages, pages 11–1–11–51. ACM, 2007. ISBN 1595937668.Rajkumar Buyya and Amir Vahid Dastjerdi. Internet of things : principles and paradigms. Gale eBooks. Morgan Kaufmann, Cambridge, MA, 1st edition edition, 2016 - 2016. ISBN 0-12-809347-1.Lyn Dupré. BUGS in Writing: A Guide to Debugging Your Prose. Revised edition, 1998. ISBN 0-201-37921-X.Eric Jul, Henry Levy, Norman Hutchinson, and Andrew Black. Fine-grained mobility in the emerald system. ACM transactions on computer systems, 6(1):109–133, 1988. ISSN 0734-2071.Peter Kafka. Youtube revamps its android app with vertical video (updated). https://www.vox.com/2015/7/23/11615020/youtube-revamps-its-android-app-with-vertical-video-tells-iphone, Jul 2015. Accessed: 2023-04-01.Ajay D. Kshemkalyani and Mukesh Singhal. Distributed computing : principles, algorithms, and systems. Cambridge University Press, Cambridge ;, 2008. ISBN 9780521876346.Robin Milner, Joachim Parrow, and David Walker. A calculus of mobile processes, i. Information and Computation, 100(1):1–40, 1992. ISSN 0890-5401. DOI https://doi.org/10.1016/0890-5401(92)90008-4. URL https://www.sciencedirect.com/science/article/pii/0890540192900084.William Strunk and E.B. White. The Elements of Style. Longman, fourth edition, 2000. ISBN 0-205-30902-X.202022466Publicationhttps://scholar.google.es/citations?user=3iTzjQsAAAAJvirtual::19950-10000-0002-1094-9952virtual::19950-1a77ff528-fc33-44d6-9022-814f81ef407avirtual::19950-1a77ff528-fc33-44d6-9022-814f81ef407avirtual::19950-1ORIGINALPass-By-Move Semantics for Function Mobility in Distributed Systems.pdfPass-By-Move Semantics for Function Mobility in Distributed Systems.pdfapplication/pdf450018https://repositorio.uniandes.edu.co/bitstreams/a636104b-5ebf-4089-9020-f8aa5262905d/download1156f60ce7d7a81e75212fa75dd308fdMD51autorizacion tesis-1.pdfautorizacion tesis-1.pdfHIDEapplication/pdf318299https://repositorio.uniandes.edu.co/bitstreams/f9e9620e-6de5-4fbf-b183-4ec6a362bb72/download872bc98e3f821255d4f7a9d126c74607MD52CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81025https://repositorio.uniandes.edu.co/bitstreams/80f3fee9-1d45-4073-a383-bcf24d5fc91a/download84a900c9dd4b2a10095a94649e1ce116MD53LICENSElicense.txtlicense.txttext/plain; charset=utf-82535https://repositorio.uniandes.edu.co/bitstreams/40e896f6-4973-44fa-9a8b-4ce90b0229ad/downloadae9e573a68e7f92501b6913cc846c39fMD54TEXTPass-By-Move Semantics for Function Mobility in Distributed Systems.pdf.txtPass-By-Move Semantics for Function Mobility in Distributed Systems.pdf.txtExtracted texttext/plain28921https://repositorio.uniandes.edu.co/bitstreams/711d9bb7-fc18-4ba8-a08f-f3d2209cb3ce/download589ed30c7b3d583a45499339bbe09e3dMD55autorizacion tesis-1.pdf.txtautorizacion tesis-1.pdf.txtExtracted texttext/plain2044https://repositorio.uniandes.edu.co/bitstreams/c3b18bcd-8c83-4598-a379-f6823e8722cd/downloadda52b5eb00880b87b9129ad967752c72MD57THUMBNAILPass-By-Move Semantics for Function Mobility in Distributed Systems.pdf.jpgPass-By-Move Semantics for Function Mobility in Distributed Systems.pdf.jpgGenerated Thumbnailimage/jpeg6741https://repositorio.uniandes.edu.co/bitstreams/da9d43d4-b334-4d45-acee-1127b53baa68/download4fe044ded5f937fcd654f45e73038f88MD56autorizacion tesis-1.pdf.jpgautorizacion tesis-1.pdf.jpgGenerated Thumbnailimage/jpeg11027https://repositorio.uniandes.edu.co/bitstreams/6d15fb15-2e28-44d0-8ac8-94d9a80eecc0/download90575734e2400883ea0f07bfaf677aa2MD581992/75067oai:repositorio.uniandes.edu.co:1992/750672024-09-12 16:19:30.868http://creativecommons.org/licenses/by-sa/4.0/Attribution-ShareAlike 4.0 Internationalopen.accesshttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coPGgzPjxzdHJvbmc+RGVzY2FyZ28gZGUgUmVzcG9uc2FiaWxpZGFkIC0gTGljZW5jaWEgZGUgQXV0b3JpemFjacOzbjwvc3Ryb25nPjwvaDM+CjxwPjxzdHJvbmc+UG9yIGZhdm9yIGxlZXIgYXRlbnRhbWVudGUgZXN0ZSBkb2N1bWVudG8gcXVlIHBlcm1pdGUgYWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBTw6luZWNhIHJlcHJvZHVjaXIgeSBkaXN0cmlidWlyIGxvcyByZWN1cnNvcyBkZSBpbmZvcm1hY2nDs24gZGVwb3NpdGFkb3MgbWVkaWFudGUgbGEgYXV0b3JpemFjacOzbiBkZSBsb3Mgc2lndWllbnRlcyB0w6lybWlub3M6PC9zdHJvbmc+PC9wPgo8cD5Db25jZWRhIGxhIGxpY2VuY2lhIGRlIGRlcMOzc2l0byBlc3TDoW5kYXIgc2VsZWNjaW9uYW5kbyBsYSBvcGNpw7NuIDxzdHJvbmc+J0FjZXB0YXIgbG9zIHTDqXJtaW5vcyBhbnRlcmlvcm1lbnRlIGRlc2NyaXRvcyc8L3N0cm9uZz4geSBjb250aW51YXIgZWwgcHJvY2VzbyBkZSBlbnbDrW8gbWVkaWFudGUgZWwgYm90w7NuIDxzdHJvbmc+J1NpZ3VpZW50ZScuPC9zdHJvbmc+PC9wPgo8aHI+CjxwPllvLCBlbiBtaSBjYWxpZGFkIGRlIGF1dG9yIGRlbCB0cmFiYWpvIGRlIHRlc2lzLCBtb25vZ3JhZsOtYSBvIHRyYWJham8gZGUgZ3JhZG8sIGhhZ28gZW50cmVnYSBkZWwgZWplbXBsYXIgcmVzcGVjdGl2byB5IGRlIHN1cyBhbmV4b3MgZGUgc2VyIGVsIGNhc28sIGVuIGZvcm1hdG8gZGlnaXRhbCB5L28gZWxlY3Ryw7NuaWNvIHkgYXV0b3Jpem8gYSBsYSBVbml2ZXJzaWRhZCBkZSBsb3MgQW5kZXMgcGFyYSBxdWUgcmVhbGljZSBsYSBwdWJsaWNhY2nDs24gZW4gZWwgU2lzdGVtYSBkZSBCaWJsaW90ZWNhcyBvIGVuIGN1YWxxdWllciBvdHJvIHNpc3RlbWEgbyBiYXNlIGRlIGRhdG9zIHByb3BpbyBvIGFqZW5vIGEgbGEgVW5pdmVyc2lkYWQgeSBwYXJhIHF1ZSBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsYSBMZXkgMjMgZGUgMTk4MiwgTGV5IDQ0IGRlIDE5OTMsIERlY2lzacOzbiBBbmRpbmEgMzUxIGRlIDE5OTMsIERlY3JldG8gNDYwIGRlIDE5OTUgeSBkZW3DoXMgbm9ybWFzIGdlbmVyYWxlcyBzb2JyZSBsYSBtYXRlcmlhLCB1dGlsaWNlIGVuIHRvZGFzIHN1cyBmb3JtYXMsIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlIHJlcHJvZHVjY2nDs24sIGNvbXVuaWNhY2nDs24gcMO6YmxpY2EsIHRyYW5zZm9ybWFjacOzbiB5IGRpc3RyaWJ1Y2nDs24gKGFscXVpbGVyLCBwcsOpc3RhbW8gcMO6YmxpY28gZSBpbXBvcnRhY2nDs24pIHF1ZSBtZSBjb3JyZXNwb25kZW4gY29tbyBjcmVhZG9yIGRlIGxhIG9icmEgb2JqZXRvIGRlbCBwcmVzZW50ZSBkb2N1bWVudG8uPC9wPgo8cD5MYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGVtaXRlIGVuIGNhbGlkYWQgZGUgYXV0b3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50byB5IG5vIGNvcnJlc3BvbmRlIGEgY2VzacOzbiBkZSBkZXJlY2hvcywgc2lubyBhIGxhIGF1dG9yaXphY2nDs24gZGUgdXNvIGFjYWTDqW1pY28gZGUgY29uZm9ybWlkYWQgY29uIGxvIGFudGVyaW9ybWVudGUgc2XDsWFsYWRvLiBMYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGhhY2UgZXh0ZW5zaXZhIG5vIHNvbG8gYSBsYXMgZmFjdWx0YWRlcyB5IGRlcmVjaG9zIGRlIHVzbyBzb2JyZSBsYSBvYnJhIGVuIGZvcm1hdG8gbyBzb3BvcnRlIG1hdGVyaWFsLCBzaW5vIHRhbWJpw6luIHBhcmEgZm9ybWF0byBlbGVjdHLDs25pY28sIHkgZW4gZ2VuZXJhbCBwYXJhIGN1YWxxdWllciBmb3JtYXRvIGNvbm9jaWRvIG8gcG9yIGNvbm9jZXIuPC9wPgo8cD5FbCBhdXRvciwgbWFuaWZpZXN0YSBxdWUgbGEgb2JyYSBvYmpldG8gZGUgbGEgcHJlc2VudGUgYXV0b3JpemFjacOzbiBlcyBvcmlnaW5hbCB5IGxhIHJlYWxpesOzIHNpbiB2aW9sYXIgbyB1c3VycGFyIGRlcmVjaG9zIGRlIGF1dG9yIGRlIHRlcmNlcm9zLCBwb3IgbG8gdGFudG8sIGxhIG9icmEgZXMgZGUgc3UgZXhjbHVzaXZhIGF1dG9yw61hIHkgdGllbmUgbGEgdGl0dWxhcmlkYWQgc29icmUgbGEgbWlzbWEuPC9wPgo8cD5FbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLjwvcD4KPHA+U2kgdGllbmUgYWxndW5hIGR1ZGEgc29icmUgbGEgbGljZW5jaWEsIHBvciBmYXZvciwgY29udGFjdGUgY29uIGVsIDxhIGhyZWY9Im1haWx0bzpiaWJsaW90ZWNhQHVuaWFuZGVzLmVkdS5jbyIgdGFyZ2V0PSJfYmxhbmsiPkFkbWluaXN0cmFkb3IgZGVsIFNpc3RlbWEuPC9hPjwvcD4K |