Pub Date : 2020-09-01DOI: 10.1109/IVMEM51402.2020.00018
Ivan Trepakov, P. Pavlov
This article describes a novel interface method table (IMT) layout approach, which allocates interface method tables inside virtual method table (VMT), allowing for table entries to be shared between VMT and multiple IMTs. Similarly to VMT layout inheritance for classes, a heuristical IMT layout inheritance scheme is implemented for interfaces. Unlike prior schemes, proposed “all or nothing” heuristic achieves considerable total table size reduction without any dispatch overhead. Together with combined layout of IMT and VMT, interface layout inheritance opens up even more opportunities for IMT layout reuse and total table size reduction. Application of all techniques outlined in this article results in a significant reduction of overall executable size.
{"title":"Compact Interface Method Table Layout","authors":"Ivan Trepakov, P. Pavlov","doi":"10.1109/IVMEM51402.2020.00018","DOIUrl":"https://doi.org/10.1109/IVMEM51402.2020.00018","url":null,"abstract":"This article describes a novel interface method table (IMT) layout approach, which allocates interface method tables inside virtual method table (VMT), allowing for table entries to be shared between VMT and multiple IMTs. Similarly to VMT layout inheritance for classes, a heuristical IMT layout inheritance scheme is implemented for interfaces. Unlike prior schemes, proposed “all or nothing” heuristic achieves considerable total table size reduction without any dispatch overhead. Together with combined layout of IMT and VMT, interface layout inheritance opens up even more opportunities for IMT layout reuse and total table size reduction. Application of all techniques outlined in this article results in a significant reduction of overall executable size.","PeriodicalId":325794,"journal":{"name":"2020 Ivannikov Memorial Workshop (IVMEM)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2020-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126489120","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2020-09-01DOI: 10.1109/IVMEM51402.2020.00008
A. Borisova, Valeriya Shvetcova, O. Borisenko
The main difference between container-based and virtualization-based cloud environments is the way of the virtualization methods for OS and auxiliary resources. Software applications can be both deployed in a cloud on virtual machines or in local data centres on physical machines. Containers are based on OS-level virtualization. So, container applications can be deployed on a virtual machine in the cloud too. To deal with the growth of various, but functionally similar cloud environments, the TOSCA [1] (Topology and Orchestration for Cloud Applications) standard was created. It allows to describe deployment resources in a TOSCA Domain-specific language that does not depend on the provider. Kubernetes [8] is an open-source system for deployment automation, scaling, and management of containerized applications. TOSCA standard was created to describe cloud applications, but the model may be suitable for describing container applications that Kubernetes orchestrate. This paper considers Kubernetes as a cloud provider and examines the applicability of the TOSCA standard for unifying deployment and orchestration not only of resources provided by virtualization-based clouds but also of containerized ones.
{"title":"Adaptation of the TOSCA standard model for the Kubernetes container environment","authors":"A. Borisova, Valeriya Shvetcova, O. Borisenko","doi":"10.1109/IVMEM51402.2020.00008","DOIUrl":"https://doi.org/10.1109/IVMEM51402.2020.00008","url":null,"abstract":"The main difference between container-based and virtualization-based cloud environments is the way of the virtualization methods for OS and auxiliary resources. Software applications can be both deployed in a cloud on virtual machines or in local data centres on physical machines. Containers are based on OS-level virtualization. So, container applications can be deployed on a virtual machine in the cloud too. To deal with the growth of various, but functionally similar cloud environments, the TOSCA [1] (Topology and Orchestration for Cloud Applications) standard was created. It allows to describe deployment resources in a TOSCA Domain-specific language that does not depend on the provider. Kubernetes [8] is an open-source system for deployment automation, scaling, and management of containerized applications. TOSCA standard was created to describe cloud applications, but the model may be suitable for describing container applications that Kubernetes orchestrate. This paper considers Kubernetes as a cloud provider and examines the applicability of the TOSCA standard for unifying deployment and orchestration not only of resources provided by virtualization-based clouds but also of containerized ones.","PeriodicalId":325794,"journal":{"name":"2020 Ivannikov Memorial Workshop (IVMEM)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2020-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115593752","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2020-09-01DOI: 10.1109/IVMEM51402.2020.00014
Danil Shaikhelislamov, Mikhail Drobyshevskiy, D. Turdakov, A. Yatskov, M. Varlamov, Denis Aivazov
This paper considers the problem of influential users detection in online social networks. Identifying of such key entities is of interest in many areas: marketing, politics, information security, business. The degree of the node of the corresponding graph is used as a popularity indicator in this work. Network query limitation is the main challenge in discovering their structure. Therefore, our task is to detect a percentage of the highest degree network nodes under a budget restriction. We propose a three-step crawling algorithm in two versions to solve the problem. We experimentally show its efficiency at various budget limits and superiority over known crawling strategies. For example, to detect top-1% of hubs with 90% precision, one needs to crawl 5% of graph nodes in average with our 3-StepBatch algorithm. We also show that our algorithm performs well for different target set sizes, from 0.01% to 10% of the graph.
{"title":"Three-step Algorithms for Detection of High Degree Nodes in Online Social Networks","authors":"Danil Shaikhelislamov, Mikhail Drobyshevskiy, D. Turdakov, A. Yatskov, M. Varlamov, Denis Aivazov","doi":"10.1109/IVMEM51402.2020.00014","DOIUrl":"https://doi.org/10.1109/IVMEM51402.2020.00014","url":null,"abstract":"This paper considers the problem of influential users detection in online social networks. Identifying of such key entities is of interest in many areas: marketing, politics, information security, business. The degree of the node of the corresponding graph is used as a popularity indicator in this work. Network query limitation is the main challenge in discovering their structure. Therefore, our task is to detect a percentage of the highest degree network nodes under a budget restriction. We propose a three-step crawling algorithm in two versions to solve the problem. We experimentally show its efficiency at various budget limits and superiority over known crawling strategies. For example, to detect top-1% of hubs with 90% precision, one needs to crawl 5% of graph nodes in average with our 3-StepBatch algorithm. We also show that our algorithm performs well for different target set sizes, from 0.01% to 10% of the graph.","PeriodicalId":325794,"journal":{"name":"2020 Ivannikov Memorial Workshop (IVMEM)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2020-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132014494","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2020-09-01DOI: 10.1109/IVMEM51402.2020.00009
A. Filatov, V. Mikheev
This paper discusses thread-local garbage collection (GC), a technique of automatic memory management aimed at improving GC throughput and reducing GC pauses in managed runtimes. It exploits the observation that most objects do not escape the scope of the thread that allocated them; therefore, memory occupied by those objects can be reclaimed locally within the thread. Performance measurements demonstrate that the proposed scheme has an advantage over a highly optimized stop-the-world collector used in an experimental JVM on some throughput-oriented benchmarks.
{"title":"Evaluation of thread-local garbage collection","authors":"A. Filatov, V. Mikheev","doi":"10.1109/IVMEM51402.2020.00009","DOIUrl":"https://doi.org/10.1109/IVMEM51402.2020.00009","url":null,"abstract":"This paper discusses thread-local garbage collection (GC), a technique of automatic memory management aimed at improving GC throughput and reducing GC pauses in managed runtimes. It exploits the observation that most objects do not escape the scope of the thread that allocated them; therefore, memory occupied by those objects can be reclaimed locally within the thread. Performance measurements demonstrate that the proposed scheme has an advantage over a highly optimized stop-the-world collector used in an experimental JVM on some throughput-oriented benchmarks.","PeriodicalId":325794,"journal":{"name":"2020 Ivannikov Memorial Workshop (IVMEM)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2020-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127366993","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2020-09-01DOI: 10.1109/IVMEM51402.2020.00019
Evgenii M. Vinarskii, A. Demakov, A. Kamkin, N. Yevtushenko
Cryptographic protocols are utilized for establishing a secure session between “honest” agents which communicate strictly according to the protocol rules as well as for ensuring the authenticated and confidential transmission of messages. The specification of a cryptographic protocol is usually presented as a set of requirements for the sequences of transmitted messages including the format of such messages. Note that protocol can describe several execution scenarios. All these requirements lead to a huge formal specification for a real cryptographic protocol and therefore, it is difficult to verify the security of the whole cryptographic protocol at once. In this paper, to overcome this problem, we suggest verifying the protocol security for its fragments. Namely, we verify the security properties for a special set of so-called traces of the cryptographic protocol. Intuitively, a trace of the cryptographic protocol is a sequence of computations, value checks, and transmissions on the sides of “honest” agents permitted by the protocol. In order to choose such set of traces, we introduce an Adversary model and the notion of a similarity relation for traces. We then verify the security properties of selected traces with Tamarin Prover. Experimental results for the EAP and Noise protocols clearly show that this approach can be promising for automatic verification of large protocols.
{"title":"Verifying cryptographic protocols by Tamarin Prover","authors":"Evgenii M. Vinarskii, A. Demakov, A. Kamkin, N. Yevtushenko","doi":"10.1109/IVMEM51402.2020.00019","DOIUrl":"https://doi.org/10.1109/IVMEM51402.2020.00019","url":null,"abstract":"Cryptographic protocols are utilized for establishing a secure session between “honest” agents which communicate strictly according to the protocol rules as well as for ensuring the authenticated and confidential transmission of messages. The specification of a cryptographic protocol is usually presented as a set of requirements for the sequences of transmitted messages including the format of such messages. Note that protocol can describe several execution scenarios. All these requirements lead to a huge formal specification for a real cryptographic protocol and therefore, it is difficult to verify the security of the whole cryptographic protocol at once. In this paper, to overcome this problem, we suggest verifying the protocol security for its fragments. Namely, we verify the security properties for a special set of so-called traces of the cryptographic protocol. Intuitively, a trace of the cryptographic protocol is a sequence of computations, value checks, and transmissions on the sides of “honest” agents permitted by the protocol. In order to choose such set of traces, we introduce an Adversary model and the notion of a similarity relation for traces. We then verify the security properties of selected traces with Tamarin Prover. Experimental results for the EAP and Noise protocols clearly show that this approach can be promising for automatic verification of large protocols.","PeriodicalId":325794,"journal":{"name":"2020 Ivannikov Memorial Workshop (IVMEM)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2020-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123495414","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}