Chord: A scalable peer-to-peer lookup service for internet applications
Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications
Kademlia: A Peer-to-Peer Information System Based on the XOR Metric
IPTPS '01 Revised Papers from the First International Workshop on Peer-to-Peer Systems
Symphony: distributed hashing in a small world
USITS'03 Proceedings of the 4th conference on USENIX Symposium on Internet Technologies and Systems - Volume 4
Persistent personal names for globally connected mobile devices
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
Hi-index | 0.01 |
The central IPv4 address pool managed by Internet Assigned Numbers Authority (IANA) was depleted in January 2011. Nevertheless, almost all nodes on the Internet still continue communicating with each other by using Internet protocol version 4 (IPv4). Since IPv4 addresses have been employed for a long time, it is difficult to immediately shift network layer protocol from IPv4 to IPv6. Therefore, the connectivity using IPv4 address is still required. There is a technology called Large Scale NAT (LSN) which keeps IPv4 address network being connected even though IPv4 addresses are depleted. In the case of home networks and small business networks by LSN, there is usually only a single private IPv4 address on the outside of network interface. Although NAT mechanism has many advantages, it has the negative effect which makes behavior of server side applications unavailable to the Internet. As a result, LSN also has the similar issue. To overcome this issue, we propose a nickname-based network socket software library for future server-side applications. We developed a software which is P2P network based distributed directory service system called "CAGE" having NAT traversal mechanism. Further, using the functions of CAGE software, we also developed a software library of nickname-based sockets called "PRISON". Our proposed software library is available on operating systems such as Linux and MacOS X. In this paper, we discuss the design and implementation of CAGE software and PRISON software library.