1
Cost-Efficient Rule Management and
Traffic Engineering for Software Defined
Networks
Huawei Huang
Supervisor: Prof. Song Guo
University of Aizu
Sep. 8, 2016
Presentation slides for Ph.D dissertation
2
Outline
Joint Optimization of Rule Placement and Traffic Engineering
for QoS Provisioning in SDN [1]
Cost Minimization for Rule Caching in Software Defined
Networking [2]
Near-Optimal Routing Protection for Software-Defined
Networks [3]
Threads of dissertation
Introduction and background
3
SDN is
an emerging network architecture / paradigm
where the
control plane
is decoupled from data forwarding plane (data-plane)
and
can be directly programmable.
Software Defined Networking ( SDN )
 Control plane
alg, protocols
 Data plane:
hardware,
Packet forwarding
SDN decouplesthecontrolplane& dataplane
4
 Data plane:
hardware,
Packet forwarding
 Control plane
alg, protocols
5
3-layred SDN Architecture
Agile provisioning
Simplify management
Automation service
Benefits:
With SDN, operators, researchers, users, 3rd parties developers:
New
function
6
OpenFlow Hardware
Explanation of Basic Concepts
• What is Traffic Engineering (TE) ?
• Control and optimization of routing, to steer traffic through the
network in the most effective way
• Traffic oriented performance, e.g.,
• Max (throughput)
• Min ( packet transfer delay )
• Min ( packet loss )
• How? -- Approaches
• Collect measurements of traffic and topology
• Compute paths based on load, and requirements
• Optimize the setting of the “static” parameters
• With SDN, these are easy.
7
8
Flow Table Entry
(also called Forwarding Rule,
which is installed in Flow-Table of a switch)
Controller
Explanation (cont.)
9
How a Packet is processed in a switch / router ?
Flow table stores Flow Table Entry.
Explanation (cont.)
10
Structure of a Rule:
Example:
Explanation (cont.)
11
Rules paly various functionalities.
Rules have to be installed in TCAMs of switch.
Explanation (cont.)
12
Outline
Threads of dissertation
Introduction and background
Joint Optimization of Rule Placement and Trac Engineering
for QoS Provisioning in SDN [1]
Cost Minimization for Rule Caching in Software Defined
Networking [2]
Near-Optimal Routing Protection for In-Band Software-
Defined Networks [3]
Threads of this dissertation
13
Rule space
is limited
Link
bandwidth
is limited
Min (rule-number)
Opt (rule placement)
Min (rule caching cost)
Min (delay)
Max (throughput)
Link load-balance
Resilience guarantee
Cost Opt.
Traffic
Engineering
Rule
management
&
Traffic
engineering
14
Outline
Joint Optimization of Rule Placement and Traffic Engineering
for QoS Provisioning in SDN [1]
Cost Minimization for Rule Caching in Software Defined
Networking [2]
Near-Optimal Routing Protection for Software-Defined
Networks
Threads of dissertation
Introduction and background
15
JointOptimizationofRulePlacementandTrafficEngineering
forQoSProvisioninginSoftwareDefinedNetwork
(IEEEToC2015)
Topic 1:
• Conventionally, duplicated rule-installation
• For each traffic flow, original SDN-protocol installs forwarding
rules on its traversing path
Installs 2 rules for the 2 flows.
If DstIP=0.0.0.3,
then, do Action 1
IP=0.0.0.1
IP=0.0.0.2
If DstIP=0.0.0.3,
then, do Action 1
IP=0.0.0.3
ControllerRule 1
Rule 2
A motivation case.
Server
Clients
• Turning duplicated rule-installation -> multiplexing rule-installation,
when we conduct the TE:
• Only install one common rule that works for multiple flows.
• Total rule-space can be reduced.
16
So, we study a problem of
rule-placement:
Min (total rule No.)
subject to:
limited rule space;
link capacity.
Idea
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
• 4 cases of formulations :
• MIP: mixed integer programming
17
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
RM: rule-multiplexing
nonRM: non rule-multiplexing
CP: candidate path provided
nonCP: no candidate path provided
RM-CP:
nonRM-CP:
Min (rule num)
Trivial RM-nonCP & nonRM-nonCP
cases are ignored here.
NP-hardnessProof
• Theorem 1. Given a set of candidate paths, the rule placement
problem (RP) mentioned above is NP-hard.
• The proof is done by reducing the well-known 2-partition
problem to the RP problem.
• i.e., we construct a special case of RP problem into the 2-partition
problem.
• 2-partition problem is NP-hard -> rule-place. Problem is NP-
hard.
18
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
Algorithms design
• Fast heuristics based on Relaxing-and-Rounding
• 1st step: Relax the Integer-variables -> Continuous ones
19
[0, 1]
Conditionally round.
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
Algorithms design(Cont.)
• Fast heuristics based on Relaxing-and-Rounding
• Critical idea of 2nd step: conditionally select a part of relaxed vars
to round them back into integer, and construct a solution.
20
Conditionally round some
back into integer.
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
Case study under CP
• With candidate paths provided.
21
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
Cost: 40 rules. Cost: 20 rules.>
Case study under nonCP
• Without candidate paths
22Cost: 40 rules. Cost: 20 rules.
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
>
Efficiency of RM is proved.
More simulation results
• Show that Rule-Multiplexing (RM) mechanism outperforms than
nonRM.
• Particularly, RM-nonCP has the best performance.
23
Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
24
Outline
Joint Optimization of Rule Placement and Traffic Engineering
for QoS Provisioning in SDN [1]
Cost Minimization for Rule Caching in Software Defined
Networking [2]
Near-Optimal Routing Protection for In-Band Software-
Defined Networks [3]
Threads of dissertation
Introduction and background
25
Topic 2: Rule Caching
Background:
Whentrafficarrivesataswitch,
packetsneedtobeprocessedby
local-switch or
remote-proxy(e.g.,amiddleboxorevenacontroller).
CostMinimizationforRuleCachinginSoftware
DefinedNetworking
(IEEETPDS2015)
Virus
Controller
controls all switches
Arriving flow
Server
Firewall
proxies
Client
… Allowed flow
Ingress
switch
Malware
DoS
redirect
Redirected flow
26
Decisions for each traffic-flow at each time-slot:
Systemmodel
Topic 2: Rule Caching
remote-processinglocal processing
When to install rule?
How long to cache the rule?
Which way to process packets?
0-1 decisionyt = 0 yt = 1
At time-slot t : Remote cost:
expense at the
remote proxy.
Local cost:
expense at the
switch.
xt = 0 or 1?
local-processing cost remote-processing cost
27
Total Cost = +
Problem: How to Minimize a joint cost ?
Given a set of flows and required rules,
We normalize the unit cost of
local-processing as
and
remote-processing as
Topic 2: Rule Caching
Formulation
Trigger of remote
processing
Fetch at least one time
before caching
Packets in each Time-
slot need to be processed
28
Basic analysis:
Typical patterns in an optimal solution:
Three elements of optimal solution: Only remote processing
Only local processing
Hybrid
Topic 2: Rule Caching
Idea: achieve the goal by deciding: for a flow,
whether and when to install rules in a switch,
& how long to cache the rules if install them.
Algorithm Design
valid
29
How good of this algorithm?
If the trace of a flow is given,
OfflineAlgorithm
Topic 2: Rule Caching
Evaluation of offline-algorithm
30
Proactive algorithm : rules are only fetched in the first time slot and cached all the remaining duration.
Reactive algorithm triggers remote process at each time slot.
Topic 2: Rule Caching
31
How good of this algorithm?
Online Alg 1: Exactly Match the Flow(EMF)
The1st OnlineAlgorithm
Topic 2: Rule Caching
32
Competitive ratio of this algorithm:
Online Alg 2: fixed length of Extra Caching Alg (ECA)
Topic 2: Rule Caching
The2nd OnlineAlgorithm
Evaluationof online algorithms
33
Performance of Online
algs is within
theoretical bound
Online algs
perform better
than the original
SDN protocol.
More experiments to
prove the correctness
of theoretical bounds
for the online algs.
Topic 2: Rule Caching
34
Outline
Joint Optimization of Rule Placement and Traffic Engineering
for QoS Provisioning in SDN [1]
Cost Minimization for Rule Caching in Software Defined
Networking [2]
Near-Optimal Routing Protection for Software-Defined
Networks [3]
Threads of dissertation
Introduction and background
35
Background before topic-3
When emergent events happen,
e.g., earthquake occurs,
some critical network links might be disconnected.
Routing-protection is an important topic !
Because, in the perspective of
Traffic-engineering,
we need to guarantee the
Min ( network recovery delay ).
Topic 3: routing protection
36
Near-OptimalRoutingProtectionforIn-BandSDNs
(TheextensionofthistopichasbeenpublishedinIEEEJSAC,2016.)
https://www.researchgate.net/publication/301842070_Near-Optimal_Routing_Protection_for_In-Band_Software-
Defined_Heterogeneous_Networks
• Motivation:
• The controller<->switch connections are critical ( higher priority than
the data-plane routing paths ),
• disconnection brings very serious damages.
• When link failure occurs, the fast recovery is needed.
Topic 3: routing protection
37
• Question: How to protect the controlling channels?
• with a low recovery delay,
• with a reasonable cost of switch node-configuration.
Topic 3: routing protection
• Traditional routing protection
• Local routing via Backup paths
38
Related Work
Topic 3: routing protection
39
• Dedicated-backup, e.g., 1+1 (1+N) protection
• With no recovery delay at all !!
• But with high cost on both terms:
• Link ( high-bandwidth consumption )
• Node ( switch-configuration cost )
• Trade-off has to be considered:
• If adopt dedicated-backup,
• Reduce the ( cost ) !
Optional Approach :
Topic 3: routing protection
Double backup paths,
High cost: double Traffic
rate !!
Formulation
• System model
• As shown in Figure 2.
• Formulation with Obj:
• Min ( link-bandwidth cost + connection-setup cost )
40
Topic 3: routing protection
Exact |Ds| number of in-use
paths must be selected.
Capacity constraints on link.
Capacity constraints on node.
Algorithm
• Markov-Approximate based Algorithm
• Obj: load-balancing + connection-setup cost
41
Define MC
Transit between different
states
Re-Compute transition
rate of different states
Topic 3: routing protection
Basicidea:
Toeliminatetheneighboringcongestion,
refreshtheentireconfiguration ,
ratherthantheconventional localrerouting.
42
Online handlingTheory
Online handling in case of link-failure
Topic 3: routing protection
• Simulation
• Fat-tree Datacenter network
• Representative running case
43
Topic 3: routing protection
• Comparison with conventional Local routing
• on the link-bandwidth consumption
44
Topic 3: routing protection
reroute via link (0,4).
• Convergence property of the proposed algorithm
• Comparing with other benchmark algs.
45
Topic 3: routing protection
46
Outline
Joint Optimization of Rule Placement and Traffic Engineering
for QoS Provisioning in SDN [1]
Cost Minimization for Rule Caching in Software Defined
Networking [2]
Near-Optimal Routing Protection for Software-Defined
Networks [3]
Threads of dissertation
Introduction and background
Conclusion and Future Work
Conclusion and Future Work
• Conclusion
• 3 topics related to Cost-optimization problems over Traffic-
Engineering & Resource-utilization.
• Future work
• I am going to focus on the business logics under SDNs:
• Network Function Virtualization (NFV)
• Resilience and Security enhancement for SDNs
47
48
Major references in slides:
[1] Huawei Huang, Song Guo, Peng Li, Baoliu Ye and Ivan Stojmenovic,
“Joint Optimization of Rule Placement and Traffic Engineering for QoS
Provisioning in Software Defined Network”, IEEE Transactions on
Computers, vol. 64, no. 12, pp. 3488-3499, December 2015.
[2] Huawei Huang, Song Guo, Peng Li, Weifa Liang and Albert Y.
Zomaya, “Cost Minimization for Rule Caching in Software Defined
Networking”, IEEE Transactions on Parallel and Distributed Systems (TPDS),
vol. 27, no. 4, pp. 1007-1016, April 2016.
[3] Huawei Huang, Song Guo, Weifa Liang, Keqiu Li, Baoliu Ye and
Weihua Zhuang, "Near-Optimal Routing Protection for In-Band Software-
Defined Heterogeneous Networks", IEEE Journal on Selected Areas in
Communications (JSAC), vol. 34, no. 11, pp. 2918-2934, October, 2016.

Cost-Efficient Rule Management and Traffic Engineering for Software Defined Networks

  • 1.
    1 Cost-Efficient Rule Managementand Traffic Engineering for Software Defined Networks Huawei Huang Supervisor: Prof. Song Guo University of Aizu Sep. 8, 2016 Presentation slides for Ph.D dissertation
  • 2.
    2 Outline Joint Optimization ofRule Placement and Traffic Engineering for QoS Provisioning in SDN [1] Cost Minimization for Rule Caching in Software Defined Networking [2] Near-Optimal Routing Protection for Software-Defined Networks [3] Threads of dissertation Introduction and background
  • 3.
    3 SDN is an emergingnetwork architecture / paradigm where the control plane is decoupled from data forwarding plane (data-plane) and can be directly programmable. Software Defined Networking ( SDN )  Control plane alg, protocols  Data plane: hardware, Packet forwarding
  • 4.
    SDN decouplesthecontrolplane& dataplane 4 Data plane: hardware, Packet forwarding  Control plane alg, protocols
  • 5.
    5 3-layred SDN Architecture Agileprovisioning Simplify management Automation service Benefits: With SDN, operators, researchers, users, 3rd parties developers: New function
  • 6.
  • 7.
    Explanation of BasicConcepts • What is Traffic Engineering (TE) ? • Control and optimization of routing, to steer traffic through the network in the most effective way • Traffic oriented performance, e.g., • Max (throughput) • Min ( packet transfer delay ) • Min ( packet loss ) • How? -- Approaches • Collect measurements of traffic and topology • Compute paths based on load, and requirements • Optimize the setting of the “static” parameters • With SDN, these are easy. 7
  • 8.
    8 Flow Table Entry (alsocalled Forwarding Rule, which is installed in Flow-Table of a switch) Controller Explanation (cont.)
  • 9.
    9 How a Packetis processed in a switch / router ? Flow table stores Flow Table Entry. Explanation (cont.)
  • 10.
    10 Structure of aRule: Example: Explanation (cont.)
  • 11.
    11 Rules paly variousfunctionalities. Rules have to be installed in TCAMs of switch. Explanation (cont.)
  • 12.
    12 Outline Threads of dissertation Introductionand background Joint Optimization of Rule Placement and Trac Engineering for QoS Provisioning in SDN [1] Cost Minimization for Rule Caching in Software Defined Networking [2] Near-Optimal Routing Protection for In-Band Software- Defined Networks [3]
  • 13.
    Threads of thisdissertation 13 Rule space is limited Link bandwidth is limited Min (rule-number) Opt (rule placement) Min (rule caching cost) Min (delay) Max (throughput) Link load-balance Resilience guarantee Cost Opt. Traffic Engineering Rule management & Traffic engineering
  • 14.
    14 Outline Joint Optimization ofRule Placement and Traffic Engineering for QoS Provisioning in SDN [1] Cost Minimization for Rule Caching in Software Defined Networking [2] Near-Optimal Routing Protection for Software-Defined Networks Threads of dissertation Introduction and background
  • 15.
    15 JointOptimizationofRulePlacementandTrafficEngineering forQoSProvisioninginSoftwareDefinedNetwork (IEEEToC2015) Topic 1: • Conventionally,duplicated rule-installation • For each traffic flow, original SDN-protocol installs forwarding rules on its traversing path Installs 2 rules for the 2 flows. If DstIP=0.0.0.3, then, do Action 1 IP=0.0.0.1 IP=0.0.0.2 If DstIP=0.0.0.3, then, do Action 1 IP=0.0.0.3 ControllerRule 1 Rule 2 A motivation case. Server Clients
  • 16.
    • Turning duplicatedrule-installation -> multiplexing rule-installation, when we conduct the TE: • Only install one common rule that works for multiple flows. • Total rule-space can be reduced. 16 So, we study a problem of rule-placement: Min (total rule No.) subject to: limited rule space; link capacity. Idea Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
  • 17.
    • 4 casesof formulations : • MIP: mixed integer programming 17 Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling RM: rule-multiplexing nonRM: non rule-multiplexing CP: candidate path provided nonCP: no candidate path provided RM-CP: nonRM-CP: Min (rule num) Trivial RM-nonCP & nonRM-nonCP cases are ignored here.
  • 18.
    NP-hardnessProof • Theorem 1.Given a set of candidate paths, the rule placement problem (RP) mentioned above is NP-hard. • The proof is done by reducing the well-known 2-partition problem to the RP problem. • i.e., we construct a special case of RP problem into the 2-partition problem. • 2-partition problem is NP-hard -> rule-place. Problem is NP- hard. 18 Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
  • 19.
    Algorithms design • Fastheuristics based on Relaxing-and-Rounding • 1st step: Relax the Integer-variables -> Continuous ones 19 [0, 1] Conditionally round. Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
  • 20.
    Algorithms design(Cont.) • Fastheuristics based on Relaxing-and-Rounding • Critical idea of 2nd step: conditionally select a part of relaxed vars to round them back into integer, and construct a solution. 20 Conditionally round some back into integer. Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
  • 21.
    Case study underCP • With candidate paths provided. 21 Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling Cost: 40 rules. Cost: 20 rules.>
  • 22.
    Case study undernonCP • Without candidate paths 22Cost: 40 rules. Cost: 20 rules. Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling > Efficiency of RM is proved.
  • 23.
    More simulation results •Show that Rule-Multiplexing (RM) mechanism outperforms than nonRM. • Particularly, RM-nonCP has the best performance. 23 Topic 1: Joint Optimization of Rule Placement and Traffic Scheduling
  • 24.
    24 Outline Joint Optimization ofRule Placement and Traffic Engineering for QoS Provisioning in SDN [1] Cost Minimization for Rule Caching in Software Defined Networking [2] Near-Optimal Routing Protection for In-Band Software- Defined Networks [3] Threads of dissertation Introduction and background
  • 25.
    25 Topic 2: RuleCaching Background: Whentrafficarrivesataswitch, packetsneedtobeprocessedby local-switch or remote-proxy(e.g.,amiddleboxorevenacontroller). CostMinimizationforRuleCachinginSoftware DefinedNetworking (IEEETPDS2015) Virus Controller controls all switches Arriving flow Server Firewall proxies Client … Allowed flow Ingress switch Malware DoS redirect Redirected flow
  • 26.
    26 Decisions for eachtraffic-flow at each time-slot: Systemmodel Topic 2: Rule Caching remote-processinglocal processing When to install rule? How long to cache the rule? Which way to process packets? 0-1 decisionyt = 0 yt = 1 At time-slot t : Remote cost: expense at the remote proxy. Local cost: expense at the switch. xt = 0 or 1?
  • 27.
    local-processing cost remote-processingcost 27 Total Cost = + Problem: How to Minimize a joint cost ? Given a set of flows and required rules, We normalize the unit cost of local-processing as and remote-processing as Topic 2: Rule Caching Formulation Trigger of remote processing Fetch at least one time before caching Packets in each Time- slot need to be processed
  • 28.
    28 Basic analysis: Typical patternsin an optimal solution: Three elements of optimal solution: Only remote processing Only local processing Hybrid Topic 2: Rule Caching Idea: achieve the goal by deciding: for a flow, whether and when to install rules in a switch, & how long to cache the rules if install them. Algorithm Design valid
  • 29.
    29 How good ofthis algorithm? If the trace of a flow is given, OfflineAlgorithm Topic 2: Rule Caching
  • 30.
    Evaluation of offline-algorithm 30 Proactivealgorithm : rules are only fetched in the first time slot and cached all the remaining duration. Reactive algorithm triggers remote process at each time slot. Topic 2: Rule Caching
  • 31.
    31 How good ofthis algorithm? Online Alg 1: Exactly Match the Flow(EMF) The1st OnlineAlgorithm Topic 2: Rule Caching
  • 32.
    32 Competitive ratio ofthis algorithm: Online Alg 2: fixed length of Extra Caching Alg (ECA) Topic 2: Rule Caching The2nd OnlineAlgorithm
  • 33.
    Evaluationof online algorithms 33 Performanceof Online algs is within theoretical bound Online algs perform better than the original SDN protocol. More experiments to prove the correctness of theoretical bounds for the online algs. Topic 2: Rule Caching
  • 34.
    34 Outline Joint Optimization ofRule Placement and Traffic Engineering for QoS Provisioning in SDN [1] Cost Minimization for Rule Caching in Software Defined Networking [2] Near-Optimal Routing Protection for Software-Defined Networks [3] Threads of dissertation Introduction and background
  • 35.
    35 Background before topic-3 Whenemergent events happen, e.g., earthquake occurs, some critical network links might be disconnected. Routing-protection is an important topic ! Because, in the perspective of Traffic-engineering, we need to guarantee the Min ( network recovery delay ). Topic 3: routing protection
  • 36.
    36 Near-OptimalRoutingProtectionforIn-BandSDNs (TheextensionofthistopichasbeenpublishedinIEEEJSAC,2016.) https://www.researchgate.net/publication/301842070_Near-Optimal_Routing_Protection_for_In-Band_Software- Defined_Heterogeneous_Networks • Motivation: • Thecontroller<->switch connections are critical ( higher priority than the data-plane routing paths ), • disconnection brings very serious damages. • When link failure occurs, the fast recovery is needed. Topic 3: routing protection
  • 37.
    37 • Question: Howto protect the controlling channels? • with a low recovery delay, • with a reasonable cost of switch node-configuration. Topic 3: routing protection
  • 38.
    • Traditional routingprotection • Local routing via Backup paths 38 Related Work Topic 3: routing protection
  • 39.
    39 • Dedicated-backup, e.g.,1+1 (1+N) protection • With no recovery delay at all !! • But with high cost on both terms: • Link ( high-bandwidth consumption ) • Node ( switch-configuration cost ) • Trade-off has to be considered: • If adopt dedicated-backup, • Reduce the ( cost ) ! Optional Approach : Topic 3: routing protection Double backup paths, High cost: double Traffic rate !!
  • 40.
    Formulation • System model •As shown in Figure 2. • Formulation with Obj: • Min ( link-bandwidth cost + connection-setup cost ) 40 Topic 3: routing protection Exact |Ds| number of in-use paths must be selected. Capacity constraints on link. Capacity constraints on node.
  • 41.
    Algorithm • Markov-Approximate basedAlgorithm • Obj: load-balancing + connection-setup cost 41 Define MC Transit between different states Re-Compute transition rate of different states Topic 3: routing protection
  • 42.
  • 43.
    • Simulation • Fat-treeDatacenter network • Representative running case 43 Topic 3: routing protection
  • 44.
    • Comparison withconventional Local routing • on the link-bandwidth consumption 44 Topic 3: routing protection reroute via link (0,4).
  • 45.
    • Convergence propertyof the proposed algorithm • Comparing with other benchmark algs. 45 Topic 3: routing protection
  • 46.
    46 Outline Joint Optimization ofRule Placement and Traffic Engineering for QoS Provisioning in SDN [1] Cost Minimization for Rule Caching in Software Defined Networking [2] Near-Optimal Routing Protection for Software-Defined Networks [3] Threads of dissertation Introduction and background Conclusion and Future Work
  • 47.
    Conclusion and FutureWork • Conclusion • 3 topics related to Cost-optimization problems over Traffic- Engineering & Resource-utilization. • Future work • I am going to focus on the business logics under SDNs: • Network Function Virtualization (NFV) • Resilience and Security enhancement for SDNs 47
  • 48.
    48 Major references inslides: [1] Huawei Huang, Song Guo, Peng Li, Baoliu Ye and Ivan Stojmenovic, “Joint Optimization of Rule Placement and Traffic Engineering for QoS Provisioning in Software Defined Network”, IEEE Transactions on Computers, vol. 64, no. 12, pp. 3488-3499, December 2015. [2] Huawei Huang, Song Guo, Peng Li, Weifa Liang and Albert Y. Zomaya, “Cost Minimization for Rule Caching in Software Defined Networking”, IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 27, no. 4, pp. 1007-1016, April 2016. [3] Huawei Huang, Song Guo, Weifa Liang, Keqiu Li, Baoliu Ye and Weihua Zhuang, "Near-Optimal Routing Protection for In-Band Software- Defined Heterogeneous Networks", IEEE Journal on Selected Areas in Communications (JSAC), vol. 34, no. 11, pp. 2918-2934, October, 2016.