t.c. marmara university faculty of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1...

22
1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497 - Project Specification Document Title of the Project INCENTIVE MECHANISMS FOR USER PROVIDED NETWORKS Group Members 150711047 Ahmet Özlü Supervised by Assist. Prof. Ömer Korçak 19.12.2016

Upload: others

Post on 31-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

1

T.C.

MARMARA UNIVERSITY

FACULTY of ENGINEERING

COMPUTER ENGINEERING DEPARTMENT

CSE497 - Project Specification Document

Title of the Project

INCENTIVE MECHANISMS FOR USER PROVIDED NETWORKS

Group Members

150711047 – Ahmet Özlü

Supervised by

Assist. Prof. Ömer Korçak

19.12.2016

Page 2: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

2

1. Problem Statement

In this project, we will study on developing a user provided network where users are

incentivized to share their communication capabilities with others. We will model cost

(energy, etc.) of providing connectivity to others through experiments. Then we will

develop a tethering protocol between users, utilizing appropriate cost and utility models.

We will develop an Android application for applying and testing the proposed system.

2. Problem Description and Motivation

Increase in the number of mobile users demanding Internet connectivity gave rise to a

cooperative solution called User Provided Network (UPN) which is a promising paradigm

to remedy Internet connectivity needs of mobile users. In this model participants

cooperate to enable a group of mobile users to access Internet while they have no or

limited connectivity. One of the key research problems in UPN is giving incentives to

mobile network subscribers to promote active participation [1]. In this work, I will

develop software and hardware solutions to have some tests which are necessary for

determining costs and benefits of using UPN. These costs and benefits will be used for

cost modelling. The benefits of UPNs are at client user side and the costs of UPNs are at

server user side. Accessing Internet while they have no or limited connectivity can be

given as a benefit of UPN for client users and battery (energy) consumption or mobile

data usage can be given as the costs for server users.

Actually, my project has four main subtitles, the first one is researching the theoretical

information about UPNs and the second subtitle is testing that theoretical information and

various cases of UPNs on the real life by using my software and hardware solutions. The

third subtitle is comparing, interpreting these test results, doing cost modelling and

determining the incentive mechanisms by using these comparisons (costs and benefits).

After all of these steps, an Android application will be developed for applying and testing

that architecture and the benefits of our UPN system on the current cellular network

technology will be measured.

Page 3: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

3

3. Aims of the Project

These are the aims of the project;

Project aim 1:Developing communication system between mobile devices by using

network protocols(WiFi-Direct and Bluetooth).

Project aim 2:Developing a bargaining protocol which will be built on the

communication system that is given at the first aim.

Project aim 3: Developing tethering application.

Project aim 4:Measuring the consumed energy and the other costs on the different

scenarios for determining the parameters which will be used forbargain and doing

cost modelling by using these measurements.

Project aim 5: Developing UPN system which includes incentive mechanism by

using cost modelling with strategic decisions of users and operators.

Project aim 6: Implementing that system on the Android platform.

Project aim 7: Measuring the benefits of our UPN system on the current cellular

network technology.

Page 4: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

4

4. Related work

UPNshave a great potential to reduce network congestion and network access costs, to

better utilize unused capabilities and improveuser-perceived network performance Both

the industry and academia have observed this potential, and several UPNapplications were

developed recently[2]. Two of the most important ones and their features are given at the

below.

4.1 Open Garden

Open Garden shares Internet connections between multiple phones and tablets. No root

access is required. It is similar to a Wi-Fi hotspot, but it uses Bluetooth and Wi-Fi Direct.

To use it, install it on both your phone and your tablet, so they can connect.[3]

Features:

Sharing your Mobile Internet (Wi-Fi or 3G/4G) for free with your Android phones

or tablets.

Accessing more Wi-Fi hotspots through other phones and tablets running Open

Garden.

Staying connected to the Internet automatically whenever your tablet doesn't have

access to Wi-Fi.

Extending the range of existing networks by linking multiple devices together.

Faster and more reliable Internet by crowdsourcing connectivity from nearby

devices running Open Garden.

4.2 M-87

M87's Proximity Services Software expands the reach and improves the performance of

the modern mobile network.[4]

Features:

Mobile Internet (Wi-Fi or 3G/4G) can be shared via device to device

communication.

It uses the connection of a nearby node with better strength when the signal of

a node is weak.

It is a special software which is deployed onto nodes.

Page 5: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

5

Client node's connection is tunnelled through a nearby node still charging to

client's quota.

-Our project A47,

It is a special software.

It has energy consumption, data usage costs and utility functions to determine

utilizes and costs.

Mobile Internet (Wi-Fi or 3G/4G) can be shared via Bluetooth or WiFi-Direct.

The bandwith of shared Internet can be limited.

It has incentive mechanism ( fornow, we are planning to use virtual currency

as an incentive mechanism).

The users can have 3 options which are being gateway, being client and begin

relay by our project.

As a result, our project has novelties which are listed below;

The server user has power consumption and data usage costs but the related

applications don’t care them! In our project, it has energy consumption, data usage

costs and utility functionscosts of server user and utilities of client user are

determined.

In the related applications, they don’t limit the bandwith of shared Internet but in

our applicationthe bandwith of shared Internet can be limited.

Our application has incentive mechanism.

Page 6: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

6

5. Scope of the Project

The measuring consumed energy of mobile phones is important task for our project

because the consumed energy will be an important variable for our utility funtion. We can

measure the consumed energy of mobile phones by hardware and software(consumed

energy is measured both hardware and software solutions so we can compare hardware

and software measurement results thus we can be sure that our measurements are true) and

we have some scopes of the measuring energy part. It is explained at the below.

We can measure the energy which is consumed by our Android application with

using Arduino microcontroller and some basic electronic components at hardware

solution for measuring energy. In that hardware measurements, we observed some

unexpected noises. These noises can be filtered by using some complex electrical

components or electrical circuits but we don’t have enough time and energy to

develop that filter so designing that kind of filter circuit is out of scope for our

project.

We can measure the energy which is consumed by our Android application with

software.The energy which consumed by background application of smart mobile

phones should not be added the energy which is consumed by our Android

application but we ignore that problem. That problem can be solved by rooting

smart phones so the background applications can be terminated but rooting mobile

phones is risky so elimination of the energy which is consumed by background

application is out of scope for our project.

Constraints of the project:

The consumed energy cannotbe measured 100%accurately by hardware because of

the electrical noise. So, we will assume the electrical noise as a part of consumed

energy in this study.

The consumed energy cannot be measured 100%accurately by software because

the background applications of mobile phones runperiodically and they consume

additional energy. In order to address this problem we will assume the consumed

energy of background applications are jointly included in the observed energy.

The UPN system which will be implemented on Android platform will be tested

with maximum 5 users because we foresee that our test environment (composed of

Android application software) has the risk to overcome multiuser application with

Page 7: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

7

more than 5 users. In further studies more advanced approaches like parallel

processing or effective load sharing algorithms can be addressed.

For the sake of simplicity and proof-of-concept, the virtual currency amounts of

users will be saved on a simple database rather than a professional server-based

system.

The UPN system which is implemented on an Android platform will be tested in

ideal conditions for indoor and outdoor experiments for the sake of stable

execution. Here, good weather conditions will be followed to prevent problems

affecting the communication and bargaining protocols.

The security level of the paired devices with UPNs will not be high, malicious

users can reach the device storages by leaking our UPN system so the user data

might be under the risk of a cyber attack. The security concerns can be considered

in further studies.

The assumptions for our project are listed below;

Consumed energy is measured both hardware and software solutions so we can

compare hardware and software measurement results thus we are sure that our

measurements are true but there are some differences between the hardware and

software results however these differences are under 5% so we assumed that there

are not any differences between measurement results.

We will create utility function by using cost modelling. First of all, we will prepare

the dataset and after that we will create our function by using IBM SPSS Statistics

tool. The function will not work 100% truely but our aim is that make that function

work under 10% errror rate. We will assume that it works perfectly if we can reach

under 10% error rate.

Page 8: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

8

6. Success Factors and Benefits

6.1 Measurability/Measuring Success

Developing an UPN system which includes realistic incentive mechanism, implementing

that system on Android platform and measuring the benefits of our UPN system on the

current cellular network technology is main aim of my project.The indicators which show

that we have satisfied the requirements of our project are listed below;

Developing communication system between mobile devices by using network

protocols (WiFi-Direct and Bluetooth).

Developing a bargaining protocol

Measuring the consumed energy

Measuring data consumption of client users

Limiting the bandwidth of shared Internet

Creating the utility function

Doing cost modelling

Developing UPN system which includes incentive mechanism

Measuring the benefits of our UPN system on the current cellular network

technology.

6.2Benefits/Implications

The potential benefits of my project are;

The mobile users can access Internet while they have no or limited connectivity.

The mobile data traffic will be decreased so the cost of Internet service will be

decreased and the quality of the Internet service will be increased by our project

The server users can convert their excess mobile data to virtual currency (our

planning is that users can get opportunities by using virtual currency) so they can

use their virtual currency for getting new opportunities which are provided the

mobile operators.

As a result, the users can have more stable, faster and cheaper Internet and getting

new opportunities via our project!

Page 9: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

9

7. Methodology and Technical Approach

In this project, we will study on developing a user provided network where users are

incentivized to share their communication capabilities with others. The main modules of

our project is in Figure 1.

Figure 1 - Main modules of our project – General Architecture

As illustrated in Figure 1, the main modules and their explanations are as follow;

Communication System Module: It consists of developing communication system

between mobile devices by using WiFi-Direct and Bluetooth protocols.

Bargaining Protocol Module: Developing bargaining protocol.

Tethering Application Module: Developing tethering application on Android platform

by using communication system and bargaining protocol modules.

Cost Modelling Module: In this module, cost modelling will be done and utility

function will be created by using consumed energy and mobile data. These are

subtasks for that module

Developing software to measure consumed power.

Developing hardware to measure consumed power.

Preparing dataset for cost modelling and utility function.

Page 10: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

10

Cost modelling.

Creating utility function.

UPN System Module: UPN system will be created by using Communication System

Module,Bargaining System Module and Cost Modelling Module.

Android Implementation Module: The created UPN system will be implemented on

Android platform.

Test Module:In this module, the benefits of our UPN system will be measured on the

current cellular network technology.

Among presented modules in Figure 1, the foremost ones are:

The Communication System Modulewhich is expected to utilize effective

communication among mobile devices (See Section 7.1).

The Cost Modelling Module which is supposed to measure three main factors:

First the consumed energy of smart mobile phone by both hardware and software

(See Section 7.2); Second the consumed mobile data amount by clients (See

Section 7.3); and third cost and utility (See Section 7.4)

In addition to the tasks related to the foremost modules presented above, the following

tasks will also be covered throughout the project. :

Developing UPN system.

Implementing UPN system on Android platform.

Measuring the benefits of our UPN system on the current cellular network

technology.

A summary of the implementation strategy regarding the specified tasks above can be

seen in Figure 2.

Page 11: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

11

Figure 2 - General solution approach

7.1Developing communication system between mobile devices by using network

protocols (WiFi-Direct and Bluetooth)

As presented in Figure 2, developing communication system between mobile devices is

another important task for our project because server and client users will bargain and deal

on the virtual currency amount by using that communication protocol. That

communication protocol will work autonomously(without user interaction) in the future

part of our project. Android libraries which were used for doing that task are listed below;

java.net.ServerSocket

java.net.Socket

java.net.InetSocketAddress

java.net.InetAddress

java.io

Page 12: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

12

android.net.wifi

android.net.ConnectivityManager;

android.net.NetworkInfo;

android.net.wifi.ScanResult;

android.os.Message

android.bluetooth

content.BroadcastReceiver

Communication system between devices has already been developed by socket

programming in the first phases of the project.

-Socket Programming:Sockets provide the communication mechanism between two

computers using TCP. A client program creates a socket on its end of the communication

and attempts to connect that socket to a server.

When the connection is made, the server creates a socket object on its end of the

communication. The client and the server can now communicate by writing to and reading

from the socket.

The java.net.Socket class represents a socket, and the java.net.ServerSocket class provides

a mechanism for the server program to listen for clients and establish connections with

them.

The following steps occur when establishing a TCP connection between two computers

using sockets

The server instantiates a ServerSocket object, denoting which port number

communication is to occur on.

The server invokes the accept() method of the ServerSocket class. This method waits

until a client connects to the server on the given port.

After the server is waiting, a client instantiates a Socket object, specifying the server

name and the port number to connect to.

The constructor of the Socket class attempts to connect the client to the specified

server and the port number. If communication is established, the client now has a

Socket object capable of communicating with the server.

On the server side, the accept() method returns a reference to a new socket on the

server that is connected to the client's socket.

Page 13: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

13

After the connections are established, communication can occur using I/O streams. Each

socket has both an OutputStream and an InputStream. The client's OutputStream is

connected to the server's InputStream, and the client's InputStream is connected to the

server's OutputStream.

Figure 3 - The TCPServer process has two sockets[5]

TCP is a two-way communication protocol which is given in theFigure 3, hence data can

be sent across both streams at the same time. Following are the useful classes providing

complete set of methods to implement sockets[6].

7.2 Measuring the consumed energy of smart mobile phones by hardware and software

Measuring the consumed energy will be used in the utility function and utility function

will be used for determining the virtual currency amount. As a result measuring the

consumed energy is very important task for our project. The block diagram is in the

Figure 4 and it has detailed explanation for our road map to complete that task.

Page 14: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

14

Figure 4 - Block diagram of measuring the consumed energy of mobile phones task

Page 15: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

15

Figure 5 - Energy measurement hardware[7]

We are planning to design and build a circuit which is given in the Figure 5 for measuring

the consumed energy of mobile phones. Our circuit was designed already, we used these

components for our circuit;

Arduino microcontroller

Breadboard

Resistors(1 ohm)

Special component which is designed by us will be used for connecting mobile

phone serially to our circuit.

In the software part for measuring the consumed energy, we will use some Android

libraries. The most important ones are listed below;

android.os.BatteryManager

android.net.TrafficStats

7.3Measuring the consumed mobile data amount by client users

Consumed mobile data amount will be used in the utility function as a very important

variable so the measuring the consumed mobile data amount is very important task for our

project. We have to measure that data by software so we are planning to develop Android

program to measuring consumed mobile data by client users and Android libraries which

will be used for doing that task are listed below;

android.net.TrafficStats

android.net.wifi.WifiManager

android.net.ConnectivityManager

android.net.NetworkInfo

Page 16: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

16

7.4Creating cost and utility function

After the prepared dataset which includes consumed energy, mobile data and signal

strength values, we will create cost and utility function. SPSS Statistics tool[8] will be

used for creating that function.

Page 17: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

17

8. Professional Considerations

8.1 Methodological considerations/engineering standards:

Themethodological considerations/engineering standards which will be used in the project

are at the Table I.

Methodological considerations/

Engineering standards

Aim

Bitbucket To manage and share the software project

UML diagrams To model the software application structures

Table I -Methodological considerations/engineering standards

We have a bitbucket account for managing and sharing our software project. I and

supervisor Assistant Prof. Ömer Korçak use it for managing and developing our software

works.

We will plan to use UML diagrams in the implementing UPN system on Android platform

task. We predict that implementing UPN system on Android platform will requires some

hard problems to solve. Therefore, we will have to develop some algorithms tosolve these

problems and we will use UML diagrams to model our software application structures.

We have not developed a complicated software solution so we have not encountered any

programming problems which were hard to solve. Therefore, we have not needed to use

UML diagrams until now.

8.2 Societal/ethical considerations

The mobile data traffic is increasing day by day and the base stations of mobile operators

are working under extreme strain so mobile operators serve Internet with high price and

low quality because of that extreme strain. The extreme strain on the current mobile

network system will be decreased by using autonomous UPNs so the mobile Internet

service provider will serve more efficient and cheaper. As a result, UPNs can be useful

solution for mobile operators at the mobile data traffic problem. Therefore, after the

completing our project, we are planning to present our project to the research and

development departments of mobile operators to have economical gains or technical and

economic support for developing our project more.

Page 18: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

18

At the UPN systems, server users have costs which are additional battery and mobile data

consumption, client users have benefit which is accessing Internet while they have no or

limited connectivity. This is not fair and ethic. Therefore, the incentive mechanisms for

UPNs will be developed so a fair system will be provided for UPNs.

Our project is about computer networking and it will not cause any environmental issues.

Moreover, it has not any health and safety problems for users.

Our project has high potential to improve performance of recent innovativestartups (such

as Open-Garden, M-87, Karma) which have huge customer base.Moreover, completed

version of our project can be developed so it can be implemented on the various computer

networking technology. Therefore, our project is a sustainable project and it has

manufacturability.

8.3 Legal considerations

There are not any legal issues for developing our project now but we must deal with the

mobile operators, if we will release our project to Android application market in the

future.

Page 19: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

19

9. Management Plan

9.1 Description of task phases

These are description of task phases;

Researching and learning the theoretical information about UPNs and basic

networking terminology

First Android programming task: Developing communication system between

mobile devices by using network protocols (WiFi-Direct and Bluetooth).

Second Android programming task: Developing a bargain protocol which will be

built on the communication system.

Third Android programming task: Developing tethering application.

Designing and building an electronic hardware for measuring consumed energy.

Fourth Android programming task: Developing application for measuring the

consumed energy

Preparing dataset which includes consumed energy values when server device is

work actively at the different scenarios for cost modelling.

Cost modelling.

Creatingthe utility function.

Fifth Android programming task: Developing the database for keeping user

information and virtual currency amount.

SixthAndroid programming task: Developing more user friendly graphical

interface for Android application.

Seventh Android programming task: Testing application and fixing the bugs.

Measuring and reporting the benefits of our UPN system on the current cellular

network technology.

9.2 Division of responsibilities and duties among team members

I will do my project without team, so i will do all duties and complete my project with my

personal effort under the leadership of Assistant Prof. Ömer Korçak.

Page 20: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

20

9.3 Time line

We determined the works for completing our project and detailed project time line is

given in Figure 6.

Figure 6 - Time line with milestones

9.4Risk Management

WiFi-Direct Received Signal Strength Indicator(RSSI) will be an important variable for

cost modelling and utility function so measuring that value is an important task for our

project but there are not any API or framework for determining that signal in the current

Android platform. RSSI value is hard-coded (mRssi = 60; //TODO: fix) [9] for old and

current Android versions. It can be fixed with new Android versions but if it will not be

fixed, we have an alternative solution that using WiFi Hotspot RSSI instead of WiFi-

Direct RSSI.

Page 21: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

21

REFERENCES

Journal Paper:

[1] George Iosifidis, Lin Gao, Jianwei Huang, and Leandros Tassiulas, Incentive

Mechanisms for User-Provided Networks,2013

Journal Paper:

[2] Sofia, R., Mendes, P. 2008. "User-provided networks: consumer as provider." IEEE

Communications Magazine, 46(12), 86-91.

Web Page

[3] Open Garden Inc., Home Page. [Online].Available:

http://opengarden.com

(Date of Access: 03 / 11 /2016)

Web Page

[4] M87 Inc., Home Page. [Online].Available:

http://www.m-87.com

(Date of Access: 03 / 11 /2016)

Book:

[5]James F. Kurose, Keith W. Ross, Computer Networking Top Down Approach, Sixth

Edition, Pearson Publishing.

Web Page

[6] Tutorials Point, Java-Networking page. [Online]. Available:

https://www.tutorialspoint.com/java/java_networking.htm

(Date of Access: 03 / 11 /2016)

Page 22: T.C. MARMARA UNIVERSITY FACULTY of …dosya.marmara.edu.tr/eng/cse/documents/2016/cse497-498...1 T.C. MARMARA UNIVERSITY FACULTY of ENGINEERING COMPUTER ENGINEERING DEPARTMENT CSE497

22

Conference Paper:

[7]Narendran Thiagarajan, Gaurav Aggarwal, Angela Nicoara, Who Killed My

Battery:Analyzing Mobile Browser Energy Consumption, 2012

Web Page

[8] IBM Inc., Home Page. [Online]. Available:

https://www.ibm.com/marketplace/cloud/statistical-analysis-and-porting/resources/us/en-

us

(Date of Access: 03 / 11 /2016)

Web Page

[9] Android Google Source, Home Page. [Online]. Available:

https://android.googlesource.com/platform/packages/apps/Settings/+/c8ee999/src/com

/android/settings/wifi/p2p/WifiP2pPeer.java

(Date of Access: 03 / 11 /2016)