Person:
Zegura, Ellen W.

Associated Organization(s)
Organizational Unit
ORCID
ArchiveSpace Name Record

Publication Search Results

Now showing 1 - 10 of 12
Thumbnail Image
Item

Trading Latency for Energy in Wireless Ad Hoc Networks using Message Ferrying

2004 , Zhao, Wenrui , Ammar, Mostafa H. , Zegura, Ellen W. , Lee, Chungki , Jun, Hyewon

Power management is a critical issue in wireless ad hoc networks where the energy supply is limited. In this paper, we investigate a routing paradigm, Message Ferrying (MF), to save energy while trading off data delivery delay. In MF, special nodes called ferries move around the deployment area to deliver messages for nodes. The reliance on the movement of ferries to deliver data increases the delivery delay. However, nodes can save energy by disabling their radios when ferries are far away. To exploit this feature, we present a power management framework, in which nodes switch their power management modes based on the knowledge of ferry location. We evaluate the performance of our scheme using ns-2 simulations and compare it with Dynamic Source Routing (DSR). Our simulation results show that MF achieves energy savings as high as 95% compared to DSR without power management and still delivers more than 98% of data. In contrast, a power-managed DSR delivers much less data than MF to achieve similar energy savings. In the scenario of heavy traffic load, the power-managed DSR delivers less than 20% of data. MF also shows robust performance for highly mobile nodes, while the performance of DSR suffers significantly. Thus, delay tolerant applications should use MF rather than a multihop routing protocol to save energy efficiently when both routing approaches are available.

Thumbnail Image
Item

Bootstrapping in Gnutella: A Preliminary Measurement Study

2003 , Ammar, Mostafa H. , Dhamdhere, Amogh Dhananjay , Raj, Himanshu , Riley, George F. , Zegura, Ellen W. , Karbhari, Pradnya

To join an unstructured peer-to-peer network like Gnutella, peers have to execute a bootstrapping function in which they discover other on-line peers and connect to them. Until this bootstrapping step is complete, a peer cannot participate in file sharing activities. Once bootstrapping is complete, a peer’s experience is strongly influenced by the choice of neighbor peers resulting from the bootstrapping step. Despite its importance, there has been very little attention devoted to understanding the behavior of this bootstrapping function. In this paper, we study the bootstrapping process of a peer in the Gnutella network. This is a preliminary investigation, consisting of 1) an analysis and performance comparison of bootstrapping algorithms of four Gnutella servent implementations, 2) a measurement-based characterization of the global Gnutella Web Caching System (GWebCaches), a primary component of the current bootstrapping functions, and 3) a study of the behavior and experience of a single GWebCache that was setup locally and made part of the global caching infrastructure. Our study highlights the importance of understanding the performance of the bootstrapping function as an integral part of a peer-to-peer system. We find that 1) there is considerable variation among various servent implementations that correlates to their bootstrapping performance, 2) even though the GWebCache system is designed to operate as a truly distributed system in keeping with the peer-to-peer system philosophy, it actually operates more like a centralized infrastructure function, and 3) the GWebCache system is subject to misreporting of peer and cache availability due to stale data and absence of validity checks.

Thumbnail Image
Item

Optimal Allocation of Clients to Replicated Multicast Servers

1999 , Ammar, Mostafa H. , Zegura, Ellen W. , Fei, Zongming

Server replication is an approach that is often used to improve the scalability of a service. One of the important factors in the efficient utilization of replicated servers is the ability to direct client requests to the `best" server, according to some optimality criteria. Recently, there have been several proposals for multicast services in which a server delivers information to multiple clients simultaneously. Such proposals include multicasting of web content, multicast-based video services (on-demand and pay-per-view style services), multicasting of database content and broadcast disks. The goal of many of these proposals is to use multicast to enhance the ability of the service to handle a large number of clients economically. Multicast servers may be replicated for several reasons: to distribute the load among on-demand multicast servers, to balance the `feedback" load on the servers or on entities along the multicast tree from the servers, or to select the server that is at the root of the `best" multicast routing tree. In this paper we first give a definition of the static multicast server selection problem, in which we assume a set of static clients and multicast servers and consider how one might produce an optimalallocation of the clients to the servers. We propose a transformation method for deriving multicast server selection algorithms from the traditional multicast routing algorithms. To investigate the dynamic behavior of client join and leave and the cost incurred during the process, we next define the dynamic multicast server selection problem, in which the potential clients join and leave the multicast session dynamically, and the goal is to produce an optimal allocation of clients to servers with an emphasis on how this allocation behaves over time. We formulate the problem as a Markovian Decision Process (MDP) and analyze the tradeoff between the cost of the multicast tree(s) and the transition cost of establishing and removing links from the tree(s). We also explore the effect of join/leave frequency on optimal policy. Our analysis leads to two heuristics which we use to propose a selection algorithm. The algorithm uses a very simple join and leave strategy yet still can generate low cost trees. Our simulation compares the performance of our proposed algorithm with various other multicast server selection algorithms.

Thumbnail Image
Item

A Novel Server Selection Technique for Improving the Response Time of a Replicated Service

1997 , Bhattacharjee, Samrat , Zegura, Ellen W. , Ammar, Mostafa H. , Fei, Zongming

Server replication is an approach often used to improve the ability of a service to handle a large number of clients. One of the important factors in the efficient utilization of replicated servers is the ability to direct client requests to the best server, according to some optimality criteria. In this paper we target an environment in which servers are distributed across the Internet, and clients identify servers using our application-layer anycasting service. Our goal is to allocate servers to clients in a way that minimizes a client's response time. To that end, we develop an approach for estimating the performance that a client would experience when accessing particular servers. Such information is maintained in a resolver that clients can query to obtain the identity of the server with the best response time. Our performance collection technique combines server push with client probes to estimate the expected response time. A set of experiments is used to demonstrate the properties of our performance determination approach and to show its advantages when used within the application-layer anycasting architecture.

Thumbnail Image
Item

The Energy-Limited Capacity of Wireless Networks

2004 , Ammar, Mostafa H. , Zegura, Ellen W. , Zhao, Wenrui

The performance of large-scale wireless ad hoc networks is often limited by the broadcasting nature of the wireless medium and the inherent node energy constraints. While the impact of the former on network capacity has been studied extensively in the literature, the impact of energy constraints has not received as much attention. In this paper, we study the capacity limitations resulting from the energy supplies in wireless nodes. We define the energy-limited capacity of a wireless network as the maximum amount of data the network can deliver before the nodes run out of energy. This energy-limited capacity is an important parameter in networks where operating lifetime is critical, such as ad hoc networks deployed in hazardous environments and sensor networks. We study two types of static networks, networks without any infrastructure support and networks where base stations with unlimited energy are deployed to support data forwarding. We consider two kinds of traffic models motivated by ad hoc networks and sensor networks. We derive upper and lower bounds on the energy-limited capacity of these networks. While throughput has been shown to not scale with node density in static networks by previous studies, our results show that, depending on the energy consumption characteristics of wireless communication, the energy-limited capacity can scale well under both traffic models. In addition, we show that the deployment of base stations can improve the energy-limited capacity of the network, especially for networks with sensor traffic.

Thumbnail Image
Item

Selecting Among Replicated Adaptive Multicast Servers

2000 , Ammar, Mostafa H. , Zegura, Ellen W. , Fei, Zongming

Server replication and multicasting are well-established techniques for increasing capacity of a networked service and improving client performance. In this paper, we consider the combination of these two techniques. Specifically, we investigate the problem of selecting amongst rate-adaptive multicast servers, which adjust their sending rate based on network conditions and/or feedback from clients. Effective server rate adaptation can lead to efficient utilization of network resources and performance improvement perceived by clients. In this initial study of adaptive multicast server selection, we explore some fundamental issues and study the implications of different selection strategies on the performance perceived by clients. We first define the Static Multicast Selection Problem, in which there are static sets of clients and servers, and one needs to establish a set of multicast trees with one tree for each server. We explore several optimization problems based on different performance measures. We prove that the general problem is NP-hard and then present two interesting special cases with an optimal polynomial-time solution in each case. We design a heuristic for the general case and show that it can improve the performance over some simple strategies. We also consider the Dynamic Multicast Selection Problem, in which clients may join and leave multicast trees already established. We design a heuristic for this dynamic case by which clients can select a tree to join. We investigate the performance of the heuristic through simulation.

Thumbnail Image
Item

Inter-Receiver Fair Multicast Communication over the Internet

1999 , Zegura, Ellen W. , Ammar, Mostafa H. , Jiang, Tianji

Multicast protocols target applications involving a large number of receivers with heterogeneous data reception capabilities.To accommodate heterogeneity, the sender may transmit at multiple rates, requiring mechanisms to determine the rates and allocate receivers. In this paper, we develop a protocol to control the rate of a multicast session, with the goal of maximizing the inter-receiver fairness, an intra-session measure that captures the collective "satisfaction" of the session receivers. Our target environment is the Internet, where fair sharing of bandwidth must be achieved via end-system mechanisms and fairness to TCP is important. We develop and evaluate protocols to maximize this measure by maintaining a fixed-rate base group and a variable-rate group. We show that our schemes offer improvement over single-rate sessions, while maintaining TCP-friendliness.

Thumbnail Image
Item

Routing in Space and Time in Networks with Predictable Mobility

2004 , Ammar, Mostafa H. , Zegura, Ellen W. , Merugu, Shashidhar

We consider the problem of routing in emerging wireless networks where nodes move around explicitly carrying messages to facilitate communication in an otherwise partitioned network. The absence of a path at any instant of time between a source and destination makes the traditional mobile ad hoc routing protocols unsuitable for these networks. However, the explicit node movements create paths over time that include the possibility of a node carrying a message before forwarding to another suitable node. Identifying such paths over space and time is a key challenge in these store, carry and forward networks. In most of these networks, the mobility of nodes is predictable either over a finite time horizon or indefinitely due to periodicity in node motion. We propose a new space-time routing framework for these networks leveraging the predictability in node motion. Specifically, we construct space-time routing tables where the next hop node is selected from the current as well as the future neighbors. Unlike traditional routing tables, our space-time routing tables use both the destination and the arrival time of message to determine the next hop node. We devise an algorithm to compute these space-time routing tables to minimize the end-to-end message delivery delay. Our routing algorithm is based on a space-time graph model derived from the mobility of nodes. We empirically evaluate our approach using simulations and observe improved performance as compared to other approaches based on heuristics.

Thumbnail Image
Item

Efficient Routing using NIx-Vectors

2000 , Ammar, Mostafa H. , Zegura, Ellen W. , Riley, George F.

We introduce the concept if NIx-Vector routing which gives efficient and consistent routing of packets in Internet routers. A NIx-Vector is a compact representation of a routing path, which is small enough to be included in a packet header. We show how, by including the routing information in the packet header, routing decisions can be made in O(1) time at each router, with no caching or state in the routers (other than the existing routing tables). The creation of a NIx-Vector for a source and a destination pair requires one round trip time, but once the NIx-Vector is known, it can be retained by the source and reused indefinitely with no further setup time required (or until it becomes no longer valid, which is easily detected.) In addition to O(1) routing decisions, the use of NIx-Vectors to record and specify routes has other benefits. NIx-Vectors provide for route pinning, which is beneficial for reservation protocols and mitigates the effect of routing flaps on long lived flows. A variation of NIx-Vectors can insure symmetrical routes from a source to a destination and back to the source, which is also beneficial to some reservation protocols. Another variation of NIx-Vectors can insure that all packets from the same flow take the same path, even in the presence of redundant paths or links, which will reduce the frequency of pack misordering. Finally, the NIx-Vector concept can be combined with probabilistic packet market to allow for the reconstruction of a complete routing path for packets of unknown origin, which is useful in determining the source of denial of service security attacks. We give a complete description of how NIx-Vectors are created and used, and describe an end-to-end protocol for managing NIx-Vectors. We give empirical data showing the number of bits required to represent NIx-Vectors for typical Internet paths. We give a proposed IPv4 option which will allow for a simple implementation.

Thumbnail Image
Item

Multiple-Channel Multicast Scheduling for Scalable Bulk-data Transport

1998 , Ammar, Mostafa H. , Zegura, Ellen W. , Donahoo, Michael J.

A key technique for allowing a server to handle a large volume of requests for file transfers is to multicast the data to the set of requesting clients. Typically, the paths from the server to the clients will be heterogeneous in bandwidth availability. Multiple-Channel Multicast (MCM) is an approach that can be used to handle this heterogeneity. In this approach the data is multicast over multiple channels, each addressed as a separate multicast group. Each receiver subscribes to a set of channels (i.e., joins the corresponding multicast groups) commensurate with its own rate capabilities. Of particular interest in the design of MCM schemes is the scheduling of data transmission across the multiple channels to accomodate asynchronous requests from clients. In this paper, we present and analyze a new multiple-channel multicast approach called Partition Organization (PO) scheduling. The scheme is designed to result in good reception efficiency when compared to existing proposals while improving on their performance when other measures of interest (which we introduce) are considered.