%% fig-cap: "ZRP Zone Structure - Intra-zone (proactive) vs Inter-zone (reactive)"
%% fig-alt: "Diagram showing Zone Routing Protocol zone structure with node A at center, intra-zone nodes B, C, D within radius ρ=2 using proactive routing, and inter-zone nodes E, F, G, H beyond the zone using reactive routing on-demand"
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#ECF0F1'}}}%%
flowchart TD
subgraph IntraZone["🟢 INTRA-ZONE (Proactive - ρ=2)"]
A[("Node A<br/>(Center)")]
B["Node B<br/>1-hop"]
C["Node C<br/>1-hop"]
D["Node D<br/>2-hop"]
E2["Node E<br/>2-hop"]
end
subgraph InterZone["🔵 INTER-ZONE (Reactive)"]
F["Node F<br/>3-hop"]
G["Node G<br/>4-hop"]
H["Node H<br/>5-hop"]
end
A <-->|"Proactive<br/>Route"| B
A <-->|"Proactive<br/>Route"| C
B <-->|"Proactive"| D
C <-->|"Proactive"| E2
D -.->|"Border<br/>Node"| F
E2 -.->|"Border<br/>Node"| F
F -.->|"Reactive<br/>Discovery"| G
G -.->|"Reactive"| H
style A fill:#E67E22,stroke:#2C3E50,stroke-width:3px
style B fill:#16A085,stroke:#2C3E50
style C fill:#16A085,stroke:#2C3E50
style D fill:#F39C12,stroke:#2C3E50,stroke-width:2px
style E2 fill:#F39C12,stroke:#2C3E50,stroke-width:2px
style F fill:#3498DB,stroke:#2C3E50
style G fill:#3498DB,stroke:#2C3E50
style H fill:#3498DB,stroke:#2C3E50
253 Ad Hoc Routing: Hybrid (ZRP)
253.1 Learning Objectives
By the end of this chapter, you will be able to:
- Understand ZRP Architecture: Explain how Zone Routing Protocol combines proactive and reactive approaches
- Design Zone Configurations: Select appropriate zone radius values for different network characteristics
- Analyze Intra-Zone Routing: Describe proactive table maintenance within each node’s zone
- Implement Inter-Zone Routing: Apply reactive discovery for destinations outside the zone
- Evaluate Hybrid Trade-offs: Balance routing overhead, latency, and scalability in ZRP networks
- Compare Protocol Classes: Choose between proactive, reactive, and hybrid protocols for specific scenarios
253.2 Prerequisites
Before diving into this chapter, you should be familiar with:
- Ad Hoc Routing: Proactive (DSDV): Understanding DSDV’s table-driven approach is essential because ZRP uses proactive routing within zones, making DSDV concepts directly applicable to intra-zone routing
- Ad Hoc Routing: Reactive (DSR): Knowledge of DSR’s on-demand route discovery is critical because ZRP employs reactive routing for inter-zone communication, building on DSR’s flooding and route caching mechanisms
- Multi-Hop Fundamentals: Multi-hop networking concepts underpin ZRP’s zone structure, as zone radius is defined in hops and border nodes forward queries across multiple hops
- Networking Basics: Fundamental networking concepts like routing tables, hop counts, and packet forwarding are prerequisites for understanding how ZRP combines proactive and reactive strategies
Imagine planning routes in your city. For nearby places (your neighborhood), you keep routes in your head constantly. For distant places (across the city), you only look up directions when needed. Zone Routing Protocol (ZRP) combines both strategies - the best of proactive and reactive routing!
The Goldilocks Protocol:
- Proactive (DSDV): Too much overhead (maintains routes to everywhere continuously)
- Reactive (DSR): Discovery delay for every communication
- Hybrid (ZRP): Just right! Maintains routes only to nearby nodes, discovers distant routes on-demand
How ZRP Works: The Neighborhood Concept
Each node defines a “zone” around itself (like knowing your neighborhood well): - Zone Radius: Distance in hops defining your neighborhood (typically 2-3 hops) - Inside Zone: You maintain routes proactively (like knowing every house on your block) - Outside Zone: You discover routes reactively only when needed (like looking up distant addresses)
Example with Zone Radius = 2:
Node A’s zone includes all nodes within 2 hops: - 1-hop away: Direct neighbors B, C (always know how to reach them) - 2-hops away: Neighbors’ neighbors D, E (proactively maintain routes) - 3+ hops away: F, G, H (discover routes only when needed)
Result: A maintains ~10-12 routes instead of 100 routes (saves 90% memory and overhead!)
| Term | Simple Explanation | Everyday Analogy |
|---|---|---|
| Zone Routing | Combine proactive nearby, reactive distant | Know neighborhood, Google Maps for across town |
| Zone Radius | Size of your local zone in hops | “I know everyone within 2 blocks” |
| Intra-Zone Routing | Proactive routing within your zone | Knowing all streets in your neighborhood |
| Inter-Zone Routing | Reactive routing between zones | Looking up directions to other neighborhoods |
| Border Nodes | Nodes at edge of your zone | Houses at corner of your neighborhood block |
| Bordercast | Send queries only to border nodes | Ask only edge-of-neighborhood residents |
The Smart Discovery Process:
When A needs to send to distant node H: 1. Local Check: A checks zone table - “H not in my zone” 2. Bordercast: A sends query to border nodes (D, E) - not full network flood! 3. Border Propagation: D and E check their zones - “Not here either” 4. Zone Overlap: Eventually query reaches zone containing H 5. Local Delivery: That zone delivers to H using proactive routes 6. Reply: Route sent back to A
Comparison:
| Aspect | DSDV | DSR | ZRP |
|---|---|---|---|
| Routes maintained | All nodes | None | Only nearby (zone) |
| Discovery needed | Never | Always | Only for distant |
| Overhead when idle | High | Zero | Low (zone only) |
| Latency to nearby | Low | Medium | Low |
| Latency to distant | Low | High | Medium |
| Memory usage | High | Low | Medium |
Zone Radius Selection - The Critical Choice:
Small Zone (radius=1): - Pros: Low proactive overhead (few nodes), low memory - Cons: Frequent discoveries (most destinations outside zone) - Best for: Sparse networks, infrequent communication
Large Zone (radius=5): - Pros: Most destinations in zone, fewer discoveries - Cons: High proactive overhead, large routing tables - Best for: Dense networks, frequent communication
Optimal (radius=2-3): - Balances both approaches for most IoT networks - ~10-20 nodes per zone in typical mesh
When to Use ZRP:
- ✅ Medium to large IoT networks (100-1000 nodes)
- ✅ Clustered topology (sensors grouped around gateways)
- ✅ Mixed traffic patterns (frequent local, occasional distant)
- ✅ Moderate mobility (zone structure adapts gracefully)
- ❌ Very small networks (just use DSR)
- ❌ Very large dense networks (zone overhead too high)
Why This Matters for IoT:
Many IoT deployments have clustered communication patterns - sensors talk frequently to nearby devices and their local gateway, but rarely to distant sensors. ZRP perfectly matches this pattern: fast local communication (proactive) + efficient distant communication (reactive) + lower overhead than pure proactive!
Deep Dives: - Ad Hoc Routing: Proactive (DSDV) - Proactive routing fundamentals - Ad Hoc Routing: Reactive (DSR) - Reactive routing fundamentals - Ad-hoc Fundamentals - Ad-hoc network basics
Protocols: - Multi-Hop Fundamentals - Multi-hop routing concepts - Routing Fundamentals - General routing - RPL Routing - IoT-specific routing
Architecture: - Wireless Sensor Networks - WSN architectures - DTN and Social Routing - Delay-tolerant approaches
Comparisons: - Ad-hoc Production and Review - Protocol comparison - Network Topologies - Topology options
Advanced Topics: - Ad-hoc Labs and Quiz - Hands-on implementation - UAV Networks - Flying ad-hoc networks
Learning: - Simulations Hub - ZRP simulators - Network Design - Network testing
253.3 Hybrid Routing: Zone Routing Protocol (ZRP)
Zone Routing Protocol (ZRP) combines proactive and reactive approaches to balance their trade-offs.
253.3.1 ZRP Concept
ZRP divides the network into zones centered on each node:
Alternative View:
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085'}}}%%
flowchart TD
START([Node A needs to<br/>send to Node X]) --> CHECK{Is X in<br/>Zone Table?}
CHECK -->|Yes: X within ρ hops| INTRA[INTRA-ZONE ROUTING<br/>Use IARP proactive route]
CHECK -->|No: X beyond zone| INTER[INTER-ZONE ROUTING<br/>Initiate IERP discovery]
INTRA --> DIRECT[Send directly via<br/>cached zone route]
DIRECT --> DONE([Data Delivered<br/>Low latency])
INTER --> BORDER[Identify Border Nodes<br/>at zone edge]
BORDER --> BCAST[BORDERCAST query<br/>to border nodes only]
BCAST --> BCHECK{Border nodes<br/>check their zones}
BCHECK -->|X found in<br/>neighbor zone| FOUND[Route discovered<br/>via zone overlap]
BCHECK -->|X not found| PROPAGATE[Forward bordercast<br/>to next border tier]
PROPAGATE --> BCHECK
FOUND --> REPLY[Route Reply<br/>returns to A]
REPLY --> CACHE[Cache discovered<br/>route]
CACHE --> SEND[Send data via<br/>discovered path]
SEND --> DONE2([Data Delivered<br/>Medium latency])
style START fill:#16A085,color:#fff
style CHECK fill:#2C3E50,color:#fff
style INTRA fill:#16A085,color:#fff
style INTER fill:#E67E22,color:#fff
style DONE fill:#16A085,color:#fff
style DONE2 fill:#16A085,color:#fff
style BORDER fill:#7F8C8D,color:#fff
style BCAST fill:#E67E22,color:#fff
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085'}}}%%
graph TB
subgraph DSDV["PROACTIVE (DSDV)"]
D_ALL[Routes to ALL 100 nodes<br/>maintained continuously]
D_UP[Updates every 15s<br/>10,000 msgs/hour]
D_MEM[Memory: 100 entries]
D_LAT[Latency: 0ms always]
end
subgraph DSR["REACTIVE (DSR)"]
R_NONE[No routes maintained<br/>Zero idle overhead]
R_DIS[Discover when needed<br/>500 msgs/discovery]
R_MEM[Memory: Cache only]
R_LAT[Latency: 200-500ms first pkt]
end
subgraph ZRP["HYBRID (ZRP ρ=2)"]
Z_ZONE[Routes to 12 zone nodes<br/>proactively]
Z_UP[Zone updates + bordercasting<br/>1,500 msgs/hour]
Z_MEM[Memory: 12 entries]
Z_LAT[Latency: 0ms local<br/>100ms distant]
end
subgraph Verdict["OVERHEAD COMPARISON"]
V1[DSDV: 100% always]
V2[DSR: 5% idle, spikes on use]
V3[ZRP: 15% balanced]
end
style DSDV fill:#E74C3C,color:#fff
style DSR fill:#E67E22,color:#fff
style ZRP fill:#16A085,color:#fff
style Verdict fill:#2C3E50,color:#fff
style D_ALL fill:#7F8C8D,color:#fff
style R_NONE fill:#7F8C8D,color:#fff
style Z_ZONE fill:#7F8C8D,color:#fff
Zone Definitions:
- Intra-Zone (Proactive):
- Within zone radius, maintain routes proactively using table-driven protocol (like DSDV)
- Inter-Zone (Reactive):
- Beyond zone, use on-demand route discovery (like DSR)
- Zone Radius:
- Configurable parameter ρ (rho) defining zone size in hops
253.3.2 ZRP Components
%% fig-cap: "ZRP Protocol Components Architecture"
%% fig-alt: "Block diagram showing Zone Routing Protocol three main components: IARP for intra-zone proactive routing, IERP for inter-zone reactive routing, and BRP for bordercast resolution, with their interactions and data flows"
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#ECF0F1'}}}%%
flowchart TB
subgraph ZRP["Zone Routing Protocol (ZRP)"]
subgraph IARP["IARP - Intra-zone Routing"]
I1["Proactive Updates"]
I2["Zone Table<br/>Maintenance"]
I3["Routes to ρ-hop<br/>Neighbors"]
end
subgraph IERP["IERP - Inter-zone Routing"]
E1["On-Demand<br/>Discovery"]
E2["Route Request<br/>(RREQ)"]
E3["Route Reply<br/>(RREP)"]
end
subgraph BRP["BRP - Bordercast Resolution"]
B1["Border Node<br/>Detection"]
B2["Query<br/>Propagation"]
B3["Flood<br/>Reduction"]
end
end
I2 --> B1
B1 --> E1
E2 --> B2
B3 --> E3
style IARP fill:#16A085,stroke:#2C3E50,color:#fff
style IERP fill:#E67E22,stroke:#2C3E50,color:#fff
style BRP fill:#3498DB,stroke:#2C3E50,color:#fff
IARP (Intra-zone Routing Protocol): - Proactive protocol within zone - Nodes exchange periodic updates - Maintain routes to all nodes within ρ hops - Example: Modified DSDV with limited hop count
IERP (Inter-zone Routing Protocol): - Reactive protocol for distant nodes - Route requests propagated via border nodes - Similar to DSR but leverages zone structure
BRP (Bordercast Resolution Protocol): - Efficient query propagation - Route requests sent only to zone border nodes - Reduces flooding overhead
253.3.3 ZRP Operation Example
Scenario: Node A needs to communicate with Node H
%% fig-cap: "ZRP Route Discovery Process from A to H"
%% fig-alt: "Sequence diagram showing ZRP inter-zone route discovery: Node A checks local IARP table, bordercasts to border nodes B C D, border nodes check their zones and forward, eventually reaching zone containing H, then route reply returns to A"
%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#ECF0F1'}}}%%
sequenceDiagram
participant A as Node A<br/>(Source)
participant B as Border B
participant C as Border C
participant D as Border D
participant F as Node F
participant H as Node H<br/>(Dest)
Note over A: 1. Check IARP table<br/>H not in zone
A->>B: 2. Bordercast RREQ
A->>C: 2. Bordercast RREQ
A->>D: 2. Bordercast RREQ
Note over B,D: 3. Check own zones<br/>H not found
B->>F: 4. Forward RREQ
D->>F: 4. Forward RREQ
Note over F: Check zone<br/>H in zone!
F->>H: 5. IARP local delivery
H-->>F: 6. RREP
F-->>D: 6. RREP
D-->>A: 6. RREP
Note over A: 7. Route established<br/>Send data via D→F→H
Step-by-Step:
Local lookup: A checks IARP table (proactive zone routes)
- H not within zone radius
Bordercast: A sends RREQ to zone border nodes (not full flood)
- Border nodes: B, C, D
Border propagation: Border nodes check their zones
- If H not found, forward RREQ to their borders
Zone overlap: Eventually RREQ reaches zone containing H
- That zone’s node uses IARP to reach H locally
Route reply: RREP sent back to source
Data transmission: Source uses discovered route
Scenario: A university deploys 200 IoT sensors across a campus for environmental monitoring. Sensors communicate frequently with nearby peers (within buildings) but occasionally need to reach sensors in distant buildings.
Given: - 200 nodes across 5 buildings - Average node degree: 6 neighbors per node - 70% of communication is local (same building) - 30% of communication is cross-building (distant) - Battery-powered sensors (energy efficiency critical)
Steps: 1. Estimate nodes per zone radius: - ρ=1: ~6 nodes (direct neighbors only) - ρ=2: ~6 + (6×5) = 36 nodes (accounting for overlap ~25 nodes) - ρ=3: ~75-100 nodes (approaching building-wide coverage)
- Analyze traffic patterns:
- 70% local traffic → most destinations should be in-zone
- Average building has 40 nodes
- ρ=2 covers ~25 nodes (62% of building) - insufficient
- ρ=3 covers ~75 nodes (covers full building) - matches traffic pattern
- Calculate overhead trade-off:
- ρ=2: Proactive for 25 nodes, reactive for 175 (many discoveries)
- ρ=3: Proactive for 40 nodes, reactive for 160 (fewer discoveries)
- Cross-building: 30% traffic × reactive discovery overhead
Result: Zone radius ρ=3 is optimal because: - Covers entire buildings proactively (matches 70% local traffic) - Only cross-building communication (30%) requires reactive discovery - Proactive overhead: 40 entries (acceptable for campus sensors)
Key Insight: Match zone radius to your communication locality. If most traffic is within a certain hop range, set ρ to cover that range proactively. The campus’s building-clustered topology made ρ=3 ideal for intra-building coverage.
Scenario: Node A needs to send critical alarm data to Node H (fire detected). Calculate the route discovery overhead comparing ZRP bordercast versus full network flood (DSR-style).
Given: - Network: 100 nodes, average degree 5 - Zone radius ρ=2 - Node A has 4 border nodes (B, C, D, E) - Each border node has 3-4 external connections - H is 5 hops away from A
Steps: 1. Calculate DSR-style full flood: - RREQ flooded to all 100 nodes - Each node rebroadcasts once: 100 transmissions - Network-wide overhead: 100 RREQ packets
- Calculate ZRP bordercast:
- A sends RREQ to 4 border nodes only (not all neighbors)
- Border nodes check their zones (4 nodes × 25 zone members = 100 lookups, but local)
- H not found → bordercasting continues from border of border
- Tier 1: 4 bordercasts
- Tier 2: 4 borders × 3 external connections = 12 bordercasts
- Tier 3: H found in zone of tier-2 border node
- Total: 4 + 12 + local lookup = ~16 transmissions
- Compare overhead:
- DSR: 100 transmissions (full flood)
- ZRP: 16 transmissions (bordercast)
- Savings: 84% reduction in discovery overhead
Result: ZRP discovered route to H with only 16 messages vs 100 for full flooding.
Key Insight: Bordercast efficiency comes from leveraging zone knowledge - each border node already knows its zone members proactively, so inter-zone discovery only floods between zones, not within them. The larger the zones relative to network size, the greater the savings.
253.3.4 ZRP Zone Radius Selection
The zone radius ρ critically affects performance:
| Zone Radius | Proactive Overhead | Reactive Overhead | Best Use Case |
|---|---|---|---|
| ρ = 1 | Low | High | Sparse networks, infrequent communication |
| ρ = 2 | Low-Medium | Medium | Optimal for most IoT deployments |
| ρ = 3 | Medium | Low-Medium | Dense networks, frequent local traffic |
| ρ = 4 | High | Low | Very dense networks |
| ρ = 5 | Very High | Very Low | Static networks with heavy local traffic |
Small Zone Radius (ρ=1): - Low proactive overhead (few nodes in zone) - High reactive overhead (frequent inter-zone queries) - Good for sparse communication
Large Zone Radius (ρ=4-5): - High proactive overhead (many nodes in zone) - Low reactive overhead (most destinations in zone) - Good for frequent communication
Optimal Radius: - Depends on network size, topology, traffic patterns - Typically ρ = 2-3 for IoT deployments - Adaptive schemes adjust ρ based on observed traffic
253.3.5 ZRP Performance Characteristics
This chapter connects to multiple learning resources:
Simulations Hub: - Network Simulations - Interactive ZRP zone visualization and bordercast simulation tools
Videos Hub: - Routing Protocol Videos - Visual explanation of ZRP operation and zone configuration
Quizzes Hub: - Ad-hoc Routing Quizzes - Self-assessment on hybrid routing concepts
Knowledge Gaps Hub: - Common Routing Misconceptions - Addressing confusion between proactive, reactive, and hybrid approaches
Misconception: Students often believe that increasing zone radius always improves ZRP performance by reducing route discovery overhead.
Reality: Zone radius selection involves critical trade-offs:
Zone Radius Too Large (ρ=5-7): - ❌ High proactive overhead - maintaining routes to 50-100 nodes continuously - ❌ Excessive update traffic - periodic routing updates flood the zone - ❌ Memory consumption - large routing tables on resource-constrained IoT nodes - ❌ Approaches pure DSDV overhead (defeats hybrid purpose)
Zone Radius Too Small (ρ=1): - ❌ Frequent reactive discoveries - most destinations outside zone - ❌ High bordercast overhead - constant route requests - ❌ Increased latency - must discover routes even to nearby nodes - ❌ Approaches pure DSR behavior (defeats hybrid purpose)
Optimal Zone Radius (ρ=2-3): - ✅ Balances proactive maintenance (~10-20 nodes) with reactive discovery - ✅ Low latency for frequent local communication (within zone) - ✅ Efficient discovery for occasional distant communication (reactive) - ✅ Matches IoT clustered communication patterns (sensors → gateway)
The Math: In a mesh network with average degree d=5: - ρ=1: ~5 nodes in zone (very reactive) - ρ=2: ~10-15 nodes in zone (balanced) ← Optimal - ρ=3: ~25-50 nodes in zone (mostly proactive) - ρ=4: ~75-125 nodes in zone (approaching DSDV overhead)
Key Insight: ZRP’s advantage comes from matching zone size to communication patterns, not maximizing zone size. Analyze your network’s traffic locality before choosing ρ!
253.5 Visual Reference Gallery
This diagram illustrates the fundamental structure of ad hoc networks where ZRP operates, showing how nodes organize themselves into a mesh without centralized control.
This visualization shows the taxonomy of ad hoc routing protocols, positioning ZRP as the hybrid approach that combines proactive and reactive strategies.
A geometric view of ad hoc network architecture, emphasizing the zone-based structure that ZRP leverages for efficient routing.
253.6 Summary
This chapter covered ZRP (Zone Routing Protocol) as a hybrid routing approach for ad hoc networks:
- Hybrid Architecture: ZRP combines proactive routing within local zones (IARP) and reactive discovery between distant zones (IERP) to balance overhead and latency
- Zone-Based Design: Each node defines a routing zone with configurable radius ρ, maintaining proactive routes to all nodes within ρ hops while using on-demand discovery beyond
- Protocol Components: IARP handles intra-zone routing using table-driven updates, IERP manages inter-zone reactive discovery, and BRP enables efficient bordercast query propagation
- Zone Radius Selection: Critical parameter ρ determines trade-off between proactive overhead (grows with larger zones) and reactive discovery frequency (increases with smaller zones)
- Bordercast Optimization: Route requests sent only to zone border nodes rather than full network flooding, significantly reducing discovery overhead compared to pure reactive protocols
- Performance Characteristics: ZRP achieves low latency for nearby destinations (proactive), scalable distant communication (reactive), and reduced flooding overhead (bordercasting)
- Optimal Configuration: Typical zone radius ρ = 2-3 hops balances proactive maintenance costs with reactive discovery needs, though optimal value depends on network size, density, and traffic patterns
253.7 What’s Next
The next chapter explores Ad Hoc DTN and Social Routing, covering delay-tolerant networks, store-carry-forward paradigms, epidemic routing, and social-based forwarding for disconnected and intermittent connectivity scenarios.