Heuristic Approach to Determining Cache Node ... - IEEE Xplore

13 downloads 0 Views 299KB Size Report
(BC) approach that determines the location of cache nodes by computing the BC value of each node and ranks the nodes in descending BC order. The BC value ...
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 1

Heuristic Approach to Determining Cache Node Locations in Content-Centric Networks Nattapong Kitsuwan∗ , Hiroki Tahara∗ , and Eiji Oki†

Abstract—Internet users consider content information to be useful, but the current Internet approach treats location information as more important as so ties the former to the latter. A Content-Centric Network (CCN) allows the user to obtain content without regard to its location. CCN caches the contents information at its intermediate nodes. The content is searched for along the shortest path between the user and the node that has the original content. If any cache node is located on the shortest path, the content can be obtained from the nearest cache node, so far fewer hops are needed compared to the network without any cache node. However, this efficiency is not achieved if no cache node is located on the shortest path. One proposal sets cache nodes that broadcast their contents to surrounding nodes; the user is able to obtain the content from the cache node, rather than the node that has the original content, if the cache node is closer to the user. The location of the cache node affects the number of hops. We formulate an optimization problem that determines the locations of cache nodes to minimize the hop count as an Integer Linear Programming (ILP) problem. Since large ILPs cannot be solved in a practical time, we introduce a Betweenness Centrality (BC) approach that determines the location of cache nodes by computing the BC value of each node and ranks the nodes in descending BC order. The BC value denotes the ratio of the number of shortest paths between source-receiver pairs passing through the node to the total number of shortest paths between source-receiver pairs. Simulations show that the BC approach offers drastically reduced computation time, while the average number of hops is just 5.8% higher than that determined with the ILP approach.

I. I NTRODUCTION Nowadays, Internet usage habits have changed. People use social networking services to share their information and activities or to view shared information. The Internet has turned into a huge distributed network with gigantic amounts of contents. Internet users need higher speed transmission, with greater efficiency and security to access the content. They obtain the contents without consideration of the contents’ location. The existing Internet protocol (IP) network allows content retrieval only by reference to a specific physical location. With this architecture, the traffic flowing through the network is high, since the content is repeatedly unicast from source to each requestor (client hereafter). A technology that retrieves copies of the content from nodes local to the client, instead of the original content, has Manuscript received Jun 29, 2017; revised xxxxxxx. ∗ The authors are with the Department of Computer and Network Engineering, University of Electro-Communications, Chofugaoka 1-5-1, Tokyo, 182-8585 Japan. † The author is with Graduate School of Informatics, Kyoto University, Yoshida-honmachi, Sakyo-ku, Kyoto 606-8501, Japan. He was previously with The University of Electro-Communications, Tokyo. Email:[email protected]

been introduced [1]. The Content-Centric Network (CCN) architecture provides one example of how content name can be used to obtain content. CCN uses two packet types: interest packet and data packet. The interest packet is sent to a node having the requested content. The data packet returns the content along the path that the interest packet was routed on. In this way, the content can be obtained without accessing the original content location. A routing scheme developed for the Internet of Things (IoT) emphasizes content detail and is more efficient than the current Internet technology [2]. In CCN, cache nodes store content copies and are distributed throughout the network. The interest packet is passed to a node that has the requested content via the forwarding nodes via the shortest distance. The node that has the requested content sends the data packet back to the receiving node on the same route as the interest packet but in the opposite direction. This ensures that the content is delivered over the shortest distance, so the delivery time is short. The objective is to minimize the number of hops. Several schemes to search for cached content by using interest packets have been introduced [3] - [5]. The advantage of this routing approach is that the content can be obtained from the nearest cache node, rather than the node that has the original content. Since this cache node can be assumed to be closer to the client node than the original content, the number of hops needed to obtain the requested content is reduced. A scheme in which each cache node advertises its contents to the surrounding nodes was introduced in [6]. In this scheme, each cache node calculates and advertises its potential value from cache capacity and processing capacity. The client node selects the cache node with the highest value to provide the content. This scheme may retrieve the content from a cache node that is not the closest to the client node. To reduce the number of hops for a given number of cache nodes, it is essential to optimize the location of the cache nodes. Note that no all nodes in the network are cache nodes. In [7], only edge nodes are used as cache nodes. In [8], the number of cache nodes is limited to just one. Since cache nodes must store contents the current router needs to be replaced. In this paper, we assume that the contents held by each cache node does not exceed current server capacities. The requirement of cache capacity can be relaxed using Least Recently Used (LRU) method [9]. In addition, a method of cache node replacement was studied in [10]. In this paper, an approach to determine cache node location is introduced that attempts to minimize the number of hops under the condition that the number of cache nodes is given. We first formulate the problem of cache node location to

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 2

Client

Client

Source

Source

Client

Client

Client

Cache

Congestion

Cache

Cache

Client

Client

a) Cache node is on path between source and client. Interest and data packets Cache

Client

Client

a) Without CCN

Source

b) With CCN

Shortest path from client to source

Client

Fig. 1.

Traffic congestion resolution by CCN. Source

minimize the number of hops as an integer linear programming (ILP) problem. Since ILP problem cannot be solved practical time if the network is large, we apply the betweenness centrality (BC) approach. In the BC approach, the BC value of each node is computed and used to rank the nodes in descending order. The nodes with high BC value are those that appear most frequently on the shortest paths for all sourcedestination combinations and are configured as cache nodes. An evaluation shows that the BC approach is much greatly reduces the computation time of while the average number of hops is just 5.8% higher compared to the basic ILP approach. The structure of this paper is organized as follows. Section II describes the fundamentals of CCN including current routing schemes and their problems. Section III describes the ILP and BC approaches. Section IV evaluates performance of both approaches in terms of the number of hops and computation time. Finally, Section V draws our conclusions from the study results. II. C ONTENT C ENTRIC N ETWORK There are three types of nodes in CCN: client, source, and cache node. The client node requests provision of the content. The source node is the original holder of the requested content. The cache node holds a copy of the content. The client node obtains the requested contents from either a cache node or the source node, depending on the routing scheme, so that the number of hops to deliver the contents to the client is equal or shorter than that from the source. In addition, the traffic in the network is reduced if the client obtains the content from the cache node. Figure 1 demonstrates the effectiveness of CCN. Several clients are watching live streaming from the same source. Traffic congestion occurs on several links in the network due to duplication of the same content on the same links, as shown in Fig. 1(a). CCN resolves the traffic congestion by setting the content to cache nodes, as shown in Fig. 1(b). The clients obtain the content from the cache nodes. CCN uses two types of packet: interest packet and data packet. An interest packet carrying the content name is sent by a client to request the content. A data packet, which contains both name and content including a signature by the producer’s key, is sent from the cache node to the client using the reverse path taken by the interest packet. The packet forwarding functions of CCN use three data structures: pending interest table (PIT), forwarding information base (FIB), and content store (CS). PIT retains records of unsatisfied interest packets.

b) Cache node is not on path between source and client.

Fig. 2.

Effectiveness of cache node lying between source and client.

Each record consists of the content name and the incoming and outgoing interfaces. FIB is a routing table to forward interest packets toward sources of matching content. FIB contains multiple outgoing interfaces for each name prefix, rather than a single interface as in an IP network. CS temporarily stores the content packets to satisfy future requests. A node that has the CS function is called a cache node. A. Routing schemes in content centric network CCN uses flooding to implement content search [11]. Since the information is not registered in FIB, the received interest packet is forwarded to all interfaces and thus spreads throughout the network. The content is obtained from the nearest node that has the requested content. However, the interest packet is delivered to all nodes due to the flooding scheme. Furthermore, if there are multiple nodes with the same contents, they send identical data packets. The client selects only one stream of data packets and drops the rest. As a result, the number of interest and data packets in the network becomes impractically large. Several routing schemes to decrease the number of interest packets and the number of hops have been raised for CCN [4], [5], [6]. The open shortest path first (OSPF) protocol [12] was extended in [4]. Content names are included in OSPF advertisement packets and a routing table for content names is created. A dynamic routing mechanism for failure protection was introduced. In [5], content information is advertised from source nodes. Nodes that receive an advertisement identify the shortest path to the source. Of course, if a cache node lies between the source of the original content and the client, the content can be obtained from the cache node with fewer hops, as shown in Fig. 2. Therefore, the traffic on the network can be reduced. The potential routing-based scheme, which effectively utilizes cache nodes, was presented in [6]. A route between source and client is obtained by OSPF. The cache node advertises cache capacity and processing performance as a potential value to surrounding nodes. This scheme uses both the number of hops and potential in determining which cache node the interest packet should be delivered to. However, the performance of this scheme depends on network topology and

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 3

Cache

Cache

Potential value advertisement from cache

Client

Client

3 hops

Source

Source a) With potential value advertisement. Cache

Interest and data packets

a) Obtain contents from cache node.

Shortest path from client to source

Client Source

Cache Client

3 hops Source

b) No potential value advertisement.

Fig. 3. Effectiveness of cache node with/without potential-based routing scheme.

the locations of the cache nodes. Figure 3 shows an example of routing in the potential-based routing scheme. The cache node advertises its potential value, the client knows the location of the cache node from the advertisement. The client sends an interest packet to the selected cache node. The cache node replies with data packets to the client. B. Problem of routing schemes Once a path between the original source and client is determined, the content is searched for only along the determined path. In fact, the content may be stored near the client, but not on the path. In this case, the client obtains the content from the original source since the location of the cache node is unknown. Cache content updates can be performed by the least recently used (LRU) algorithm. When a content cached in the node is frequently updated and the cache node having the requested content is not on the shortest distance between the source and the client, the cache node that satisfies the requested content must obtain the contents from the source. In addition, in the potential-based routing scheme, if the cache node is located close to the source, the advantages provided by reducing the number of hops between the client and the source and between the client and the cache node are almost the same, as shown in Fig. 4. III. M INIMIZATION P ROBLEM OF H OP C OUNT FOR C ACHE N ODE P LACEMENT We start by formulating the optimization problem that minimizes the number of hops in the network as an integer linear programming (ILP) problem to determine the optimum locations of the cache nodes. Then, a heuristic approach using Betweeness centrality is presented. A. Integer linear programming An ILP problem is formulated to determine cache node position so as to minimize the number of hops; the number of cache nodes is assumed to be given. Let us consider network G(V, E), where V and E represent the set of nodes and the set of links in the network, respectively. Let (i, j) ∈ E be a

b) Obtain contents from source.

Fig. 4. Example of hop count similarity when the cache node is located near source.

directed link from node i ∈ V to node j ∈ V . Let C be a set of contents. Let T be a set of nodes owning the original contents, where is T ⊆ V . Node tc ∈ T owns the original content c ∈ C. Content c ∈ C and node tc ∈ T are given parameters. Flag fqc is a binary given parameter, where q ∈ V . fqc is set to one if content c is in node q, where q = tc , and zero otherwise. yq , where q ∈ V , is a binary decision variable. It is set to one if node q is a cache node or node owning the original content, and zero otherwise. K is a parameter (given) of the maximum number of cache nodes. M is a constant of sufficiently large value that satisfies M ≤ |E|. W is a set of pairs of nodes p ∈ V and q ∈ V \{p}. yqc is a binary decision variable. It is set to one if q = tc , and zero otherwise. xpqc ij is a binary decision variable. It is set to one if (i, j) ∈ E is on the selected shortest path between (p, q) ∈ W for content c ∈ C, and zero otherwise. hcpq indicates the number of hops on the path from node p ∈ V to node q ∈ V \{p} that has c content c ∈ C. hcpq ≥ M if node q ∈ V has no content. zpq is a binary decision variable. It is set to one if node p ∈ V selects node q ∈ V \{p} as the only node to obtain content c ∈ C, and zero otherwise. From each node, for all contents, the total number of hops needed to arrive at the node having the original content or the cache node is represented by, ∑ ∑ c hcpq zpq . (1) c∈C (p,q)∈W c hcpq zpq

Since is a product of binary variables, we introduce nonnegative decision variable wpq that satisfies the following conditions to allow expression in linear form. c wpq c wpq

c ≥ hcpq + L(zpq − 1), ∀(p, q) ∈ W, c ∈ C c ≤ Lzpq , ∀(p, q) ∈ W, c ∈ C

(2a) (2b)

c wpq

≥ 0,

(2c)

∀(p, q) ∈ W, c ∈ C

L is a constant with a sufficiently large value that satisfies L ≥ |E|. We formulate the problem of placing the cache nodes to minimize the number of hops taken to arrive at the node

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 4

1

having the original content or the cache node for all contents at each node as the following ILP.

1

4

5 8

9

11

2

6

5

2

4

7

3

10

min ∑

xpqc pj









c wpq

yqc (1

=



1

j:(i,j)∈E

(3b)

7

≥ (yq + fqc )/2, ∀q yqc ≤ (yq + fqc ), ∀q

hcpq

= M (1 −

yqc )

(3d)

∈ V, c ∈ C

(3e)

∈ V, c ∈ C ∑ pqc + xij ,

(3f)

∀(p, q) ∈ W, c ∈ C

(3g)

= 1 − yp , ∀p ∈ V, c ∈ C

(3h)

c c wpq ≥ hcpq + L(zpq − 1), ∀(p, q) ∈ W, c ∈ C

(3i)

c zpq

q∈V \{p}

c wpq

c Lzpq , ∀(p, q)

≤ ∈ W, c ∈ C c wpq ≥ 0, ∀(p, q) ∈ W, c ∈ C xpqc ij ∈ {0, 1},

(3j) (3k)

∀(p, q) ∈ W, (i, j) ∈ E ∈ {0, 1}, ∀p ∈ V, c ∈ C

(3l) (3m)

yp ∈ {0, 1}, ∀p ∈ V ∈ {0, 1}, ∀(p, q) ∈ W, c ∈ C fpc ∈ {0, 1}, ∀p ∈ V, c ∈ C

(3n) (3o) (3p)

ypc c zpq

5

13

21

16

12

22 13

8

17 18

22 24

24 25

6

15

21

23

23

10 14

Fig. 5.

(i,j)∈E



9

20

5

4 7

18

10

17

19

9

16

11

8

Network 4

Simulated network topologies.

(3c)

q∈V

yqc

3 14

Network 3

j:(j,i)∈E

∀(p, q) ∈ W, i ∈ V \{p, q}, c ∈ C ∑ yq ≤ K

2

20

15

2

4

∀(p, q) ∈ W, c ∈ C ∑ pqc xij − xpqc ji = 0,

1

12

11

6

fpc ),

j:(j,p)∈E



Network 2 19

3

j:(p,j)∈E

12

Network 1

(3a)

c∈C (p,q)∈W

xpqc jp

6

3

The objective function in Eq. (3a) minimizes the number of hops for all contents. Equations (3b) and (3c) show the flow conservation conditions of the source and the intermediate nodes, respectively. Equation (3b) shows that, if yqc = 1, traffic amount, which is one, on pair (p, q) ∈ W flows out from node p ∈ V ; otherwise no traffic is generated. Equation (3c) shows that the amount of traffic flowing into node i(̸= p, q) ∈ V is equal to the amount of traffic flowing out of node i. Equation (3d) ensures that the number of cache nodes does not exceed K. Equations (3e) and (3f) express the logical sum of two binary decision variables, yqc = 1 if yq = 1 or q = tc , and yqc = 0 otherwise. hcpq , which indicates the number of hops on the path from node p ∈ V to node q ∈ V \{p} with content c ∈ C, is defined in Eq. (3g). If node q ∈ V has no content c ∈ C, hcpq ≥ M . Equation (3h) guarantees that node q ∈ V receives unique content from only one node p ∈ V . Equations (3i) - (3k) are constraints introduced to linearize c c c wpq = hcpq zpq . Equations (3l) and (3p) express that xpqc ij , yp , c yp , and zpq are binary decision variables.

B. Betweenness centrality Considering a network with a large number of nodes, ILP may not yield a solution in a practical time. We introduce a heuristic approach that determines the locations of cache nodes by using betweenness centrality (BC). We call this the BC approach. In the BC approach, the betweenness centrality is computed and cache node position is determined in descending order. By computing betweenness centrality, nodes that appear most frequently on the shortest path considering all patterns of source-destination pairs among all nodes on the network are determined. The total number of hops can be reduced by selecting, as cache nodes, the nodes with highest betweenness centrality values. Betweenness centrality is an index calculated, for a target node, as the ratio of the number of shortest paths that pass through the target node to the number of all shortest paths between all pairs of nodes other than the target node. Betweenness centrality, CB (v), of node v ∈ V is given by the following equation. ∑ σst (v) CB (v) = (4) σst s,t∈V :s̸=t̸=v

σst is the number of shortest paths between nodes s and t. σst (v) is the number of shortest paths between nodes s and t that pass through node v. The algorithm in [13] is used to compute CB (v). When multiple cache nodes are required, the BC approach selects, as cache nodes, nodes in descending order of CB (v). IV. P ERFORMANCE E VALUATION OF C ACHE N ODE PLACEMENT

The section determines the location of the cache nodes, using the ILP and BC approaches, so as to minimize the number of hops. The four network topologies are shown in Fig. 5. Network 1 represents typical backbone networks [14], Network 2 is the Japan Photonic Network (JPN) 12 [16]. Network 3 is the US IP backbone network Topology [15] while network 4 is JPN 25 [16]. The characteristics of these networks are shown in Table I. We first evaluate the impact of cache node location on the number of hops; the number of cache nodes is set to one. It should be noted that index 0 means that no cache node exists

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 5

Network type Network Network Network Network

No. of nodes

No. of links (bidirectional)

6 12 24 25

12 17 41 43

1 2 3 4

Total number of hops

TABLE I N ETWORK CHARACTERISTICS

TABLE II N ODES RANKED IN DESCENDING ORDER OF CB (v)

40 35 30 25 20 15 10 5 0 0

1

2 3 4 5 Location of cache node

6

(a) Network 1 Network 4

Rank

Node

CB (v) Node

CB (v) Node

CB (v)

1

2

0.9

7

27.2

9

63.8

14

125.2

2

1

0.7

10

16.6

10

51.2

17

112.5

3

5

0.7

3

14.4

11

49.5

19

92.4

4

3

0.3

6

10.0

6

45.3

22

62.1

5

4

0.3

4

8.6

12

43.9

12

45.3

6

6

0.3

8

7.8

16

42.8

6

38.3

7

-

-

9

4.0

7

42.4

10

36.0

8

-

-

2

2.4

17

34.7

7

29.8

9

-

-

5

1.8

13

30.7

18

22.3

10

-

-

1

1.1

8

23.1

13

21.9

11

-

-

11

1.1

14

22.2

16

16.0

12

-

-

12

0.0

18

16.7

20

15.1

13

-

-

-

-

15

16.2

23

13.3

14

-

-

-

-

22

14.1

11

13.2

15

-

-

-

-

21

9.8

9

12.1

16

-

-

-

-

20

8.1

5

10.1

17

-

-

-

-

3

7.8

4

9.8

18

-

-

-

-

23

7.2

24

9.6

19

-

-

-

-

19

6.9

3

9.0

20

-

-

-

-

5

5.2

1

21

-

-

-

-

2

5.1

21

5.4

22

-

-

-

-

4

2.3

2

5.1

23

-

-

-

-

24

0.8

8

2.4

24

-

-

-

-

1

0.0

15

1.3

25

-

-

-

-

-

-

25

0.0

Total number of hops

CB (v) Node

Network 3

350 300 250 200 150 100 50 0 0 1 2 3 4 5 6 7 8 9 10 11 12 Location of cache node

(b) Network 2 2000 Total number of hops

Network 2

1500 1000 500 0 0 2 4 6 8 10 12 14 16 18 20 22 24 Location of cache node

(c) Network 3 2500

7.1

Total number of hops

Network 1

2000 1500 1000 500 0

in the network. A shortest path is assumed from each node to the original content node or a cache node, depending on the nearest location. The total number of hops for every case of original content node location is evaluated. Figure 6 plots the dependency of the number of hops on cache node location for networks 1 to 4. The total number of hops depends on the location of the cache node. It is minimum if the cache node is set at node 2 in network 1, node 7 in network 2, node 9 in network 3, and node 14 in network 4. We observe that the number of hops is minimum when the cache node is set at the node with the highest node degree. The value of CB (v) for every node is also investigated. Table II ranks the nodes in descending order of CB (v). A. Number of hops The ILP and BC approaches are compared in terms of the number of hops for each sample network with the same

0 2 4 6 8 10 12 14 16 18 20 22 24 Location of cache node

(d) Network 4 Fig. 6.

Impact of cache node location on number of hops.

number of contents and the same number of source nodes. The number of hops is evaluated from the summation of the number of hops for each number of contents and each number of cache nodes. The number of contents is represented by |C| and the number of source nodes is represented by |S|. The ILP is solved by the optimization solver CPLEX 12.6.1.0 [17] using an Intel(R) Xeon(R) CPU E5-2609 [email protected] and 64 GB of memory. Figure 7 shows that the number of hops decreases as more cache nodes are used. The ILP approach and the BC approach

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access

20

7 6 5 4 3 2 1 0

ILP

Number of hops

Number of hops

6

BC

15

ILP

10 5 0

0

1 2 3 4 5 Number of cache nodes

0

6

ILP

BC

100 ILP

80

BC

60 40 20 0 1 2 3 4 5 6 7 8 9 10 11 12 Number of cache nodes

(b) Network 2

100

Number of hops

6

0

(b) Network 2

ILP

BC

Fig. 8.

Number of hops when |C| = |S| = 3.

60 40

B. Computation time

20 0 0 2 4 6 8 10 12 14 16 18 20 22 24 Number of cache nodes

(c) Network 3 Number fo hops

2 3 4 5 Number of cache nodes

(a) Network 1

0 1 2 3 4 5 6 7 8 9 10 11 12 Number of cache nodes

140 120 100 80 60 40 20 0

ILP

BC

0 2 4 6 8 10 12 14 16 18 20 22 24 Number of cache nodes

(d) Network 4 Fig. 7.

1

120 Number of hops

Number of hops

(a) Network 1 35 30 25 20 15 10 5 0

80

BC

Number of hops when |C| = |S| = 1.

offer the same number of hops in network 1. The BC approach requires more hops than the ILP approach in networks 2-4. The maximum difference in number of hops is 28.5% for two cache nodes in network 2, 40% for five cache nodes in network 3, and 28% for five cache nodes in network 4. The BC approach matches the ILP approach when the number of cache nodes is high. Figure 8 shows the number of hops in the ILP and BC approaches with |C| = |S| = 3 for networks 1 and 2. The ILP and BC approaches offer the same number of hops for network 1. The maximum difference is 13% when the number of cache nodes is two in network 2.

The computation times for the ILP and BC approaches are compared using the sample networks in Fig. 5 with |C| = 1, |S| = 1. Table III shows the computation time for each number of cache nodes. The BC approach determines CB (v) of all nodes, and the computation time is constant regardless of the number of cache nodes. If we compare the shortest computation time of the ILP approach to those of the BC approach, for networks 1 to 4 the BC approach is 72, 2,019, 31,066, and 45,887 times faster than the ILP approach. Thus shows that the BC approach drastically reduces the computation time compared with the ILP approach with only a slight increae in the number of hops (5.8% average). V. C ONCLUSIONS This paper introduced a practical approach to determine the location of cache nodes that attempts to reduce the number of hops in CCN while drastically reducing time needed to determine optimum cache node location. We formulated the problem of determining cache node location using the ILP approach. Since ILP problems may excessively long times to solve if the network is large, we introduced the approach of using betweenness centrality. Simulations showed that the proposed BC approach is significantly faster than the ILP approach for real-world size problems with only a slight increase (average of 5.8%) in the number has number of hops. R EFERENCES [1] V. Jacobson, D.K. Smetters, J.D. Thornton, M.F. Plass, N.H. Briggs, and R.L. Braynard, “Networking named content,” in Proc. ACM 5th international conference on Emerging networking experiments and technologies (CoNEXT 2009), pp.1-12, Rome, Italy, 2009.

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 7

TABLE III C OMPUTATION TIMES IN SAMPLE NETWORKS

Number of cache nodes 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Network 1 BC (sec) ILP (sec) 0.0019 0.0019 0.0019 0.0019 0.0019 0.0019 -

5.62 4.088 6.576 0.16 0.136 3.032 -

Network 2 BC (sec) ILP (sec) 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 -

[2] E. Baccelli, C. Mehlis, O. Hahm, T.C. Schmidt, and M. W¨ahlisch, “Information Centric Networking in the IoT: Experiments with NDN in the Wild,” in Proc. 1st ACM Conference on Information-Centric Networking (ACM-ICN’14), pp. 77-86, Paris, France, 2014. [3] “Cicn,” [Online] Available: https://wiki.fd.io/view/Cicn, Oct. 2017. [4] L. Wang, A K M M. Hoque, C. Yi, A. Alyyan, and B. Zhang, “OSPFN: An OSPF Based Routing Protocol for Named Data Networking,” NDN Technical Report, NDN-0003, Jul. 2012. [5] A.W. Kazi and H. Badr, “Some observations on the performance of CCNFlooding,” in Proc. International Conference on Computing, Networking and Communications (ICNC2014), Honolulu, Hawaii, USA, pp. 334-340, 2014. [6] S. Eum, K. Nakauchi, M. Murata, Y. Shoji, and N. Nishinaga, “Potential based routing as a secondary best-effort routing for Information Centric Networking (ICN),” Computer Networks, vol. 57, iss. 16, pp. 3154-3164, Nov. 2013. [7] S.K. Fayazbakhsh, Y. Lin, A. Tootoonchian, A. Ghodsi, T. Koponen, B. Maggs, K.C. Ng, V. Sekar, and S. Shenker, “Less Pain, Most of the Gain: Incrementally Deployable ICN,” in Proc. ACM Special Interest Group on Data Communication (SIGCOMM2013), pp. 147-158, Hong Kong, China, 2013. [8] W.K. Chai, D. He, I. Psaras, and G. Pavlou, “Cache “less for more” in information-centric networks,” Computer Communications, vol. 36, iss. 7, pp. 758-770, 2013. [9] D. Rossi and G. Rossini, “Caching performance of content centric networks under multi-path routing (and more),” Technical report, Telecom ParisTech, Jul. 2011. [10] A. Ooka, S. Ata, and M. Murata, “A Proposal and Evaluation of Cache Replacement Policy for the Implementation of ICN Router,” Technical Committee on Information-Centric Network (ICN), Jul. 2015. [11] R. Chiocchetti, D. Rossi, G. Rossini, G. Carofiglio, and D. Perino, “Exploit the known or explore the unknown?: hamlet-like doubts in ICN,” the second edition of the ICN workshop on Information-centric networking (ICN’12), pp. 7-12, Helsinki, Finland, 2012. [12] J.T. Moy, “OSPF version 2,” IETF RFC 1247, Jul. 1991.

67.868 54.148 32.404 27.404 73.984 60.548 46.064 40.032 26.492 17.632 11.768 10.704 -

Network 3 BC (sec) ILP (sec) 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 0.0053 -

18748.2 198576 70243.7 15014.3 7034.15 5406.88 5042.94 5713.35 4731.68 5077.45 4062.09 5090.82 3970.96 4161.28 4961.23 4974.78 5902.02 7700.55 2057.98 1094.4 921.128 167.708 164.652 169.304 -

Network 4 BC (sec) ILP (sec) 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055 0.0055

4090.26 25489.7 72650 17403.1 7298.63 5989.65 8711.65 5812.89 4629.86 5066.98 4799.5 4145.45 7364.78 5258.33 4628.61 4668.05 8683.76 4370.75 3887.92 4614.88 2609.68 1362.31 320.244 288.576 252.38

[13] U. Brandes, “A Faster Algorithm for Betweenness Centrality,” Journal of Mathematical Sociology, vol. 25, pp. 163-177, 2001. [14] J. Chu and C. Lea, “Optimal link weights for maximizing QoS traffic,” IEEE International Conference on Communications (ICC2007), pp. 610615, Glasgow, Scotland, Jun. 2007. [15] N. Kitsuwan and E. Oki, “Design of IP Tunneling for OSPF Network to Reduce Advertising Delay,” IEICE Communication Express, vol. 3, no. 8, pp. 229-234, Aug. 2014. [16] “Japan photonic network model,” [Online] Available: http://www.ieice.org/cs/pn/jpn/jpnm.html, May. 2017. [17] “CPLEX Optimizer,” [Online] Available: http://www01.ibm.com/software/ commerce/optimization/cplex-optimizer/, Oct. 2016.

Nattapong Kitsuwan received a B.E. and M.E. in electrical engineering (telecommunication) from Mahanakorn University of Technology, King Mongkut’s Institute of Technology, Ladkrabang, Thailand, and a Ph.D. in information and communication engineering from the University of Electro-Communications, Japan, in 2000, 2004, and 2011, respectively. From 2002 to 2003, he was an exchange student at the University of ElectroCommunications, Tokyo, Japan, where he performed research on optical packet switching. From 2003 to 2005, he worked for ROHM Integrated Semiconductor, Thailand, as an Information System Expert. He was a postdoctoral researcher at the University of Electro-Communications from 2011 to 2013. He worked as a researcher for the Telecommunications Research Centre (CTVR), Trinity College Dublin, Ireland from 2013 to 2015. Currently, he is an assistant professor at the University of Electro-Communications, Tokyo, Japan. His research focuses on optical network technologies, routing protocols, and software-defined networks.

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/ACCESS.2017.2779452, IEEE Access 8

Hiroki Tahara received B.E. and M.E. degrees in communication engineering and informatics from the University of Electro-Communications, Japan, in 2015 and 2017, respectively.

Eiji Oki is a Professor at Kyoto University, Japan. He received the B.E. and M.E. degrees in instrumentation engineering and a Ph.D. degree in electrical engineering from Keio University, Yokohama, Japan, in 1991, 1993, and 1999, respectively. In 1993, he joined Nippon Telegraph and Telephone Corporation (NTT) Communication Switching Laboratories, Tokyo, Japan. He has been researching network design and control, traffic-control methods, and highspeed switching systems. From 2000 to 2001, he was a Visiting Scholar at the Polytechnic Institute of New York University, Brooklyn, New York, where he was involved in designing terabit switch/router systems. He was engaged in researching and developing high-speed optical IP backbone networks with NTT Laboratories. He was with The University of Electro-Communications, Tokyo, Japan from July 2008 to February 2017. He joined Kyoto University, Japan, in March 2017. He has been active in the standardization of the path computation element (PCE) and GMPLS in the IETF. He wrote more than ten IETF RFCs. Prof. Oki was the recipient of several prestigious awards, including the 1998 Switching System Research Award and the 1999 Excellent Paper Award presented by IEICE, the 2001 Asia-Pacific Outstanding Young Researcher Award presented by IEEE Communications Society for his contributions to broadband network, ATM, and optical IP technologies, the 2010 Telecom System Technology Prize by the Telecommunications Advanced Foundation, IEEE HPSR 2012 Outstanding Paper Award, and IEEE HPSR 2014 Best Paper Award Finalist, First Runner Up. He has authored/coauthored four books, Broadband Packet Switching Technologies, published by John Wiley, New York, in 2001, GMPLS Technologies, published by CRC Press, Boca Raton, FL, in 2005, Advanced Internet Protocols, Services, and Applications, published by Wiley, New York, in 2012, and Linear Programming and Algorithms for Communication Networks, CRC Press, Boca Raton, FL, in 2012. He is a Fellow of IEEE.

2169-3536 (c) 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Suggest Documents