@conference {18664,
	title = {Assessing the Attack Threat due to IRC Channels},
	year = {2006},
	month = {2006/06//},
	pages = {467 - 472},
	abstract = {This practical experience report presents the results of an investigation into the threat of attacks associated with the chat medium IRC. A combination of simulated users (i.e., bots), some configured with scripts that simulated conversations, and regular users were used. The average number of attacks per day a user on IRC can expect, the effect of channel activity, gender based on the name, and network type on the number of attacks were determined. The social structure of IRC channels and the types of users that use it were analyzed. The results indicate that attacks through IRC channels come from human users selecting targets rather than automated scripts targeting every user in a channel},
	keywords = {attack threat assessment, channel activity, client-server systems, computer crime, intrusion-resilient channels, IRC channels, IRC protocols, Protocols, telecommunication channels, telecommunication security},
	doi = {10.1109/DSN.2006.12},
	author = {Meyer,R. and Michel Cukier}
}
@conference {15684,
	title = {Dynamic load balancing across mirrored multimedia servers},
	booktitle = {2003 International Conference on Multimedia and Expo, 2003. ICME {\textquoteright}03. Proceedings},
	volume = {2},
	year = {2003},
	month = {2003/07/06/9},
	pages = {II- 53-6 vol.2 - II- 53-6 vol.2},
	publisher = {IEEE},
	organization = {IEEE},
	abstract = {The purpose of this paper is to present protocols for efficient load balancing across replicated multimedia servers in a metropolitan area network. Current multimedia infrastructures, even when they use mirrored servers, do not have standardized load balancing schemes. Existing schemes frequently require participation from the clients in balancing the load across the servers efficiently. We propose two protocols in this paper for fair load balancing without any client-side processing being required. Neither protocol requires any change to the network-level infrastructure. Using network packet loss and packet transmission delay as the chief metrics, we show the effectiveness of the protocols through extensive simulations.},
	keywords = {client-server systems, Delay, Internet, load balancing protocols, Load management, media streaming, metropolitan area network, metropolitan area networks, mirrored multimedia servers, Multimedia communication, multimedia servers, network packet loss, Network servers, packet transmission delay, Propagation losses, Protocols, Streaming media, Topology, Traffic control, Web server},
	isbn = {0-7803-7965-9},
	doi = {10.1109/ICME.2003.1221551},
	author = {Matthur,A. and Mundur, Padma}
}
@conference {18656,
	title = {An experimental evaluation of correlated network partitions in the Coda distributed file system},
	year = {2003},
	month = {2003/10//},
	pages = {273 - 282},
	abstract = {Experimental evaluation is an important way to assess distributed systems, and fault injection is the dominant technique in this area for the evaluation of a system{\textquoteright}s dependability. For distributed systems, network failure is an important fault model. Physical network failures often have far-reaching effects, giving rise to multiple correlated failures as seen by higher-level protocols. This paper presents an experimental evaluation, using the Loki fault injector, which provides insight into the impact that correlated network partitions have on the Coda distributed file system. In this evaluation, Loki created a network partition between two Coda file servers, during which updates were made at each server to the same replicated data volume. Upon repair of the partition, a client requested directory resolution to converge the diverging replicas. At various stages of the resolution, Loki invoked a second correlated network partition, thus allowing us to evaluate its impact on the system{\textquoteright}s correctness, performance, and availability.},
	keywords = {client-server systems, Coda distributed file system, correlated network partitions, distributed file systems, experimental evaluation, fault model, Loki fault injector, multiple correlated failures, network failure, Network topology, performance evaluation, replicated data, replicated databases, software fault tolerance, system performance evaluation},
	doi = {10.1109/RELDIS.2003.1238077},
	author = {Lefever,R.M. and Michel Cukier and Sanders,W. H.}
}
@conference {17575,
	title = {Clustering and server selection using passive monitoring},
	booktitle = {IEEE INFOCOM 2002. Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings},
	volume = {3},
	year = {2002},
	month = {2002///},
	pages = {1717- 1725 vol.3 - 1717- 1725 vol.3},
	publisher = {IEEE},
	organization = {IEEE},
	abstract = {We consider the problem of client assignment in a distributed system of content servers. We present a system called Webmapper for clustering IP addresses and assigning each cluster to an optimal content server. The system is passive in that the only information it uses comes from monitoring the TCP connections between the clients and the servers. It is also flexible in that it makes no a priori assumptions about network topology and server placement and it can react quickly to changing network conditions. We present experimental results to evaluate the performance of Webmapper.},
	keywords = {client assignment, client-server systems, clustering, content servers, Delay, distributed system, Educational institutions, Internet, IP addresses, Monitoring, network conditions, Network servers, Network topology, optimal content server, passive monitoring, server selection, Space technology, TCPIP, Transport protocols, Web pages, Web server, Webmapper},
	isbn = {0-7803-7476-2},
	doi = {10.1109/INFCOM.2002.1019425},
	author = {Andrews,M. and Shepherd,B. and Srinivasan, Aravind and Winkler,P. and Zane,F.}
}
@conference {18684,
	title = {Performance evaluation of a probabilistic replica selection algorithm},
	year = {2002},
	month = {2002///},
	pages = {119 - 127},
	abstract = {When executing time-sensitive distributed applications, a middleware that provides dependability and timeliness is faced with the important problem of preventing timing failures both under normal conditions and when the quality of service is degraded due to replica failures and transient overload on the server. To address this problem, we have designed a probabilistic model-based replica selection algorithm that allows a middleware to choose a set of replicas to service a client based on their ability to meet a client{\textquoteright}s timeliness requirements. This selection is done based on the prediction made by a probabilistic model that uses the performance history of replicas as inputs. In this paper, we describe the experiments we have conducted to evaluate the ability of this dynamic selection algorithm to meet a client{\textquoteright}s timing requirements, and compare it with that of a static and round-robin selection scheme under different scenarios},
	keywords = {client-server systems, Dependability, distributed object management, dynamic selection algorithm, Middleware, probabilistic model, probabilistic model-based replica selection algorithm, probability, quality of service, real-time systems, replica failures, round-robin selection scheme, static scheme, time-sensitive distributed applications, timeliness, timing failures, transient overload},
	doi = {10.1109/WORDS.2002.1000044},
	author = {Krishnamurthy, S. and Sanders,W. H. and Michel Cukier}
}
@conference {18685,
	title = {Performance evaluation of a QoS-aware framework for providing tunable consistency and timeliness},
	year = {2002},
	month = {2002///},
	pages = {214 - 223},
	abstract = {Strong replica consistency models ensure that the data delivered by a replica always includes the latest updates, although this may result in poor response times. On the other hand, weak replica consistency models provide quicker access to information, but do not usually provide guarantees about the degree of staleness in the data they deliver. In order to support emerging distributed applications that are characterized by high concurrency demands, an increasing shift towards dynamic content, and timely delivery, we need quality of service models that allow us to explore the intermediate space between these two extreme approaches to replica consistency. Further, for better support of time-sensitive applications that can tolerate relaxed consistency in exchange for better responsiveness, we need to understand how the desired level of consistency affects the timeliness of a response. The QoS model we have developed to realize these objectives considers both timeliness and consistency, and treats consistency along two dimensions: order and staleness. We evaluate experimentally the framework we have developed to study the timeliness/consistency tradeoffs for replicated services and present experimental results that compare these tradeoffs in the context of sequential and FIFO ordering.},
	keywords = {client-server systems, Computer networks, CORBA-based middleware, distributed applications, distributed object management, Network servers, QoS, quality of service, replica consistency, replicated services, server replicas, timeliness},
	doi = {10.1109/IWQoS.2002.1006589},
	author = {Krishnamurthy, S. and Sanders,W. H. and Michel Cukier}
}
@article {18650,
	title = {An adaptive algorithm for tolerating value faults and crash failures},
	journal = {Parallel and Distributed Systems, IEEE Transactions on},
	volume = {12},
	year = {2001},
	month = {2001/02//},
	pages = {173 - 192},
	abstract = {The AQuA architecture provides adaptive fault tolerance to CORBA applications by replicating objects and providing a high-level method that an application can use to specify its desired level of dependability. This paper presents the algorithms that AQUA uses, when an application{\textquoteright}s dependability requirements can change at runtime, to tolerate both value faults in applications and crash failures simultaneously. In particular, we provide an active replication communication scheme that maintains data consistency among replicas, detects crash failures, collates the messages generated by replicated objects, and delivers the result of each vote. We also present an adaptive majority voting algorithm that enables the correct ongoing vote while both the number of replicas and the majority size dynamically change. Together, these two algorithms form the basis of the mechanism for tolerating and recovering from value faults and crash failures in AQuA},
	keywords = {active replication communication, adaptive algorithm, adaptive fault tolerance, adaptive majority voting algorithm, AQuA architecture, client-server systems, CORBA, crash failures, data consistency, data integrity, Dependability, distributed object management, fault tolerant computing, objects replication, value faults},
	isbn = {1045-9219},
	doi = {10.1109/71.910872},
	author = {Ren,Yansong and Michel Cukier and Sanders,W. H.}
}
@conference {18647,
	title = {A dynamic replica selection algorithm for tolerating timing faults},
	year = {2001},
	month = {2001/07//},
	pages = {107 - 116},
	abstract = {Server replication is commonly used to improve the fault tolerance and response time of distributed services. An important problem when executing time-critical applications in a replicated environment is that of preventing timing failures by dynamically selecting the replicas that can satisfy a client{\textquoteright}s timing requirement, even when the quality of service is degraded due to replica failures and excess load on the server. We describe the approach we have used to solve this problem in AQuA, a CORBA-based middleware that transparently replicates objects across a local area network. The approach we use estimates a replica{\textquoteright}s response time distribution based on performance measurements regularly broadcast by the replica. An online model uses these measurements to predict the probability with which a replica can prevent a timing failure for a client. A selection algorithm then uses this prediction to choose a subset of replicas that can together meet the client{\textquoteright}s timing constraints with at least the probability requested by the client. We conclude with experimental results based on our implementation.},
	keywords = {AQuA, client, client-server systems, CORBA-based middleware, distributed object management, distributed services, dynamic replica selection algorithm, fault tolerant computing, local area network, Local area networks, quality of service, replica failures, response time, server replication, time-critical applications, timing failures, timing fault tolerance},
	doi = {10.1109/DSN.2001.941397},
	author = {Krishnamurthy, S. and Sanders,W. H. and Michel Cukier}
}
@conference {16779,
	title = {Integrating distributed scientific data sources with MOCHA and XRoaster},
	booktitle = {Thirteenth International Conference on Scientific and Statistical Database Management, 2001. SSDBM 2001. Proceedings},
	year = {2001},
	month = {2001///},
	pages = {263 - 266},
	publisher = {IEEE},
	organization = {IEEE},
	abstract = {MOCHA is a novel middleware system for integrating distributed data sources that we have developed at the University of Maryland. MOCHA is based on the idea that the code that implements user-defined types and functions should be automatically deployed to remote sites by the middleware system itself. To this end, we have developed an XML-based framework to specify metadata about data sites, data sets, and user-defined types and functions. XRoaster is a graphical tool that we have developed to help the user create all the XML metadata elements to be used in MOCHA},
	keywords = {client-server systems, data sets, data sites, Databases, Distributed computing, distributed databases, distributed scientific data source integration, Educational institutions, graphical tool, hypermedia markup languages, IP networks, java, Large-scale systems, Maintenance engineering, meta data, metadata, Middleware, middleware system, MOCHA, Query processing, remote sites, scientific information systems, user-defined types, visual programming, XML, XML metadata elements, XML-based framework, XRoaster},
	isbn = {0-7695-1218-6},
	doi = {10.1109/SSDM.2001.938560},
	author = {Rodriguez-Martinez,M. and Roussopoulos, Nick and McGann,J. M and Kelley,S. and Mokwa,J. and White,B. and Jala,J.}
}
@conference {18662,
	title = {AQuA: an adaptive architecture that provides dependable distributed objects},
	booktitle = {Seventeenth IEEE Symposium on Reliable Distributed Systems},
	year = {1998},
	month = {1998/10//},
	pages = {245 - 253},
	abstract = {Dependable distributed systems are difficult to build. This is particularly true if they have dependability requirements that change during the execution of an application, and are built with commercial off-the-shelf hardware. In that case, fault tolerance must be achieved using middleware software, and mechanisms must be provided to communicate the dependability requirements of a distributed application to the system and to adapt the system{\textquoteright}s configuration to try to achieve the desired dependability. The AQuA architecture allows distributed applications to request a desired level of availability using the Quality Objects (QuO) framework and includes a dependability manager that attempts to meet requested availability levels by configuring the system in response to outside requests and changes in system resources due to faults. The AQuA architecture uses the QuO runtime to process and invoke availability requests, the Proteus dependability manager to configure the system in response to faults and availability requests, and the Ensemble protocol stack to provide group communication services. Furthermore, a CORBA interface is provided to application objects using the AQuA gateway. The gateway provides a mechanism to translate between process-level communication, as supported by Ensemble, and IIOP messages, understood by Object Request Brokers. Both active and passive replication are supported, and the replication type to use is chosen based on the performance and dependability requirements of particular distributed applications},
	keywords = {adaptive architecture, AQuA, availability requests, client-server systems, commercial off-the-shelf hardware, CORBA, dependability manager, dependability requirements, dependable distributed objects, distributed object management, Ensemble protocol stack, Fault tolerance, group communication services, middleware software, Object Request Brokers, process-level communication, proteus, Quality Objects, replication, software fault tolerance, Software quality},
	doi = {10.1109/RELDIS.1998.740506},
	author = {Cukier, Michel and Ren,J. and Sabnis,C. and Henke,D. and Pistole,J. and Sanders,W. H. and Bakken,D. E. and Berman,M.E. and Karr,D. A. and Schantz,R.E.}
}
@article {16769,
	title = {Techniques for update handling in the enhanced client-server DBMS},
	journal = {IEEE Transactions on Knowledge and Data Engineering},
	volume = {10},
	year = {1998},
	month = {1998/06//May},
	pages = {458 - 476},
	abstract = {The Client-Server computing paradigm has significantly influenced the way modern Database Management Systems are designed and built. In such systems, clients maintain data pages in their main-memory caches, originating from the server{\textquoteright}s database. The Enhanced Client-Server architecture takes advantage of all the available client resources, including their long-term memory. Clients can cache server data into their own disk units if these data are part of their operational spaces. However, when updates occur at the server, a number of clients may need to not only be notified about these changes, but also obtain portions of the updates as well. In this paper, we examine the problem of managing server imposed updates that affect data cached on client disk managers. We propose a number of server update propagation techniques in the context of the Enhanced Client-Server DBMS architecture, and examine the performance of these strategies through detailed simulation experiments. In addition, we study how the various settings of the network affect the performance of these policies},
	keywords = {client disk managers, client resources, client-server computing paradigm, client-server systems, Computational modeling, Computer architecture, concurrency control, data pages, Database systems, distributed databases, enhanced client-server DBMS, Hardware, Local area networks, long-term memory, main-memory caches, Network servers, operational spaces, Personal communication networks, server update propagation techniques, Transaction databases, update handling, Workstations, Yarn},
	isbn = {1041-4347},
	doi = {10.1109/69.687978},
	author = {Delis,A. and Roussopoulos, Nick}
}
