Day objective — the application-aware overlay (SD-WAN), its standard (MEF 70.1) and security context (SASE/Zero-Trust), then LSO's seven reference points and the Sonata POQ → Quote → Order workflow you execute in Lab 4.
SD-WAN Concept
SD-WAN applies the SDN idea to the WAN edge: a central policy decides, per application, which transport each flow uses — broadband, LTE/5G or MPLS — continuously, based on measured path quality.
- Application-aware networking — flows are classified to named applications (DPI/signatures/SNI), not just 5-tuplesclassify → policy → steer → re-evaluatefirst packets identify the app
- Policy-driven connectivity — intent like "voice: latency ≤ 150 ms, prefer private transport" compiled to per-edge forwarding behaviorMEF 70.1 Policy Criteriabrown-out → re-steer in seconds
- Transport independence — broadband, LTE/5G and MPLS are interchangeable underlays under one encrypted overlayIPsec tunnels · TVC over UCSunderlay can be a MEF service (Day 3)
- Why now — cloud-bound traffic made MPLS-only backhaul slow and expensive; SD-WAN uses cheap capacity without losing control
SD-WAN Architecture & Components
An SD-WAN deployment is a small distributed system with a deliberate split of concerns: a management plane you drive (the orchestrator), a control plane that distributes state (controllers), and a data plane that moves packets (edges) — all over an encrypted overlay kept independent of the underlays it rides. Four roles, three planes. Walk the scenes below: how a site comes online, how it forwards, how it survives a controller outage, and how it reaches the cloud — then drive a single packet through one edge, stage by stage.
| Component | Plane | Responsibility | If it fails |
|---|---|---|---|
Edge device | Data | Terminates tunnels; classifies apps; enforces policy per packet; measures path SLA (loss/latency/jitter) with active probes | That site loses service — other sites unaffected (distributed data plane) |
Controller | Control | Distributes reachability, keys and policy to edges — the overlay's "routing brain"; never touches user packets | Edges keep forwarding on last-known state; only changes pause until it returns |
Orchestrator | Management | Zero-touch provisioning, policy authoring, monitoring, multi-site/tenant lifecycle — the operator's single pane | You lose visibility & the ability to push changes; the running network keeps running |
Gateway | Data | Optional on-ramp: interconnects the overlay with cloud providers or legacy MPLS/Internet domains | Cloud/legacy reach via that on-ramp degrades; site-to-site overlay is unaffected |
| Neutral role | Cisco Catalyst SD-WAN (Viptela) | VMware VeloCloud | Fortinet Secure SD-WAN | Versa |
|---|---|---|---|---|
| Orchestrator · mgmt | vManage | SD-WAN Orchestrator (VCO) | FortiManager | Director |
| Controller · control | vSmart (OMP) | Controller (VCC) | Security Fabric / ADVPN* | Controller |
| Onboarding · ZTP | vBond | Activation code → VCO | FortiDeploy / FortiZTP | Director-driven |
| Edge · data | vEdge / cEdge | Edge (VCE) | FortiGate | FlexVNF / CSG |
| Gateway · on-ramp | Cloud OnRamp / SIG | Cloud Gateways (VCG) | FortiGate + SASE | Versa Gateway |
*Fortinet centralizes control in FortiManager plus a Security-Fabric / ADVPN control channel rather than a discrete controller appliance — the role still exists, just packaged differently. That is exactly why a vendor-neutral model is worth learning.
Classify
First packets identify the app (signature/SNI/heuristics) → flow tagged e.g. app=voice. The rest of the flow inherits the tag (fast-path).
Policy lookup
The app's policy names performance targets and path preferences (MEF 70.1 calls these Policy Criteria).
Path selection
Edge compares live measurements of each tunnel against the targets; picks the cheapest compliant transport.
Encrypt & forward
Flow is wrapped in IPsec/ESP (encrypted payload + new outer IP); NAT/underlay details are invisible to the app and unreadable to the transport.
Re-evaluate continuously
Brown-out on broadband? Voice re-steers to LTE mid-call. This closed loop is the operational soul of SD-WAN.
- Edge devices — physical or virtual (a VNF/CNF from Day 3!) at sites, DCs and clouds data plane · classify + encrypt + forwardactive probes measure every tunnel ▶ see the edge explained & animated ↑
- Controllers — scale-out control plane; edges keep forwarding if it blips (same resiliency logic as Day 2) routes · IPsec keys · policycontrol ⟂ data — an outage ≠ a blackout ▶ see the controller explained & animated ↑
- Orchestrators — the management plane; where LSO Presto/Legato attach in provider-managed offers single pane · ZTP · policy authoringthe operator's API surface ▶ see the orchestrator explained & animated ↑
- Overlays — encrypted tunnels decouple the service from underlay ownership IPsec/ESP · SPI per tunnelthe underlay can't read the app (4.3 TVC/UCS) ▶ see the encapsulation explained & animated ↑
- Centralized policy management — write once, enforce at every edge one intent → many edgesMEF 70.1 Policy Criteria ▶ see one policy fan out to every edge ↑
MEF 70.1 — The SD-WAN Standard
MEF 70.1 (© MEF Forum 2021), "SD-WAN Service Attributes and Service Framework", is the standard that turns "SD-WAN" from a marketing word into a specifiable, orderable, certifiable service — authored by AT&T, Cisco, Nokia, Fortinet, Orange, Versa, Ciena, Bell Canada and others. It defines an SD-WAN Service verbatim as "an overlay connectivity service that optimizes transport of IP Packets over one or more Underlay Connectivity Services by recognizing applications (Application Flows) and determining forwarding behavior by applying Policies to them." Everything below is pulled directly from the standard — its object model, its Service Attributes, its Application Flow Criteria and Policy Criteria, and a fully-configured example.
| AFCritName | Layer | Match on | Values (AFCritValue) | Ref |
|---|---|---|---|---|
SAV4 | 3 | IPv4 Source Address | List of IPv4 prefixes | RFC 791 |
DAV4 | 3 | IPv4 Destination Address | List of IPv4 prefixes | RFC 791 |
PROTV4 | 3 | IPv4 Protocol | Integers 0–255 or IANA keywords | IANA |
SAV6 | 3 | IPv6 Source Address | List of IPv6 prefixes | RFC 8200 |
DAV6 | 3 | IPv6 Destination Address | List of IPv6 prefixes | RFC 8200 |
NEXTHEADV6 | 3 | IPv6 Next Header | Integers 0–255 or IANA keywords | IANA |
DSCP | 3 | Diffserv Code Point | Integers 0–63 | RFC 2474 |
SPORT | 4 | Transport Source Port* | 0–65535 or IANA service names | IANA |
DPORT | 4 | Transport Destination Port* | 0–65535 or IANA service names | IANA |
APPID | 3–7 | Custom / heuristic / DPI match | Application Identifier + args (SIP, Microsoft365, Webex…) | SP catalog |
ANY | 1–7 | Match any IP Packet | None — MUST be alone in the spec R87 | — |
*Renamed "TCP/UDP…Port" → "Transport…Port" in MEF 70.1 so it covers SCTP/DCCP. Table 8 adds optional criteria (VLAN ID, 802.1p PCP, IP fragmentation, ICMP type, etc.).
| PCname | Support | I/E | Controls | Allowed values |
|---|---|---|---|---|
ENCRYPTION | Req'd | Ing | Whether the Application Flow requires encryption | Required-Always · Required-Public-Only · Optional |
PUBLIC-PRIVATE | Req'd | Ing | May the flow traverse Internet-access (public) UCSs? | Private-only · Either |
INTERNET-BREAKOUT | Req'd | Ing | Forward the flow to Internet destinations? | Enabled · Disabled |
BACKUP | Req'd | Ing | May the flow use a UCS designated "backup"? | Enabled · Disabled |
VIRTUAL-TOPOLOGY | Rec. | Ing | Which Virtual Topology to forward over | a Virtual Topology Name |
ALLOWED-DESTINATION-ZONES | Rec. | Ing | Which Zones packets may be delivered to | a list of Zone Names |
BILLING-METHOD | Rec. | Ing | Usage-based vs flat-rate underlay allowed | Flat-Rate-Only · Usage-Based-Only · Either |
PERFORMANCE | Rec. | Ing | Ordered performance goals → orders the Paths | ⟨primary, secondary⟩ of ⟨metric, threshold⟩ |
BANDWIDTH | Rec. | Ing | Committed bandwidth + bandwidth limit for the flow | ⟨committed, limit⟩ |
AF-SECURITY-INGRESS | Rec. | Ing | Security functions applied at the Ingress UNI | None · a Security Policy Identifier (MEF 88) |
BLOCK-SOURCE | Rec. | Egr | Disallow specific ingress sources for this egress flow | list of UNI and/or INTERNET |
AF-SECURITY-EGRESS | Rec. | Egr | Security functions applied at the Egress UNI | None · a Security Policy Identifier (MEF 88) |
| Metric | Definition |
|---|---|
| One-Way Mean Packet Delay | §15.3 |
| One-Way Mean Packet Delay Variation | §15.4 (jitter) |
| One-Way Packet Loss Ratio | §15.5 |
R37 The SP MUST support the Table-4 criteria; D2 SHOULD support Table 5. R40 every Ingress Policy in an SWVC carries the same set of Policy Criteria (only the values differ) — so there is never a "don't-know" packet. R41 if no UCS (or sequence of UCSs) can meet the Policy, the packet MUST be discarded. The SWVC Performance Time Intervals attribute ⟨evalinterval, arrivalinterval, irduration⟩ sets the look-back windows; irduration SHOULD ≤ 1000 ms.
MEF is explicit that these names describe behavior, not syntax — "no implementation needs a parameter called BILLING-METHOD" — but every conformant product must expose equivalent Policy functionality. Vendor CLIs (Cisco policy/SLA-class, Versa SD-WAN policies, Fortinet SD-WAN rules) map onto exactly these criteria.
- SWVC — the SD-WAN Virtual Connection: the L3 service that forwards IP Packets among SWVC End Points by applying Policies; carries the lists of Policies, Application Flow Specs, Zones, Virtual Topologies, UCSs & Security PoliciesMEF 70.1 §9 · Table 3an overlay IP service
- SD-WAN UNI — the User Network Interface: the demarcation between Subscriber Network and Service Provider Network; carries addressing (IPv4 None/Static/DHCP; IPv6 +SLAAC) & routing-protocol attributesMEF 70.1 §11 · Table 10UNI ≠ UCS UNI
- SWVC End Point — the attachment of an SWVC to one UNI; holds the Policy Map ⟨zone, app, ipol, epol⟩ and the list of UCS End Points it can useMEF 70.1 §10 · Table 9where Policy meets packet
- TVC / UCS — a TVC is a point-to-point forwarding relationship between two SD-WAN Edges over a UCS (the underlay — private IP, Carrier Ethernet, or Internet access); a Path is a TVC or sequence of TVCsMEF 70.1 §12 · Table 11underlay can be a MEF service (Day 3)
- Application Flow & Policy — an Application Flow (a Spec = AND of Application Flow Criteria + a Zone) is bound by a Policy (a list of Policy Criteria) that determines its handlingTables 7 · 4 · 5R83 first-match · R84 discard
SASE & Zero Trust (MEF 117 / 118)
Once the WAN is software, security joins it in the cloud: SASE converges SD-WAN connectivity with cloud-delivered security functions; Zero Trust removes the assumption that "inside = trusted". MEF standardized both as services.
| Spec | Defines | Core content |
|---|---|---|
MEF 117 | SASE service attributes & framework | Secure Access Service Edge: SD-WAN connectivity + security functions (SWG, CASB, ZTNA, FWaaS) delivered as one cloud-edge service with common policy |
MEF 118 | Zero Trust framework for MEF services | Identity-based, least-privilege access: authenticate & authorize every actor per session; continuous verification; no implicit trust by network location |
Users, sites and clouds connect to a nearby service edge; connectivity (SD-WAN) and inspection (SWG/CASB/ZTNA/FWaaS) happen there under one policy — instead of hairpinning traffic to a DC firewall stack.
Every session is authenticated, authorized against identity + context, and re-verified continuously. The network's job (and MEF 118's point): make policy enforcement a standard, orderable service behavior.
- SASE (MEF 117) — convergence of network-as-a-service + security-as-a-service at distributed edgesSWG · CASB · ZTNA · FWaaSinspect at a nearby edge, not a DC hairpinone policy for connectivity + security
- Zero Trust (MEF 118) — subject/actor identity, policy end-points, continuous verification within MEF servicesnever trust, always verifyidentity + context, per sessionZTNA ≠ VPN: per-app, not network-wide
- Why in this course — they extend the SD-WAN policy model from performance to security — same policy engine, more verbs
Why Orchestration
Every service you designed this week still needs to be quoted, ordered, activated, assured and billed — across multiple providers. Done by email and swivel-chair, that takes weeks. LSO exists to make it machine-speed.
Design
Product qualification at an address, feasibility, quote. Manual: days of emails. LSO: Sonata POQ + Quote APIs — seconds.
Activation
Order placement, inter-provider ordering, service configuration down the stack. Sonata Order + Legato/Presto/Adagio southbound.
Assurance
SOAM measurements (Day 3), fault tickets, SLA reporting — exchanged provider-to-provider through standardized APIs.
Billing
Usage and settlement data flow over the same fabric — the last mile of NaaS economics.
- Design → Activation → Assurance → Billing — the lifecycle LSO orchestrates end-to-end
- The swivel-chair problem — humans re-typing between provider portals: slow, expensive, error-prone
- Orchestration = NaaS enabler — without LSO APIs, "order connectivity like cloud" is marketing, not engineering
LSO Reference Architecture
MEF 55.1 names seven interface reference points — musical names, precise meanings. Click any pink label in the diagram to inspect it. Sonata and Interlude cross provider boundaries; the rest run inside one provider or to the customer.
| Ref point | Connects | Carries |
|---|---|---|
Cantata | Customer Business Apps ↔ SP BUS | Customer↔provider business transactions (order, bill) |
Allegro | Customer App Coordinator ↔ SP SOF | Customer-driven service control (dynamic changes) |
Sonata | SP BUS ↔ Partner BUS | Inter-provider business: POQ · Quote · Order · Inventory |
Interlude | SP SOF ↔ Partner SOF | Inter-provider orchestration: control of the partner-side service |
Legato | SP BUS ↔ SP SOF | Intra-provider: business layer driving orchestration |
Presto | SP SOF ↔ ICM | Network-domain orchestration (where SDN controllers/TAPI attach) |
Adagio | ICM ↔ ECM | Element-level control and management |
- The two cross-domain points — Sonata (business) and Interlude (orchestration) make multi-operator NaaS possible
- The vertical stack — Cantata/Allegro in, Legato down, Presto to controllers, Adagio to elements
- Where the week connects — Presto is where Day 2's SDN controllers and TAPI meet Day 4's orchestration
LSO Sonata APIs
Sonata is a family of REST/JSON APIs (OpenAPI-specified, in the MEF-GIT SDK) for inter-provider business automation. Play the exact buyer→seller workflow of Lab 4 below — POQ, then Quote, then Order, then Inventory.
(needs off-net access)
(owns the access)
| API | Question it answers | Key objects |
|---|---|---|
Serviceability (POQ) | "Can you deliver this product at this address?" | ProductOfferingQualification, qualification result + alternatives |
Quote | "What will it cost, and how fast can I have it?" | Quote, quoteItem, price, validity period |
Order | "Build it." — with milestones to completion | ProductOrder, orderItem, state machine (acknowledged → inProgress → completed) |
Inventory | "What do I have from you, in what state?" | Product records queryable by id/state |
Trouble Ticketing · Billing | Assurance and settlement post-activation | Ticket, incident, billing objects |
- Serviceability / POQ — pre-sales feasibility per site; green/yellow/red answers with alternatives
- Quote — machine-readable pricing replacing week-long email quotes
- Order — transactional ordering with state notifications (webhooks)
- Inventory — the buyer's live view of purchased products
Lab 4 · Define an SD-WAN Policy and Issue an LSO Sonata Request
Goal — apply SD-WAN and LSO concepts through policy creation and API orchestration: author a MEF 70.1 policy, then buy connectivity from a mock partner over Sonata.
Lab activities
⚗- 1Create an application-aware SD-WAN policy: voice via LTE/5G, bulk via broadband
- 2Document it using MEF 70.1 attributes (app-flow definitions + policy criteria — template in panel 4.3)
- 3Clone the MEF LSO Sonata SDK from MEF-GIT
- 4Deploy a Stoplight Prism mock server from the SDK's OpenAPI specs
- 5Execute POQ → Quote → Order with Hoppscotch/Bruno (the sequence you just played in 4.7)
- 6Identify and correct schema-validation errors Prism throws (missing required fields, wrong enums)
- 7Validate the complete workflow end-to-end and export your collection