Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Research ArticleSpontaneous Ad Hoc Mobile Cloud Computing Network
Raquel Lacuesta1 Jaime Lloret2 Sandra Sendra2 and Lourdes Pentildealver2
1 Universidad San Jorge A-23 km 299 Villanueva de Gallego 50830 Zaragoza Spain2Universidad Politecnica de Valencia Camino Vera SN 46022 Valencia Spain
Correspondence should be addressed to Jaime Lloret jlloretdcomupves
Received 28 April 2014 Accepted 10 July 2014 Published 17 August 2014
Academic Editor Zhongmei Zhou
Copyright copy 2014 Raquel Lacuesta et alThis is an open access article distributed under theCreativeCommonsAttribution Licensewhich permits unrestricted use distribution and reproduction in any medium provided the original work is properly cited
Cloud computing helps users and companies to share computing resources instead of having local servers or personal devices tohandle the applications Smart devices are becoming one of the main information processing devicesTheir computing features arereaching levels that let them create a mobile cloud computing network But sometimes they are not able to create it and collaborateactively in the cloud because it is difficult for them to build easily a spontaneous network and configure its parameters For thisreason in this paper we are going to present the design and deployment of a spontaneous ad hocmobile cloud computing networkIn order to perform it we have developed a trusted algorithm that is able to manage the activity of the nodes when they join andleave the network The paper shows the network procedures and classes that have been designed Our simulation results usingCastalia show that our proposal presents a good efficiency and network performance even by using high number of nodes
1 Introduction
A mobile ad hoc network (MANET) is a self-configuringnetwork of mobile devices connected by wireless links Eachdevice in a MANET is free to move independently in anydirection and will therefore frequently change its links toother devices Each device must forward traffic unrelated toits own use and therefore could act as a router
A spontaneous ad hoc network is a type of ad hocnetwork that is formed during a certain period of timewith no dependence on a central server and without theintervention of an expert user [1] This network is made ofseveral independent nodes which are in the same place atthe same time in order to communicate with each otherNodes are free to join and leave the network at will [2]Spontaneous networking happens when neighboring nodesdiscover each other within a short period of time howeverdiscovery velocity is paid in terms of energy consumption[3] Spontaneous networks are conceptually in a higher levelof abstraction than ad hoc ones they are basically those whoseek to imitate human relationships in order to work togetherin groups running on the already existing technology Theirobjective is the integration of services and devices in anenvironment which allows the provision to the user of an
instant service withminimummanual intervention ensuringimportant aspects such as the multimedia quality [4] ornetwork lifetime [5] The concept of spontaneous networkswas introduced in depth by Feeney et al in [6]
Thebiggest problem in these networks is the security issue[7 8] The use of a certificate authority (CA) server is not agood idea because of the lack of a robust infrastructure andthe distance The device could be very far from the CA sotheir connection could be a big issue There is a need of atwo-phase protocol to allow the exchange of an introductorydescription of each device that is a handshake of the deviceswithin the same area In order to achieve this a protocolwhere each device has to exchange an identity card and willhave a neighbour card list has been proposed Thus eachnode takes over the role of the CA The model uses thetrust between nodes as a key base of the proposed protocolCastalia simulator has been used in order to validate ourproposed spontaneous network
The remainder of this paper is structured as followsSection 2 shows some previous works about spontaneous adhoc networks and mobile cloud computing The proposedspontaneous ad hoc network model for mobile computingis explained in Section 3 It details the analytical modeland the cryptographic and the trust system for protecting
Hindawi Publishing Corporatione Scientific World JournalVolume 2014 Article ID 232419 19 pageshttpdxdoiorg1011552014232419
2 The Scientific World Journal
the mobile cloud network Section 4 explains the designednode algorithms the network procedures and the designedclasses The network performance is shown in Section 5 Thedeployment is explained in section Finally Section 7 showsthe conclusion and future work
2 Related Work
In mobile computing there are some inherent problems suchas resource scarcity frequent disconnections and mobilitythat make exploiting its full potential difficult In [9] authorspropose to address these problems by executing mobileapplications on resource providers external to the mobiledevice They provide an extensive survey of mobile cloudcomputing research highlighting the motivation for mobilecloud computing as the dominant model for mobile applica-tions in the future On mobile cloud computing devices canact as clients or resource providers Some requirements suchas adaptability scalability availability and self-awarenessneed to be met in a cloud They present a taxonomy ofthe issues found in this area and the approaches in whichthese issues have been tackled They focused their study onoperational level end user level service and application leveland security and context-awareness level They remark thatalthough many of the reviewed frameworks mention theneed for security and trust very few of them have actuallyimplemented it they have left the implementation for futuredirections
In this kind of network it is very important to determinethe application in which the network will be dedicated toAs a function of this factors such as network size thetype of devices the software applications and the sharedservices will be defined Another important issue is therouting protocol used to communicate all nodesThe routingprotocols used in spontaneous ad hoc and sensor wirelessnetworks could be the same as regular ones so we shouldconsider the same constraints such as transmission powerenergy resources bandwidth usage delay hop count andQoS among others [10] All of these factors will be affected byissues such as link stability or level of mobility in nodes [11]which somehow will depend on the environment where thenetwork is deployed
Researchers claim that spontaneous networking presentsthe need of improving the wide-scale applications fullyexploiting its potential and that this is due to the intrinsiccomplexity of spontaneous network management unsuitableto be directly handled by application developers Followingthis approach Bellavista et al [12] proposed a middlewarecalled RAMP for managing the autonomic and cross-layerapplication of spontaneous networks The RAMP proto-type can be considered as a useful tool for the commu-nity of researchers in the field of generation of sponta-neous networks RAMP enables the dynamic sharing of allresources available via multiple heterogeneous intermittentinfrastructure-based and ad hoc links which are orches-trated in a lightweight way to compose the multihop pathsneeded to share applications at runtime RAMP performanceis evaluated considering aspects such as delay requirements
in real-time multimedia streaming Finally the simulationresults show that the feasibility of this proposal achieves goodresults in awide range of practical situationswith different filesizes and path lengths
Christensen [13] examines the architectural considera-tions of creating next generation mobile applications usingsmart mobile devices context enablement using sensors onthe device and cloud computing and RESTful web servicesMobile applications are enhanced with REST based cloudcomputing technologies to create applications on the smartmobile device with offload processing To best leveragethis they consider the capabilities and constraints of thesearchitectures
Mani et al presented in [14] a platform called SCOPE thatimplements an architecture to provide a P2P and spontaneoussolution for social networking in local areas SCOPE followsthe hierarchical P2P model because in a network there arenodes with higher computing capability which can forman overlay and provide the distributed data managementsystem for the P2P social network meanwhile client nodesconnect to supernodes and rely on them for sharing theircontents or accessing to the shared information SCOPE isbased on IEEE 80211 ad hoc mode and needs no infras-tructure SCOPE is developed to work on mobile devicesspontaneously without any dedicated network resourcesThe proposal provides the distributed database and lookupservices deployed on distributed hash table (DHT) tech-nology where it defines the rules for information manage-ment and creates our social networking overlay As authorsconclude this proposal is able to provide session basedcommunication services and provides a rich menu of socialnetworking services from simple linktext sharing to P2P IPtelephony
There are lots of applications where spontaneous net-works can be very useful Regarding the environmentalmonitoring Liu et al presented an adaptive and efficientpeer-to-peer search (AEPS) approach for distributed servicediscovery for dependable service integration on service-oriented architecture [15] The proposal is able to efficientlydiscover desirable services for decision making of disastermonitoring and relief by interacting with connected nodeswith incomplete information AEPS builds a social networkfor each sensor node which contributes to an effective servicediscovery AEPS is evaluated for rescue capability provisionwhere the results demonstrated that distributed nodes canself-organize in a peer-to-peer way and discover the requiredservice and information without any central administrationIn this case the creation of a spontaneous network is used toassist an emergency rescue team tomake the correct real-timedecisions in very changing environments
In [16] the authors studied how the underused com-puting resources within an enterprise may be harnessedto improve their utilization and create an elastic comput-ing infrastructure They propose to use an ad hoc cloudmodel that allows complex cloud-style applications to exploituntapped resources on nondedicated hardware They haveoutlined a case for ad hoc cloud computing a set of resultingresearch challenges and they propose an architecture Noprotocol is designed and developed in this paper
The Scientific World Journal 3
Taking into account that mobile devices are resource-constrained and some applications demand more resourcesthan they can afford in [17] Huerta-Canepa and Lee proposeto create a virtual cloud computing platform using mobilephones They present the preliminary design of a frameworkto create ad hoc cloud computing providers The frameworkcreates a cloud among the devices in the vicinity allowingthem to execute jobs between the devices However the workpresented is preliminary and no protocol has neither beendesigned nor detailed
Another solution is the presented by Divya in [18] Heproposes a conceptual architecture where a mobile applica-tion platform shares a service amongmultiple users A proof-of-concept prototype is developed using AndroidThe serverplatform shares Android OS among multiple users to obtainhigh performance on virtual image-based virtualization formobile applications
In this sense several authors of this paper have previ-ously deployed a spontaneous ad hoc network for multiplepurposes but never for cloud computing In [19] a secureprotocol for spontaneous wireless ad hoc networks wasproposed It is based on the behavior of human relationshipsIt uses a hybrid symmetricasymmetric scheme and the trustbetween users in order to exchange the initial data andto exchange the secret keys that will be used to encryptthe data In this paper authors explained the proceduresfor the nodersquos self-configuration and for providing DNSservice In [20] two flexible secure spontaneous wirelessad hoc network protocols for wireless mesh clients that arebased on the computational costs are proposed Proposalsare based on a trust network where the session key allowsnode confidentiality They have been implemented over theDSR routing protocolThe developed protocols provide nodeauthenticity and intermediate node authenticity when pack-ets are transmitted Integrity checking randomchecking andverification distribution are also considered in the protocolIn [21] we propose a secure spontaneous ad hoc networkbased on direct peer-to-peer interaction to grant a quickeasy and secure access to the users when they surf theweb The protocol allows the users to collaborate duringa period of time to accomplish a collaborative task Theproposal is also compared with other caching techniquespublished in the related literature The proposed solutionpresents a distributed model where the interaction requiredbetween devices is minimal In [22] we proposed a securespontaneous network to create communities Each commu-nity has an identity that acts as a unity on a world basedon internet connection Trust chains are established amongusers Chains of confidence allow the establishment of groupsor communities to access the services as well as for spreadinggroup information
As we have seen no previous spontaneous network hasbeen focused on mobile cloud computing
3 Network Model and Description
In this section the proposed spontaneous ad hoc network formobile cloud computing and its model is described
Our network model meets the following requirements
(1) Devices can move freely in the given area Even out ofeach otherrsquos range
(2) Every node is also a router It has a limited communi-cation range towards other nodes
(3) The different identities are given by IP addressesEach address is obtained dynamically following ourprevious proposal [23]
(4) There is no central administration(5) Devices can come fromeverywhere and join and leave
at will(6) Resources for cloud computing can be provided by
any node if it has enough capacity to do it
During the start-up of a node it broadcasts messagesin order to find neighbors In this kind of networks itis very important to select those nodes which offer betterperformance to the whole network [24] A node will acceptanother node as its neighbor as a function of the amount ofmessages it has received to this node When a new node hasdefined all its neighbors it sends its identity card to all itsneighbors If the neighbor sends back a message to informthat it has received the identity card and the content of thismessage is correct (by checking the hash of the message)then the newnode trusts these neighborsWhen a node trustsa second node it can send messages directly to the secondnode unless the second node does not trust the first node inthis case the communication is not allowedThe system doesnot follow the commutative and associative properties thatis although a first node can trust a second node the secondnode may not trust the first node It also happens with threenodes in a chain If a node wants to send a message towards anontrusted node then it has to do it through a trusted node
The system follows the next steps
(1) Broadcast messages searching neighbor nodes(2) Send its identity card to the neighbors(3) Acknowledgenot acknowledge the reception of the
messages from its neighbors(4) Set the neighbor node as a trusted or nontrusted node
Our protocol is based on the use of two informationstructures (1) an IDC (identity card) and (2) a certificate Onone hand the IDC is composed by two parts The first one isthe public part which is formed by a logical identity (LID) Itis unique for each user and allows nodes to identify it LIDincludes information such as name photograph and otheruser identification Public part also contains informationabout the public key of the user (119870
119894) and the information
signature On the other hand private part is composed by theprivate key (119896
119894) and this information is not accessible by other
devicesA certificate of a user consists of a validated identification
card signed by the user that gives its validity for exampleuser ldquo119895rdquo Thus the certificate of user ldquo119894rdquo validated and signedby the user ldquo119895rdquo corresponds to ldquo119862
119894119895rdquoTheuserwill introduce its
4 The Scientific World Journal
LID only the first time that the user uses the system becausethe security information is generated only the first time theuser joins the network Security data is stored persistently inthe device for its future use
In order to explain the procedure the following case isdetailed When there are three persons and two of themknow certain data then there is only one way that lets thethird person know this data one of the two persons musttrust the third personThis simple example explains basicallythe concept of trusted network and how data are exchangedbetween nodes
If the ad hoc network covers a large area then thecloud computing services can be obtained by using adhoc routing In this proposal the ad hoc routing is per-formed only between trusted nodes so there are twoimportant facts (1) nodes should not be trusted with-out the proper authentication of the node and user and(2) confidentiality integrity availability and access con-trol with authentication all of them must be based onencryption mechanisms that must be offered without centraladministration
If we want to create a spontaneous ad hoc network formobile cloud computing we need trust establishment keymanagement and membership control Network availabilityand routing security must also be added Techniques thatenable the creation of ad hoc networks based on the spon-taneity of human interactions (people who are near eachother can communicate exchange things and ask people torelay information to others) should be added In our modeleach node will send its public key towards its neighborsWhen the node obtains a public key it is considered validonly if it is sure that it belongs to the owner Not validmeans that it is not sure that the key belongs to the ownerIf the node trusts the key it signs the key with its privatekey and considers the node as a trusted neighbor Thena trust network is created When a new device joins thenetwork and it does not have a pair of keys it must generatethem to perform authentication and to communicate withother nodes When a node leaves the network the networkmaintains the data for a period of time in case it wants to comeback later But it has to authenticate again A node does nothave to obtain the public key from every other node in otherwords one node does not have to broadcast its authenticationinformation to all other nodes in the network Nodes canobtain this information through the ldquonetwork of trustrdquo Nowwe provide a simple example where the network is formedby three nodes Node 1 and node 2 know and trust eachother Then node 2 trusts a third node node 3 If the secondnode receives a public key from the third node and signs itwith its private key we consider that the owner of this key isldquotrustedrdquo Later if the first nodewants to obtain that key it canbe obtained from the second node and since the first nodetrusts the second one it ldquovalidatesrdquo this new key by signingit with its private key If the third node is not trustworthyany key signed by the third node will not be considereda trusted key Furthermore the first node will never signthe third node key although it might forward it to othernodes in the spontaneous ad hoc mobile cloud computingnetwork
31 Analytical Considerations In this section we analyze ourproposal analytically Our purpose is to model the behaviorof the spontaneous ad hoc network when there are nodesjoining and leaving during its existence On one hand wewill take care of the authentication and trust between nodes(by using trust links and trusted communication graphs)and on the other hand we model the network behavior(in terms of number of nodes in the network because ofleavings and joining of new nodes) by using the conditionalprobability density function Let119873(119905) be a set of users havinga meeting with wireless devices with |119873(119905)| = 119899 being themaximum number of users during a certain period of time119905 These users are located in a certain bounded region 119877 Thetrusted communication graph is the directed graph 119866(119905) =
(119873(119905) 119864(119905)) such that each pair of users (119906 V) isin 119864(119905) onlyif the userrsquos device V is within 119906rsquos transmitting range at thecurrent transmit power level at time 119905 The graph containsall possible wireless links between the nodes in the networkGiven any two nodes 119906119908 isin 119873 a path connecting 119906 and119908 in119866 is a sequence of nodes 119906 = 119906
0 1199061 119906
119896minus1 119906119896= V such
that for any 119894 = 0 119896 minus 1 (119906119894 119906119894+1
) isin 119864 The length of thepath is the number of edges in the pathMoreover 119906 has a pairof values (119879 119881) for each node119908which gives the trust (119879) andvalidity (119881) values for each user The trust and validity canonly have two values 119879 = 0 1 and 119881 = 0 1
Users can join and leave the spontaneous network at willso a range assignment RA is said to be connected at time 119905if the resulting communication graph at time 119905 is stronglyconnected that is if for any pair of nodes 119906 and V there existsat least one trusted connection from 119906 to V In other wordsthe trusted directed wireless link (119906 V) exists if and only ifnodes 119906 and V are at distance of at most RA(119906) at time 119905 andtheir trusted parameter value is equal to 1 In this case V issaid to be a 1-hop neighbor or neighbor for short of node 119906The trust nodes set of node 119906 denoted as TNS(119906) is definedas it is shown in the following expression
TNS (119906) = 119911 isin 119873 (119911 119906) isin 119864 119879 = 1 (1)
A trusted wireless link is said to be bidirectional orsymmetric at time 119905 if (119906 119911) isin 119864(119905) (119911 119906) isin 119864(119905) 119906 trusts 119911and 119911 trusts 119906 The trusted communication graph generatedcan be considered as undirected since (119906 119911) isin 119864(119905) hArr
(119911 119906) isin 119864(119905)Let us suppose that a user 119906 has authenticated the user 119908
and 119906 has 119908rsquos public key then 119906 sends a message encryptedwith the session key to 119908 In this case we say that there is atrusted directed graph from 119906 to 119908 For any trusted directedgraph 119867 isin 119866 if two users 119906 and 119908 are in 119867 and there is atrusted directed path from 119906 to 119908 in 119867 then we say that 119908is reachable from 119906 in 119867 and we denote this by (119906 harr 119908)
119867
thus 119908 is also reachable from 119906 in 119866 and we denote this by(119906 harr 119908)
119866
In order to use a public key distribution system for userauthentication and session key sharing each user maintainsa local repository of public key certificates and their trustvalues When the user 119906 wants to use the resources sharedby user 119908 first 119908 must trust 119906 so they must merge theirsubgraphs and try to find a trusted directed path from 119906 to119908
The Scientific World Journal 5
Thus we can apply a subgraph theory based similar to workperformed by Capkun et al in [25] But in that case theymerged subgraphs to authenticate a public key in trustedauthorities or certificate repositories not trusted paths whilewe merge subgraphs to validate trusted paths
We assume that each user has the same subgraph selectionalgorithm119860 to build its subgraphWe denote 119878
119860(119867 119906) by the
algorithm119860 executed in119867 isin 119866 by the user119906Whenwemergethe subgraph 119878
119860(119867 119906) of user 119906 with 119878
119860(119867 V) of user V we
obtain 119878119860(119867 119906 V) When the trusted communication graph
is undirected 119878119860(119867 119906 V) = 119878
119860(119867 V 119906)
The performance of the subgraph selection algorithmdenoted by 119875
119860(119867) is defined as the ratio of the number of
user pairs (119906 119908) where there is a trusted directed path from119906 to 119908 in the merge subgraph of 119906 and 119908 to the number ofuser pairs (119906 119908) where there is a directed path from 119906 to 119908
in the trust graph The following expression shows 119875119860(119867)
119875119860 (119867) =
Card (119906 V) isin 119873119909119873 (119906 harr V)119878119860(119866119906V)Card (119906 V) isin 119873119909119873 (119906 harr V)119866
(2)
where card denotes the cardinality of a set The performanceof 119860 can be increased by selecting larger subgraphs that isusingmore information about the trust graph but the devicesof the users will need more memory to store their subgraphsMoreover the devices will need high amount of knowledge toexecute it
In order to model the network behavior when the usersjoin the network during the meeting time we have used thediffusion approximation In the spontaneous network therewill be users that join and leave the ad hoc network at will Let119905119894be the arrival time of the user 119894 to the network and let 1199051015840
119894be
the departure time of the user 119894That is 0 le 119905119894lt 1199051015840119894le 119879 where
119879 is the network lifetime Let 119860(119905) and 119863(119905) represent thecumulative number of arrivals and departures respectivelyup to time 119905The number of users in the spontaneous networkat time 119905119873(119905) is given by the following expression
119873(119905) = 119860 (119905) minus 119863 (119905) (3)
Let the consecutive interarrival time 119886119894
= 119905119894minus 119905119894minus1
and the consecutive interdeparture time 119889119894= 1199051015840119894minus 1199051015840119894minus1
beboth independent and identically distributed with the (meanvariance) given by (1120583
119886 1205902119886) and (1120583
119889 1205902119889) respectively Let
their squared coefficients of variation be 1198622119886= 1205902119886sdot 120583119886and
1198622119889
= 1205902119889sdot 120583119889 respectively We define the sum of a set of
consecutive interarrival times as 119879119896= sum119870
119894=1119886119894 We assume
that they are independent and identically distributed randomvariables hence according to the central limit theorem thestandardized random variable 119879lowast
119896 shown in expression (4)
tends to a standard normal distribution with 119896 rarr infin as it isshown in the following expression
119879lowast
119896=119879119896minus 119896 sdot 120583
119886
120590119886radic119896
(4)
119873(119905) = lim119896rarrinfin
119875[119879119896minus 119896 sdot 120583
119886
120590119886radic119896
le 119899] =1
radic2120587int119899
minusinfin
119890minus(11990522)119889119905
(5)
If 119896 is large enough there will be many arriving usersbetween 119905 and 119905 + 119896 and may be approximated by thenormal distribution with mean 120583
119886119905 and variance 1205902
1198861205833119886119905
Similarily the number of leaving users during that time willbe approximately normally distributed with mean 120583
119889119905 and
variance 12059021198891205833119889119905 Consequently the changes of119873(119905)within the
interval [119905 119905+119896] then119873(119905+119896)minus119873(119905) should be approximatelynormally distributed with the mean as is shown in thefollowing expression
120573 = (120583119886minus 120583119889) 119905 (6)
And the variance is given by the following expression
120572 = (1205902
1198861205833
119886+ 1205902
1198891205833
119889) 119905 (7)
The diffusion approximation replaces119873(119905) by a continu-ous diffusion process (also known as Wiener-Levy process)119909(119905) normally distributed with the mean 120573 sdot 119889119905 and variance120572 sdot 119889119905 Given the initial value 119909
0= 0 the unrestricted process
119909(119905) would have the conditional probability density functionat time 119905 given by the following expression
119875 (119909 119905) =1
radic2120587120572119905119890minus((119909minus120573119905)
22120572119905)
(8)
which satisfies Kolmogorov diffusion equation (also knownas Fokker-Planck equation) given in the following expression
120597119891 (119909 119905)
120597119905= minus120573
120597119891 (119909 119905)
120597119909+120572
2
1205972119891 (119909 119905)
1205971199092 (9)
Deriving expression (8) in expression (9) and treating 119909 =
0 as a reflecting barrier for all 119905 gt 0 we obtain the followingexpression
lim119909rarrinfin
[minus120573119875 (119909 119905) +120572
2
120597119875 (119909 119905)
120597119909] = 0 (10)
Nowwe can estimate the solutionwhen 119905 rarr infin and120583119886lt
120583119889 Expression (11) shows the equilibrium distribution of the
conditional probability density function [26]
119875 (119909) =210038161003816100381610038161205731003816100381610038161003816
120572119890minus(2|120573|119909120572)
(11)
where 120572 and 120573 are defined in (6) and (7) which are relatedto the probability of nodesrsquo interarrival and interdeparturetimes
32 Cryptographic System The cryptographic algorithmelection has been taken bearing in mind their strong securityand simple key management features Symmetric algorithmsand summary functions have lower computational cost thanpublic key cryptography but public key cryptography hasstronger security and it could be feasible in devices with lowcomputation capacity
In our proposal we use a summary function withsymmetric and asymmetric algorithms with the purposeof taking their benefits The security management is based
6 The Scientific World Journal
Table 1 Trust and validity values
Parameter Level When does it happen
Trust 0 (i) There has been a greeting process between users but the one in the network does not trust him(ii) The user has reduced the level of confidence to the other one
1 (i) It has been a greeting process between user and the one in the network that trusts him(ii) The user has increased the level of confidence to the other one
Validity 0 (i) It is not obtained from the greeting process with that user(ii) The validity has not been obtained through a trusted node
1 (i) It has been obtained directly from the greeting process with that user(ii) It has been obtained through a trusted node
on the public key infrastructure and the symmetric keyencryption scheme Asymmetric key encryption scheme ismainly used in the distribution of session key and in the userauthentication process It lets us also generate a distributedcertification authorityThe symmetric key is used as a sessionkey to cipher the confidential messages between trust nodesbecause it has less energy requirements [27ndash29] Asymmetrickey encryption scheme is used to authenticate the usersThe hybrid symmetricasymmetric scheme is introduced toexchange the initial data and to exchange the secret keys thatwill be used to encrypt the data The hash function lets usimprove the data integrityNowwe are going to discusswhichalgorithms are the best for our purpose
We have used advanced encryption standard (AES) algo-rithm for the symmetric encryption scheme [30] It presentsa high security level because its design structure removessubkey symmetry It is also resistant to lineal and differentialcryptanalysis AES is actually considered as one of the mostsecured ones Moreover the execution times and the energyconsumption in the cryptography processes are adequate forlow power devices
The asymmetric encryption scheme should overload thedevices as less as possible On one hand elliptic curvecryptosystem (ECC) is presented as a high performancescheme that is recommended by many researchers [31] Onthe other hand Rivest Shamir and Adleman cryptographicalgorithm (RSA) is very secure and it has been checked andrecommended by many scientists [32] ECC needs fewer bitsthan RSA (163 bits in ECC versus 1024 bits in RSA) in orderto obtain the same security level so it is able to achievehigh security level with low size keys without consumingtoo much system resources thus needing less bandwidthECC is usually adequate for small devices with few memoryresources and low computing resources (such as cellularphones and smart cards) In order to have flexibility in ourprotocol and because both cryptographic algorithms havegood performance we have included both (RSA and ECC)in our protocol The election of one of them will be taken inthe network formation Both algorithms will be shown laterin our performance study
We have selected secure hash algorithm (SHA-1) for thesummary function [33] SHA-1 is commonly used becauseof its equilibrium between its speed and its security Thisperformance is also maintained in low computing devicesThis feature does not happen in other functions because theymainly depend on the processor Its execution time and its
k1
K1
k21K21
k3K3
k2K2
k41K41
k4K4
k42K42
NotationA rarr B A trusts BB rarr A B trusts AB harr A reciprocal trust
Figure 1 Example of trust nodes
energy consumption are not so high when they are comparedwith other functions
33 Trusted Network The proposed model is based on thecreation and management of a trusted network A node willtrust other nodes through personal view and criteria That isthe trust is based on the relationship of the users rather thanon a central certification authorityThe user of the device willidentify the other users and will be in charge of establishinga trust value (0 or 1) associated with each one of them Theparameters used for configuring this trust network are trustand validity
Trust refers to the person who owns the key and its valuewill be established by the relationship between the user thatgrants it and the user that is granted It should be granted toreliable persons when their IDCs are exchanged The trustcan always be changed manually by the user later Validityindicates that a certificate belongs to that persondeviceTable 1 shows the trust and validity values
34 Certification Authority The certification authority of anode could be any node in the group of nodes that this nodetrusts This system lets us build a distributed certificationauthority between trust nodes When a node wants tocommunicate with other nodes and see if it is a valid nodeit can request the certificate of that node to its trust nodesAfter obtaining this certificate it will be able to sign this node
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
2 The Scientific World Journal
the mobile cloud network Section 4 explains the designednode algorithms the network procedures and the designedclasses The network performance is shown in Section 5 Thedeployment is explained in section Finally Section 7 showsthe conclusion and future work
2 Related Work
In mobile computing there are some inherent problems suchas resource scarcity frequent disconnections and mobilitythat make exploiting its full potential difficult In [9] authorspropose to address these problems by executing mobileapplications on resource providers external to the mobiledevice They provide an extensive survey of mobile cloudcomputing research highlighting the motivation for mobilecloud computing as the dominant model for mobile applica-tions in the future On mobile cloud computing devices canact as clients or resource providers Some requirements suchas adaptability scalability availability and self-awarenessneed to be met in a cloud They present a taxonomy ofthe issues found in this area and the approaches in whichthese issues have been tackled They focused their study onoperational level end user level service and application leveland security and context-awareness level They remark thatalthough many of the reviewed frameworks mention theneed for security and trust very few of them have actuallyimplemented it they have left the implementation for futuredirections
In this kind of network it is very important to determinethe application in which the network will be dedicated toAs a function of this factors such as network size thetype of devices the software applications and the sharedservices will be defined Another important issue is therouting protocol used to communicate all nodesThe routingprotocols used in spontaneous ad hoc and sensor wirelessnetworks could be the same as regular ones so we shouldconsider the same constraints such as transmission powerenergy resources bandwidth usage delay hop count andQoS among others [10] All of these factors will be affected byissues such as link stability or level of mobility in nodes [11]which somehow will depend on the environment where thenetwork is deployed
Researchers claim that spontaneous networking presentsthe need of improving the wide-scale applications fullyexploiting its potential and that this is due to the intrinsiccomplexity of spontaneous network management unsuitableto be directly handled by application developers Followingthis approach Bellavista et al [12] proposed a middlewarecalled RAMP for managing the autonomic and cross-layerapplication of spontaneous networks The RAMP proto-type can be considered as a useful tool for the commu-nity of researchers in the field of generation of sponta-neous networks RAMP enables the dynamic sharing of allresources available via multiple heterogeneous intermittentinfrastructure-based and ad hoc links which are orches-trated in a lightweight way to compose the multihop pathsneeded to share applications at runtime RAMP performanceis evaluated considering aspects such as delay requirements
in real-time multimedia streaming Finally the simulationresults show that the feasibility of this proposal achieves goodresults in awide range of practical situationswith different filesizes and path lengths
Christensen [13] examines the architectural considera-tions of creating next generation mobile applications usingsmart mobile devices context enablement using sensors onthe device and cloud computing and RESTful web servicesMobile applications are enhanced with REST based cloudcomputing technologies to create applications on the smartmobile device with offload processing To best leveragethis they consider the capabilities and constraints of thesearchitectures
Mani et al presented in [14] a platform called SCOPE thatimplements an architecture to provide a P2P and spontaneoussolution for social networking in local areas SCOPE followsthe hierarchical P2P model because in a network there arenodes with higher computing capability which can forman overlay and provide the distributed data managementsystem for the P2P social network meanwhile client nodesconnect to supernodes and rely on them for sharing theircontents or accessing to the shared information SCOPE isbased on IEEE 80211 ad hoc mode and needs no infras-tructure SCOPE is developed to work on mobile devicesspontaneously without any dedicated network resourcesThe proposal provides the distributed database and lookupservices deployed on distributed hash table (DHT) tech-nology where it defines the rules for information manage-ment and creates our social networking overlay As authorsconclude this proposal is able to provide session basedcommunication services and provides a rich menu of socialnetworking services from simple linktext sharing to P2P IPtelephony
There are lots of applications where spontaneous net-works can be very useful Regarding the environmentalmonitoring Liu et al presented an adaptive and efficientpeer-to-peer search (AEPS) approach for distributed servicediscovery for dependable service integration on service-oriented architecture [15] The proposal is able to efficientlydiscover desirable services for decision making of disastermonitoring and relief by interacting with connected nodeswith incomplete information AEPS builds a social networkfor each sensor node which contributes to an effective servicediscovery AEPS is evaluated for rescue capability provisionwhere the results demonstrated that distributed nodes canself-organize in a peer-to-peer way and discover the requiredservice and information without any central administrationIn this case the creation of a spontaneous network is used toassist an emergency rescue team tomake the correct real-timedecisions in very changing environments
In [16] the authors studied how the underused com-puting resources within an enterprise may be harnessedto improve their utilization and create an elastic comput-ing infrastructure They propose to use an ad hoc cloudmodel that allows complex cloud-style applications to exploituntapped resources on nondedicated hardware They haveoutlined a case for ad hoc cloud computing a set of resultingresearch challenges and they propose an architecture Noprotocol is designed and developed in this paper
The Scientific World Journal 3
Taking into account that mobile devices are resource-constrained and some applications demand more resourcesthan they can afford in [17] Huerta-Canepa and Lee proposeto create a virtual cloud computing platform using mobilephones They present the preliminary design of a frameworkto create ad hoc cloud computing providers The frameworkcreates a cloud among the devices in the vicinity allowingthem to execute jobs between the devices However the workpresented is preliminary and no protocol has neither beendesigned nor detailed
Another solution is the presented by Divya in [18] Heproposes a conceptual architecture where a mobile applica-tion platform shares a service amongmultiple users A proof-of-concept prototype is developed using AndroidThe serverplatform shares Android OS among multiple users to obtainhigh performance on virtual image-based virtualization formobile applications
In this sense several authors of this paper have previ-ously deployed a spontaneous ad hoc network for multiplepurposes but never for cloud computing In [19] a secureprotocol for spontaneous wireless ad hoc networks wasproposed It is based on the behavior of human relationshipsIt uses a hybrid symmetricasymmetric scheme and the trustbetween users in order to exchange the initial data andto exchange the secret keys that will be used to encryptthe data In this paper authors explained the proceduresfor the nodersquos self-configuration and for providing DNSservice In [20] two flexible secure spontaneous wirelessad hoc network protocols for wireless mesh clients that arebased on the computational costs are proposed Proposalsare based on a trust network where the session key allowsnode confidentiality They have been implemented over theDSR routing protocolThe developed protocols provide nodeauthenticity and intermediate node authenticity when pack-ets are transmitted Integrity checking randomchecking andverification distribution are also considered in the protocolIn [21] we propose a secure spontaneous ad hoc networkbased on direct peer-to-peer interaction to grant a quickeasy and secure access to the users when they surf theweb The protocol allows the users to collaborate duringa period of time to accomplish a collaborative task Theproposal is also compared with other caching techniquespublished in the related literature The proposed solutionpresents a distributed model where the interaction requiredbetween devices is minimal In [22] we proposed a securespontaneous network to create communities Each commu-nity has an identity that acts as a unity on a world basedon internet connection Trust chains are established amongusers Chains of confidence allow the establishment of groupsor communities to access the services as well as for spreadinggroup information
As we have seen no previous spontaneous network hasbeen focused on mobile cloud computing
3 Network Model and Description
In this section the proposed spontaneous ad hoc network formobile cloud computing and its model is described
Our network model meets the following requirements
(1) Devices can move freely in the given area Even out ofeach otherrsquos range
(2) Every node is also a router It has a limited communi-cation range towards other nodes
(3) The different identities are given by IP addressesEach address is obtained dynamically following ourprevious proposal [23]
(4) There is no central administration(5) Devices can come fromeverywhere and join and leave
at will(6) Resources for cloud computing can be provided by
any node if it has enough capacity to do it
During the start-up of a node it broadcasts messagesin order to find neighbors In this kind of networks itis very important to select those nodes which offer betterperformance to the whole network [24] A node will acceptanother node as its neighbor as a function of the amount ofmessages it has received to this node When a new node hasdefined all its neighbors it sends its identity card to all itsneighbors If the neighbor sends back a message to informthat it has received the identity card and the content of thismessage is correct (by checking the hash of the message)then the newnode trusts these neighborsWhen a node trustsa second node it can send messages directly to the secondnode unless the second node does not trust the first node inthis case the communication is not allowedThe system doesnot follow the commutative and associative properties thatis although a first node can trust a second node the secondnode may not trust the first node It also happens with threenodes in a chain If a node wants to send a message towards anontrusted node then it has to do it through a trusted node
The system follows the next steps
(1) Broadcast messages searching neighbor nodes(2) Send its identity card to the neighbors(3) Acknowledgenot acknowledge the reception of the
messages from its neighbors(4) Set the neighbor node as a trusted or nontrusted node
Our protocol is based on the use of two informationstructures (1) an IDC (identity card) and (2) a certificate Onone hand the IDC is composed by two parts The first one isthe public part which is formed by a logical identity (LID) Itis unique for each user and allows nodes to identify it LIDincludes information such as name photograph and otheruser identification Public part also contains informationabout the public key of the user (119870
119894) and the information
signature On the other hand private part is composed by theprivate key (119896
119894) and this information is not accessible by other
devicesA certificate of a user consists of a validated identification
card signed by the user that gives its validity for exampleuser ldquo119895rdquo Thus the certificate of user ldquo119894rdquo validated and signedby the user ldquo119895rdquo corresponds to ldquo119862
119894119895rdquoTheuserwill introduce its
4 The Scientific World Journal
LID only the first time that the user uses the system becausethe security information is generated only the first time theuser joins the network Security data is stored persistently inthe device for its future use
In order to explain the procedure the following case isdetailed When there are three persons and two of themknow certain data then there is only one way that lets thethird person know this data one of the two persons musttrust the third personThis simple example explains basicallythe concept of trusted network and how data are exchangedbetween nodes
If the ad hoc network covers a large area then thecloud computing services can be obtained by using adhoc routing In this proposal the ad hoc routing is per-formed only between trusted nodes so there are twoimportant facts (1) nodes should not be trusted with-out the proper authentication of the node and user and(2) confidentiality integrity availability and access con-trol with authentication all of them must be based onencryption mechanisms that must be offered without centraladministration
If we want to create a spontaneous ad hoc network formobile cloud computing we need trust establishment keymanagement and membership control Network availabilityand routing security must also be added Techniques thatenable the creation of ad hoc networks based on the spon-taneity of human interactions (people who are near eachother can communicate exchange things and ask people torelay information to others) should be added In our modeleach node will send its public key towards its neighborsWhen the node obtains a public key it is considered validonly if it is sure that it belongs to the owner Not validmeans that it is not sure that the key belongs to the ownerIf the node trusts the key it signs the key with its privatekey and considers the node as a trusted neighbor Thena trust network is created When a new device joins thenetwork and it does not have a pair of keys it must generatethem to perform authentication and to communicate withother nodes When a node leaves the network the networkmaintains the data for a period of time in case it wants to comeback later But it has to authenticate again A node does nothave to obtain the public key from every other node in otherwords one node does not have to broadcast its authenticationinformation to all other nodes in the network Nodes canobtain this information through the ldquonetwork of trustrdquo Nowwe provide a simple example where the network is formedby three nodes Node 1 and node 2 know and trust eachother Then node 2 trusts a third node node 3 If the secondnode receives a public key from the third node and signs itwith its private key we consider that the owner of this key isldquotrustedrdquo Later if the first nodewants to obtain that key it canbe obtained from the second node and since the first nodetrusts the second one it ldquovalidatesrdquo this new key by signingit with its private key If the third node is not trustworthyany key signed by the third node will not be considereda trusted key Furthermore the first node will never signthe third node key although it might forward it to othernodes in the spontaneous ad hoc mobile cloud computingnetwork
31 Analytical Considerations In this section we analyze ourproposal analytically Our purpose is to model the behaviorof the spontaneous ad hoc network when there are nodesjoining and leaving during its existence On one hand wewill take care of the authentication and trust between nodes(by using trust links and trusted communication graphs)and on the other hand we model the network behavior(in terms of number of nodes in the network because ofleavings and joining of new nodes) by using the conditionalprobability density function Let119873(119905) be a set of users havinga meeting with wireless devices with |119873(119905)| = 119899 being themaximum number of users during a certain period of time119905 These users are located in a certain bounded region 119877 Thetrusted communication graph is the directed graph 119866(119905) =
(119873(119905) 119864(119905)) such that each pair of users (119906 V) isin 119864(119905) onlyif the userrsquos device V is within 119906rsquos transmitting range at thecurrent transmit power level at time 119905 The graph containsall possible wireless links between the nodes in the networkGiven any two nodes 119906119908 isin 119873 a path connecting 119906 and119908 in119866 is a sequence of nodes 119906 = 119906
0 1199061 119906
119896minus1 119906119896= V such
that for any 119894 = 0 119896 minus 1 (119906119894 119906119894+1
) isin 119864 The length of thepath is the number of edges in the pathMoreover 119906 has a pairof values (119879 119881) for each node119908which gives the trust (119879) andvalidity (119881) values for each user The trust and validity canonly have two values 119879 = 0 1 and 119881 = 0 1
Users can join and leave the spontaneous network at willso a range assignment RA is said to be connected at time 119905if the resulting communication graph at time 119905 is stronglyconnected that is if for any pair of nodes 119906 and V there existsat least one trusted connection from 119906 to V In other wordsthe trusted directed wireless link (119906 V) exists if and only ifnodes 119906 and V are at distance of at most RA(119906) at time 119905 andtheir trusted parameter value is equal to 1 In this case V issaid to be a 1-hop neighbor or neighbor for short of node 119906The trust nodes set of node 119906 denoted as TNS(119906) is definedas it is shown in the following expression
TNS (119906) = 119911 isin 119873 (119911 119906) isin 119864 119879 = 1 (1)
A trusted wireless link is said to be bidirectional orsymmetric at time 119905 if (119906 119911) isin 119864(119905) (119911 119906) isin 119864(119905) 119906 trusts 119911and 119911 trusts 119906 The trusted communication graph generatedcan be considered as undirected since (119906 119911) isin 119864(119905) hArr
(119911 119906) isin 119864(119905)Let us suppose that a user 119906 has authenticated the user 119908
and 119906 has 119908rsquos public key then 119906 sends a message encryptedwith the session key to 119908 In this case we say that there is atrusted directed graph from 119906 to 119908 For any trusted directedgraph 119867 isin 119866 if two users 119906 and 119908 are in 119867 and there is atrusted directed path from 119906 to 119908 in 119867 then we say that 119908is reachable from 119906 in 119867 and we denote this by (119906 harr 119908)
119867
thus 119908 is also reachable from 119906 in 119866 and we denote this by(119906 harr 119908)
119866
In order to use a public key distribution system for userauthentication and session key sharing each user maintainsa local repository of public key certificates and their trustvalues When the user 119906 wants to use the resources sharedby user 119908 first 119908 must trust 119906 so they must merge theirsubgraphs and try to find a trusted directed path from 119906 to119908
The Scientific World Journal 5
Thus we can apply a subgraph theory based similar to workperformed by Capkun et al in [25] But in that case theymerged subgraphs to authenticate a public key in trustedauthorities or certificate repositories not trusted paths whilewe merge subgraphs to validate trusted paths
We assume that each user has the same subgraph selectionalgorithm119860 to build its subgraphWe denote 119878
119860(119867 119906) by the
algorithm119860 executed in119867 isin 119866 by the user119906Whenwemergethe subgraph 119878
119860(119867 119906) of user 119906 with 119878
119860(119867 V) of user V we
obtain 119878119860(119867 119906 V) When the trusted communication graph
is undirected 119878119860(119867 119906 V) = 119878
119860(119867 V 119906)
The performance of the subgraph selection algorithmdenoted by 119875
119860(119867) is defined as the ratio of the number of
user pairs (119906 119908) where there is a trusted directed path from119906 to 119908 in the merge subgraph of 119906 and 119908 to the number ofuser pairs (119906 119908) where there is a directed path from 119906 to 119908
in the trust graph The following expression shows 119875119860(119867)
119875119860 (119867) =
Card (119906 V) isin 119873119909119873 (119906 harr V)119878119860(119866119906V)Card (119906 V) isin 119873119909119873 (119906 harr V)119866
(2)
where card denotes the cardinality of a set The performanceof 119860 can be increased by selecting larger subgraphs that isusingmore information about the trust graph but the devicesof the users will need more memory to store their subgraphsMoreover the devices will need high amount of knowledge toexecute it
In order to model the network behavior when the usersjoin the network during the meeting time we have used thediffusion approximation In the spontaneous network therewill be users that join and leave the ad hoc network at will Let119905119894be the arrival time of the user 119894 to the network and let 1199051015840
119894be
the departure time of the user 119894That is 0 le 119905119894lt 1199051015840119894le 119879 where
119879 is the network lifetime Let 119860(119905) and 119863(119905) represent thecumulative number of arrivals and departures respectivelyup to time 119905The number of users in the spontaneous networkat time 119905119873(119905) is given by the following expression
119873(119905) = 119860 (119905) minus 119863 (119905) (3)
Let the consecutive interarrival time 119886119894
= 119905119894minus 119905119894minus1
and the consecutive interdeparture time 119889119894= 1199051015840119894minus 1199051015840119894minus1
beboth independent and identically distributed with the (meanvariance) given by (1120583
119886 1205902119886) and (1120583
119889 1205902119889) respectively Let
their squared coefficients of variation be 1198622119886= 1205902119886sdot 120583119886and
1198622119889
= 1205902119889sdot 120583119889 respectively We define the sum of a set of
consecutive interarrival times as 119879119896= sum119870
119894=1119886119894 We assume
that they are independent and identically distributed randomvariables hence according to the central limit theorem thestandardized random variable 119879lowast
119896 shown in expression (4)
tends to a standard normal distribution with 119896 rarr infin as it isshown in the following expression
119879lowast
119896=119879119896minus 119896 sdot 120583
119886
120590119886radic119896
(4)
119873(119905) = lim119896rarrinfin
119875[119879119896minus 119896 sdot 120583
119886
120590119886radic119896
le 119899] =1
radic2120587int119899
minusinfin
119890minus(11990522)119889119905
(5)
If 119896 is large enough there will be many arriving usersbetween 119905 and 119905 + 119896 and may be approximated by thenormal distribution with mean 120583
119886119905 and variance 1205902
1198861205833119886119905
Similarily the number of leaving users during that time willbe approximately normally distributed with mean 120583
119889119905 and
variance 12059021198891205833119889119905 Consequently the changes of119873(119905)within the
interval [119905 119905+119896] then119873(119905+119896)minus119873(119905) should be approximatelynormally distributed with the mean as is shown in thefollowing expression
120573 = (120583119886minus 120583119889) 119905 (6)
And the variance is given by the following expression
120572 = (1205902
1198861205833
119886+ 1205902
1198891205833
119889) 119905 (7)
The diffusion approximation replaces119873(119905) by a continu-ous diffusion process (also known as Wiener-Levy process)119909(119905) normally distributed with the mean 120573 sdot 119889119905 and variance120572 sdot 119889119905 Given the initial value 119909
0= 0 the unrestricted process
119909(119905) would have the conditional probability density functionat time 119905 given by the following expression
119875 (119909 119905) =1
radic2120587120572119905119890minus((119909minus120573119905)
22120572119905)
(8)
which satisfies Kolmogorov diffusion equation (also knownas Fokker-Planck equation) given in the following expression
120597119891 (119909 119905)
120597119905= minus120573
120597119891 (119909 119905)
120597119909+120572
2
1205972119891 (119909 119905)
1205971199092 (9)
Deriving expression (8) in expression (9) and treating 119909 =
0 as a reflecting barrier for all 119905 gt 0 we obtain the followingexpression
lim119909rarrinfin
[minus120573119875 (119909 119905) +120572
2
120597119875 (119909 119905)
120597119909] = 0 (10)
Nowwe can estimate the solutionwhen 119905 rarr infin and120583119886lt
120583119889 Expression (11) shows the equilibrium distribution of the
conditional probability density function [26]
119875 (119909) =210038161003816100381610038161205731003816100381610038161003816
120572119890minus(2|120573|119909120572)
(11)
where 120572 and 120573 are defined in (6) and (7) which are relatedto the probability of nodesrsquo interarrival and interdeparturetimes
32 Cryptographic System The cryptographic algorithmelection has been taken bearing in mind their strong securityand simple key management features Symmetric algorithmsand summary functions have lower computational cost thanpublic key cryptography but public key cryptography hasstronger security and it could be feasible in devices with lowcomputation capacity
In our proposal we use a summary function withsymmetric and asymmetric algorithms with the purposeof taking their benefits The security management is based
6 The Scientific World Journal
Table 1 Trust and validity values
Parameter Level When does it happen
Trust 0 (i) There has been a greeting process between users but the one in the network does not trust him(ii) The user has reduced the level of confidence to the other one
1 (i) It has been a greeting process between user and the one in the network that trusts him(ii) The user has increased the level of confidence to the other one
Validity 0 (i) It is not obtained from the greeting process with that user(ii) The validity has not been obtained through a trusted node
1 (i) It has been obtained directly from the greeting process with that user(ii) It has been obtained through a trusted node
on the public key infrastructure and the symmetric keyencryption scheme Asymmetric key encryption scheme ismainly used in the distribution of session key and in the userauthentication process It lets us also generate a distributedcertification authorityThe symmetric key is used as a sessionkey to cipher the confidential messages between trust nodesbecause it has less energy requirements [27ndash29] Asymmetrickey encryption scheme is used to authenticate the usersThe hybrid symmetricasymmetric scheme is introduced toexchange the initial data and to exchange the secret keys thatwill be used to encrypt the data The hash function lets usimprove the data integrityNowwe are going to discusswhichalgorithms are the best for our purpose
We have used advanced encryption standard (AES) algo-rithm for the symmetric encryption scheme [30] It presentsa high security level because its design structure removessubkey symmetry It is also resistant to lineal and differentialcryptanalysis AES is actually considered as one of the mostsecured ones Moreover the execution times and the energyconsumption in the cryptography processes are adequate forlow power devices
The asymmetric encryption scheme should overload thedevices as less as possible On one hand elliptic curvecryptosystem (ECC) is presented as a high performancescheme that is recommended by many researchers [31] Onthe other hand Rivest Shamir and Adleman cryptographicalgorithm (RSA) is very secure and it has been checked andrecommended by many scientists [32] ECC needs fewer bitsthan RSA (163 bits in ECC versus 1024 bits in RSA) in orderto obtain the same security level so it is able to achievehigh security level with low size keys without consumingtoo much system resources thus needing less bandwidthECC is usually adequate for small devices with few memoryresources and low computing resources (such as cellularphones and smart cards) In order to have flexibility in ourprotocol and because both cryptographic algorithms havegood performance we have included both (RSA and ECC)in our protocol The election of one of them will be taken inthe network formation Both algorithms will be shown laterin our performance study
We have selected secure hash algorithm (SHA-1) for thesummary function [33] SHA-1 is commonly used becauseof its equilibrium between its speed and its security Thisperformance is also maintained in low computing devicesThis feature does not happen in other functions because theymainly depend on the processor Its execution time and its
k1
K1
k21K21
k3K3
k2K2
k41K41
k4K4
k42K42
NotationA rarr B A trusts BB rarr A B trusts AB harr A reciprocal trust
Figure 1 Example of trust nodes
energy consumption are not so high when they are comparedwith other functions
33 Trusted Network The proposed model is based on thecreation and management of a trusted network A node willtrust other nodes through personal view and criteria That isthe trust is based on the relationship of the users rather thanon a central certification authorityThe user of the device willidentify the other users and will be in charge of establishinga trust value (0 or 1) associated with each one of them Theparameters used for configuring this trust network are trustand validity
Trust refers to the person who owns the key and its valuewill be established by the relationship between the user thatgrants it and the user that is granted It should be granted toreliable persons when their IDCs are exchanged The trustcan always be changed manually by the user later Validityindicates that a certificate belongs to that persondeviceTable 1 shows the trust and validity values
34 Certification Authority The certification authority of anode could be any node in the group of nodes that this nodetrusts This system lets us build a distributed certificationauthority between trust nodes When a node wants tocommunicate with other nodes and see if it is a valid nodeit can request the certificate of that node to its trust nodesAfter obtaining this certificate it will be able to sign this node
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 3
Taking into account that mobile devices are resource-constrained and some applications demand more resourcesthan they can afford in [17] Huerta-Canepa and Lee proposeto create a virtual cloud computing platform using mobilephones They present the preliminary design of a frameworkto create ad hoc cloud computing providers The frameworkcreates a cloud among the devices in the vicinity allowingthem to execute jobs between the devices However the workpresented is preliminary and no protocol has neither beendesigned nor detailed
Another solution is the presented by Divya in [18] Heproposes a conceptual architecture where a mobile applica-tion platform shares a service amongmultiple users A proof-of-concept prototype is developed using AndroidThe serverplatform shares Android OS among multiple users to obtainhigh performance on virtual image-based virtualization formobile applications
In this sense several authors of this paper have previ-ously deployed a spontaneous ad hoc network for multiplepurposes but never for cloud computing In [19] a secureprotocol for spontaneous wireless ad hoc networks wasproposed It is based on the behavior of human relationshipsIt uses a hybrid symmetricasymmetric scheme and the trustbetween users in order to exchange the initial data andto exchange the secret keys that will be used to encryptthe data In this paper authors explained the proceduresfor the nodersquos self-configuration and for providing DNSservice In [20] two flexible secure spontaneous wirelessad hoc network protocols for wireless mesh clients that arebased on the computational costs are proposed Proposalsare based on a trust network where the session key allowsnode confidentiality They have been implemented over theDSR routing protocolThe developed protocols provide nodeauthenticity and intermediate node authenticity when pack-ets are transmitted Integrity checking randomchecking andverification distribution are also considered in the protocolIn [21] we propose a secure spontaneous ad hoc networkbased on direct peer-to-peer interaction to grant a quickeasy and secure access to the users when they surf theweb The protocol allows the users to collaborate duringa period of time to accomplish a collaborative task Theproposal is also compared with other caching techniquespublished in the related literature The proposed solutionpresents a distributed model where the interaction requiredbetween devices is minimal In [22] we proposed a securespontaneous network to create communities Each commu-nity has an identity that acts as a unity on a world basedon internet connection Trust chains are established amongusers Chains of confidence allow the establishment of groupsor communities to access the services as well as for spreadinggroup information
As we have seen no previous spontaneous network hasbeen focused on mobile cloud computing
3 Network Model and Description
In this section the proposed spontaneous ad hoc network formobile cloud computing and its model is described
Our network model meets the following requirements
(1) Devices can move freely in the given area Even out ofeach otherrsquos range
(2) Every node is also a router It has a limited communi-cation range towards other nodes
(3) The different identities are given by IP addressesEach address is obtained dynamically following ourprevious proposal [23]
(4) There is no central administration(5) Devices can come fromeverywhere and join and leave
at will(6) Resources for cloud computing can be provided by
any node if it has enough capacity to do it
During the start-up of a node it broadcasts messagesin order to find neighbors In this kind of networks itis very important to select those nodes which offer betterperformance to the whole network [24] A node will acceptanother node as its neighbor as a function of the amount ofmessages it has received to this node When a new node hasdefined all its neighbors it sends its identity card to all itsneighbors If the neighbor sends back a message to informthat it has received the identity card and the content of thismessage is correct (by checking the hash of the message)then the newnode trusts these neighborsWhen a node trustsa second node it can send messages directly to the secondnode unless the second node does not trust the first node inthis case the communication is not allowedThe system doesnot follow the commutative and associative properties thatis although a first node can trust a second node the secondnode may not trust the first node It also happens with threenodes in a chain If a node wants to send a message towards anontrusted node then it has to do it through a trusted node
The system follows the next steps
(1) Broadcast messages searching neighbor nodes(2) Send its identity card to the neighbors(3) Acknowledgenot acknowledge the reception of the
messages from its neighbors(4) Set the neighbor node as a trusted or nontrusted node
Our protocol is based on the use of two informationstructures (1) an IDC (identity card) and (2) a certificate Onone hand the IDC is composed by two parts The first one isthe public part which is formed by a logical identity (LID) Itis unique for each user and allows nodes to identify it LIDincludes information such as name photograph and otheruser identification Public part also contains informationabout the public key of the user (119870
119894) and the information
signature On the other hand private part is composed by theprivate key (119896
119894) and this information is not accessible by other
devicesA certificate of a user consists of a validated identification
card signed by the user that gives its validity for exampleuser ldquo119895rdquo Thus the certificate of user ldquo119894rdquo validated and signedby the user ldquo119895rdquo corresponds to ldquo119862
119894119895rdquoTheuserwill introduce its
4 The Scientific World Journal
LID only the first time that the user uses the system becausethe security information is generated only the first time theuser joins the network Security data is stored persistently inthe device for its future use
In order to explain the procedure the following case isdetailed When there are three persons and two of themknow certain data then there is only one way that lets thethird person know this data one of the two persons musttrust the third personThis simple example explains basicallythe concept of trusted network and how data are exchangedbetween nodes
If the ad hoc network covers a large area then thecloud computing services can be obtained by using adhoc routing In this proposal the ad hoc routing is per-formed only between trusted nodes so there are twoimportant facts (1) nodes should not be trusted with-out the proper authentication of the node and user and(2) confidentiality integrity availability and access con-trol with authentication all of them must be based onencryption mechanisms that must be offered without centraladministration
If we want to create a spontaneous ad hoc network formobile cloud computing we need trust establishment keymanagement and membership control Network availabilityand routing security must also be added Techniques thatenable the creation of ad hoc networks based on the spon-taneity of human interactions (people who are near eachother can communicate exchange things and ask people torelay information to others) should be added In our modeleach node will send its public key towards its neighborsWhen the node obtains a public key it is considered validonly if it is sure that it belongs to the owner Not validmeans that it is not sure that the key belongs to the ownerIf the node trusts the key it signs the key with its privatekey and considers the node as a trusted neighbor Thena trust network is created When a new device joins thenetwork and it does not have a pair of keys it must generatethem to perform authentication and to communicate withother nodes When a node leaves the network the networkmaintains the data for a period of time in case it wants to comeback later But it has to authenticate again A node does nothave to obtain the public key from every other node in otherwords one node does not have to broadcast its authenticationinformation to all other nodes in the network Nodes canobtain this information through the ldquonetwork of trustrdquo Nowwe provide a simple example where the network is formedby three nodes Node 1 and node 2 know and trust eachother Then node 2 trusts a third node node 3 If the secondnode receives a public key from the third node and signs itwith its private key we consider that the owner of this key isldquotrustedrdquo Later if the first nodewants to obtain that key it canbe obtained from the second node and since the first nodetrusts the second one it ldquovalidatesrdquo this new key by signingit with its private key If the third node is not trustworthyany key signed by the third node will not be considereda trusted key Furthermore the first node will never signthe third node key although it might forward it to othernodes in the spontaneous ad hoc mobile cloud computingnetwork
31 Analytical Considerations In this section we analyze ourproposal analytically Our purpose is to model the behaviorof the spontaneous ad hoc network when there are nodesjoining and leaving during its existence On one hand wewill take care of the authentication and trust between nodes(by using trust links and trusted communication graphs)and on the other hand we model the network behavior(in terms of number of nodes in the network because ofleavings and joining of new nodes) by using the conditionalprobability density function Let119873(119905) be a set of users havinga meeting with wireless devices with |119873(119905)| = 119899 being themaximum number of users during a certain period of time119905 These users are located in a certain bounded region 119877 Thetrusted communication graph is the directed graph 119866(119905) =
(119873(119905) 119864(119905)) such that each pair of users (119906 V) isin 119864(119905) onlyif the userrsquos device V is within 119906rsquos transmitting range at thecurrent transmit power level at time 119905 The graph containsall possible wireless links between the nodes in the networkGiven any two nodes 119906119908 isin 119873 a path connecting 119906 and119908 in119866 is a sequence of nodes 119906 = 119906
0 1199061 119906
119896minus1 119906119896= V such
that for any 119894 = 0 119896 minus 1 (119906119894 119906119894+1
) isin 119864 The length of thepath is the number of edges in the pathMoreover 119906 has a pairof values (119879 119881) for each node119908which gives the trust (119879) andvalidity (119881) values for each user The trust and validity canonly have two values 119879 = 0 1 and 119881 = 0 1
Users can join and leave the spontaneous network at willso a range assignment RA is said to be connected at time 119905if the resulting communication graph at time 119905 is stronglyconnected that is if for any pair of nodes 119906 and V there existsat least one trusted connection from 119906 to V In other wordsthe trusted directed wireless link (119906 V) exists if and only ifnodes 119906 and V are at distance of at most RA(119906) at time 119905 andtheir trusted parameter value is equal to 1 In this case V issaid to be a 1-hop neighbor or neighbor for short of node 119906The trust nodes set of node 119906 denoted as TNS(119906) is definedas it is shown in the following expression
TNS (119906) = 119911 isin 119873 (119911 119906) isin 119864 119879 = 1 (1)
A trusted wireless link is said to be bidirectional orsymmetric at time 119905 if (119906 119911) isin 119864(119905) (119911 119906) isin 119864(119905) 119906 trusts 119911and 119911 trusts 119906 The trusted communication graph generatedcan be considered as undirected since (119906 119911) isin 119864(119905) hArr
(119911 119906) isin 119864(119905)Let us suppose that a user 119906 has authenticated the user 119908
and 119906 has 119908rsquos public key then 119906 sends a message encryptedwith the session key to 119908 In this case we say that there is atrusted directed graph from 119906 to 119908 For any trusted directedgraph 119867 isin 119866 if two users 119906 and 119908 are in 119867 and there is atrusted directed path from 119906 to 119908 in 119867 then we say that 119908is reachable from 119906 in 119867 and we denote this by (119906 harr 119908)
119867
thus 119908 is also reachable from 119906 in 119866 and we denote this by(119906 harr 119908)
119866
In order to use a public key distribution system for userauthentication and session key sharing each user maintainsa local repository of public key certificates and their trustvalues When the user 119906 wants to use the resources sharedby user 119908 first 119908 must trust 119906 so they must merge theirsubgraphs and try to find a trusted directed path from 119906 to119908
The Scientific World Journal 5
Thus we can apply a subgraph theory based similar to workperformed by Capkun et al in [25] But in that case theymerged subgraphs to authenticate a public key in trustedauthorities or certificate repositories not trusted paths whilewe merge subgraphs to validate trusted paths
We assume that each user has the same subgraph selectionalgorithm119860 to build its subgraphWe denote 119878
119860(119867 119906) by the
algorithm119860 executed in119867 isin 119866 by the user119906Whenwemergethe subgraph 119878
119860(119867 119906) of user 119906 with 119878
119860(119867 V) of user V we
obtain 119878119860(119867 119906 V) When the trusted communication graph
is undirected 119878119860(119867 119906 V) = 119878
119860(119867 V 119906)
The performance of the subgraph selection algorithmdenoted by 119875
119860(119867) is defined as the ratio of the number of
user pairs (119906 119908) where there is a trusted directed path from119906 to 119908 in the merge subgraph of 119906 and 119908 to the number ofuser pairs (119906 119908) where there is a directed path from 119906 to 119908
in the trust graph The following expression shows 119875119860(119867)
119875119860 (119867) =
Card (119906 V) isin 119873119909119873 (119906 harr V)119878119860(119866119906V)Card (119906 V) isin 119873119909119873 (119906 harr V)119866
(2)
where card denotes the cardinality of a set The performanceof 119860 can be increased by selecting larger subgraphs that isusingmore information about the trust graph but the devicesof the users will need more memory to store their subgraphsMoreover the devices will need high amount of knowledge toexecute it
In order to model the network behavior when the usersjoin the network during the meeting time we have used thediffusion approximation In the spontaneous network therewill be users that join and leave the ad hoc network at will Let119905119894be the arrival time of the user 119894 to the network and let 1199051015840
119894be
the departure time of the user 119894That is 0 le 119905119894lt 1199051015840119894le 119879 where
119879 is the network lifetime Let 119860(119905) and 119863(119905) represent thecumulative number of arrivals and departures respectivelyup to time 119905The number of users in the spontaneous networkat time 119905119873(119905) is given by the following expression
119873(119905) = 119860 (119905) minus 119863 (119905) (3)
Let the consecutive interarrival time 119886119894
= 119905119894minus 119905119894minus1
and the consecutive interdeparture time 119889119894= 1199051015840119894minus 1199051015840119894minus1
beboth independent and identically distributed with the (meanvariance) given by (1120583
119886 1205902119886) and (1120583
119889 1205902119889) respectively Let
their squared coefficients of variation be 1198622119886= 1205902119886sdot 120583119886and
1198622119889
= 1205902119889sdot 120583119889 respectively We define the sum of a set of
consecutive interarrival times as 119879119896= sum119870
119894=1119886119894 We assume
that they are independent and identically distributed randomvariables hence according to the central limit theorem thestandardized random variable 119879lowast
119896 shown in expression (4)
tends to a standard normal distribution with 119896 rarr infin as it isshown in the following expression
119879lowast
119896=119879119896minus 119896 sdot 120583
119886
120590119886radic119896
(4)
119873(119905) = lim119896rarrinfin
119875[119879119896minus 119896 sdot 120583
119886
120590119886radic119896
le 119899] =1
radic2120587int119899
minusinfin
119890minus(11990522)119889119905
(5)
If 119896 is large enough there will be many arriving usersbetween 119905 and 119905 + 119896 and may be approximated by thenormal distribution with mean 120583
119886119905 and variance 1205902
1198861205833119886119905
Similarily the number of leaving users during that time willbe approximately normally distributed with mean 120583
119889119905 and
variance 12059021198891205833119889119905 Consequently the changes of119873(119905)within the
interval [119905 119905+119896] then119873(119905+119896)minus119873(119905) should be approximatelynormally distributed with the mean as is shown in thefollowing expression
120573 = (120583119886minus 120583119889) 119905 (6)
And the variance is given by the following expression
120572 = (1205902
1198861205833
119886+ 1205902
1198891205833
119889) 119905 (7)
The diffusion approximation replaces119873(119905) by a continu-ous diffusion process (also known as Wiener-Levy process)119909(119905) normally distributed with the mean 120573 sdot 119889119905 and variance120572 sdot 119889119905 Given the initial value 119909
0= 0 the unrestricted process
119909(119905) would have the conditional probability density functionat time 119905 given by the following expression
119875 (119909 119905) =1
radic2120587120572119905119890minus((119909minus120573119905)
22120572119905)
(8)
which satisfies Kolmogorov diffusion equation (also knownas Fokker-Planck equation) given in the following expression
120597119891 (119909 119905)
120597119905= minus120573
120597119891 (119909 119905)
120597119909+120572
2
1205972119891 (119909 119905)
1205971199092 (9)
Deriving expression (8) in expression (9) and treating 119909 =
0 as a reflecting barrier for all 119905 gt 0 we obtain the followingexpression
lim119909rarrinfin
[minus120573119875 (119909 119905) +120572
2
120597119875 (119909 119905)
120597119909] = 0 (10)
Nowwe can estimate the solutionwhen 119905 rarr infin and120583119886lt
120583119889 Expression (11) shows the equilibrium distribution of the
conditional probability density function [26]
119875 (119909) =210038161003816100381610038161205731003816100381610038161003816
120572119890minus(2|120573|119909120572)
(11)
where 120572 and 120573 are defined in (6) and (7) which are relatedto the probability of nodesrsquo interarrival and interdeparturetimes
32 Cryptographic System The cryptographic algorithmelection has been taken bearing in mind their strong securityand simple key management features Symmetric algorithmsand summary functions have lower computational cost thanpublic key cryptography but public key cryptography hasstronger security and it could be feasible in devices with lowcomputation capacity
In our proposal we use a summary function withsymmetric and asymmetric algorithms with the purposeof taking their benefits The security management is based
6 The Scientific World Journal
Table 1 Trust and validity values
Parameter Level When does it happen
Trust 0 (i) There has been a greeting process between users but the one in the network does not trust him(ii) The user has reduced the level of confidence to the other one
1 (i) It has been a greeting process between user and the one in the network that trusts him(ii) The user has increased the level of confidence to the other one
Validity 0 (i) It is not obtained from the greeting process with that user(ii) The validity has not been obtained through a trusted node
1 (i) It has been obtained directly from the greeting process with that user(ii) It has been obtained through a trusted node
on the public key infrastructure and the symmetric keyencryption scheme Asymmetric key encryption scheme ismainly used in the distribution of session key and in the userauthentication process It lets us also generate a distributedcertification authorityThe symmetric key is used as a sessionkey to cipher the confidential messages between trust nodesbecause it has less energy requirements [27ndash29] Asymmetrickey encryption scheme is used to authenticate the usersThe hybrid symmetricasymmetric scheme is introduced toexchange the initial data and to exchange the secret keys thatwill be used to encrypt the data The hash function lets usimprove the data integrityNowwe are going to discusswhichalgorithms are the best for our purpose
We have used advanced encryption standard (AES) algo-rithm for the symmetric encryption scheme [30] It presentsa high security level because its design structure removessubkey symmetry It is also resistant to lineal and differentialcryptanalysis AES is actually considered as one of the mostsecured ones Moreover the execution times and the energyconsumption in the cryptography processes are adequate forlow power devices
The asymmetric encryption scheme should overload thedevices as less as possible On one hand elliptic curvecryptosystem (ECC) is presented as a high performancescheme that is recommended by many researchers [31] Onthe other hand Rivest Shamir and Adleman cryptographicalgorithm (RSA) is very secure and it has been checked andrecommended by many scientists [32] ECC needs fewer bitsthan RSA (163 bits in ECC versus 1024 bits in RSA) in orderto obtain the same security level so it is able to achievehigh security level with low size keys without consumingtoo much system resources thus needing less bandwidthECC is usually adequate for small devices with few memoryresources and low computing resources (such as cellularphones and smart cards) In order to have flexibility in ourprotocol and because both cryptographic algorithms havegood performance we have included both (RSA and ECC)in our protocol The election of one of them will be taken inthe network formation Both algorithms will be shown laterin our performance study
We have selected secure hash algorithm (SHA-1) for thesummary function [33] SHA-1 is commonly used becauseof its equilibrium between its speed and its security Thisperformance is also maintained in low computing devicesThis feature does not happen in other functions because theymainly depend on the processor Its execution time and its
k1
K1
k21K21
k3K3
k2K2
k41K41
k4K4
k42K42
NotationA rarr B A trusts BB rarr A B trusts AB harr A reciprocal trust
Figure 1 Example of trust nodes
energy consumption are not so high when they are comparedwith other functions
33 Trusted Network The proposed model is based on thecreation and management of a trusted network A node willtrust other nodes through personal view and criteria That isthe trust is based on the relationship of the users rather thanon a central certification authorityThe user of the device willidentify the other users and will be in charge of establishinga trust value (0 or 1) associated with each one of them Theparameters used for configuring this trust network are trustand validity
Trust refers to the person who owns the key and its valuewill be established by the relationship between the user thatgrants it and the user that is granted It should be granted toreliable persons when their IDCs are exchanged The trustcan always be changed manually by the user later Validityindicates that a certificate belongs to that persondeviceTable 1 shows the trust and validity values
34 Certification Authority The certification authority of anode could be any node in the group of nodes that this nodetrusts This system lets us build a distributed certificationauthority between trust nodes When a node wants tocommunicate with other nodes and see if it is a valid nodeit can request the certificate of that node to its trust nodesAfter obtaining this certificate it will be able to sign this node
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
4 The Scientific World Journal
LID only the first time that the user uses the system becausethe security information is generated only the first time theuser joins the network Security data is stored persistently inthe device for its future use
In order to explain the procedure the following case isdetailed When there are three persons and two of themknow certain data then there is only one way that lets thethird person know this data one of the two persons musttrust the third personThis simple example explains basicallythe concept of trusted network and how data are exchangedbetween nodes
If the ad hoc network covers a large area then thecloud computing services can be obtained by using adhoc routing In this proposal the ad hoc routing is per-formed only between trusted nodes so there are twoimportant facts (1) nodes should not be trusted with-out the proper authentication of the node and user and(2) confidentiality integrity availability and access con-trol with authentication all of them must be based onencryption mechanisms that must be offered without centraladministration
If we want to create a spontaneous ad hoc network formobile cloud computing we need trust establishment keymanagement and membership control Network availabilityand routing security must also be added Techniques thatenable the creation of ad hoc networks based on the spon-taneity of human interactions (people who are near eachother can communicate exchange things and ask people torelay information to others) should be added In our modeleach node will send its public key towards its neighborsWhen the node obtains a public key it is considered validonly if it is sure that it belongs to the owner Not validmeans that it is not sure that the key belongs to the ownerIf the node trusts the key it signs the key with its privatekey and considers the node as a trusted neighbor Thena trust network is created When a new device joins thenetwork and it does not have a pair of keys it must generatethem to perform authentication and to communicate withother nodes When a node leaves the network the networkmaintains the data for a period of time in case it wants to comeback later But it has to authenticate again A node does nothave to obtain the public key from every other node in otherwords one node does not have to broadcast its authenticationinformation to all other nodes in the network Nodes canobtain this information through the ldquonetwork of trustrdquo Nowwe provide a simple example where the network is formedby three nodes Node 1 and node 2 know and trust eachother Then node 2 trusts a third node node 3 If the secondnode receives a public key from the third node and signs itwith its private key we consider that the owner of this key isldquotrustedrdquo Later if the first nodewants to obtain that key it canbe obtained from the second node and since the first nodetrusts the second one it ldquovalidatesrdquo this new key by signingit with its private key If the third node is not trustworthyany key signed by the third node will not be considereda trusted key Furthermore the first node will never signthe third node key although it might forward it to othernodes in the spontaneous ad hoc mobile cloud computingnetwork
31 Analytical Considerations In this section we analyze ourproposal analytically Our purpose is to model the behaviorof the spontaneous ad hoc network when there are nodesjoining and leaving during its existence On one hand wewill take care of the authentication and trust between nodes(by using trust links and trusted communication graphs)and on the other hand we model the network behavior(in terms of number of nodes in the network because ofleavings and joining of new nodes) by using the conditionalprobability density function Let119873(119905) be a set of users havinga meeting with wireless devices with |119873(119905)| = 119899 being themaximum number of users during a certain period of time119905 These users are located in a certain bounded region 119877 Thetrusted communication graph is the directed graph 119866(119905) =
(119873(119905) 119864(119905)) such that each pair of users (119906 V) isin 119864(119905) onlyif the userrsquos device V is within 119906rsquos transmitting range at thecurrent transmit power level at time 119905 The graph containsall possible wireless links between the nodes in the networkGiven any two nodes 119906119908 isin 119873 a path connecting 119906 and119908 in119866 is a sequence of nodes 119906 = 119906
0 1199061 119906
119896minus1 119906119896= V such
that for any 119894 = 0 119896 minus 1 (119906119894 119906119894+1
) isin 119864 The length of thepath is the number of edges in the pathMoreover 119906 has a pairof values (119879 119881) for each node119908which gives the trust (119879) andvalidity (119881) values for each user The trust and validity canonly have two values 119879 = 0 1 and 119881 = 0 1
Users can join and leave the spontaneous network at willso a range assignment RA is said to be connected at time 119905if the resulting communication graph at time 119905 is stronglyconnected that is if for any pair of nodes 119906 and V there existsat least one trusted connection from 119906 to V In other wordsthe trusted directed wireless link (119906 V) exists if and only ifnodes 119906 and V are at distance of at most RA(119906) at time 119905 andtheir trusted parameter value is equal to 1 In this case V issaid to be a 1-hop neighbor or neighbor for short of node 119906The trust nodes set of node 119906 denoted as TNS(119906) is definedas it is shown in the following expression
TNS (119906) = 119911 isin 119873 (119911 119906) isin 119864 119879 = 1 (1)
A trusted wireless link is said to be bidirectional orsymmetric at time 119905 if (119906 119911) isin 119864(119905) (119911 119906) isin 119864(119905) 119906 trusts 119911and 119911 trusts 119906 The trusted communication graph generatedcan be considered as undirected since (119906 119911) isin 119864(119905) hArr
(119911 119906) isin 119864(119905)Let us suppose that a user 119906 has authenticated the user 119908
and 119906 has 119908rsquos public key then 119906 sends a message encryptedwith the session key to 119908 In this case we say that there is atrusted directed graph from 119906 to 119908 For any trusted directedgraph 119867 isin 119866 if two users 119906 and 119908 are in 119867 and there is atrusted directed path from 119906 to 119908 in 119867 then we say that 119908is reachable from 119906 in 119867 and we denote this by (119906 harr 119908)
119867
thus 119908 is also reachable from 119906 in 119866 and we denote this by(119906 harr 119908)
119866
In order to use a public key distribution system for userauthentication and session key sharing each user maintainsa local repository of public key certificates and their trustvalues When the user 119906 wants to use the resources sharedby user 119908 first 119908 must trust 119906 so they must merge theirsubgraphs and try to find a trusted directed path from 119906 to119908
The Scientific World Journal 5
Thus we can apply a subgraph theory based similar to workperformed by Capkun et al in [25] But in that case theymerged subgraphs to authenticate a public key in trustedauthorities or certificate repositories not trusted paths whilewe merge subgraphs to validate trusted paths
We assume that each user has the same subgraph selectionalgorithm119860 to build its subgraphWe denote 119878
119860(119867 119906) by the
algorithm119860 executed in119867 isin 119866 by the user119906Whenwemergethe subgraph 119878
119860(119867 119906) of user 119906 with 119878
119860(119867 V) of user V we
obtain 119878119860(119867 119906 V) When the trusted communication graph
is undirected 119878119860(119867 119906 V) = 119878
119860(119867 V 119906)
The performance of the subgraph selection algorithmdenoted by 119875
119860(119867) is defined as the ratio of the number of
user pairs (119906 119908) where there is a trusted directed path from119906 to 119908 in the merge subgraph of 119906 and 119908 to the number ofuser pairs (119906 119908) where there is a directed path from 119906 to 119908
in the trust graph The following expression shows 119875119860(119867)
119875119860 (119867) =
Card (119906 V) isin 119873119909119873 (119906 harr V)119878119860(119866119906V)Card (119906 V) isin 119873119909119873 (119906 harr V)119866
(2)
where card denotes the cardinality of a set The performanceof 119860 can be increased by selecting larger subgraphs that isusingmore information about the trust graph but the devicesof the users will need more memory to store their subgraphsMoreover the devices will need high amount of knowledge toexecute it
In order to model the network behavior when the usersjoin the network during the meeting time we have used thediffusion approximation In the spontaneous network therewill be users that join and leave the ad hoc network at will Let119905119894be the arrival time of the user 119894 to the network and let 1199051015840
119894be
the departure time of the user 119894That is 0 le 119905119894lt 1199051015840119894le 119879 where
119879 is the network lifetime Let 119860(119905) and 119863(119905) represent thecumulative number of arrivals and departures respectivelyup to time 119905The number of users in the spontaneous networkat time 119905119873(119905) is given by the following expression
119873(119905) = 119860 (119905) minus 119863 (119905) (3)
Let the consecutive interarrival time 119886119894
= 119905119894minus 119905119894minus1
and the consecutive interdeparture time 119889119894= 1199051015840119894minus 1199051015840119894minus1
beboth independent and identically distributed with the (meanvariance) given by (1120583
119886 1205902119886) and (1120583
119889 1205902119889) respectively Let
their squared coefficients of variation be 1198622119886= 1205902119886sdot 120583119886and
1198622119889
= 1205902119889sdot 120583119889 respectively We define the sum of a set of
consecutive interarrival times as 119879119896= sum119870
119894=1119886119894 We assume
that they are independent and identically distributed randomvariables hence according to the central limit theorem thestandardized random variable 119879lowast
119896 shown in expression (4)
tends to a standard normal distribution with 119896 rarr infin as it isshown in the following expression
119879lowast
119896=119879119896minus 119896 sdot 120583
119886
120590119886radic119896
(4)
119873(119905) = lim119896rarrinfin
119875[119879119896minus 119896 sdot 120583
119886
120590119886radic119896
le 119899] =1
radic2120587int119899
minusinfin
119890minus(11990522)119889119905
(5)
If 119896 is large enough there will be many arriving usersbetween 119905 and 119905 + 119896 and may be approximated by thenormal distribution with mean 120583
119886119905 and variance 1205902
1198861205833119886119905
Similarily the number of leaving users during that time willbe approximately normally distributed with mean 120583
119889119905 and
variance 12059021198891205833119889119905 Consequently the changes of119873(119905)within the
interval [119905 119905+119896] then119873(119905+119896)minus119873(119905) should be approximatelynormally distributed with the mean as is shown in thefollowing expression
120573 = (120583119886minus 120583119889) 119905 (6)
And the variance is given by the following expression
120572 = (1205902
1198861205833
119886+ 1205902
1198891205833
119889) 119905 (7)
The diffusion approximation replaces119873(119905) by a continu-ous diffusion process (also known as Wiener-Levy process)119909(119905) normally distributed with the mean 120573 sdot 119889119905 and variance120572 sdot 119889119905 Given the initial value 119909
0= 0 the unrestricted process
119909(119905) would have the conditional probability density functionat time 119905 given by the following expression
119875 (119909 119905) =1
radic2120587120572119905119890minus((119909minus120573119905)
22120572119905)
(8)
which satisfies Kolmogorov diffusion equation (also knownas Fokker-Planck equation) given in the following expression
120597119891 (119909 119905)
120597119905= minus120573
120597119891 (119909 119905)
120597119909+120572
2
1205972119891 (119909 119905)
1205971199092 (9)
Deriving expression (8) in expression (9) and treating 119909 =
0 as a reflecting barrier for all 119905 gt 0 we obtain the followingexpression
lim119909rarrinfin
[minus120573119875 (119909 119905) +120572
2
120597119875 (119909 119905)
120597119909] = 0 (10)
Nowwe can estimate the solutionwhen 119905 rarr infin and120583119886lt
120583119889 Expression (11) shows the equilibrium distribution of the
conditional probability density function [26]
119875 (119909) =210038161003816100381610038161205731003816100381610038161003816
120572119890minus(2|120573|119909120572)
(11)
where 120572 and 120573 are defined in (6) and (7) which are relatedto the probability of nodesrsquo interarrival and interdeparturetimes
32 Cryptographic System The cryptographic algorithmelection has been taken bearing in mind their strong securityand simple key management features Symmetric algorithmsand summary functions have lower computational cost thanpublic key cryptography but public key cryptography hasstronger security and it could be feasible in devices with lowcomputation capacity
In our proposal we use a summary function withsymmetric and asymmetric algorithms with the purposeof taking their benefits The security management is based
6 The Scientific World Journal
Table 1 Trust and validity values
Parameter Level When does it happen
Trust 0 (i) There has been a greeting process between users but the one in the network does not trust him(ii) The user has reduced the level of confidence to the other one
1 (i) It has been a greeting process between user and the one in the network that trusts him(ii) The user has increased the level of confidence to the other one
Validity 0 (i) It is not obtained from the greeting process with that user(ii) The validity has not been obtained through a trusted node
1 (i) It has been obtained directly from the greeting process with that user(ii) It has been obtained through a trusted node
on the public key infrastructure and the symmetric keyencryption scheme Asymmetric key encryption scheme ismainly used in the distribution of session key and in the userauthentication process It lets us also generate a distributedcertification authorityThe symmetric key is used as a sessionkey to cipher the confidential messages between trust nodesbecause it has less energy requirements [27ndash29] Asymmetrickey encryption scheme is used to authenticate the usersThe hybrid symmetricasymmetric scheme is introduced toexchange the initial data and to exchange the secret keys thatwill be used to encrypt the data The hash function lets usimprove the data integrityNowwe are going to discusswhichalgorithms are the best for our purpose
We have used advanced encryption standard (AES) algo-rithm for the symmetric encryption scheme [30] It presentsa high security level because its design structure removessubkey symmetry It is also resistant to lineal and differentialcryptanalysis AES is actually considered as one of the mostsecured ones Moreover the execution times and the energyconsumption in the cryptography processes are adequate forlow power devices
The asymmetric encryption scheme should overload thedevices as less as possible On one hand elliptic curvecryptosystem (ECC) is presented as a high performancescheme that is recommended by many researchers [31] Onthe other hand Rivest Shamir and Adleman cryptographicalgorithm (RSA) is very secure and it has been checked andrecommended by many scientists [32] ECC needs fewer bitsthan RSA (163 bits in ECC versus 1024 bits in RSA) in orderto obtain the same security level so it is able to achievehigh security level with low size keys without consumingtoo much system resources thus needing less bandwidthECC is usually adequate for small devices with few memoryresources and low computing resources (such as cellularphones and smart cards) In order to have flexibility in ourprotocol and because both cryptographic algorithms havegood performance we have included both (RSA and ECC)in our protocol The election of one of them will be taken inthe network formation Both algorithms will be shown laterin our performance study
We have selected secure hash algorithm (SHA-1) for thesummary function [33] SHA-1 is commonly used becauseof its equilibrium between its speed and its security Thisperformance is also maintained in low computing devicesThis feature does not happen in other functions because theymainly depend on the processor Its execution time and its
k1
K1
k21K21
k3K3
k2K2
k41K41
k4K4
k42K42
NotationA rarr B A trusts BB rarr A B trusts AB harr A reciprocal trust
Figure 1 Example of trust nodes
energy consumption are not so high when they are comparedwith other functions
33 Trusted Network The proposed model is based on thecreation and management of a trusted network A node willtrust other nodes through personal view and criteria That isthe trust is based on the relationship of the users rather thanon a central certification authorityThe user of the device willidentify the other users and will be in charge of establishinga trust value (0 or 1) associated with each one of them Theparameters used for configuring this trust network are trustand validity
Trust refers to the person who owns the key and its valuewill be established by the relationship between the user thatgrants it and the user that is granted It should be granted toreliable persons when their IDCs are exchanged The trustcan always be changed manually by the user later Validityindicates that a certificate belongs to that persondeviceTable 1 shows the trust and validity values
34 Certification Authority The certification authority of anode could be any node in the group of nodes that this nodetrusts This system lets us build a distributed certificationauthority between trust nodes When a node wants tocommunicate with other nodes and see if it is a valid nodeit can request the certificate of that node to its trust nodesAfter obtaining this certificate it will be able to sign this node
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 5
Thus we can apply a subgraph theory based similar to workperformed by Capkun et al in [25] But in that case theymerged subgraphs to authenticate a public key in trustedauthorities or certificate repositories not trusted paths whilewe merge subgraphs to validate trusted paths
We assume that each user has the same subgraph selectionalgorithm119860 to build its subgraphWe denote 119878
119860(119867 119906) by the
algorithm119860 executed in119867 isin 119866 by the user119906Whenwemergethe subgraph 119878
119860(119867 119906) of user 119906 with 119878
119860(119867 V) of user V we
obtain 119878119860(119867 119906 V) When the trusted communication graph
is undirected 119878119860(119867 119906 V) = 119878
119860(119867 V 119906)
The performance of the subgraph selection algorithmdenoted by 119875
119860(119867) is defined as the ratio of the number of
user pairs (119906 119908) where there is a trusted directed path from119906 to 119908 in the merge subgraph of 119906 and 119908 to the number ofuser pairs (119906 119908) where there is a directed path from 119906 to 119908
in the trust graph The following expression shows 119875119860(119867)
119875119860 (119867) =
Card (119906 V) isin 119873119909119873 (119906 harr V)119878119860(119866119906V)Card (119906 V) isin 119873119909119873 (119906 harr V)119866
(2)
where card denotes the cardinality of a set The performanceof 119860 can be increased by selecting larger subgraphs that isusingmore information about the trust graph but the devicesof the users will need more memory to store their subgraphsMoreover the devices will need high amount of knowledge toexecute it
In order to model the network behavior when the usersjoin the network during the meeting time we have used thediffusion approximation In the spontaneous network therewill be users that join and leave the ad hoc network at will Let119905119894be the arrival time of the user 119894 to the network and let 1199051015840
119894be
the departure time of the user 119894That is 0 le 119905119894lt 1199051015840119894le 119879 where
119879 is the network lifetime Let 119860(119905) and 119863(119905) represent thecumulative number of arrivals and departures respectivelyup to time 119905The number of users in the spontaneous networkat time 119905119873(119905) is given by the following expression
119873(119905) = 119860 (119905) minus 119863 (119905) (3)
Let the consecutive interarrival time 119886119894
= 119905119894minus 119905119894minus1
and the consecutive interdeparture time 119889119894= 1199051015840119894minus 1199051015840119894minus1
beboth independent and identically distributed with the (meanvariance) given by (1120583
119886 1205902119886) and (1120583
119889 1205902119889) respectively Let
their squared coefficients of variation be 1198622119886= 1205902119886sdot 120583119886and
1198622119889
= 1205902119889sdot 120583119889 respectively We define the sum of a set of
consecutive interarrival times as 119879119896= sum119870
119894=1119886119894 We assume
that they are independent and identically distributed randomvariables hence according to the central limit theorem thestandardized random variable 119879lowast
119896 shown in expression (4)
tends to a standard normal distribution with 119896 rarr infin as it isshown in the following expression
119879lowast
119896=119879119896minus 119896 sdot 120583
119886
120590119886radic119896
(4)
119873(119905) = lim119896rarrinfin
119875[119879119896minus 119896 sdot 120583
119886
120590119886radic119896
le 119899] =1
radic2120587int119899
minusinfin
119890minus(11990522)119889119905
(5)
If 119896 is large enough there will be many arriving usersbetween 119905 and 119905 + 119896 and may be approximated by thenormal distribution with mean 120583
119886119905 and variance 1205902
1198861205833119886119905
Similarily the number of leaving users during that time willbe approximately normally distributed with mean 120583
119889119905 and
variance 12059021198891205833119889119905 Consequently the changes of119873(119905)within the
interval [119905 119905+119896] then119873(119905+119896)minus119873(119905) should be approximatelynormally distributed with the mean as is shown in thefollowing expression
120573 = (120583119886minus 120583119889) 119905 (6)
And the variance is given by the following expression
120572 = (1205902
1198861205833
119886+ 1205902
1198891205833
119889) 119905 (7)
The diffusion approximation replaces119873(119905) by a continu-ous diffusion process (also known as Wiener-Levy process)119909(119905) normally distributed with the mean 120573 sdot 119889119905 and variance120572 sdot 119889119905 Given the initial value 119909
0= 0 the unrestricted process
119909(119905) would have the conditional probability density functionat time 119905 given by the following expression
119875 (119909 119905) =1
radic2120587120572119905119890minus((119909minus120573119905)
22120572119905)
(8)
which satisfies Kolmogorov diffusion equation (also knownas Fokker-Planck equation) given in the following expression
120597119891 (119909 119905)
120597119905= minus120573
120597119891 (119909 119905)
120597119909+120572
2
1205972119891 (119909 119905)
1205971199092 (9)
Deriving expression (8) in expression (9) and treating 119909 =
0 as a reflecting barrier for all 119905 gt 0 we obtain the followingexpression
lim119909rarrinfin
[minus120573119875 (119909 119905) +120572
2
120597119875 (119909 119905)
120597119909] = 0 (10)
Nowwe can estimate the solutionwhen 119905 rarr infin and120583119886lt
120583119889 Expression (11) shows the equilibrium distribution of the
conditional probability density function [26]
119875 (119909) =210038161003816100381610038161205731003816100381610038161003816
120572119890minus(2|120573|119909120572)
(11)
where 120572 and 120573 are defined in (6) and (7) which are relatedto the probability of nodesrsquo interarrival and interdeparturetimes
32 Cryptographic System The cryptographic algorithmelection has been taken bearing in mind their strong securityand simple key management features Symmetric algorithmsand summary functions have lower computational cost thanpublic key cryptography but public key cryptography hasstronger security and it could be feasible in devices with lowcomputation capacity
In our proposal we use a summary function withsymmetric and asymmetric algorithms with the purposeof taking their benefits The security management is based
6 The Scientific World Journal
Table 1 Trust and validity values
Parameter Level When does it happen
Trust 0 (i) There has been a greeting process between users but the one in the network does not trust him(ii) The user has reduced the level of confidence to the other one
1 (i) It has been a greeting process between user and the one in the network that trusts him(ii) The user has increased the level of confidence to the other one
Validity 0 (i) It is not obtained from the greeting process with that user(ii) The validity has not been obtained through a trusted node
1 (i) It has been obtained directly from the greeting process with that user(ii) It has been obtained through a trusted node
on the public key infrastructure and the symmetric keyencryption scheme Asymmetric key encryption scheme ismainly used in the distribution of session key and in the userauthentication process It lets us also generate a distributedcertification authorityThe symmetric key is used as a sessionkey to cipher the confidential messages between trust nodesbecause it has less energy requirements [27ndash29] Asymmetrickey encryption scheme is used to authenticate the usersThe hybrid symmetricasymmetric scheme is introduced toexchange the initial data and to exchange the secret keys thatwill be used to encrypt the data The hash function lets usimprove the data integrityNowwe are going to discusswhichalgorithms are the best for our purpose
We have used advanced encryption standard (AES) algo-rithm for the symmetric encryption scheme [30] It presentsa high security level because its design structure removessubkey symmetry It is also resistant to lineal and differentialcryptanalysis AES is actually considered as one of the mostsecured ones Moreover the execution times and the energyconsumption in the cryptography processes are adequate forlow power devices
The asymmetric encryption scheme should overload thedevices as less as possible On one hand elliptic curvecryptosystem (ECC) is presented as a high performancescheme that is recommended by many researchers [31] Onthe other hand Rivest Shamir and Adleman cryptographicalgorithm (RSA) is very secure and it has been checked andrecommended by many scientists [32] ECC needs fewer bitsthan RSA (163 bits in ECC versus 1024 bits in RSA) in orderto obtain the same security level so it is able to achievehigh security level with low size keys without consumingtoo much system resources thus needing less bandwidthECC is usually adequate for small devices with few memoryresources and low computing resources (such as cellularphones and smart cards) In order to have flexibility in ourprotocol and because both cryptographic algorithms havegood performance we have included both (RSA and ECC)in our protocol The election of one of them will be taken inthe network formation Both algorithms will be shown laterin our performance study
We have selected secure hash algorithm (SHA-1) for thesummary function [33] SHA-1 is commonly used becauseof its equilibrium between its speed and its security Thisperformance is also maintained in low computing devicesThis feature does not happen in other functions because theymainly depend on the processor Its execution time and its
k1
K1
k21K21
k3K3
k2K2
k41K41
k4K4
k42K42
NotationA rarr B A trusts BB rarr A B trusts AB harr A reciprocal trust
Figure 1 Example of trust nodes
energy consumption are not so high when they are comparedwith other functions
33 Trusted Network The proposed model is based on thecreation and management of a trusted network A node willtrust other nodes through personal view and criteria That isthe trust is based on the relationship of the users rather thanon a central certification authorityThe user of the device willidentify the other users and will be in charge of establishinga trust value (0 or 1) associated with each one of them Theparameters used for configuring this trust network are trustand validity
Trust refers to the person who owns the key and its valuewill be established by the relationship between the user thatgrants it and the user that is granted It should be granted toreliable persons when their IDCs are exchanged The trustcan always be changed manually by the user later Validityindicates that a certificate belongs to that persondeviceTable 1 shows the trust and validity values
34 Certification Authority The certification authority of anode could be any node in the group of nodes that this nodetrusts This system lets us build a distributed certificationauthority between trust nodes When a node wants tocommunicate with other nodes and see if it is a valid nodeit can request the certificate of that node to its trust nodesAfter obtaining this certificate it will be able to sign this node
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
6 The Scientific World Journal
Table 1 Trust and validity values
Parameter Level When does it happen
Trust 0 (i) There has been a greeting process between users but the one in the network does not trust him(ii) The user has reduced the level of confidence to the other one
1 (i) It has been a greeting process between user and the one in the network that trusts him(ii) The user has increased the level of confidence to the other one
Validity 0 (i) It is not obtained from the greeting process with that user(ii) The validity has not been obtained through a trusted node
1 (i) It has been obtained directly from the greeting process with that user(ii) It has been obtained through a trusted node
on the public key infrastructure and the symmetric keyencryption scheme Asymmetric key encryption scheme ismainly used in the distribution of session key and in the userauthentication process It lets us also generate a distributedcertification authorityThe symmetric key is used as a sessionkey to cipher the confidential messages between trust nodesbecause it has less energy requirements [27ndash29] Asymmetrickey encryption scheme is used to authenticate the usersThe hybrid symmetricasymmetric scheme is introduced toexchange the initial data and to exchange the secret keys thatwill be used to encrypt the data The hash function lets usimprove the data integrityNowwe are going to discusswhichalgorithms are the best for our purpose
We have used advanced encryption standard (AES) algo-rithm for the symmetric encryption scheme [30] It presentsa high security level because its design structure removessubkey symmetry It is also resistant to lineal and differentialcryptanalysis AES is actually considered as one of the mostsecured ones Moreover the execution times and the energyconsumption in the cryptography processes are adequate forlow power devices
The asymmetric encryption scheme should overload thedevices as less as possible On one hand elliptic curvecryptosystem (ECC) is presented as a high performancescheme that is recommended by many researchers [31] Onthe other hand Rivest Shamir and Adleman cryptographicalgorithm (RSA) is very secure and it has been checked andrecommended by many scientists [32] ECC needs fewer bitsthan RSA (163 bits in ECC versus 1024 bits in RSA) in orderto obtain the same security level so it is able to achievehigh security level with low size keys without consumingtoo much system resources thus needing less bandwidthECC is usually adequate for small devices with few memoryresources and low computing resources (such as cellularphones and smart cards) In order to have flexibility in ourprotocol and because both cryptographic algorithms havegood performance we have included both (RSA and ECC)in our protocol The election of one of them will be taken inthe network formation Both algorithms will be shown laterin our performance study
We have selected secure hash algorithm (SHA-1) for thesummary function [33] SHA-1 is commonly used becauseof its equilibrium between its speed and its security Thisperformance is also maintained in low computing devicesThis feature does not happen in other functions because theymainly depend on the processor Its execution time and its
k1
K1
k21K21
k3K3
k2K2
k41K41
k4K4
k42K42
NotationA rarr B A trusts BB rarr A B trusts AB harr A reciprocal trust
Figure 1 Example of trust nodes
energy consumption are not so high when they are comparedwith other functions
33 Trusted Network The proposed model is based on thecreation and management of a trusted network A node willtrust other nodes through personal view and criteria That isthe trust is based on the relationship of the users rather thanon a central certification authorityThe user of the device willidentify the other users and will be in charge of establishinga trust value (0 or 1) associated with each one of them Theparameters used for configuring this trust network are trustand validity
Trust refers to the person who owns the key and its valuewill be established by the relationship between the user thatgrants it and the user that is granted It should be granted toreliable persons when their IDCs are exchanged The trustcan always be changed manually by the user later Validityindicates that a certificate belongs to that persondeviceTable 1 shows the trust and validity values
34 Certification Authority The certification authority of anode could be any node in the group of nodes that this nodetrusts This system lets us build a distributed certificationauthority between trust nodes When a node wants tocommunicate with other nodes and see if it is a valid nodeit can request the certificate of that node to its trust nodesAfter obtaining this certificate it will be able to sign this node
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 7
AplicacionMid Services OwnBDPacketsNodesAskNodes Client
PaqReqBroadCast
DataRequest info
Network updateSelect nodeGetInfo ()
GetNodes ()
Nodes
CreatePaq ()
GetData ()ObtainReg ()
Data ()Data
FinishPaq ()
Network update
Start ()
Packet
Figure 2 Procedure to request an update from all network nodes
as a valid node All nodes can be both client requestinginformation or authentication to other nodes and serverserving requests for information or authentication fromothernodes Figure 1 shows an example Each 119899 node has its publickey (119870
119899) and it private key (119896
119899) Nodes 2 and 4 are trust nodes
of node 1 but not of node 3 Thus nodes 2 and 4 could act asa certification authority of node 1
4 System Design
In this section we explain the designed algorithms for thenodes the network procedures and the classes designed forCastalia in order to simulate it
41 Network Procedures After defining the network modeland the security features that our proposed spontaneous adhoc network should present it is important to specify howa node should work and the set of actions it should performto ensure the correct operation of the whole network Thissubsection explains the operation of the network and themain processes included
In order to design the flow chart diagrams we have usedthe Unified Modeling Language (UML) [34] UML is anindustry standard modeling language with a rich graphicalnotation and comprehensive set of diagrams and elementsthat can be used to model object oriented systems
411 Procedure to Request the Update to all Network NodesA user requests a data updating from all nodes Firstly theinformation about network nodes is obtained Secondly data
updating packet is prepared and the request is sent Figure 2shows the procedure and the primitives and services offeredand served by the nodes
412 Procedure to Process a Request When a request isreceived the information requested is checked and a reply issent to the source node that sent the requestThen the requestis forwarded to the rest of network nodes After receiving thedata request form a new client can be attended The processto attend each request is shown in Figure 3 As the diagramshows each task is validated by the replying of packets withdata information node information or control packets Afterthe confirmation a newpacket is sent in order to complete thecommunication between nodes
42 Node Algorithms
421 Packet Control When a packet is received by a node itapplies a packet control process to the received data Figure 4shows it Data are checked to know whether it is correct andit has not been modified during the transmission or not Thesource IP packet number and retry number are some of thechecked parametersThis check is performed just for securityreasons despite of its analysis at lower levels such as theunderlying wireless communication technology (BluetoothWi-Fi etc)
When Bluetooth is used the Bluetooth frames are usedin the authentication process In this case the packet digest(hash) is not ciphered with the session key because thereceiver node does not have this key yet The packet includes
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
8 The Scientific World Journal
Server ServPaq OwnBDPacketsNodesReceived Client
dividePack()
PaqReqBroadCast
FinishPaq ()
Data
treatPac()
ControlPac()SeePac()
PaqReqBroadCast
finishPaq ()
Start()
Received()
ProcCurrent()
NewInf
Resp update
GetData ()getReg()
getReg()
Data
DataData
Packet
Packet
New clientStart
New clientStart
GetNodes ()
Nodes
Resend request
getData ()
Data ()
Figure 3 Procedure to process a request
the senderrsquos node certificate cipheredwith the senderrsquos privatekey Senderrsquos public key is also included in the packet Senderrsquosnode certificate is deciphered with its public key
When Wi-Fi is used the packet digest is ciphered withthe session key When the frame is received data are firstlydeciphered and then the frame is checked
In both cases if the hash comparison is wrong the systemshows a message informing that the frame is wrong If theresults of the comparisons are valid packets are processedand this process ends
422 Modification of Keys When a user decided to modifyits asymmetric keys he is notified of the risks This notifi-cation is shown as a text message in an emergent windowIf the user decides to modify it userrsquos keys are regenerated
and the certificate is modified As Figure 5 shows after thesechanges new data is stored Finally the system allows userto stop the process of modification keys before they arechanged423 Main Menu For the development of the softwareapplication we have designed a main menu that includes asubmenu the services offered in the mobile cloud computingnetwork a submenu that allows the user to exchange dataand a submenu to see its own data Figure 6 shows all thepossibilities that the main menu offers424 Request of Information In our system there are twotypes of information request
(i) request for one node there is a request for one nodeabout specific information
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 9
Receivedpacket
Checksender IP
WrongIP
Packet numbercontrol
Wrong packetnumber
Control of attemptnumber
Wrongnumber
Packet division
Show messageldquowrong packetrdquo
Yes
No
Yes
No
Yes
No
Packet receivedusing Wi-Fi
Packetreceived using
Wi-Fi
Hash decryption usingsession key
Yes Packet receivedusing Bluetooth
Create new hash withthe received data
Create new hash withthe received data
Compare received and generated hash
Compare received and generated hash Different
hash
Differenthash Decrypt certificate with
the received public key
Compare received and generated certificates
Differenthash
Storecertificates
Processpackets
No
No
No
Finish packetcontrol
No
Yes
Yes
Yes
Figure 4 Packet control
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
10 The Scientific World Journal
Start
Select modification of asymmetric keys
Modifyit
it
No
Keysmodification
Certificate modification
Store modified data
Back
End
Report of modificationas rissky
Report of certificate modificationbecause of keys modification
ModifyNo
Yes
Yes
Back
Figure 5 Modification of keys
Choosenetwork
Show main menu Finish mainmenu
Show data changemenu Show own dataShow services menu
Senddata
Ask information
Show node list
Ask all networkinformation
Ask a certificate
Ask a nodeinformation
Changepassword
Change asymmetrickeys and certificate
Change owndata
Figure 6 Main menu
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 11
Start
Request of information
End
To one nodeTo all nodes
Choose a node
Receive answer fromthe node
Send request to all nodes
Send request toa node
Receive answerfrom all nodes
Store data
Figure 7 Request of information
Start
Reception of requested information
End
To one nodeTo all nodes
Compare received nodeswith known nodes
Compare received nodeswith known nodes
Send updated nodeslist to requested node
Update nodes list Update nodes list
Resend data request tothe rest of the nodes
Data reception
Packet control
Send updated nodeslist to requested node
Figure 8 Procedure when information is requested
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
12 The Scientific World Journal
class trustednet Ident
privareint idstdstring computeHash() const
publicin tiptrustednet Key pairtime 119905 timestampCSHA1 sha1trustednet Ident(void)trustednet Ident(int id)int getID() constwriteIdent(stdostream amp os) constbool test() const
Algorithm 1 Program code of the class trustednet ident
class trustednet Node
privatedoublelowast coordinatestrustednet Neighborlowastlowast neighbors
publicint nNeighborstrustednet Ident identitytrustednet Node()
trustednet Neighborlowast getNeighborById(int id)trustednet Neighborlowast getNeighbor(int id)void addNeighbor(trustesnet Nodelowast node)void setProperty(Trustednet Nodelowast node)void writeNode(stdostream amp os) constdouble getXCor()double getYCor()
Algorithm 2 Program code of the class trustednet node
(ii) request for all nodes there is a request for all networknodes requesting for the available information in thenetwork (such as shared resources)
As Figure 7 shows the information can be requested toone node or to all nodes After receiving the informationrequested these data are stored
425 Reply to a Request of Information Figure 8 shows theprocess of how to reply to a request of information Whenthe node receives a request the reply depends on the type ofthe received request If the request is about all network datathe node will reply with the updated data and will forwardthe request to the rest of the nodes If the request is just toone node the receiver node replies with the data request bythe source node
43 Classes Design In this subsection we describe the maindesigned classes for the proper operation of the spontaneousad hoc mobile computing network
431 Trustednet Ident Class The trustednet ident class (seeAlgorithm 1) creates an identity card for the node It containsmost of the information about a node and the encryptionalgorithms that are going to be used by the node The defaultconstructor generates a timestamp public key and a privatekey
After the neighbor discovery the different nodes haveto send messages towards their neighbors These messagescontain the identity card of the node When the neighborreceives this card it checks if there is nothing changed in thecard This can be checked by calculating the hash of the cardIf this new calculated hash is the same as the hash which isincluded in the message then nothing is changed
432 Trustednet Node Class It is shown in Algorithm 2Objects of this class type are nodesThe programclass whichuses this class can declare and initialize the node objectsThese objects contain a group of neighbors and an identityand the location coordinates
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 13
class trustednet Key
privateint privateKey
publicint publicKeytrustednet Key(void)privateKey(rand()1000) publicKey(rand()1000)void writeKey(stdostream os) const
Algorithm 3 Program code of the class trustednet key
Typedef mapltinttrustednet Node lowast gtHashClass trustednet Graph
privateHash hashDouble getDistance(trustednet Nodelowast source
trustednet Nodelowast destination) constpublic
trustednet Graph()trustedned Nodelowast getNode(int id)vectorltintgt dijkstra(trustednet Node lowastsource) constvoid writeGraph(stdostream amp os) constvoid addNode(trustednet Node lowastnode)
Algorithm 4 Program code of the class trustednet graph
The doublelowast coordinates variable stands for the locationcoordinates of the nodeTheNeighborlowastlowast neighbors variable isan array of pointers that contains the neighbors of the nodenNeighbors contains the number of neighbors and identitycontains the ID card The method test() generates a newhash out of the data fields and compares it to the SHA-1hash
433 Trustednet Key Class Trustednet key class has two keysthe private and the public one They are generated when thedefault constructor is called The generated keys can have avalue up to 999 This is a very basic class But it is speciallydesigned for integrating different key generation algorithmsAlgorithm 3 shows the code of this class
434 Trustednet Graph Class Objects of this class type aregraphs It is shown in Algorithm 4 The class which usesthis class can declare and initialize graph objects The graphcontains nodes These nodes are connected by neighborsThe main purpose of this class is to estimate which neighborit has to send the message to (till the destination receivesthe message) It performs the routing protocol tasks Thehash variable contains a pointer to the network nodesThere is no need to delete a node that does not haveneighbors or trusted neighbors because it is a pointer Thedijkstra method calculates the path to the nodes it canreach
Some designed helper methods that are not includedbefore are the following onesThemethod onReceiveMessagetakes a look at the type of the received message If this is apublic key sending or returning a message then we checkif there was no data loss or change in the identity card If itis a public key message then the node sends back a publickey return message When the first node receives a publickey return message and there is no data loss or changes itsets the neighbor as trusted When there is a broadcastingmessage the node calls to the updateNeighborTable methodThe method send2NetworkDataPacket is two times declaredin the sourcewith different parametersThat happens becausethe messages for broadcasting are different from thosefor sending public keys Mainly they are doing the sameThey are settinggetting the data of a trustednet DataPacketmessage Afterwards the node sends the message to thedestination node updates neighborTable by using themethodupdateNeighborTable These messages are used to discoverthe neighbor nodes The table holds an entry for everynode in the network if it receives a message from thatnode When all the messages are broadcasted it checks theneighborTable It will only accept a node as a neighbor if theamount of received messages is above a certain thresholdFor instance we can declare the threshold for every node on95 or in case of 3 nodes in the network we can declare anindependent threshold for each node So in this case node0 will accept a neighbor if it receives 25 of the broadcastmessages
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
14 The Scientific World Journal
5 Performance Simulation
Castalia 2 is a wireless sensor network simulator based on theOMNeT++ 3 platform [35] It can be used by developers andresearchers who want to test their algorithms and protocolswith a realistic node behavior and wireless channel radiomodel It is very important to perform the most accuratechannel characterization in order to reproduce the systemoperation in real environments [36] It can also be usedto evaluate different platform characteristics for specificapplications Because it is highly tunable and it can simulatea wide range of platforms The main features of Castaliaare advanced channelradio model based on empiricallymeasured data detailed state transition for the radio highlyflexible physical process model sensing device noise biasand power consumption node clock drift and CPU powerconsumption and resource monitoring allowing the designof medium access control protocols with a large number ofparameters to tune Castalia lets us easily implement andimport our designed algorithms and protocols while makinguse of the features provided by the simulator The modular-ity reliability and speed of Castalia are partly enabled byOMNeT++ which is an excellent framework for buildingevent-driven simulators
51 Simulation Parameters Castalia simulator uses objectsfrom OMNeT++ In Castalia each model has 3 differentmethods initialize() handlemessage() andfinish()methodsThey are called in this sequence for every single node Inthe next subparagraphs we will talk about different Castaliamodules and how to configure them Each parameter of thesemodules has a different meaning All these parameters areinitialized in different filesThe channel model used is the logshadowingwireless channelmodel which gives the power lossin dB given the distance of two nodes119889 and a few parametersBased on the power loss and the transmission power ofa transmitter we can calculate the power of the signalreceived at a receiver By knowing the noise or interferenceat this receiver we can calculate the signal to noise ratioor signal to interference ratio SNR or SIR Castalia allowsus to dynamically calculate the interference from differenttransmitting nodes and thus dynamically calculate the SNRrsquosor SIRrsquos and the resulting packet reception probabilities
The radio module tries to capture many features of areal generic low power radio which is used in wirelesssensor network platforms The following parameters likenoise Bandwidth modulationType and encodingType affectthe probability of reception Another parameter is noisefloor which depends on temperature and bandwidth ThereceiverSensitivity gives the sensitivity of the receiver Otherparameters are rxPower listenPower and sleepPower ortransmission parameters like txPowerLevels and txPower-ConsumptionPerLevel
There is a separatemodule for themedium access controlThere are different interesting parameters The dutyCycleparameter is the fraction of the time that a node listens tothe channel The listenInterval is the time the node stayson listening Knowing the duty cycle we can then definethe amount of time the node sleeps If a node is sleeping
Path loss exponent 25Path loss exponent 30Path loss exponent 35
Path loss exponent 40Path loss exponent 45Path loss exponent 50
Number of accessible nodes
6050403020100
60
50
40
30
20
10
0
Aver
age a
cces
sible
nod
es
Number of nodes
Figure 9 Path loss exponent
then the BeaconIntervalFraction lets us wake up this nodeBackOffType let us put the transmission back-off for sometime if the channel is not clear and puts the radio to sleepmode
Castalia lets us work in two models linear model andnonlinear model In a linear model there are 3 differentstates (1) a node can be impossible to reach because of anot trusted state (2) a node can be directly reached if thedestination is the node itself or a direct neighbor of the node(3) and a node has to bypass a message towards another nodeif the destination can be reached through a neighbor Thenonlinear model uses the Castalia built-in generator Thereare three deployments uniform random deployment griddeployment and randomized grid deployment (grid + noise)
52 Performance Results Because we want the most accurateresults with large number of nodes we ran the model severaltimes and we provide the most important results in thewireless channel and the MAC layer parameters
521 Wireless Channel This section discusses what happenswith our result of our model when we adjust the mostimportant parameters of the wireless channel
We use path loss exponent of a transmitter to calculatethe power of the received signal Figure 9 shows the numberof the average accessible nodes as a function of number ofnodes using different path loss exponent This simulation istested in a 100m by 100m area As we know if the pathloss exponent decreases the power of the signal received atthe receiver increases Taking into account this fact we cansee that the lowest path loss exponent presents the highestaverage number of accessible nodes However the highestpath loss exponent shows very small average number ofaccessible nodes
The PL 1198890is the known path loss at a reference distance
1198890 It let us know the initial signal power for each node
also called equivalent isotropically radiated power (EIRP)or alternatively effective isotropically radiated power For
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 15
55
50
45
40
35
30
25
200 1 2 3 4 5
Aver
age a
cces
sible
nod
es
Value of SNwireless channel d0
Accessible nodes versus d0
PL (d0) = 75
PL (d0) = 55
Figure 10 Reference distance
the following test we used PL 1198890= 55 dBm and 75 dBm
(which simulates nodes with different transmission poweror different antenna gains) The test increases the referencedistance with the same known path loss We used 50 nodes inan area of 100m by 100m Our results are shown in Figure 10
522 Medium Access Control The parameter BackOffTypehas a close connection with carrier sensing It means thatbefore a node starts to transmit a message and before it startsto transmit potential beacons it checks with the radio to seeif the channel is clear If the channel is not clear the node hasto back off for some time We have different backOffTypes(Figure 11) Using value 1 the back-off time is constant and itis defined by the BackoffBaseValue parameter Using value 2the back-off time has a multiplying value for example 1 lowast 1198862 lowast 119886 3 lowast 119886 4 lowast 119886 We back off for (BackoffBaseValue)lowast (times) Using a value that is equal to 3 the back-off timeis an exponential value (eg 2 4 8 16 32 ) As we cansee in Figure 11 the exponential value is the better thanthe multiplying value and the constant value We used theadditive interference model to simulate this behavior
In the following test we increase the BackOffBaseValueparameter and look at the difference between the backOfftypes For all these tests we used the additive interferencemodel to simulate this behavior Figure 12 shows differ-ent BackOffBaseValues (from 0 to 256) for BackOffType1 Meanwhile there are not too much difference betweenBackOffBaseValue 32 and BackOffBaseValue 64 and thereis a clear difference between BackOffBaseValue 128 andBackOffBaseValue 256 although we can find some peaksin BackOffBaseValue 128 which have higher values thanBackOffBaseValue 256
Figure 13 shows different BackOffBaseValues (from 0 to256) for BackOffType 2We can see that except BackOffBase-Value 0 the rest tend to have similar average accessible nodeswhen the number of nodes increases The values obtainedin this case for the average accessible nodes are higher thanthose for BackOffType 1
BackOffType 1BackOffType 2BackOffType 3
Max
imum
acce
ssib
le n
odes
Number of accessible nodes
50403020100
50
40
30
20
10
0
Number of nodes
Figure 11 Maximum accessible nodes as a function of the numberof nodes
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
30
25
20
15
10
5
00 5 10 15 20 25 30 35 40 45
Aver
age a
cces
sible
nod
esNumber of accessible nodes
Number of nodes
Figure 12 BackOffType = 1
Figure 14 shows the obtained graphs for different Back-OffBaseValues (from 0 to 256) for BackOffType 3 We obtainsimilar average accessible node values than for BackOffType2 but in this case the tend of the graphs of BackOffBaseValuesare parallel when the number of nodes increases (except forBackOffBaseValue 0)
We have observed that if the BackOffBaseValue gets veryhigh there is almost no difference between the numberof neighbors But when the BackOffBaseValue is low forinstance between 0 and 16 then there is a big differencebetween the amount of neighbors
Castalia uses a random time offset when a node decidesto transmit something instead of transmitting it immediately(because it helps to avoid collisions) Now we made a test ofthe randomTxOffset parameter We used again the additiveinterference model We observed that the randomTxOffset
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
16 The Scientific World Journal
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 13 BackOffType = 2
BackOffBaseValue 0BackOffBaseValue 16BackOffBaseValue 32
BackOffBaseValue 64BackOffBaseValue 128BackOffBaseValue 256
454035302520151050
45
40
35
30
25
20
15
10
5
0
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
Figure 14 BackOffType = 3
Aver
age a
cces
sible
nod
es
Number of accessible nodes
Number of nodes
RandomTxOffset 0RandomTxOffset 5RandomTxOffset 20
35
30
25
20
15
10
5
00 10 20 30 40 50
Figure 15 RandomTxOffset
Figure 16 Request menu
Figure 17 Image in the mobile when there is a request to one node
parameter scores better with a value of 0 than in higherrandomTxOffset Figure 15 shows the results of our test
6 Deployment
A prototype to simulate the creation of a virtual cloudcomputing platform using a spontaneous network has beendeveloped When the network is created users can updatethe network information sharing resources and services byasking other nodes They can ask all network nodes or justone specific nodeThe receiver node reply to the request withthe information requested or it can decide not to share anddeny the request
Figures 16 and 17 show the designed windows to requestsome network information A user can decide to requestthe data only for a specific network node or for all network
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 17
Services-Application AplicationMid-Help HelpS-Show ShowS-SendS SendS-f FormcommandAction (in c Command in d Displayable) void
-show() void+uploadIcons() void
SuccessS-dady Services-grandpa ApplicationMid-commandAction (in c Command in d Displayable) void+showSuccess() void
HelpS-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+showHelpS() void
SendS
-services Services-application ApplicationMid-commandAction (in c Command in d Displayable) void+theChat() void+theChat2() void
Chat-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
Chat2-xxxNodes Nodes-services Services-application ApplicationMid-f FOrm-commandAction (in c Command in d Displayable) void
InfoS-services Services-application ApplicationMid-f Form-success SuccessS-pa PetAct-pn PetNodes-commandAction (in c Command in d Displayable) void+dataNodes() void+dataAct() void
ShowS2-services Services-application ApplicationMid-a Form-commandAction (in c Command in d Displayable) void+image() void
PetNodes-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+RequestInfo() void+update() void
PetAct-services Services-application ApplicationMid-f Form-success SuccessS-xxxNodes Nodes-commandAction (in c Command in d Displayable) void+image() void+update() void+refresh() void
ShowS-services Services-application ApplicationMid-nodes Nodes-m ShowS2-a Form-commandAction (in c Command in d Displayable) void+showNodes() void
Figure 18 Request diagram class
nodes If the user selects to request the data for one nodethe user must choose the node to request the data When anode receives the request it can decide to reply or not to therequest
Figure 18 shows the diagram class of the request processHelpS class helps the user with the use of the servicesmenu SuccessS class informs the user if the process hasbeen processed successfully or if there has been a failureSendS class offers the user the option to choose between
sending the request to one node or to all network nodesChat Class lets the user send messages to a node Chat2 Classlets the user send messages to all network nodes ShowSClass shows the user the list of the trusted network nodesShowS2 class shows the detailed data of one node InfoS classoffers the user a menu to choose a request PetNodes Classmanages the information request about all network nodesPetAct class manages the information request of one networknode
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
18 The Scientific World Journal
7 Conclusion
Mobile cloud computing networks allow mobile users toshare computing resources and applications In this paperwe proposed a trusted algorithm for creating spontaneous adhoc mobile cloud computing network We have developedand tested some algorithms that allow managing the nodesthat join and leave the spontaneous ad hoc network Inorder to guarantee the network security and the reliabilityof the communications and transmitted data we have alsodeveloped a trusted algorithm This algorithm is based onthe advanced encryption standard (AES) algorithm andit has implemented a symmetric encryption scheme withsimple key management features We have also deployedthe communication protocol procedures and the designedclasses Finally using Castalia simulator in the OMNeT++3 platform we have implemented a prototype to simulatethe creation of a mobile cloud computing system using aspontaneous ad hoc network
From our results we can see that in some cases as thenumber of nodes in network increases the network perfor-mance is slightly reduced However there are combinationsof parameters that maintain the performance level in verypromising values
As future work we would like to include secure processesbased on trust mechanisms and analyze the delay of thesecure procedures (proposed in our system) versus the pro-cedures without security systems Moreover we will comparethe simulation results with real values In future works wewill test our system in unsecure public cloud environments[37]
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
References
[1] S Preu and C H Cap ldquoOverview of spontaneous networkingmdashevolving concepts and technologiesrdquo in Proceeding of the Work-shop on Future Services for Networked Devices (FuSeNetD rsquo99)Heidelberg Germany 1999
[2] O Bello A Bagula andHAChan ldquoAutomatic network servicediscovery and selection in virtualization-based future internetrdquoNetwork Protocols and Algorithms vol 4 no 2 pp 5ndash29 2012
[3] S Gallo L Galluccio G Morabito and S Palazzo ldquoRapid andenergy efficient neighbor discovery for spontaneous networksrdquoin Proceedings of the 7th ACM Symposium onModeling Analysisand Simulation of Wireless and Mobile Systems (MSWiM rsquo04)pp 8ndash11 Venice Italy October 2004
[4] J J P C Rodrigues L Zhou L D P Mendes K Lin andJ Lloret ldquoDistributed media-aware flow scheduling in cloudcomputing environmentrdquo Computer Communications vol 35no 15 pp 1819ndash1827 2012
[5] A H Mohsin K A Bakar A Adekiigbe and K Z GhafoorldquoA survey of energy-aware routing protocols in mobile Ad-hoc networks trends and challengesrdquo Network Protocols andAlgorithms vol 4 no 2 pp 82ndash107 2012
[6] L M Feeney B Ahlgren and A Westerlund ldquoSpontaneousnetworking an application-oriented approach to ad hoc net-workingrdquo IEEE Communications Magazine vol 39 no 6 pp176ndash181 2001
[7] K Z Ghafoor K A Bakar M A Mohammed and J LloretldquoVehicular cloud computing trends and challengesrdquo in MobileNetworks and Cloud Computing Convergence for ProgressiveServices and Applications pp 262ndash274 IGI Global 2013
[8] H Modares J Lloret A Moravejosharieh and R SallehldquoSecurity in mobile cloud computingrdquo in Mobile Networksand Cloud Computing Convergence for Progressive Services andApplications pp 79ndash91 IGI Global 2013
[9] N Fernando S W Loke and W Rahayu ldquoMobile cloudcomputing a surveyrdquo Future Generation Computer Systems vol29 no 1 pp 84ndash106 2013
[10] J Lloret L Shu R Lacuesta and M Chen ldquoUser-orientedand service-oriented spontaneous ad hoc and sensor wirelessnetworksrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2 pp 1ndash8 2012
[11] A K Gupta H Sadawarti and A K Verma ldquoPerformanceanalysis of AODV DSR amp TORA routing protocolsrdquo IACSITInternational Journal of Engineering and Technology vol 2 no2 pp 226ndash231 2010
[12] P Bellavista A Corradi and C Giannelli ldquoThe real ad-hocmulti-hop peer-to-peer (RAMP) middleware an easy-to-usesupport for spontaneous networkingrdquo in Proceedings of the 15thIEEE Symposium on Computers and Communications (ISCCrsquo10) pp 463ndash470 Riccione Italy June 2010
[13] J H Christensen ldquoUsing RESTful web-services and cloudcomputing to create next generation mobile applicationsrdquo inProceedings of the 24th ACM SIGPLAN conference companionon Object oriented programming systems languages and applica-tions pp 627ndash633 ACM October 2009
[14] M Mani A Nguyen and N Crespi ldquoSCOPE a prototypefor spontaneous P2P social networkingrdquo in Proceedings of the8th IEEE International Conference on Pervasive Computingand Communications Workshops (PERCOMWorkshops rsquo10) pp220ndash225 Mannheim Germany March-April 2010
[15] L Liu J Xu N Antonopoulos J Li and K Wu ldquoAdaptiveservice discovery on service-oriented and spontaneous sensorsystemsrdquo Ad-Hoc and Sensor Wireless Networks vol 14 no 1-2pp 107ndash132 2012
[16] G Kirby A Dearle A Macdonald and A FernandesldquoAn approach to ad hoc cloud computingrdquo httparxivorgabs10024738
[17] G Huerta-Canepa and D Lee ldquoA virtual cloud computingprovider for mobile devicesrdquo in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing and Services SocialNetworks and Beyond (MCS rsquo10) June 2010
[18] V L Divya ldquoMobile application with cloud computingrdquo Inter-national Journal of Scientific and Research Publications vol 2no 4 2012
[19] R Lacuesta J Lloret M Garcia and L Penalver ldquoA secureprotocol for spontaneous wireless Ad Hoc networks creationrdquoIEEE Transactions on Parallel and Distributed Systems vol 24no 4 pp 629ndash641 2013
[20] R Lacuesta J Lloret M Garcia and L Penalver ldquoTwo secureand energy-saving spontaneous ad-hoc protocol for wirelessmesh client networksrdquo Journal of Network and Computer Appli-cations vol 34 no 2 pp 492ndash505 2011
[21] J Lloret R Lacuesta M Garcia and L Pealver ldquoA spontaneousad hoc network to share www accessrdquo Eurasip Journal on
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
The Scientific World Journal 19
Wireless Communications and Networking vol 2010 Article ID232083 2010
[22] R Lacuesta G Palacios-Navarro C Cetina L Penalver andJ Lloret ldquoInternet of things where to be is to trustrdquo EurasipJournal on Wireless Communications and Networking vol 2012article 203 2012
[23] R Lacuesta and L Penalver ldquoAutomatic configuration of ad-hoc networks establishing unique IP link-local addressesrdquoin Proceedings of the International Conference on EmergingSecurity Information Systems and Technologies (SECURWARErsquo07) Valencia Spain October 2007
[24] F Schatz S Koschnicke N Paulsen and M SchimmlerldquoMasterSlave assignment optimization for high performancecomputing in an EC2 cloud using MPIrdquo Network Protocols andAlgorithms vol 4 no 1 pp 22ndash33 2012
[25] S Capkun L Buttyan and J-PHubaux ldquoSelf-organized public-key management for mobile ad hoc networksrdquo IEEE Transac-tions on Mobile Computing vol 2 no 1 pp 52ndash64 2003
[26] T Czachorski and F Pekergin ldquoDiffusion approximation as amodeling tool in congestion control and performance evalua-tionrdquo in Proceedings of the 2nd International Working Confer-ence Performance Modelling and Evaluation of HeterogeneousNetworks (HET-NETs rsquo04) West Yorkshire UK July 2004
[27] A S Wandert N Gura H Eberle V Gupta and S C ShantzldquoEnergy analysis of public-key cryptography for wireless sensornetworksrdquo in Proceedings of the 3rd IEEE International Con-ference on Pervasive Computing and Communications (PerComrsquo05) pp 324ndash328 Kauai Island Hawaii USA March 2005
[28] N R Potlapally S Ravi A Raghunathan and N K JhaldquoAnalyzing the energy consumption of security protocolsrdquo inProceedings of the International Symposium on Low PowerElectronics and Design (ISLPED rsquo03) Seoul Republic of KoreaAugust 2003
[29] J Goodman and A Chandrakasan ldquoAn energy efficient recon-figurable public-key cryptography processor architecturerdquo inCryptographic Hardware and Embedded SystemsmdashCHES 2000vol 1965 of Lecture Notes in Computer Science pp 175ndash190Springer 2000
[30] S Landau ldquoCommunications security for the twenty-firstcentury the advanced encryption standardrdquo Notices of theAmerican Mathematical Society vol 47 no 4 pp 450ndash4592000
[31] A Kumar A Aggarwal and C Charu ldquoPerformance analysisof MANET using elliptic curve cryptosystemrdquo in Proceedings ofthe 14th International Conference on Advanced CommunicationTechnology (ICACT rsquo12) pp 201ndash206 February 2012
[32] R Mayrhofer F Ortner A Ferscha and M Hechinger ldquoSecur-ing passive objects in mobile ad-hoc peer-to-peer networksrdquoElectronic Notes in Theoretical Computer Science vol 85 no 3pp 105ndash121 2003
[33] FIPS 180-1-Secure Hash Standard ldquoSHA-1 National In-stitute of Standards and Technologyrdquo httpwwwitlnistgovfipspubsfip180-1htm
[34] J Rumbaugh I Jacobson and G BoochUnifiedModeling Lan-guage Reference Manual Addison-Wesley Professional BostonMass USA 2nd edition
[35] Castalia Website httpcastaliaresearchnictacomauindexphpen
[36] L D P Mendes J J P C Rodrigues J Lloret and S SendraldquoCross-layer dynamic admission control for cloud-based mul-timedia sensor networksrdquo IEEE Systems Journal vol 8 no 1 pp235ndash246 2013
[37] R Dutta and B Annappa ldquoProtection of data in unsecuredpublic cloud environment with open vulnerable networksusing threshold-based secret sharingrdquo Network Protocols andAlgorithms vol 6 no 1 pp 58ndash75 2014
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of
International Journal of
AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
RoboticsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Active and Passive Electronic Components
Control Scienceand Engineering
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
RotatingMachinery
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporation httpwwwhindawicom
Journal ofEngineeringVolume 2014
Submit your manuscripts athttpwwwhindawicom
VLSI Design
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Shock and Vibration
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Civil EngineeringAdvances in
Acoustics and VibrationAdvances in
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Electrical and Computer Engineering
Journal of
Advances inOptoElectronics
Hindawi Publishing Corporation httpwwwhindawicom
Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
SensorsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Chemical EngineeringInternational Journal of Antennas and
Propagation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Navigation and Observation
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
DistributedSensor Networks
International Journal of