Eder Freire, L. Schnitman, Wagner Oliveira, A. Duarte
The design of specialized hardware for Network Intrusion Detection has been subject of intense research over the last decade due to its considerably higher performance compared to software implementations. In this context, one of the limiting factors is the finite amount of memory resources versus the increasing number of threat patterns to be analyzed. This paper proposes an architecture based on the Huffman algorithm for encoding, storage and decoding of these patterns in order to optimize such resources. We have made tests with simulation and synthesis in FPGA of rule subsets of the Snort software, and analysis indicate a saving of up to 73 percent of the embedded memory resources of the chip.
{"title":"Evaluation of the Huffman Encoding for Memory Optimization on Hardware Network Intrusion Detection","authors":"Eder Freire, L. Schnitman, Wagner Oliveira, A. Duarte","doi":"10.1109/SBESC.2013.38","DOIUrl":"https://doi.org/10.1109/SBESC.2013.38","url":null,"abstract":"The design of specialized hardware for Network Intrusion Detection has been subject of intense research over the last decade due to its considerably higher performance compared to software implementations. In this context, one of the limiting factors is the finite amount of memory resources versus the increasing number of threat patterns to be analyzed. This paper proposes an architecture based on the Huffman algorithm for encoding, storage and decoding of these patterns in order to optimize such resources. We have made tests with simulation and synthesis in FPGA of rule subsets of the Snort software, and analysis indicate a saving of up to 73 percent of the embedded memory resources of the chip.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"63 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114857495","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}
Design and implementation of autonomous vehicles is a very complex task. One important step on building autonomous navigation systems is to apply it first on simulations. We present here a vision-based autonomous navigation approach in unstructured terrains for a car-like vehicle. We modeled the vehicle and the scenario in a realistic physics simulation with the same constraints of a real car and uneven terrain with vegetation. We use stereo vision to build a navigation cost map grid based on a probabilistic occupancy space represented by an OctoMap. The localization is based on GPS and compass integrated with wheel odometry. A global planning is performed and continuously updated with the information added to the cost map while the vehicle moves. In our simulations we could autonomously navigate the vehicle through obstructed spaces avoiding collisions and generating feasible trajectories. This system will be validated in the near future using our autonomous vehicle testing platform - CaRINA.
{"title":"Simulation of an Autonomous Vehicle with a Vision-Based Navigation System in Unstructured Terrains Using OctoMap","authors":"R. L. Klaser, F. Osório, D. Wolf","doi":"10.1109/SBESC.2013.46","DOIUrl":"https://doi.org/10.1109/SBESC.2013.46","url":null,"abstract":"Design and implementation of autonomous vehicles is a very complex task. One important step on building autonomous navigation systems is to apply it first on simulations. We present here a vision-based autonomous navigation approach in unstructured terrains for a car-like vehicle. We modeled the vehicle and the scenario in a realistic physics simulation with the same constraints of a real car and uneven terrain with vegetation. We use stereo vision to build a navigation cost map grid based on a probabilistic occupancy space represented by an OctoMap. The localization is based on GPS and compass integrated with wheel odometry. A global planning is performed and continuously updated with the information added to the cost map while the vehicle moves. In our simulations we could autonomously navigate the vehicle through obstructed spaces avoiding collisions and generating feasible trajectories. This system will be validated in the near future using our autonomous vehicle testing platform - CaRINA.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114538681","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}
Point clouds segmentation is an essential step to improve the performance of obstacle detection and classification in areas of autonomous ground vehicles and mobile robotics. This paper presents a study and comparison of the performance of segmentation methods using point clouds coming from a 3D laser sensor, more specifically obtained from a Velodyne HDL32.
{"title":"3D Point Clouds Segmentation for Autonomous Ground Vehicle","authors":"Danilo Habermann, A. Hata, D. Wolf, F. Osório","doi":"10.1109/SBESC.2013.43","DOIUrl":"https://doi.org/10.1109/SBESC.2013.43","url":null,"abstract":"Point clouds segmentation is an essential step to improve the performance of obstacle detection and classification in areas of autonomous ground vehicles and mobile robotics. This paper presents a study and comparison of the performance of segmentation methods using point clouds coming from a 3D laser sensor, more specifically obtained from a Velodyne HDL32.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"56 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127249957","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}
Recently, researchers have shown an increased interest in concurrency control using distributed Software Transactional Memory (STM). However, there has been little discussion about certain types of fault tolerance, such as Byzantine Fault Tolerance (BFT), for kind of systems. The focus of this paper is on tolerating byzantine faults on optimistic processing of transactions using STM. The result is an algorithm named OB-STM. The processing of a transaction runs with an optimistic approach, benefiting from the high probability of messages being delivered in order when using Reliable Multicast on a local network (LAN). The protocol has a better performs when messages are delivered ordered. In case of a malicious replica or out-of-order messages, the Byzantine protocol is initiated. In smaller scenarios and using an optimistic approach, the protocol has a better throughput than Tazio.
{"title":"OB-STM: An Optimistic Approach for Byzantine Fault Tolerance in Software Transactional Memory","authors":"T. A. Ribeiro, L. Lung, Hylson Vescovi Netto","doi":"10.1109/SBESC.2013.31","DOIUrl":"https://doi.org/10.1109/SBESC.2013.31","url":null,"abstract":"Recently, researchers have shown an increased interest in concurrency control using distributed Software Transactional Memory (STM). However, there has been little discussion about certain types of fault tolerance, such as Byzantine Fault Tolerance (BFT), for kind of systems. The focus of this paper is on tolerating byzantine faults on optimistic processing of transactions using STM. The result is an algorithm named OB-STM. The processing of a transaction runs with an optimistic approach, benefiting from the high probability of messages being delivered in order when using Reliable Multicast on a local network (LAN). The protocol has a better performs when messages are delivered ordered. In case of a malicious replica or out-of-order messages, the Byzantine protocol is initiated. In smaller scenarios and using an optimistic approach, the protocol has a better throughput than Tazio.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"185 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134118557","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}
Wireless Sensor Networks (WSNs) are rapidly becoming a necessary tool in many different application areas, such as environmental monitoring, security, safety, and so on. The heterogeneity of hardware is large, so there exists several different environments that support WSN programming. However, the great majority of such environments only target the sensors programming, forgetting about their real intent: the application. In this paper we propose an approach to satisfy the need of high level development methods in WSN applications, aiming to provide a clear link between the modeled WSN constraints and the programming entities. An important part of this proposal is the so-called WiSeN Profile, an UML profile devoted for WSN applications design in a Model-Drivel Development (MDD) paradigm.
{"title":"Model-Driven Development of WSN Applications","authors":"L. Becker, F. Basso, A. A. Fröhlich, A. R. Paulon","doi":"10.1109/SBESC.2013.27","DOIUrl":"https://doi.org/10.1109/SBESC.2013.27","url":null,"abstract":"Wireless Sensor Networks (WSNs) are rapidly becoming a necessary tool in many different application areas, such as environmental monitoring, security, safety, and so on. The heterogeneity of hardware is large, so there exists several different environments that support WSN programming. However, the great majority of such environments only target the sensors programming, forgetting about their real intent: the application. In this paper we propose an approach to satisfy the need of high level development methods in WSN applications, aiming to provide a clear link between the modeled WSN constraints and the programming entities. An important part of this proposal is the so-called WiSeN Profile, an UML profile devoted for WSN applications design in a Model-Drivel Development (MDD) paradigm.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121575984","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}
Nowadays, market needs pose novel challenges to computer science requiring increasingly computational capacity to deal with more and more complex applications. Embedded systems represent a large slice of these new complex systems. This scenario promoted the employment of advanced hardware platforms on embedded systems. However, embedded software development has not progressed at the same pace. Although high-level technologies have been employed in embedded development it still lacks of understanding about their impact on physical constraints, which are extremely important on embedded domain. This paper analyzes Object Oriented (OO) and procedural implementations running on different processor organizations. We demonstrate that for the future embedded processors the gains of the old-fashioned procedural code over OO code do not justifies the risks of delayed time-to-market.
{"title":"Quality Impact on Software Performance","authors":"U. Corrêa, L. F. Millani, A. C. S. Beck, L. Carro","doi":"10.1109/SBESC.2013.30","DOIUrl":"https://doi.org/10.1109/SBESC.2013.30","url":null,"abstract":"Nowadays, market needs pose novel challenges to computer science requiring increasingly computational capacity to deal with more and more complex applications. Embedded systems represent a large slice of these new complex systems. This scenario promoted the employment of advanced hardware platforms on embedded systems. However, embedded software development has not progressed at the same pace. Although high-level technologies have been employed in embedded development it still lacks of understanding about their impact on physical constraints, which are extremely important on embedded domain. This paper analyzes Object Oriented (OO) and procedural implementations running on different processor organizations. We demonstrate that for the future embedded processors the gains of the old-fashioned procedural code over OO code do not justifies the risks of delayed time-to-market.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125212670","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}
Continuously Software Engineering seeks to increase the quality of all kinds of software products, however these different types have different characteristics that need to be observed also in a different way. Currently, the major concern is with the quality of Embedded Computing Systems, as they are a classification of software that are strongly present in our daily lives and often without notice. The greatest feature of such systems is the ability to perform extremely important tasks with little computational resource. In general, such systems have restrictions on development and operation, they require specific requirements. To ensure its functioning in its development, we need to use processes with defined procedures to identify these features. This article presents part of a study being carried out to develop a process framework covering all phases of the development process of embedded systems, organized into phases, activities and document templates that induce developers to carry out the good practices suggested by quality models. It is understood by development, all activities related either to new components or reuse.
{"title":"Phase Cyclical Process Requirements for the Development of Embedded Systems","authors":"Magda Aparecida Silverio Miyashiro, M. Ferreira","doi":"10.1109/SBESC.2013.26","DOIUrl":"https://doi.org/10.1109/SBESC.2013.26","url":null,"abstract":"Continuously Software Engineering seeks to increase the quality of all kinds of software products, however these different types have different characteristics that need to be observed also in a different way. Currently, the major concern is with the quality of Embedded Computing Systems, as they are a classification of software that are strongly present in our daily lives and often without notice. The greatest feature of such systems is the ability to perform extremely important tasks with little computational resource. In general, such systems have restrictions on development and operation, they require specific requirements. To ensure its functioning in its development, we need to use processes with defined procedures to identify these features. This article presents part of a study being carried out to develop a process framework covering all phases of the development process of embedded systems, organized into phases, activities and document templates that induce developers to carry out the good practices suggested by quality models. It is understood by development, all activities related either to new components or reuse.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124188034","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}
Memory systems have been pointed out as a main source to the performance and power consumption of embedded software. Embedded systems require low-power consumption, so becomes interesting investigate memory optimization techniques for these systems. There are many techniques in the literature to reduce power/energy consumption and execution time of embedded systems. This work revises and discusses these techniques focusing on hardware and software optimizations.
{"title":"Survey of Memory Optimization Techniques for Embedded Systems","authors":"L. Oliveira, J. Mattos, L. Brisolara","doi":"10.1109/SBESC.2013.35","DOIUrl":"https://doi.org/10.1109/SBESC.2013.35","url":null,"abstract":"Memory systems have been pointed out as a main source to the performance and power consumption of embedded software. Embedded systems require low-power consumption, so becomes interesting investigate memory optimization techniques for these systems. There are many techniques in the literature to reduce power/energy consumption and execution time of embedded systems. This work revises and discusses these techniques focusing on hardware and software optimizations.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117105738","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}
One of the most intricate problem in the synthesis of hard real-time systems is the scheduling. There are two general approaches for scheduling tasks in real-time systems: runtime or pre-runtime scheduling. However, there are situations where the runtime approach does not find a feasible schedule even if such a schedule exists. This situation generally occurs when the task model imposes arbitrary intertask relations, such as precedence and exclusion relations. However, finding a feasible schedule is not trivial, because this problem is NP-Hard in its general form. The approach proposed in this paper models real-time systems using time Petri nets, and finds a pre-runtime scheduling, provided that one exists, using a depth-first search method adopting two kinds of firing rules: single and maximal step semantics. The main aim of this paper is to compare both semantics in the context of embedded hard real-time pre-runtime scheduling.
{"title":"Analysis of Real-Time Scheduling Problems by Single Step and Maximal Step Semantics for Time Petri Net Models","authors":"R. Freitas, R. Barreto, P. Maciel","doi":"10.1109/SBESC.2013.45","DOIUrl":"https://doi.org/10.1109/SBESC.2013.45","url":null,"abstract":"One of the most intricate problem in the synthesis of hard real-time systems is the scheduling. There are two general approaches for scheduling tasks in real-time systems: runtime or pre-runtime scheduling. However, there are situations where the runtime approach does not find a feasible schedule even if such a schedule exists. This situation generally occurs when the task model imposes arbitrary intertask relations, such as precedence and exclusion relations. However, finding a feasible schedule is not trivial, because this problem is NP-Hard in its general form. The approach proposed in this paper models real-time systems using time Petri nets, and finds a pre-runtime scheduling, provided that one exists, using a depth-first search method adopting two kinds of firing rules: single and maximal step semantics. The main aim of this paper is to compare both semantics in the context of embedded hard real-time pre-runtime scheduling.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132510440","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}
Infrastructure-as-a-service (IaaS) clouds enable customers to allocate computing resources in a flexible manner to satisfy their needs, and pay only for the allocated resources. One of the challenges for IaaS customers is the correct provisioning of their resources. Many users end up under provisioning, hurting application performance, or over provisioning, paying for resources that are not really necessary. Memory is an essential resource for any computing system, and is frequently a performance-limiting factor in cloud environments. Our work uses monitoring to enable a cloud customer to determine if the memory allocated to his virtual machines is correctly provisioned, under provisioned, or over provisioned. Experimental results with the Xen platform demonstrate the effectiveness of the proposed approach.
{"title":"Diagnosing Memory Provisioning in IaaS Clouds","authors":"R. Pfitscher, M. A. Pillon, R. Obelheiro","doi":"10.1109/SBESC.2013.18","DOIUrl":"https://doi.org/10.1109/SBESC.2013.18","url":null,"abstract":"Infrastructure-as-a-service (IaaS) clouds enable customers to allocate computing resources in a flexible manner to satisfy their needs, and pay only for the allocated resources. One of the challenges for IaaS customers is the correct provisioning of their resources. Many users end up under provisioning, hurting application performance, or over provisioning, paying for resources that are not really necessary. Memory is an essential resource for any computing system, and is frequently a performance-limiting factor in cloud environments. Our work uses monitoring to enable a cloud customer to determine if the memory allocated to his virtual machines is correctly provisioned, under provisioned, or over provisioned. Experimental results with the Xen platform demonstrate the effectiveness of the proposed approach.","PeriodicalId":359419,"journal":{"name":"2013 III Brazilian Symposium on Computing Systems Engineering","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-11-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128048237","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}