Return to search

Push-based low-latency solution for Tracked Resource Set protocol : An extension of Open Services for Lifecycle Collaboration specification

Currently, the development of embedded system requires a variety of software and tools. Moreover, most of this software and tools are standalone applications, thus they are unconnected and their data can be inconsistent and duplicated. This increase both heterogeneity and the complexity of the development environment. To address this situation, tool integration solutions based on Linked Data are used, as they provide scalable and sustainable integration across different engineering tools. Different systems can access and share data by following the Linked-Data-based Open Service for Lifecycle Collaboration (OSLC) specification. OSLC uses the Tracked Resource Set (TRS) protocol to enable a server to expose a resource set and to enable a client to discover a resource in the resource set. Currently, the TRS protocol uses a client pull for the client to update its data and to synchronize with the server. However, this method is inefficient and time consuming. Moreover, high-frequency pulling may introduce an extra burden on the network and server, while low-frequency pulling increases the system’s latency (as seen by the client). A push-based low-latency solution for the TRS protocol was implemented using Message Queue Telemetry Transport (MQTT) technology. The TRS server uses MQTT to push the update patch (called a ChangeEvent) to the TRS client, then the client updates its content according to this ChangeEvent. As a result, the TRS client synchronizes with the TRS server in real time. Furthermore, a TRS adaptor was developed for Atlassian’s JIRA, a widely-used project and issue management tool. This JIRA-TRS adaptor provides a TRS provider with the ability to share data via JIRA with other software or tools which utilize the TRS protocol. In addition, a simulator was developed to simulate the operations in JIRA for a period of time (specifically the create, modify, and delete actions regarding issues) and acts as a validator to check if the data in TRS client matches the data in JIRA. An evaluation of the push-based TRS system shows an average synchronization delay of around 30 milliseconds. This is a huge change compared with original TRS system that synchronized every 60 seconds. / Nuvarande inbyggda system kräver en mängd olika program och verktyg för att stödja dess utveckling. Dessutom är de flesta av dessa programvara och verktyg fristående applikationer. De är oanslutna och deras data kan vara inkonsistent och duplicerad. Detta medför ökad heterogenitet och ökar komplexiteten i utvecklingsmiljön. För att hantera denna situation används verktygsintegrationslösningar baserade på Länkad Data, eftersom de ger en skalbar och hållbar integrationslösning för olika tekniska verktyg. Olika system kan komma åt och dela data genom att följa den Länkad Data-baserade tjänsten Open Service for Lifecycle Collaboration (OSLC). OSLC använder TRS-protokollet (Tracked Resource Set) så att en server kan exponera en resursuppsättning och för att möjliggöra för en klient att upptäcka en resurs i resursuppsättningen. TRS-protokollet använder för tillfället pull-metoden så att klienten kan uppdatera sin data och synkronisera med servern. Denna metod är emellertid ineffektiv och tidskrävande. Vidare kan en högfrekvensdriven pull-metod införa en extra börda på nätverket och servern, medan lågfrekvensdriven ökar systemets latens (som ses av klienten). I det här examensprojektet implementerar vi en pushbaserad låg latenslösning för TRS-protokollet. Den teknik som används är Message Queue Telemetry Transport (MQTT). TRS-servern använder MQTT för att pusha uppdateringspatchen (som kallas ChangeEvent) till TRS-klienten. Därefter uppdaterar klienten dess innehåll enligt denna ChangeEvent. Vilket resulterar i att TRS-klienten synkroniseras med TRS-servern i realtid. Dessutom utvecklas en TRS-adapter för Atlassians JIRA som är ett välanvänt projekt och problemhanteringsverktyg. JIRA-TRS-adaptern tillhandahåller en TRS-leverantör med möjlighet att dela data via JIRA med annan programvara eller verktyg som använder TRS-protokollet. Dessutom utvecklade vi en simulator för att simulera verksamheten i JIRA under en tidsperiod (specifikt skapa, ändra och ta bort åtgärder rörande problem) och en validator för att kontrollera om data i TRS-klienten matchar data i JIRA. En utvärdering av det pushbaserade TRS-systemet visar en genomsnittlig synkroniseringsfördröjning på cirka 30 millisekunder. Detta är en stor förändring jämfört med det ursprungliga TRS-systemet som synkroniseras var 60:e sekund.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-213126
Date January 2017
CreatorsNing, Xufei
PublisherKTH, Radio Systems Laboratory (RS Lab)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-ICT-EX ; 2017:138

Page generated in 0.0035 seconds