Person:
Ammar, Mostafa H.

Associated Organization(s)
Organizational Unit
ORCID
ArchiveSpace Name Record

Publication Search Results

Now showing 1 - 2 of 2
  • Item
    Bootstrapping in Gnutella: A Preliminary Measurement Study
    (Georgia Institute of Technology, 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.
  • Item
    Efficient Routing using NIx-Vectors
    (Georgia Institute of Technology, 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.