A Spontaneous Ad Hoc Network to Share WWW Access
© Raquel Lacuesta et al. 2010
Received: 15 September 2009
Accepted: 31 May 2010
Published: 24 June 2010
In this paper, we propose a secure spontaneous ad-hoc network, based on direct peer-to-peer interaction, to grant a quick, easy, and secure access to the users to surf the Web. The paper shows the description of our proposal, the procedure of the nodes involved in the system, the security algorithms implemented, and the designed messages. We have taken into account the security and its performance. Although some people have defined and described the main features of spontaneous ad-hoc networks, nobody has published any design and simulation until today. Spontaneous networking will enable a more natural form of wireless computing when people physically meet in the real world. We also validate the success of our proposal through several simulations and comparisons with a regular architecture, taking into account the optimization of the resources of the devices. Finally, we compare our proposal with other caching techniques published in the related literature. The proposal has been developed with the main objective of improving the communication and integration between different study centers of low-resource communities. That is, it lets communicate spontaneous networks, which are working collaboratively and which have been created on different physical places.
A spontaneous ad hoc network is type of ad hoc network that is formed in a certain time during a period of time, with no dependence on a central server and without the intervention of an expert user, in order to solve a problem or carry out a specific task . This network is built by several independent nodes coming together at the same time and in the same place to be able to communicate with each other. Nodes are free to enter and leave the network and they could be mobile or not. Spontaneous networking happens when neighboring nodes discover each other within a short period of time; however, the velocity of discovery is paid in terms of energy consumption . Spontaneous networks are conceptually in a higher level of abstraction than ad hoc ones; they are basically those which seek to imitate human relationships in order to work together in groups, running on an existing technology. Their objective is the integration of services and devices in an environment which allows the provision to the user of an instant service with minimum manual intervention. The concept of spontaneous networks was introduced in depth by Laura Marie et al. in the paper in .
Network boundaries are poorly defined.
The network is not planned.
Hosts are not preconfigured.
There are not any central servers.
Users are not experts.
In this type of network the configuration services needed depend mainly on the network size, the nature of the participating nodes, and the applications that have to be carried out.
Latvakoski et al. proposed a communication architecture for spontaneous systems in  which integrates application-level spontaneous group communication and ad hoc networking together. Zarate Silva et al. proposed AWISPA , a collaborative learning environment based on wireless spontaneous networks.
One of the main issues that difference the spontaneous networks from other fixed or mobile networks is that they facilitate the integration of services and devices, setting up both the new services and the configuration parameters of the devices. It has to be done without the user intervention or interference in the operation of the network. The malfunction or failure of one of the devices or services does not compromise the viability of the community. Any resources being used by the community which malfunction are automatically released and the service is deregistered.
A spontaneous network enables a group of devices to work together collaboratively while they are located very close to each other with a minimum interaction. It can be used for sharing resources and internet services. But, we should take into account the limitation of the resources of the devices. Just one of the nodes has to be connected to Internet to share its connection and its resources to the whole network. Caching techniques are demanded in order to avoid the overload of the nodes. Moreover, configuration with a minimal interaction from the user and security on the communication should be established. There are many application areas for ad hoc spontaneous networks: industrial (communication between sensors, robots, and digital networks), business (meeting, stock control, etc.), military (hard and hostile environments), and teaching. The range of environments in which these networks can be applied is wide and may include conference services and other "ubiquitous computing" applications at home or office.
This paper shows the design and simulation of a model that lets optimal spontaneous network access using a caching mechanism. We present the procedure of the nodes involved in the system, the security algorithms implemented, and the designed messages. Moreover, we included the analytical proposal and its comparative with the most similar protocols in the literature. The validation of the protocol is carried out through several simulations and comparisons with regular architectures. The proposal has been developed with the main objective of improving the communication and integration between different study centers of low-resource communities.
The paper is structured as follows. The model proposed to create spontaneous networks is presented in Section 2. Section 3 shows the auto-configuration procedures used in the proposal. Section 4 analyzes the model analytically. The security is discussed in Section 5. The protocol procedure and the messages designed are shown in Section 6. The comparison of our proposal with some caching techniques is presented in Section 7. In Section 8, the model is validated through the simulation and comparison with a regular architecture. Finally, Section 9summarizes this work and points out the main conclusions.
2. Spontaneous Network Proposal Description
If some people wish to build a spontaneous network, they may meet in a physical space at a given moment in order to make use of services such as group communication, cooperation on running programs, security, and so forth. The members who make up this community may vary at any specific time (users may join or leave at will).
- (1)Integration the Device into the Network.
Agree the transmission protocol and speed.
Configure node addresses, routing information and other resources.
- (2)Discovery of the Services and Resources Offered by the Devices.
Discover the services and resources shared in the network.
Have a list of services and resources available in the network updated.
- (3)Access to the Services Offered by the Devices.
Manage the automatic integration tasks and the use of, for example, agent service.
Manage access security to the services.
Manage the join and the leave of nodes of the network.
- (4)Collaborative Tasks.
Within the intranet, among the various members.
On the internet, with the other communities.
We emphasize that the main difference with ad hoc networks is that spontaneous networks are generated to work during a period of time on a limited space. Spontaneous networks are user-oriented and application-oriented networks that are based on human relationship and take into account the security and performance. A quick creation and configuration of these networks will be fundamental to their performance. In , Feeney et al. explain the difference between ad hoc and spontaneous networks and, moreover, they identify five key challenges posed by the spontaneous networking environment. In our proposal we follow this because the devices have a similar behavior to human relationships. It lets a minimal intervention of the users and a quick configuration of the network and its security.
Many routing protocols for Mobile Ad hoc NETworks (MANET) such as Destination-Sequenced Distance Vector (DSDV) , Dynamic Source Routing (DSR) , Ad hoc On Demand Distance Vector (AODV) , and Temporally-Ordered Routing Algorithm (TORA)  could be used in spontaneous networks. These protocols work with the concept of route discovery to locate the packet's receiver. In some cases, the protocols use caching methods to avoid looking for a route each time data have to be transmitted. We use this idea in spontaneous networks to improve the overload of the nodes, specially of those that act as gateways of the network.
3. Network Autoconfiguration Proposal
When the devices join a network, they must have to be aware of all the different tasks needed to communicate with each other and the configuration of both logical and physical parameters (all of them should be automatic) .
The resources of the devices can also be used according to their available capacities. One user may be responsible for processing a specific task if another one needs to carry this out but does not find this possible owing to the fact that the device does not have the enough resources.
identification between nodes,
to join services.
These tasks should be carried out with security. Consequently, when configuring an ad hoc network, one of the main problems which arise is the generation of a unique IP address. Most of the routing protocols assume that the mobile nodes are configured a priori with a unique IP address before becoming part of the network, which is not here the case. The problem comes from not knowing the topology of the network, neither when being set up, nor later on modification. A node may enter or leave the network at will at any time, so a protocol must be capable of managing the generation of these IP addresses in order to run the network properly . Also, the protocol must be able to detect the existence of duplicated IP addresses, which may occur, for example, when two subnetworks join together, or when a node which leaves one subnetwork with an IP (until then unique) joins another, or even when there is a substitution attack on the nodes.
Some authors have solved this problem using DHT-based algorithms  as self-organizing systems and others use hypercubes to implement indirect routing . Faced with this challenge and after analyzing the working of ad hoc networks, within the framework we have set ourselves, we propose a distributed and decentralized solution.
Our proposal begins with the awareness that ad hoc spontaneous networks need a flexible protocol which adapts itself to any number of different nodes and to their various characteristics. In the formation of these networks a range of different devices (cell phones, PDAs, laptops, etc.) may take part. These nodes have to be configured in order to be part of the network. Despite the fact that our networks do not include central servers, the operating of the wireless network must be similar to the one with IP configuration infrastructure: translation of DNSs, service identification, etc. On the other hand, it is required the minimum intervention of the user because it will be used by nonexpert users, so the configuration must take place independently. The configuration of all the parameters necessary to form such networks implies to exchange information between the nodes. In our proposal, the node's IP addresses configuration has two main phases: first, a local connection address is generated by the node which wants to form part of the network. In order to generate the address we fixed the network identifier to a class B network that starts with 169.254. The rest of the IP is formed by the chain of a random number of four bits, which lets regenerate the IP if it has been duplicated, and twelve bits obtained from the twelve last bits of the obtained hash when we pass a hash function to the user's data. Second, we must check the IP duplication by one of the nodes that is already in the network. In order to perform this check the node uses a broadcast technique that sends a packet with the proposed IP. If a node is using this IP, it responds to the new node. As the IP cannot be used by the new node, it has to propose a new IP. More details about the automatic configuration procedure can be read in the paper in .
Our approach is based on human relations. The set-up configuration is based on presentation or greeting. In a group of friends, a new individual is introduced to the other members by one of the participants of the meeting. This member already knows the other's presentation data or may obtain them at the moment of presentation. He or she is then responsible for facilitating the new member's integration easily and simply into the group. Consequently, the network management is formed and run by cooperation between nodes, behaving similarly to that in human relations existent in our society. Thus, the formation of these networks is carried out in two principal phases: the first one is the presentation, greeting, or preidentification, and the second phase deals with the creation of the network and communication. As we can see in , the social relationship could be modeled as a spontaneous network. This has been the main reason to make a communication network based in this type of communications.
The presentation phase follows the human rituals enacted when different individuals come together to form a work group. This is carried out by one of the nodes already belonging to the network. In this phase, the devices exchange the necessary information in order to be recognized; by presenting this information they gain access to the network. In this manner, any user may come to be part of the network without having high level of computing knowledge. The user connected to the device has to input his or her personal information when access the network for the first time. Automatically, a data configuration proposal is generated and the devices available within range are identified. The intervention of the user is limited to select the user among those detected by the device and with which he or she wished to preauthenticate. Once the device has been selected, the interexchange of presentation information can take place automatically between the two nodes; this information, after being exchanged and authenticated, allows the participants to gain access to the generated network.
In this network, each node acts both as client and as server, sending and receiving information and providing services to the other nodes in the network on request. The devices which make this up may be PDAs, laptops, cell phones, among others.
We have developed our proposal for devices with limited resources to allow them to surf the web and share the files and resources inside the spontaneous network. Although it could be extended to other internet services, because of their limited resources we have restricted to just transport http. The protocol runs in the devices as a process with no restrictions. It is not centrally controlled, does not overload any single network node, and does not need a central authority to start up or manage the insertion of new nodes.
4. Analytical Model
Given the inherent characteristics of a spontaneous network, the network depends on the number of devices, their position, and the number of connections between the devices of the network. The nodes could be stationary, because their physical placement does not vary over the time, or mobile, and they are placed in the network for a limited period of time. In our model the devices could leave the network voluntarily or because of energy constraints, so we will not take into account the energy of the devices in our analytical model because the spontaneous network may be disappear before the energy of the ad hoc devices is consumed.
We assume the spontaneous network lifetime limited and divide the total time into individual time periods, represented by for At time , the last node leaves the network. We will use the graph theory to define the network. Let be a spontaneous network in the time , where is a set of devices with and (number of devices in whole network), is a set of services offered by the devices of the network, is the placement function assigned to every element of , (the placement function assigns to every device of and to any time a set of coordinates ) and is a set of their connections. The cardinality of changes along the time because nodes can join or leave the network at will; if the device is mobile, its position changes along the time and the cardinality of changes with the creation and deletion of connections.
where is the transmission range of . The neighbourhood of a node is the set of nodes which is within its transmission range. Connections allow two-way communication (bidirectional links), so that connected nodes can communicate with each other in either direction, that is,
Spontaneous ad hoc networks are formed by mobile nodes that need to communicate during a reduced time slot; these networks have the same problems as the ad hoc networks, but increased because they are temporal networks formed in a given moment by a group of nodes that often users do not know each other; however, they must work together for the proper operation of the network . The use of cryptographic techniques is needed when safe communications must be guaranteed.
Nevertheless, when we talk about the use of cryptography of private key, many of the outlined protocols assume that the nodes know the session key. The same happens when we talk about the use of cryptography of public key (almost all the protocols begin with the assumption that the participants know the public keys of the nodes with those that want to establish the communication). They provide methods to establish a safe and authentic communication channel, assuming that the participants know the node which they are speaking with. The phase of connection establishment and initial exchange of keys, when the nodes do not know each other yet, is a fundamental topic in the environment of the security in spontaneous networks. Security requirements in spontaneous networks are similar to those in traditional networks: confidentiality, integrity, authentication, nonrepudiation, and availability. Both data and routing information must be protected. The characteristics of ad hoc networks make these requirements much more complex: dynamic topology, restricted bandwidth, different capacity links and high error rates, energy and processing capacity limitations, absence of a central server, and often no prior information in the nodes to build the network .
These limitations have to be covered by administration mechanisms and by the cooperation among the nodes to maintain service quality, security, and almost automatic discovery and access to the services. This behavior is similar to the human relationships in the society. Everyone must collaborate to maintain a secure world, to improve our quality of life, and have updated news. In this society the trust is very important; we know that the data are correct when they come from a person that we trust.
The required configuration services would be very significant depending on the size of the network, the nature of the participants, and the applications to support it. Confidentiality, integrity, availability, and access control with authentication must be offered without central administration and with energy restrictions. They require key generation, management, and distribution schemes that can be run on small CPUs.
Two fundamental areas must be addressed when we wish to create a spontaneous wireless network security comparable to the traditional networks. First, there must be a trust establishment, key management, and membership control, and, second, there must be network availability and routing security .
Our goal is to develop techniques in order to enable the creation of small- and medium-scale ad hoc networks based on the spontaneity of both human interactions and relationships of trust. Given that wireless connectivity is based on physical proximity, it reflects the ways human beings interact. People who are near each other can communicate, exchange things with each other, and ask people to relay information to others. This is all done with an appropriate level of security.
Identification of the Nodes. It will avoid forging nodes. The proposed solutions are based on the use of cryptography mechanisms. In , Stajano and Anderson proposed the use of threshold cryptography through the creation of an authority of distributed certification. The participant of the network knows a secret and of them are able to reassemble it. Variations of this outline allow the distribution of the public key and the signatures easily. Another method was proposed in  by Zhou and Haas. This method uses a trust web-like PGP where each participant creates a pair of keys, public-private, of its property. When a node is sure of the identity of other node, it signs the correspondent public key certifying its identity. If A certifies the identity of B, the identity of B can be verified.
Prevention of Proud Behavior. In the related literature several solutions were proposed to fight this behavior. One of them is the creation of a virtual currency called nugget . You obtain nuggets by forwarding packets from one node to another, and you spend them when you try to send your own data. You cannot send your packets if you do not have nuggets to pay. The inconvenience is that it should have a trust-specific hardware to assure the currency. Another method is based on the detection and expulsion of a proud node by means of the use of a guardian dog that checks whether the data are transmitted through where it should be. It also intends the use of distributed intrusion detection systems such as IDS, CORE, and CONFIDANT . Another suggestion is the use of MobIDS (Mobile Intrusion Detection System) which is focused on the integration with other mechanisms and with sensors for the detection of proud nodes .
Security in Routing Protocols against Manipulations. The main objective of a routing algorithm is to establish an appropriate route between each pair of nodes. If the result of this algorithm is manipulated, the normal operation of the MANET will probably be seriously affected. The means of prevention, such as cypher texts and authentication, will allow defending against some of the attacks. The internal attacks come from compromised nodes belonging to the network. This is a more serious attack, since it is usually more difficult to detect and to be counterattacked. Kargl et al. developed the Secure Dynamic Source Routing (SDSR) in order to prevent these types of attacks . This protocol is a part of SAM (Security Architecture for Mobile Ad Hoc Networks). It provides consistent security in the use of MANET-IDs for the identification of the nodes, SDSR for the routing protocols, and MobIDS for the detection of selfish nodes.
6. Protocol Procedure and Messages
logical identity (LID) that is the logical identity of the user and is unique for each user (it could have its first name and last name, picture, etc.),
creation date and expiration date,
IP proposed by the user,
The first node in the network generates a network key randomly and waits for any new connection. When a new device wants to join the network, it has to exchange its IDC with the first node, so they start the preauthentication phase. The pre-authentication method has been proposed by several authors as a system to improve the security in ad hoc networks [26, 27]. But in the proposed model, bearing in mind the limitations of the devices, we have to secure the start of the network and the addition of new members, and then, we have to provide integrity (by using hash functions), privacy, and confidentiality to the network. The connection is performed through a short-range technology, allowing a face-to-face meeting, so users are known personally (spontaneous networks are given in a limited space). The technology allows flexible data exchange with multiple nodes in the wireless access network. A new node could be authenticated by any of the nodes in the network because they are face to face.
In order to provide secure connections, we use a model based on the use of the asymmetric infrastructure of public keys (higher security than the symmetric cryptography), which is mainly used in the distribution and key management processes. The public key is distributed to the other devices, but the private key is stored confidentially. In our model, because there is not a central Certificate Authority (CA), the authentication is given distributed by the trusted devices. Trusted devices verify the identity of the devices and the validity of the public keys. A device will trust the identity of another device and its public key only if it obtained its certificate through a trusted device of the network.
We used a criterion based on human relationships (social proximity): the trusted networks [28, 29]. When the certificate has been generated, the validity process by the rest of the devices of the network will be based on the trust management process. In this environment, any user can be the certification entity, validating the IDC of the other user. A public key of other user is not considered valid by the other user until a trusted user recognizes that this device is the owner of the key and certify its validity (signing it with its private key). That is, the keys of other devices are valid for a given device only if they have been sent by its trusted devices, otherwise the keys validity cannot be guaranteed. When a user receives a valid certificate, because it is signed by a trusted device, it signs the key with its private key giving authenticity and integrity to the process.
In this process, a user gives trust just to the users that it trusts when obtaining its IDC in the pre-authentication process. Devices act as clients and as servers simultaneously.
The data in the IDC are used to configure the device in case of a successful pre-authentication. The device, which is inside the network, has to check whether the data have been generated correctly and whether there is another device in the network with the same configuration. The device in the network has also to proof that the IDC is being used by its owner and it is not being modified in the transmission process. The message integrity prove is done by checking the received fingerprint. On the other hand, the identity verification can be realized visually by the user when the preauthentication phase is being performed. When the process is finished, the roles are exchanged and the new device can authenticate new devices in the network, even the ones that are in the network. When both devices are pre-authenticated successfully, any information exchanged between them is considered valid. Then, the older device in the network sends to the new one the network key. This key is coded asymmetrically with the public key of the new device and only the new device will be able to decode it with its private key.
Create the user data (first name, last name, e-mail, password, etc.) and check that they are right.
Create the asymmetric keys (public and private keys).
- (3)Generate the user certificate.
Zero Level. There is not trust because there has not been any authentication process with this device, it does not trust that device or because the trust level has been put down.
First Level. The device trusts the other device. It has been achieved because an authentication process has been performed.
Zero Level. The key is not valid because it has neither been obtained in the validation process nor a trust device.
First Level. The key is valid because it has been obtained in a pre-authentication process or through a trust device.
The trusted network grows through the Exchange of IDCs between devices. In our proposal the devices do not need to keep all the public keys of the network and the information of all devices inside of it. So, a device does not need to broadcast the authentication information of a new node. The authentication information is distributed through the network.
7. Performance Analysis: Using CachingTechnics
One of the characteristics that distinguish our protocol from others is the caching feature. A lot of authors have researched on caching issues in both wired and wireless networks [30–39]. All of them used a stateful or a stateless server depending on they keep the relation between data and clients which have cached the data or whether they do not do it. On stateful approach the server will be in charge of sending messages of updating each time a data item is modified . If we work with stateless approach, the client will be in charge of sending messages to the server to verify the validity of the cached data before using them .
The wide deployment of web cache sharing is currently hindered by the overhead of the Internet Cache Protocol (ICP) . This protocol discovers cache hits in other proxies by having the proxy multicasting a query message to the neighboring caches whenever a cache miss occurs. When the number of proxies increases, both the total communication and the total CPU processing overhead increase quadratically. For this reason, this protocol could not be appropriated when we work on spontaneous networks, due to their limitations.
In , a study to demonstrate the benefits of cache sharing, measure the overhead of the existing protocols, and propose a new protocol called "summary cache" is presented. Under this protocol, each proxy keeps a compact summary of the cache directory of every other proxy. When a cache miss occurs, a proxy first probes all the summaries to see whether the request might be a cache hit in other proxies, and sends query messages only to those proxies whose summaries show promising results. In spontaneous networks, each node could work as a proxy; however, these networks are generated to carry out a task that is limited over the time, using services inside the network and with few traffic sent and received from Internet. So, there will not be too much data to be cached.
Dykes presents an analysis of cooperative proxy caching in . Sometimes it is not clear the viability of this type of caching because a remote proxy could not be inherently faster than the origin Web Server. However they show how proxy cooperation can potentially reduce the variability in response time, the number of long delays, and congestion of busy Web servers. Their analysis examines the interaction of three discovery mechanisms with the mesh and hierarchy: ideal discovery, query-based discovery such as the Internet Cache Protocol [33–44], and directory-based discovery using cache digest exchanges. In query methods, clients locate cached copies by sending queries to member of the cache group. In directory methods, propagation of HTTP metadata can, however, affect both user response times and hit ratios. They conclude that cooperative proxy caching is marginally viable for a mesh organization, but it is not viable for a general hierarchical design.
In , a semantic caching scheme is used to access location-dependent data in Mobile computing. They developed the semantic cache replacement strategy called FAR, which aims to let the cache contents move as the user moves. The problematic of updating in caching systems is tackled in . They propose a pull-based approach, called aggregate cache based on demand (ACOD) scheme that uses an efficient search algorithm for finding the queried data items.
Other authors, as Park et al. in , discuss another problematic issue such as the gateway discovery. They propose a load-adaptative access gateway discovery protocol and a QoS-enabled access gateway selection scheme that can exploit relevant network conditions. The gateway is selected based on the number of hops and the capability of them. This protocol enables lower average delay compared to the others and less overhead compared to the proactive and the hybrid approach because it dynamically adjusts access gateways' proactive area based on the offered load. However, the problematic of distributed data caching is not studied.
There are more proposals presented in [48–52]. Some of these methods propose, for example, an algorithm of two nodes , which share the data to avoid duplications or a replicated data. It allows improving the data accessibility .
In , a mechanism to update propagation mechanism on peer-to-peer networks (P2P) is proposed. In this model, intermediate client caches the index entries to locate the node where the contents are cached or stored in order to reduce the access latency and to balance the workload. Intermediate clients' index entries are maintained by propagating the updated index entries. However, cached index entries may become obsolete due to mobility of MTs (mobile terminals) that incurs changes in the network topology in mobile environments. In , a system for stateless server is proposed. Serversperiodically broadcast an invalidation report (IR), in which the updated data items are marked. On the other hand, in order to reduce the latency, a new type of packet is introduced between IR packets, the updated invalidation report (UIR).
In MANETs and Spontaneous networks, we should take into account that the nodes inside them could have several limitations such as limited battery or stored capacity, insufficient wireless bandwidth, or limited accessibility to the wired Internet. It could be several limitations such as longer message latency. In MANETs, nodes could be limited in their resources. To save wireless bandwidth and reduce the average latency will be very important. For this reason, caching will be a very important topic to be taken into account.
There are several proposals for MANETS presented in [53–58]. Some of them are based on replication schemes and periodical updating using effective replica allocation . Others are based on dissemination strategies , where a subset of the terminal mobiles are selected as servers and where the updating/queering operations are carried through several proposed heuristics. A cooperative caching scheme for IMANET (Internet-based mobile ad hoc network ) environment is proposed in . It lets to increase data accessibility by peer-to-peer communication among the mobiles terminals. In , the authors propose, on the same environment (IMANET), an aggregate caching mechanism. In these networks, usually, the mobile terminals have direct access to the Internet, although some terminals could not have direct access or could be disconnected from it due to the mobility. In these cases, nodes could access the requested data items from the local cache or nearby mobile terminals or via relays. The main problem in this proposal is the necessity of both sending broadcasts request to search to locate the requested data and the process of cache data managing. In our proposal, the node in charge of proving access to WWW (the Access Point node) is the one that manages the caching data. Depending on the resources, the AP node establishes the resources spent on this process. Usually the node with more resources and internet access will be chosen to perform this task. A 7Ds architecture is proposed in . In their architecture, several protocols share and disseminate information among users. Their proposal can operate either in a prefetch mode or in a demand mode.
Spontaneous networks are built to form temporarily networks, with a small dependence or without a central administration, and without expert users' intervention, to solve a problem or to develop a certain task. All aspects of auto-configuration and management have to be carried out by the nodes that form the network.
We propose two proposals. In our first proposal only one node (the ones selected to provide the access to Internet) caches the information. It avoids the multicast messages needed to know where the cached data are (when we work on distributed system). In the advanced proposal, the system works with a proactive system where nodes obtain data on a distributed way. In this proposal, the nodes, which work together to carry out an established task, report to the other nodes about their cached domains, which let to avoid the updating multicast traffic. Each node will be able to access to different domains and inform about both their services and the cached portals to the other nodes (it will be in charge of keeping updated the data about several services and domain). If the node in charge will not have the data, it will ask for them to Internet. Since we work on this second proposal, only with domains, the traffic is less than the necessary to maintain all http metadata updated. Since our traffic is low and each node decides of which domain will be cached, the metadata do not change so much and it will not be necessary to send toomuch updated messages. When the number of accessed portals increases, the AP node will inform to the other nodes. Our system lets to authenticate the terminal mobiles and autoconfigure the networks.
Comparison between cache techniques.
Lim et al. 
Dykes and Robbins 
Ren and Dunhan 
Fan et al. 
Auto-configuration of the network
Auto-configuration of the nodes
Use of central servers or proxies
Distributed network caching
Internet access provided by any node (one or several selected by the nodes of the network)
Internet access provided by one node (fixed and not dynamic server)
Cached data by the network's nodes
Cached data by the network's AP/proxies
Intranet broadcasting necessary (searching data/updating metadata)
8. Protocol Validation
8.1. Test Bench
First Spontaneous Network: Light Browsing. This http traffic used HTTP 1.1. The average time between entries (page requests) followed an exponential distribution of an average of 720 seconds. The page had a constant size of 500 bytes in text and 5 small images of 50 bytes each. This traffic was served following an exponential distribution of an average of 10 pages. The type of service was Best Effort.
Second Spontaneous Network: Heavy Browsing. This http traffic used HTTP 1.1. The average time between entries (page requests) followed an exponential distribution of an average of 60 seconds. The page had a constant size of 1000 bytes in text and 5 medium-sized images of 100 bytes each. This traffic was served following an exponential distribution of an average of 10 pages. The type of service was Best Effort.
- (3)Third Spontaneous Network: Searching. This http traffic used HTTP 1.1. The average time between entries (page requests) followed an exponential distribution of an average of 10 seconds. The page had a constant size of 1000 bytes in text and 2 medium-sized images of 100 bytes each. This traffic was served following an exponential distribution of an average of 2 pages. The type of service was Best Effort.
We have simulated two scenarios. In the first scenario we simulate our proposal. When there is an http request to the web server, only the node that provides WWW access replies. In the second scenario, it is simulated a regular Ad hoc architecture, where each http request is sent to the server and it replies with the adequate content. Both scenarios have been simulated for three times and then we have selected the most representative simulation.
Each spontaneous ad hoc network is made up of five or six devices. The nodes in the topology have the following features: 40 MHz processor, a 512 KB memory card, a radio channel of 11 Mbps, and 2.4 GHz as the working frequency. We selected AODV as the routing protocol for the spontaneous networks, but it could be changed. The node carrying out the gateway task between the wired IP cloud and the spontaneous ad hoc network has the same characteristics as the other nodes, but an Ethernet interface is added.
We forced failures in the spontaneous networks with the recovery processes. This allowed us to observe the network behavior when there are physical topology changes and node failures. Failures and recoveries usually happen in these kinds of networks, so we wished to study how a network-level protocol works when those events occur. Those errors always take place in the weak nodes (the most stable ones are the gateway node and the web server).
The IP cloud allows the modification of some parameters in order to give a more realistic feel to our simulation. In our case we varied the delay of the packets by introducing 2 seconds and also a rejected packet rate of 1%. Finally, we emphasize that each spontaneous network carried out some sort of http request to the server or node connected to Internet.
8.2. Simulations Measurements
In this paper we propose a secure spontaneous ad hoc protocol that allows groups of users to collaborate in a given time to accomplish a collaborative task. The main differences with regular ad hoc networks are that these networks are created to develop one task on a limited period of time and on a specific space. The communities then allow the exchange of knowledge and teamwork in order to carry out a task and the collaboration or exchange of information between various communities to complete work. The resources are provided by the different members of the community, permitting the access of all members. A quick and easy auto-configuration of both networks, and the establishment of the security are two fundamental issues. The proposed solution presents a distributed model, where the interaction required between devices is minimal. It allows the access to different services offered through different nodes of the network. In this model all the nodes collaborate for the proper operation and management of the network. The devices do not need to keep all the security data of the network and the information of all devices inside of it. The association between nodes is set up when they are close to each other, that is, in presentation and greeting. The protocol allows the communication with other spontaneous ad hoc network through Internet. It can be performed by giving a certificate generated by a recognized Certification Authority (it will have clearance to work through the WWW) to the gateway node, which provides access to Internet. This digital certificate acts as a unique identifier within the network and will allow the possessor to be identified in Internet. It will be needed to guarantee both the authenticity of the communities and the integrity of the transmitted information.
In addition, the limited resources of nodes have been taken into account, establishing caching techniques that let reduce the overload of the nodes. We have validated the success of our proposal simulating what happens when all http information requested by the ad hoc network has to be performed through the gateway node and when there is a spontaneous network sharing the resources of the devices.
The proposal has been analyzed analytically. We have shown the device procedure and the protocol messages designed for its proper operation. Finally, we have compared our proposal with other cache techniques published in the literature. Although spontaneous ad hoc networks are well referenced in the literature, there are very few deployments until today. Moreover, they can be developed for any type of infrastructure .
Authors want to give thanks to the anonymous reviewers for their valuable suggestions, useful comments, and proofreading of this paper. This work was partially supported by the Ministerio de Educación y Ciencia, Spain, under Grant no. TIN2008-06441-C02-01, and by the "Ayudas complementarias para proyectos de I D para grupos de calidad de la Generalitat Valenciana" (ACOMP/2010/005).
- Preuß S, Cap CH: Overview of spontaneous networking-evolving concepts and technologies. In Rostocker Informatik-Berichte. Volume 24. Fachbereich Informatik der Universit at Rostock; 2000:113-123.Google Scholar
- Gallo S, Galluccio L, Morabito G, Palazzo S: Rapid and energy efficient neighbor discovery for spontaneous networks. Proceedings of the 7th ACM International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems, October 2004, Venice, ItalyGoogle Scholar
- Feeney LM, Ahlgren B, Westerlund A: Spontaneous networking: an application-oriented approach to ad hoc networking. IEEE Communications Magazine 2001, 39(6):176-181. 10.1109/35.925687View ArticleGoogle Scholar
- Latvakoski J, Pakkala D, Pääkkönen P: A communication architecture for spontaneous systems. IEEE Wireless Communications 2004, 11(3):36-42. 10.1109/MWC.2004.1308947View ArticleGoogle Scholar
- Zarate Silva VH, De Cruz Salgado EI, Quintana FR: AWISPA: an awareness framework for collaborative spontaneous networks. Proceedings of the 36th ASEE/IEEE Frontiers in Education Conference (FIE '06), October 2006 1-6.View ArticleGoogle Scholar
- Feeney LM, Ahlgren B, Westerlund A: Spontaneous networking: an application-oriented approach to ad hoc networking. IEEE Communications Magazine 2001, 39(6):176-181. 10.1109/35.925687View ArticleGoogle Scholar
- Perkins CE, Bhagwat P: Highly dynamic destination-sequenced distance-vector routing (DSDV) for mobile computers. Proceedings of the Conference on Communications Architectures, Protocols and Applications (SIGCOMM '94), August 1994 234-244.View ArticleGoogle Scholar
- Johnson DB, Maltz DA, Broch J: DSR: The Dynamic Source Routing Protocol for Multihop Wireless Ad Hoc Networks, Ad Hoc Networking. Addison-Wesley Longman Publishing, Boston, Mass, USA; 2001.Google Scholar
- Perkins C, Belding-Royer E, Das S: Ad hoc on-demand distance vector (AODV) routing. RFC 3561, July 2003Google Scholar
- Park V, Corson MS: IETF MANET Internet Draft "draft-ietf-MANET-tora-spe03.txt". Novemmer 2000.Google Scholar
- Viana AC, De Amorim MD, Fdida S, de Rezende JF: Self-organization in spontaneous networks: the approach of DHT-based routing protocols. Ad Hoc Networks 2005, 3(5):589-606.View ArticleGoogle Scholar
- Gilaberte RL, Herrero LP: IP addresses configuration in spontaneous networks. Proceedings of the 9th WSEAS International Conference on Computers, July 2005, Athens, GreeceGoogle Scholar
- Viana AC, Dias de Amorim M, Fdida S, de Rezende JF: Self-organization in spontaneous networks: the approach of DHT-based routing protocols. Ad Hoc Networks 2005, 3(5):589-606.View ArticleGoogle Scholar
- Alvarez-Hamelin JI, Carneiro Viana A, Dias De Amorim M: Architectural considerations for a self-configuring routing scheme for spontaneous networks.,Tech. Rep. 1 October 2005.Google Scholar
- Lacuesta R, Peñalver L: Automatic configuration of ad-hoc networks: establishing unique IP link-local addresses. Proceedings of the International Conference on Emerging Security Information, Systems and Technologies (SECURWARE '07), October 2007, Valencia, SpainGoogle Scholar
- Foulks EF: Social network therapies and society: an overview. Contemporary Family Therapy 1985, 3(4):316-320.View ArticleGoogle Scholar
- Wang Y, Wu H: DFT-MSN: the delay/fault-tolerant mobile sensor network for pervasive information gathering. Proceedings of the 25th IEEE International Conference on Computer Communications (INFOCOM '06), April 2006Google Scholar
- Kindberg T, Zhang K: Validating and securing spontaneous associations between wireless devices. In Proceedings of the 6th Information Security Conference (ISC '03), 2003. Springer; 44-53.Google Scholar
- Al-Jaroodi J: Routing security in open/dynamic mobile ad hoc networks. The International Arab Journal of Information Technology 2007, 4(1):17-25.Google Scholar
- Stajano F, Anderson RJ: The resurrecting duckling: security issues for ad-hoc wireless networks. Proceedings of the 7th International Workshop on Security Protocols, April 1999 172-194.Google Scholar
- Zhou L, Haas ZJ: Securing ad hoc networks. IEEE Network 1999, 13(6):24-30. 10.1109/65.806983View ArticleGoogle Scholar
- Hauspie M, Simplot-Ryl I: Cooperation in ad hoc networks: enhancing the virtual currency based models. Proceedings of the 1st International Conference on Integrated Internet Ad Hoc and Sensor Networks (InterSense '06), May 2006, Nice, FranceGoogle Scholar
- Wang X, Dai F, Qian L, Dong H: A way to solve the threat of selfish and malicious nodes for ad hoc networks. Proceedings of the International Symposium on Information Science and Engieering (ISISE '08), December 2008, Shanghai, China 1: 368-370.Google Scholar
- Kargl F, Klenk A, Weber M, Schlott S: Sensors for detection of misbehaving nodes in MANETs. Detection of Intrusion and Malware and Vulnerability Assessment (DIMVA '04), July 2004, Dortmund, Germany 83-97.Google Scholar
- Kargl F, Geiss A, Scholott S, Weber M: Secure dynamic source routing. Proceedings of the 38th Annual Hawaii International Conference on System Sciences (HICSS '05), January 2005, Big Island, Hawaii, USAGoogle Scholar
- Gokhale S, Dasgupta P: Distributed authentication for peer-to-peer networks. Proceedings of the Symposium on Applications and the Internet Workshops, January 2003 347-353.Google Scholar
- Capkun S, Buttyán L, Hubaux J-P: Self-organized public-key management for mobile ad hoc networks. IEEE Transactions on Mobile Computing 2003, 2(1):52-64. 10.1109/TMC.2003.1195151View ArticleGoogle Scholar
- Stajano F, Anderson R: The resurrecting duckling security issues for ad-hoc wireless networks. In Proceedings of the 7th International Workshop on Security Protocols, 1999, Berlin, Germany, Lecture Notes in Computer Science. Volume 1796. Springer; 172-194.View ArticleGoogle Scholar
- Balfanz D, Smetters DK, Stewart P, Wong HC: Talking to strangers: authentication in ad-hoc wireless networks. Proceedings of the International Symposium on Network and Distributed Systems Security (NDSS '02), February 2002, San Diego, Calif, USAGoogle Scholar
- Barbara D, Imielinski T: Sleepers and workaholics: caching strategies in mobile environments. Proceedings of the ACM SIGMOD International Conference on Management of Data, May 1994 1-12.Google Scholar
- Cao G: A scalable low-latency cache invalidation strategy for mobile environments. IEEE Transactions on Knowledge and Data Engineering 2003, 15(5):1251-1265. 10.1109/TKDE.2003.1232276View ArticleGoogle Scholar
- Hu Q, Lee D: Cache algorithms based on adaptive invalidation reports for mobile environments. Cluster Computing 1998, 1(1):39-50. 10.1023/A:1019012927328View ArticleGoogle Scholar
- Jing J, Elmagarmid A, Helal A, Alonso R: Bit-sequences: an adaptive cache invalidation method in mobile client/server environments. Mobile Networks and Applications 1997, 2(2):115-127. 10.1023/A:1013616213333View ArticleGoogle Scholar
- Kahol A, Khurana S, Gupta S, Srimani P: An efficient cache management scheme for mobile environment. Proceedings of the 20th International Conference on Distributied Computing System (ICDCS '00), April 2000, Taipei, Taiwan 530-537.Google Scholar
- Kazar M: Synchronization and caching issues in the Andrew file system. Proceedings of USENIX Conference, February 1988, Dallas, Tex, USA 27-36.Google Scholar
- Roussopoulos M, Baker M: CUP: controlled update propagation in peer-to-peer networks. Proceedings of USENIX Annual Technical Conference, June 2003, San Antonio, Tex, USAGoogle Scholar
- Sandberg S, Kleiman S, Goldberg D, Walsh D, Lyon B: Design and implementation of the sun network file system. Proceedings of USENIX Summer Conference, June 1985, Portland, Ore, USA 119-130.Google Scholar
- Wu K, Yu PS, Chen M: Energy-efficient caching for wireless mobile computing. Proceedings of the 12th IEEE International Conference on Data Engineering, February-March 1996, New Orleans, La, USA 336-343.Google Scholar
- Yeung MKH, Kwok Y-K: Wireless cache invalidation schemes with link adaptation and downlink traffic. IEEE Transactions on Mobile Computing 2005, 4(1):68-83.View ArticleGoogle Scholar
- Wessels D, Claffy K: Internet cache protocol (IC) v.2. http://www.ietf.org/rfc/rfc2186.txt
- Fan L, Cao P, Almeida J, Broder AZ: Summary cache: a scalable wide-area web cache sharing protocol. IEEE/ACM Transactions on Networking 2000, 8(3):281-293. 10.1109/90.851975View ArticleGoogle Scholar
- Dykes SG, Robbins KA: A viability analysis of cooperative proxy caching. Proceedings of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM '01), April 2001, Anchorage, Alaska, USA 3: 1205-1214.Google Scholar
- Wessels D, Claffy K: RFC 2186: Internet cache protocol (ICP), version 2. The Internet Engineering Taskforce, September 1997Google Scholar
- Wessels D, Claffy K: RFC 2187: application of internet cache protocol (ICP), version 2. The Internet Engineering Taskforce, September 1997Google Scholar
- Ren Q, Dunhan MH: Using semantic caching to manage location dependent data in mobile computing. Proceedings of the 6th Annual International Conference on Mobile Computing and Networking, August 2000, Boston, Mass, USA 210-221.Google Scholar
- Lim S, Lee W-C, Cao G, Das CR: Cache invalidation strategies for internet-based mobile ad hoc networks. Computer Communications 2007, 30(8):1854-1869. 10.1016/j.comcom.2007.02.020View ArticleGoogle Scholar
- Park B-N, Lee W, Lee C: QoS-aware internet access schemes for wireless mobile ad hoc networks. Computer Communications 2007, 30(2):369-384. 10.1016/j.comcom.2006.09.004View ArticleGoogle Scholar
- Hara T: Effective replica allocation in ad hoc networks for improving data accessibility. Proceedings of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM '01), April 2001, Anchorage, Alaska, USA 1568-1576.Google Scholar
- Papadopouli M, Schulzrinne H: Effects of power conservation, wireless converage and cooperation on data dissemination among mobile devices. Proceedings of the ACM International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc '01), October 2001, Long Beach, Calif, USA 117-127.View ArticleGoogle Scholar
- Can P, Irani S: Cost-aware WWW proxy caching algorithms. Proceedings of the USENIX Symposium on lnternet Technology and Systems, December 1997Google Scholar
- Rizzo L, Vicisano L: Replacement policies for a proxy cache. IEEE/ACM Transactions on Networking 2000, 8(2):158-170. 10.1109/90.842139View ArticleGoogle Scholar
- Williams S, Abrams M, Strandridge CR, Abdulla G, Fox EA: Removal policies in network caches for world-wide web documents. Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, August 1996, Palo Alto, Calif, USA 293-305.Google Scholar
- Hara T: Effective replica allocation in ad hoc networks for improving data accessibility. Proceedings of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM '01), April 2001, Anchorage, Alaska, USA 1568-1576.Google Scholar
- Hara T: Replica allocation in ad hoc networks with period data update. Proceedings of the 3rd International Conference on Mobile Data Management (MDM '02), July 2002, Edmonton, Canada 79-86.Google Scholar
- Papadopouli M, Schulzrinne H: Effects of power conservation, wireless coverage and cooperation on data dissemination among mobile devices. Proceedings of the ACM International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc '01), October 2001, Long Beach, Calif, USA 117-127.View ArticleGoogle Scholar
- Sailhan F, Issarny V: Cooperative caching in ad hoc networks. Proceedings of the 4th International Conference on Mobile Data Management (MDM '03), January 2003, Melbourne, Australia, Lecture Notes in Computer Science 2574: 13-28.Google Scholar
- Yin L, Cao G: Supporting cooperative caching in ad hoc networks. IEEE Transactions on Mobile Computing 2006, 5(1):77-89.View ArticleGoogle Scholar
- Karumanchi G, Muralidharan S, Prakash R: Information dissemination in partitionable mobile ad hoc networks. Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems (SRDS '99), October 1999, Lausanne, Switzerland 4-13.View ArticleGoogle Scholar
- Corson MS, Macker JP, Cirincione GH: Internet-based mobile ad hoc networking. IEEE Internet Computing 1999, 3(4):63-70. 10.1109/4236.780962View ArticleGoogle Scholar
- Lim S, Lee W-C, Cao G, Das CR: A novel caching scheme for improving internet-based mobile ad hoc networks performance. Ad Hoc Networks 2006, 4(2):225-239. 10.1016/j.adhoc.2004.04.013View ArticleGoogle Scholar
- Opnet Modeler http://www.opnet.com/solutions/network_rd/modeler_wireless.html
- Lacuesta R, Lloret J, Garcia M, Peñalver L: Two secure and energy-saving spontaneous ad-hoc protocol for wireless mesh client networks. Journal of Network and Computer Applications. In pressGoogle Scholar
This article is published under license to BioMed Central Ltd. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.