Chapters

18 SDN for IoT: WSN and Mobile Variants

reference-architectures
sdn
iot

18.1 Start With the Decision

A WSN node and a roaming handset expose different control surfaces. Named SDN designs show where rules, state, and prediction can live.

18.2 Route Overview

This is part 2 of 3. Review SDN for IoT: Service Paths for the preceding evidence.

18.3 Learning Objectives

  • Compare SDN-WISE and mobile SDN control pipelines.
  • Place mobility rules from prediction and local state.

18.4 Chapter Roadmap

  • Named WSN and Mobile SDN Variants
  • Containment and Recovery

18.5 Named WSN and Mobile SDN Variants

Use named research variants as examples of the proof questions above, not as labels that approve a design by themselves. Sensor OpenFlow proposed value-centric and ID-centric flow rules for sensor networks. Soft-WSN separated a sensor data plane from a more capable control plane so topology, quality-of-service, and energy policy could be coordinated. SDN-WISE pushed stateful packet processing and controlled rule behavior into the wireless sensor network. These are historical research designs, not a promise that a maintained package or interoperable profile exists today.

The constrained-fit test is therefore operational. Count rule-table bytes, control messages, radio-on time, reconfiguration delay, and the work that remains safe when the controller is unreachable. A gateway-mediated design may keep tiny nodes simple; an in-network rule engine may react locally but consumes scarce memory and energy. Central visibility only helps if synchronization traffic, lossy acknowledgements, and controller latency do not cost more than the policy saves.

Mobile SDN research examples focus on access-point and base-station attachment. ODIN used a lightweight virtual access point so client state could follow a user while a controller coordinated physical access points. Ubi-Flow partitioned wireless infrastructure so mobility management, flow scheduling, fault tolerance, and load balancing could be scoped to a controller region. Mobi-Flow explored prediction and pre-placement of rules at candidate attachment points. Treat those names as historical mechanisms; the durable patterns are state transfer, bounded prediction, pre-positioned policy, old-rule cleanup, regional controller scope, and an explicit fallback when the prediction or controller fails.

When you review any of these variants, record the same evidence: attachment state before and after movement, rule placement scope, old-rule cleanup, packet-in or control-message overhead, receiver proof, protected traffic exceptions, and failure behavior when the controller or access point is unavailable. A variant is useful only if those records show better service, lower overhead, or safer recovery for the specific IoT traffic class.

Durable mobility questionEvidence to retain
Where should the next rule live?Candidate attachment points, path cost, policy scope, and prediction confidence
When may state move?Handoff trigger, freshness bound, authorization decision, and acknowledgement
What must be removed?Old attachment, stale rule IDs, expiry time, and counter snapshot
What if prediction is wrong?Restricted default path, controller retry budget, receiver result, and rollback owner

18.5.1 Historical WSN Control Surfaces

Sensor OpenFlow and Soft-WSN are useful because they make “programmable sensor network” concrete. A value-centric rule matches the observation, such as temperature > 40 °C, and forwards an event because of what it means. An ID-centric rule matches the originating node and forwards because source_id = pump-17. The first supports in-network event selection; the second preserves source-specific routes, permissions, and diagnostics. In either case the rule needs priority, lifetime, units, invalid-value behavior, and a local fallback.

Soft-WSN broadened the control surface beyond forwarding:

Control surfaceExample actionEvidence before/after
Sensor selectionenable the vibration channel on a multi-sensor board, leave temperature at baselineselected channel, sample validity, energy and application result
Sensing delaychange sampling period from 60 s to 10 s during an eventcommand version, effective time, freshness, airtime, and battery cost
Active/sleep statewake relays on a threatened route or place redundant nodes in sleepwake acknowledgement, coverage, latency, and remaining lifetime
Node-specific topologychange one node’s next hop or drop ruletarget rule, neighbor/path state, counter movement, and expiry
Network-wide topologyforward or suppress a node’s traffic across the networkscope, protected exceptions, delivery ratio, duplicate traffic, and rollback

The last distinction is easy to miss. A rule installed at node A is not necessarily node-specific in effect; “all nodes drop source X” is network-wide policy and needs coordinated versioning. Likewise, selecting a sensor can change payload size and downstream queue pressure, so control surfaces cannot be approved independently.

One reported Soft-WSN experiment showed packet-delivery ratio near the mid-90% range while a comparison WSN varied around roughly 40–50%, and showed far fewer replicated data packets. The same experiment showed more control messages for Soft-WSN. Those plot values are historical results for one setup, not performance guarantees. They expose the engineering exchange: controller knowledge can reduce wasteful data replication and improve chosen paths, but only by paying synchronization and miss-handling overhead. Re-run the comparison with radio-on time, useful delivered bytes, control bytes, drops, and energy per useful report.

Figure 18.1 compresses this subsection into one review sheet: the four controller levers on top, and beneath them the three meters that decide whether pulling a lever actually paid.

A control plane holding topology, energy, and QoS state fans out to four levers: sensor selection, sensing delay, active/sleep state, and forwarding scope, each with a concrete action; a meter panel of illustrative before-and-after bars shows delivery rising from 45 to 94 percent, duplicates falling from 250 to 75, and control messages rising from 60 to 240, with a caution to meter all three on the same clock.
Figure 18.1: A Soft-WSN-style control surface with its acceptance meters: delivery bought, duplicates removed, control messages paid.

The rail in Figure 18.1 fans the controller’s policy view out to four levers — Sensor selection, Sensing delay, Active/sleep state, and Forwarding scope — each phrased as one concrete, evidence-bearing action, such as moving sampling from 60 s to 10 s or waking two relays on a threatened route. The meter panel repeats the historical result as an honest trade: delivery near the mid-90s and duplicates collapsing while Control msgs roughly quadruple. Read those bars as illustrative shapes rather than guarantees; the durable obligation is the amber line — meter all three quantities on the same clock, before and after any lever is pulled.

18.5.2 SDN-WISE Node Pipeline

An SDN-WISE-style node places programmability inside a constrained IEEE 802.15.4 device. Read the node from the radio upward:

  1. The 802.15.4 radio and MAC receive a frame, validate link-layer framing, and expose source, destination, type, and payload to the MCU.
  2. A flow-rule forwarding layer above the MAC evaluates match fields plus node state. A hit applies actions such as forward, drop, modify state, or invoke a processing function.
  3. In-Network Packet Processing (INPP) performs a bounded local operation—aggregation, thresholding, state update, or packet transformation—without a controller round trip.
  4. On a miss, the node sends a PACKET_IN-style control message toward the controller and follows a bounded local policy while waiting.
  5. The returned rule is validated, inserted with priority and timeout, and then used for the buffered packet and later matches.

Those five steps hold together better as a picture. Figure 18.2 stacks the node the way the frame experiences it, then splits on the only decision that costs radio: hit or miss.

A node stack read bottom up: 802.15.4 radio and MAC, a flow-rule layer matching fields plus node state, and INPP for bounded local processing. A frame climbs to the rule lookup; a hit applies the action locally for zero control bytes, a miss buffers the packet and sends PACKET_IN toward the controller h hops away, and the returned rule is validated and installed before the buffered packet leaves. A miss-tax card gives the control-traffic formula.
Figure 18.2: An SDN-WISE-style node: the stack a frame climbs, the local hit path, and the controller round trip a miss must pay for.

The stack at the top of Figure 18.2 places the Flow-rule layer directly above the 802.15.4 radio + MAC, with INPP available for bounded local work. A hit resolves inside the node for 0 control bytes spent; a miss buffers the packet and sends a PACKET_IN across h radio hops, and only after the returned rule is validated and installed does the buffered packet leave — from then on the same match is a local hit. The Miss tax card restates this subsection’s formula, and it names the quantity to bound before believing any in-network processing saving.

Unknown packets are not free. If miss rate is λm\lambda_m and the routed control exchange costs bin+bruleb_{in}+b_{rule} bytes over an average hh radio hops each way, offered control traffic is approximately

Rcontrol=λmh(bin+brule)R_{control}=\lambda_m h(b_{in}+b_{rule})

before MAC headers, acknowledgements, retransmissions, or state synchronization. A simple radio-energy estimate is

EcontrolNtxEtx/frame+NrxErx/frame,E_{control}\approx N_{tx}E_{tx/frame}+N_{rx}E_{rx/frame},

which reminds us that relays pay too. In a dense low-power network, a rule miss can consume energy at several nodes even when no application data is delivered.

Bound the pipeline with a small default table, maximum rule count, maximum INPP runtime, miss retry/backoff, authenticated rule origin, and behavior during controller loss. Measure control/data byte ratio, radio-on time, rule-hit ratio, insertion failure, local processing latency, and useful delivery. Stateful local processing is valuable only when it saves more communication and delay than its memory, computation, and synchronization cost.

18.5.3 Mobile Access Control Mechanisms

ODIN separates an agent at each access point from a master at the controller. The agent handles 802.11 frames and enforces client-specific state; the master coordinates policy and mobility. A light virtual access point (LVAP) is a per-client logical AP context—client identity, BSSID/SSID association context, policy and forwarding attachment, plus the security/session material the implementation explicitly supports. Keeping it per client lets state move without pretending the physical AP moved.

For a new client, the serving agent checks whether an LVAP exists. Known data frames are forwarded under that context; an unassigned frame is not silently bridged. For relevant management frames without an LVAP, the agent asks the master. The master authenticates/authorizes the request, assigns an LVAP, sends it to the agent, and only then permits normal processing.

A hand-off should be ordered:

  1. Detect a candidate target AP from measured link and load evidence; do not move on RSSI alone.
  2. The master checks that target policy and capacity can host the client.
  3. Install the LVAP and downstream path at the target, retaining a version and acknowledgement.
  4. Switch client delivery to the target and verify receiver/session continuity.
  5. Remove or expire old-agent state; late frames and duplicate delivery need explicit handling.
  6. Record hand-off latency, loss, stale-state duration, and rollback if the target fails.

Ubi-Flow adds a regional scaling sequence. First partition APs and switches into controller regions so no controller owns an unbounded wireless estate. Next match a moving client and required service to an eligible region/controller using location, policy, and reachability. Then load-balance within or across allowed regions using controller load, AP capacity, path cost, and failure-domain constraints. On cross-region movement, transfer the minimum fresh state, pre-install the new path, and clean up both data-plane and controller ownership. Partitioning without an overlap/partition-failure rule merely moves the outage boundary.

Both mechanisms fit one page once they are drawn as state movements. Part A of Figure 18.3 replays the ODIN assignment as a two-lane exchange; part B shows the UbiFlow estate a client moves across.

Part A: a sequence between an AP agent and a controller master in which a frame arrives with no LVAP, the agent holds it and asks the master, the master authorizes and assigns the LVAP, and the agent installs it. A note defines the LVAP as the client’s identity, association context, policy, and forwarding path. Part B: two controller regions, C1 owning APs A1 and A2 where the client sits, C2 owning the chosen A3 and the busy A4, with numbered steps for partition, match, balance, pre-install, hand-off, and stale-state cleanup.
Figure 18.3: ODIN’s LVAP assignment as an agent-master exchange, then a UbiFlow-style split into controller regions during one client move.

In part A of Figure 18.3, follow the two lifelines downward: the AP agent holds an unassigned frame rather than silently bridging it, asks the Ctrl master, and installs the returned LVAP before normal processing resumes — from that point the client’s identity, association context, policy, and path exist as portable state. Part B moves that state across an estate: Region 2 · C2 hosts the crossing because A3 · chosen beats the loaded A4, rules wait before the client lands, and step 5 expires A2’s stale copy after a grace period. The caution names the part reviews usually skip — partitioning without an owner for the client mid-crossing merely relocates the outage.

18.5.4 Mobi-Flow Prediction and Rule Placement

Mobi-Flow turns recent attachment history into proactive rule placement. For an Order-KK Markov predictor, the state at time tt is the last KK locations,

Ht=(LtK+1,,Lt),H_t=(L_{t-K+1},\ldots,L_t),

and transition counts estimate

P(Lt+1=jHt)=N(Htj)+αu[N(Htu)+α].P(L_{t+1}=j\mid H_t)=\frac{N(H_t\rightarrow j)+\alpha}{\sum_{u}[N(H_t\rightarrow u)+\alpha]}.

α>0\alpha>0 is optional smoothing so an unseen transition is not assigned impossible probability. With K=2K=2, if history (AP-A, AP-B) was followed by AP-C six times and AP-D twice, the unsmoothed next-location vector is 0.75 for C and 0.25 for D. Higher KK can capture a route but fragments the evidence into sparse histories, so validate prediction accuracy by confidence band and time of day rather than always increasing order.

Prediction does not itself select where rules should be installed. Let binary xjx_j mean “pre-place at AP jj.” One useful optimisation is

minxj[cjinstallxj+cjmisspj(1xj)+cjenergyxj]\min_x\sum_j\left[c_j^{install}x_j+c_j^{miss}p_j(1-x_j)+c_j^{energy}x_j\right]

subject to

jxjB,loadj+xjrcapacityj,\sum_j x_j\le B,\qquad load_j+x_jr\le capacity_j,

plus authorization, path, and failure-domain constraints. pjp_j is predicted attachment probability, BB is the pre-install rule budget, and rr is the rule/resource cost. The linear program may choose both C and D when their combined avoided-miss cost exceeds install cost, or only C when TCAM and energy are tight.

Run the mechanism as a controlled loop: observe the new location, update the KK-state history, produce probabilities and confidence, solve the bounded placement problem, install rules at selected APs, confirm acknowledgements, perform the hand-off, then remove unused/stale rules after a short grace period. If the user attaches somewhere unpredicted, fall back to reactive placement without blocking the session. Track top-nn prediction accuracy, proactive hit rate, unused-rule fraction, TCAM occupancy, control bytes, hand-off loss, and energy. Historical plots reported lower control overhead and energy than conventional reactive placement as node count rose; only a repeatable local benchmark can show whether prediction, extra state, and cleanup deliver that advantage here.

Figure 18.4 runs that controlled loop once with this subsection’s own numbers, from the K=2K=2 history to the cleanup that keeps the next prediction honest.

Five numbered steps: a K equals 2 history window holding AP-A then AP-B, prediction from counts giving 0.75 for C and 0.25 for D, selection under a rule budget respecting AP capacity, pre-install then hand off, and cleanup after a grace. A red strip covers the reactive fallback for unpredicted attachments, and an illustrative indexed chart shows control bytes at 62 and energy at 71 against a reactive baseline of 100.
Figure 18.4: One pass of Mobi-Flow’s loop with this subsection’s numbers, plus the illustrative overhead and energy comparison against reactive placement.

Steps 1-3 at the top of Figure 18.4 turn the history (AP-A, AP-B) into P(C)=0.75, P(D)=0.25 from six-of-eight past continuations, then spend the rule budget on C alone unless capacity allows D as well. Steps 4-5 are the operational half — Pre-install, then hand off with acknowledgements confirmed, and Clean up after a grace so stale rules cannot mislead the next decision — while the red strip protects the session when the prediction is simply wrong. The indexed bars, control bytes at 62 and energy at 71 against a reactive 100, are shapes from one historical setup; the amber line lists the counters that would prove or refute them on your network.

18.6 Containment and Recovery

SDN containment should be narrow, reversible, and exception-aware.

The next containment and recovery step needs Containment that preserves IoT recovery paths as a visual checkpoint. At Figure 18.5, Receiver supplies the relationship to challenge: SDN IoT containment and recovery workflow.

Containment workflow showing suspicious traffic, confidence gate, exception boundary, scoped SDN action, switch acknowledgement, receiver proof, rollback owner, and review record.
Figure 18.5: SDN IoT containment and recovery workflow

The route through Figure 18.5 is figure-specific: Containment that preserves IoT recovery paths states one concern, Receiver names another, and receiver-side evidence closes the scope. That structure supports containment and recovery: SDN IoT containment and recovery workflow.

Containment options include:

  • Metering a suspicious traffic class.
  • Redirecting traffic to inspection.
  • Mirroring traffic for inspection.
  • Blocking a narrow destination or service.
  • Isolating a device group while preserving management and recovery paths.

Avoid broad deny rules that cut off alarms, updates, operator access, or rollback mechanisms.

18.7 Continue to the Next Part

Carry this evidence into SDN for IoT: Assurance and Proof Records, which begins with Service Assurance.