• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 6
  • 2
  • Tagged with
  • 9
  • 4
  • 3
  • 3
  • 3
  • 3
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Reasoning about Stateful Network Behaviors

Fayaz, Seyed Kevah 01 February 2017 (has links)
Network operators must ensure their networks meet intended traversal policies (e.g., host A can talk to host B, or inbound traffic to host C goes through a firewall and then a NAT). Violations of the policies may result in revenue loss, reputation damage, and security breaches. Today checking whether the intended policies are enforced correctly is stymied by two fundamental sources of complexity: the diversity and stateful nature of the behaviors of real networks. First, we need to account for vast diversity in both the control plane (e.g., different routing protocols and their interactions) and the data plane (e.g., routers, firewalls, and proxies) of the network. Second, we need to reason about a very large space of stateful behaviors in both the control plane (e.g., the current state being characterized by the route advertisements the routers have seen so far) and the data plane (e.g., a firewall’s current state with respect to a TCP session). Prior work on checking network policies is limited to a particular state of the network. Any attempt to reason about the behavior of the network across its state space is hindered by two fundamental challenges: (i) capturing the diversity of the control and data planes, and (ii) exploring the state space of the control and data planes in a scalable manner. This thesis argues for the feasibility of checking the correctness of realistic network policies by addressing the above challenges via two key insights. First, to combat the challenge of diversity, we design unifying abstractions that glue together different routing protocols in the control plane and diverse network appliances (e.g., firewalls, proxies) in the data plane. Second, to explore the state space of the network in a scalable manner, we build tractable models of the control and data planes (e.g., by decomposing logically independent tasks) and design domain-specific optimizations (e.g., by narrowing down the scope of search given the intended policies). Taken together, these two ideas enable systematic reasoning about the correctness of stateful data and control planes. We show the utility and performance of these techniques across a range of realistic settings.
2

Frameworks for lifecycle management of stateful applications on top of Kubernetes: Testing and Evaluation

Stenberg, Carl January 2022 (has links)
Due to the growing complexity of systems and high demands on availability, fault tolerance, and scalability, more stateful applications are being moved to Kubernetes. There are two problems associated with this: (1) At the moment, there is a lack of industry standards when it comes to what is essential in a lifecycle management framework for stateful applications on top of Kubernetes. (2) Due to inadequate knowledge of the existing frameworks in the area and a lack of comparisons between them, there is no consensus on which framework to use. To solve these problems, this study reviews the field for existing frameworks and then evaluates the framework based on a set of metrics. The frameworks chosen for comparison during the study are (1) Operator Framework, (2) Shell Operator, (3) Kopf, and (4) KUDO. When comparing the frameworks, it becomes apparent that Operator Framework should be used in most cases. Kopf or Shell Operator can be used when creating simple scheduled activities or when the developing team is very knowledgeable in Python or Bash.
3

Queryable Workflows: Extending Dataflow Streaming with Dynamic Request/Reply Communication / Arbetsflöden som kan efterfrågas: Utökning av dataflödesströmning med dynamisk begäran/återkopplingskommunikation

Huang, Chengyang January 2023 (has links)
Stream processing systems have been widely adopted in applications such as recommendation systems, anomaly detection, and system monitoring due to their real-time capabilities. Improving observability in stream processing systems can further expand their application scenarios, including the implementation of stateful serverless applications. Stateful serverless applications are an emerging model in serverless computing that focuses on addressing the challenges of state management, enabling developers to build distributed applications in a simpler way. One possible implementation of stateful serverless applications is based on stream processing engines. However, the current approaches for observability in stream processing engines suffer from issues such as efficiency, consistency, and functionality, resulting in limited practical use cases. To address these challenges, we propose Queryable Workflow, an extension to stream processing engines. This extension allows users to access or modify the state within stream processing engines with transactional semantics using a SQL interface, enabling use cases such as ad-hoc querying, serializable updates, or even stateful serverless applications. We implemented our system on stream processing engines such as Portals and Apache Flink, and evaluated their performance. The result showed that our system has achieved 4.33x throughput improvement and 30% latency reduction compared to a baseline implemented with Apache Flink and Apache Kafka. With hand-crafted optimizations, our system achieved to process over 29,000 queries per second with a 99th percentile latency of 8.58 ms under a single-threaded runtime. Our proposed system provides a viable option for implementing stateful serverless applications that require transactional guarantees, while also expanding the potential application scenarios for stream processing engines. / Strömbehandlingssystem har på grund av sina realtidsegenskaper fått stor spridning i tillämpningar som rekommendationssystem, anomalidetektering och systemövervakning. Förbättrad observerbarhet i stream processing-system kan ytterligare utöka deras tillämpningsscenarier, inklusive implementeringen av stateful serverless-applikationer. Stateful serverless-applikationer är en framväxande modell inom serverless computing som fokuserar på att hantera utmaningarna med tillståndshantering, vilket gör det möjligt för utvecklare att bygga distribuerade applikationer på ett enklare sätt. En möjlig implementering av stateful serverless-applikationer är baserad på stream processing-motorer. De nuvarande metoderna för observerbarhet i strömbehandlingsmotorer lider dock av problem som effektivitet, konsistens och funktionalitet, vilket resulterar i begränsade praktiska användningsfall. För att ta itu med dessa utmaningar föreslog vi Queryable Workflow, ett tillägg till stream processing-motorer. Med detta tillägg kan användare komma åt eller ändra tillståndet i strömbehandlingsmotorer med transaktionssemantik med hjälp av ett SQL-gränssnitt, vilket möjliggör användningsfall som ad hoc-förfrågningar, serialiserbara uppdateringar eller till och med serverlösa applikationer med tillstånd. Vi implementerade vårt system på stream processing-motorer som Portals och Apache Flink, och utvärderade deras prestanda. Resultatet visade att vårt system har förbättrat genomströmningen 4,33 gånger och minskat latensen med 30% jämfört med en baslinje som implementerats med Apache Flink och Apache Kafka. Med handgjorda optimeringar lyckades vårt system bearbeta över 29 000 frågor per sekund med en 99:e percentil latens på 8,58 ms under en enkeltrådad körtid. Vårt föreslagna system har gett ett hållbart alternativ för att implementera stateful serverless-applikationer som kräver transaktionsgarantier, samtidigt som det också utökat de potentiella applikationsscenarierna för stream processing-motorer.
4

Stavový firewall v FPGA / Stateful Firewall for FPGA

Žižka, Martin January 2012 (has links)
This thesis describes the requirements analysis, design and implementation of stateful packet filtering to an existing stateless firewall. They also deals with testing of the implemented system. The first two chapters describe the properties NetCOPE development platform for FPGA. They also describes the principle of operation           firewall, which also serves as a requirements specification for stateful firewall. Then describes the detailed design of individual modules to modify the existing firewall and the proposal for the creation of new modules. It also discusses the implementation of the proposed modules and testing for proper operation. Finally, it discuss the current state of the thesis and describes possible future expansion.
5

GONet: Gradient Oriented Fuzzing for Stateful Network Protocol : Improving and Evaluating Fuzzing Efficiency of Stateful Protocol by Mutating Based on Gradient Information / GONet: Gradientorienterad Fuzzing för Tillståndsfullt Nätverksprotokoll : Förbättra och utvärdera fuzzing effektiviteten av stateful protokoll genom att mutera baserat på gradientinformation

Tao, Quanyu January 2023 (has links)
Network protocol plays a crucial role in supporting a wide range of critical services, of which robustness and reliability are vital. Fuzzing, or fuzz testing, serves as an effective technique to uncover vulnerabilities in software programs. However, fuzzing becomes more complicated when dealing with network protocols due to their massive state. In stateful networks, the current state can be significantly influenced by previous communication, which makes most test cases invalid and leads to low fuzzing efficiency. To overcome these challenges, this thesis proposes GONET, a novel grey-box fuzzer meticulously designed for stateful network protocols. GONET distinguishes itself from other fuzzers by introducing a state space and ingeniously utilizing gradient information from neural networks to guide the seed mutation process. This innovative approach significantly enhances the quality of test cases and leads to a marked increase in fuzzing efficiency. Furthermore, GONET’s lightweight structure enables faster execution of individual fuzzing tests, further enhancing its overall efficiency. Working on two popular protocol implementations, GONET demonstrates its superiority by outperforming two popular stateful protocol fuzzers (AFLNet and AFLNwe) in evaluation metrics of edge coverage and fuzzing speed. / Nätverksprotokoll spelar en avgörande roll för att stödja en mängd kritiska tjänster, där robusthet och tillförlitlighet är av stor betydelse. Fuzzing, eller fuzz-testning, fungerar som en effektiv teknik för att upptäcka sårbarheter i mjukvaruprogram. Men fuzzing blir mer komplicerat när man hanterar nätverksprotokoll på grund av deras massiva tillstånd. I tillståndsbundna nätverk kan det nuvarande tillståndet påverkas betydligt av tidigare kommunikation, vilket gör att de flesta testfall blir ogiltiga och leder till låg fuzzing-effektivitet. För att övervinna dessa utmaningar föreslår denna avhandling GONET, en ny grey-box fuzzer noggrant utformad för tillståndsbundna nätverksprotokoll. GONET skiljer sig från andra fuzzers genom att introducera ett tillståndsrum och genom att skickligt använda gradientinformation från neurala nätverk för att styra seed-mutationsprocessen. Denna innovativa strategi förbättrar avsevärt kvaliteten på testfallen och leder till en betydande ökning av fuzzing-effektiviteten. Dessutom gör GONET:s lätta struktur att enskilda fuzzingtester kan utföras snabbare, vilket ytterligare förbättrar dess totala effektivitet. När det gäller två populära protokollimplementeringar visar GONET sin överlägsenhet genom att överträffa två populära fuzzers för tillståndsbundna protokoll (AFLNet och AFLNwe) i utvärderingsmetriker för kantöverdrag och fuzzing-hastighet.
6

Serverless Streaming Graph Analytics with Flink Stateful Functions

Chen, Sihan January 2022 (has links)
Serverless Function as a Service (FaaS) platforms have been an emerging trend nowadays with the continuous improvement of the cloud-native ecosystem. Graph streaming analytics is a widely-known research area that demands well-designed computation paradigms and complex optimization of storage and queries. Using serverless platforms to process graph streaming analytics would be a prospective field. For one thing, serverless platforms normally use a Function as the first-class citizen, and users can smoothly use or expand the Functions only caring about the application layer, to get the results without knowing the beneath architectures or environment. For another, distributed large-scale graph problems normally demand the message-passing actor model and serverless platforms could use one Function instance for one vertex with its own context, and each of the Functions could evolve its state by passing messages to each other. This way of processing is native to distributed stateful applications and can smoothly support graph streaming analytics. A temporal graph is a graph that evolves with time. With timestamps on edges, users can retrieve historical graph states and even retrieve graph states in any arbitrary event time windows for further analytics. Handling temporal graph analytics problems on serverless platforms is the focus of this thesis. Flink Stateful Functions, a newly-built API under the umbrella of Apache Flink, simplifies the building of distributed stateful applications with runtime for serverless architectures, with the full support of stateful entities modeling with location transparency, concurrency, scaling, and resiliency. Flink Stateful Functions is a powerful tool for temporal graph streaming analytics on a serverless platform. In this thesis project, a temporal graph processing library is built based on the Flink Stateful Functions. It supports efficient storage and query specifically on temporal graph analytics problems. / Serverlösa FaaS-plattformar har varit en framväxande trend nuförtiden med den kontinuerliga förbättringen av det molnbaserade ekosystemet. Grafströmningsanalys är ett allmänt känt forskningsområde som kräver väldesignade beräkningsparadigm och komplex optimering av lagring och frågor. Att använda serverlösa plattformar för att bearbeta grafströmningsanalyser skulle vara ett potentiellt område. För det första använder serverlösa plattformar normalt en funktion som den förstklassiga medborgaren, och användare kan smidigt använda eller utöka funktionerna som bara bryr sig om applikationslagret, för att få resultat utan att känna till underarkitekturerna eller miljön. För ett annat kräver distribuerade storskaliga grafproblem normalt den meddelandeöverförande aktörsmodellen och serverlösa plattformar kan använda en funktionsinstans för en vertex med sitt eget sammanhang, och var och en av funktionerna kan utveckla sitt tillstånd genom att skicka meddelanden till varandra. Det här sättet att bearbeta är inbyggt i distribuerade statistiska applikationer och kan smidigt stödja grafströmningsanalys. En tidsgraf är en graf som utvecklas med tiden. Med tidsstämplar på kanterna kan användare hämta historiskt graftillstånd och till och med hämta graftillstånd i alla godtyckliga händelsetidsfönster för ytterligare analys. Att hantera tidsmässiga grafanalysproblem på serverlösa plattformar är fokus för denna avhandling. Flink Stateful Functions, ett nybyggt API under Apache Flinks paraply, förenklar byggandet av distribuerade stateful-applikationer med runtime för serverlösa arkitekturer, med fullt stöd av stateful entitetsmodellering med platstransparens, samtidighet, skalning och resiliens. Flink Stateful Functions är ett kraftfullt verktyg för temporal grafströmningsanalys på en serverlös plattform. I detta examensarbete byggs ett bibliotek för temporal grafbehandling baserat på Flink Stateful Functions. Den stöder effektiv lagring och frågesökning specifikt på temporal grafdata för att lösa storskaliga grafproblem.
7

Stavové zpracování síťových toků / Stateful Processing of Network Flows

Košek, Martin Unknown Date (has links)
Modern network traffic processing became a challenging task as there are increasing demands on network security devices. Packet-level processing is not sufficient for advanced network traffic analysis and it is necessary to design processing over entire network flows. Stateful processing in software does not offer enough performance for high-speed networks over 10 Gbps and therefore acceleration in hardware should be utilized. Currently there exists no universal platform for stateful processing in hardware and this task has to be implemented individually. Utilization of such platform significantly speed-up development of stateful network applications. This master thesis analyzes all aspects of stateful network processing platform design. Component based architecture increases platform flexibility and ability to optimize for chosen network applications.
8

Improving Availability of Stateful Serverless Functions in Apache Flink / Förbättring av Tillgänglighet För Tillståndsbaserade Serverlösa Funktioner i Apache Flink

Gustafson, Christopher January 2022 (has links)
Serverless computing and Function-as-a-Service are rising in popularity due to their ease of use, provided scalability and cost-efficient billing model. One such platform is Apache Flink Stateful Functions. It allows application developers to run serverless functions with state that is persisted using the underlying stream processing engine Apache Flink. Stateful Functions use an embedded RocksDB state backend, where state is stored locally at each worker. One downside of this architecture is that state is lost if a worker fails. To recover, a recent snapshot of the state is fetched from a persistent file system. This can be a costly operation if the size of the state is large. In this thesis, we designed and developed a new decoupled state backend for Apache Flink Stateful Functions, with the goal of increasing availability while measuring potential performance trade-offs. It extends an existing decoupled state backend for Flink, FlinkNDB, to support the operations of Stateful Functions. FlinkNDB stores state in a separate highly available database, RonDB, instead of locally at the worker nodes. This allows for fast recovery as large state does not have to be transferred between nodes. Two new recovery methods were developed, eager and lazy recovery. The results show that lazy recovery can decrease recovery time by up to 60% compared to RocksDB when the state is large. Eager recovery did not provide any recovery time improvements. The measured performance was similar between RocksDB and FlinkNDB. Checkpointing times in FlinkNDB were however longer, which cause short periodic performance degradation. The evaluation of FlinkNDB suggests that decoupled state can be used to improve availability, but that there might be performance deficits included. The proposed solution could thus be a viable option for applications with high requirements of availability and lower performance requirements. / Serverlös datorberäkning och Function-as-a-Service (FaaS) ökar i popularitet på grund av dess enkelhet att använda, skalbarhet och kostnadseffektiva fakturerings-model. En sådan platform är Apache Flink Stateful Functions. Den tillåter applikationsutvecklare att köra serverlösa funktioner med varaktigt tillstånd genom den underliggande strömprocesseringsmotorn Apache Flink. Stateful Functions använder en inbyggd RocksDB tillståndslagring, där tillstånd lagras lokalt på arbetarnoderna. Ett problem med denna arkitektur är att tillstånd förloras om en arbetarnod krashar. För att återhämta sig behöver systemet hämta en tidigare sparad tillståndskopia från ett varaktivt filsystem, vilket kan bli kostsamt om tillståndet är stort. I denna uppsatts har vi designat och utvecklat en ny prototyp för att separat hantera tillstånd i Apache Flink Stateful Functions, med målet att öka tillgängligheten utan att förlora prestanda. Prototypen är en vidareutveckling av en existerande separat tillståndshantering för Flink, FlinkNDB, som utökades för att kunna hantera Stateful Functions. FlinkNDB sparar tillstånd i en separat högtillgänglig database, RonDB, istället för att spara tillstånd lokalt på arbetarnoderna. Detta möjliggör snabb återhämtning då inte stora mängder tillstånd behöver skickas mellan noder. Två återhämtningsmetoder utvecklades, ivrig och lat återhämtning. Resultaten visar att lat återhämtning kan sänka återhämtningstiden med upp till 60% jämfört med RocksDB då tillståndet är stort. Ivrig återhämtning visade inte några förbättringar i återhämtningstid. Prestandan var liknande mellan RocksDB och FlinkNDB. Tiden för checkpoints var däremot längre för FlinkNDB vilket orsakade korta periodiska prestandadegraderingar jämfört med RocksDB. Evalueringen av FlinkNDB föreslår att separat tillståndshantering kan öka tillgängligheten av Stateful Functions, men att detta kan innebära vissa prestanda degraderingar. Den föreslagna lösningen kan således vara ett bra alternativ när det finns höga krav på tillgänglighet, men lågra krav på prestanda.
9

Fuzz testování REST API / Fuzz Testing of REST API

Segedy, Patrik January 2020 (has links)
Táto práca sa zaoberá fuzz testovaním REST API. Po prezentovaní prehľadu techník používaných pri fuzz testovaní a posúdení aktuálnych nástrojov a výskumu zameraného na REST API fuzz testovanie, sme pristúpili k návrhu a implementácii nášho REST API fuzzeru. Základom nášho riešenia je odvodzovanie závislostí z OpenAPI formátu popisu REST API, umožňujúce stavové testovanie aplikácie. Náš fuzzer minimalizuje počet po sebe nasledujúcich 404 odpovedí od aplikácie a testuje aplikáciu viac do hĺbky. Problém prehľadávania dostupných stavov aplikácie je riešený pomocou usporiadania závislostí tak, aby sa maximalizovala pravdepodobnosť získania potrebných vstupných dát pre povinné parametre, v kombinácii s rozhodovaním, ktoré povinné parametre môžu využívať aj náhodne generované hodnoty. Implementácia je rozšírením Schemathesis projektu, ktorý generuje vstupy za pomoci Hypothesis knižnice. Implementovaný fuzzer je použitý na testovanie Red Hat Insights aplikácie, kde našiel 32 chýb, z čoho jednu chybu je možné reprodukovať len za pomoci stavového testovania.

Page generated in 0.0646 seconds