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...

Full description

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