Agent based distributed event system

Abstract

Geleneksel istemci-sunucu mimarisinin kullanıldığı küçük ölçekli dağıtılmış sistemler uçtan uca ve senkron haberleşmeleri sebebi ile statik uygulamaların geliştirilmesinin ötesine geçmemiştir. Bu haberleşmenin büyük ölçekli sistemlerde kullanılması ise uygulamaların hantal ve kullanışsız olmalarını sağlamıştır. Bu kısıtlamalar, dinamik olan ve bağlantısız uygulamaların çalıştığı bir ortamda, daha esnek haberleşme modellerini kullanan yazılım sistemlerinin geliştirilmesi gerekliliğini ortaya çıkarmıştır. Yapılan çalışmada sistem bileşenleri arasında haberleşme için kullanılan olay kavramının üretim niteliği geliştirilmesi amaçlanmış olup olaylar sadece ham veri üretiminin yanı sıra, eylemlerin de üretildiği ve saklandığı ileri bir düzeye yerleştirilmiştir. Bu düzeydeki bir olay, işlenebilir veriler üretebileceği gibi, kendine özgü bir kontrol akışına sahip olan bir eylemler dizisinin tetikleyicisi de olabilir. Söz konusu eylemler belirli bir amacı gerçeklemeye yönelik işlem dizisine, karar mekanizmalarına ve çoğunlukla birlikte üretildikleri bir veri kümesine sahip olmaktadır. Sistemde olay yapısı, içerdiği eylem dizisinin ve bu eylemleri yerine getirmede kullanacağı veri bloğunun yer aldığı bir “gezgin etmen” yapısıyla temsil edilmektedir. Bu yeni yapıdaki olaylara “agvent-agent event” adı verilmiş olup sistem bir bütün olarak “Etmen Tabanlı Dağıtılmış Olay Sistemi” veya kısaca “ABDES Sistemi” olarak adlandırılmıştır. Geliştirilen sistem, kayıt/yayım haberleşme modelinin asenkron haberleşme, bir uçtan çok uca haberleşme ve zayıf bağlı haberleşme özellikleri ile gezgin-zeki etmenlerin amaca yönelik davranmalarını, sosyal yeteneklerini, tepkisel davranabilmelerini ve otonom olma özelliklerini esnek bir ortamda birleştirmiştir. Anahtar Kelimeler: Dağıtılmış olay sistemi, gezgin etmenler, kayıt/yayım modeli.In recent years, a growing attention has been paid to the publish/subscribe communication paradigm as a means for disseminating information, also called as events, through distributed systems on wide-area networks. As it allows events to be propagated in a way that is completely hidden to the component that has generated them as well as to its receivers, it is particularly interesting when easy reconfiguration and decoupling among components in a distributed system is required. The historical development of publish/subscribe systems has followed a line which has evolved from channel-based systems, to subject-based systems, next content-based systems and finally type (object) based systems. In this study, we propose a new model for agent based distributed event systems, called as ABDES system, which combines the advantages of distributed event systems (like loosely coupled, asynchronous and one to many communication) and the advantages of intelligent mobile agents (like autonomy, reactivity, social ability and goal driven execution) into a flexible and extensible distributed execution environment. The major novelty of the model is that an event is represented by a mobile agent, (called as agvent-agent event), which is treated as a first class citizen of the system and given autonomy features to travel between system components. ABDES system differs from other distributed event systems with its distinct characteristics that are described below. Event Definition: In most event systems, events are defined as low-level messages, which consist of record like structures, list of strings, tuple based structures, etc. In type-based systems, events are defined as objects and viewed as main component of the system. Nevertheless, they are not autonomous. In ABDES system, events are represented as mobile agents that have their own goals, beliefs and behaviors that they acquire at their creation. When an agvent reaches to an agvent server, it examines the routing table of the server and selects its targets autonomously. This approach reduces the load and complexity of agvent servers as well. Subscription Mechanism: In most distributed event systems, subscribers register on a channel, on a specific topic or on a specific content of an event message. In ABDES system, subscribers register on types of agvents. For example, a subscriber can register on an agvent, which is an instance of "Agv_type1" class, specifying certain constraints based on its advertised attributes and behaviors. Information hiding: In previously developed event systems, an event server can, actually has to, access the content of the published event data. If you have a valuable data and you want to keep it secret it is really a hard work. In ABDES system, a published agvent searches the knowledge base of the agvent server, selects the registered subscribers, clones itself and sends clones of agent to each subscriber on the selected list. Therefore, the agvent server has no access to the content of the published event data, which simplifies its role and consequently facilitates the server development process. Information hiding also meets requirements of certain applications where secrecy of event data is essential for them. User defined agvent types: Distributed event systems generally use predefined event types. Therefore, to add a new event type you have to make changes in the dispatch service and also at publisher and subscriber sites. In ABDES system, a publisher can create its own agvent type and declare its properties and behaviors through an advertisement message. Once an agvent type is announced to the system, subscribers can register on agvents of that type. Filtering Mechanism: Distributed event systems use client side filtering. A client defines its profile by a subscription message and system forwards incoming events to this client according to its profile. There is not any possibility for producers to put their dispatching criteria to select the clients. Because of the agvents autonomous and self routing structure we can achieve the producer side filtering also. Faults and failures are inevitable in a distributed system built over a wide area network and they should be tolerated for continuing system transactions. Therefore we also developed a fault tolerance mechanism by dynamically reconfiguring the connections among agvent servers in order to create paths that increase the performance of message routing. We think the new model will serve as an effective choice for large scale distributed computing application, automatic virus updating and several information oriented applications, such as e-commerce and information retrieval.Keywords: Distributed event system, mobile agent, publish/subscribe model

    Similar works