120 likes | 435 Views
Metadata Considerations draft-rijsman-sfc-metadata-considerations-00 Service Function Chaining Working Group IETF 89 - London - March 2014 Authors: Bruno Rijsman, Jerome Moisand Presenter: Ross Callon. service function chaining abstractions IETF service function chaining (SFC) workgroup.
E N D
Metadata Considerationsdraft-rijsman-sfc-metadata-considerations-00Service Function Chaining Working GroupIETF 89 - London - March 2014Authors: Bruno Rijsman, Jerome MoisandPresenter: Ross Callon
service function chaining abstractionsIETF service function chaining (SFC) workgroup SC Service Chain SF SF SF Service Function SFN SFI Service Function Instance SFN SFN SFI SFI SC SC SFN SFI SFN SFN SFI SFI Service Classifier SFN SFI Service Function Node SPS Service Path Segment SP Service Path
what is metadata? Metadata is "data about data" SC SFN SFN SC SFN SFI SFI SFI Data in flow 1 data data data data data data Metadata about flow 1 metadata metadata metadata Data in flow 2 data data data data data data Metadata about flow 2 metadata metadata metadata
metadata Use case 1: subscriber-awarenesscontextual information which is not locally available Per subscriber accounting and billing PCRF SFN SFN SC SFI SFI PGW Data data data data data data data data Metadata accounting-id
metadata Use case 2: application-awarenessavoid repetition of expensive operation (e.g. DPI) Deep Packet Inspection (DPI) Application-aware servicesNo need to re-apply DPI SFN SFN SFN SFI SFI SFI Data data data data data data data Metadata application-id
metadata Use case 3: fine-grained policiessupport fine-grained policies without needing many chains One chain with fine-grained policies RADIUS SFN SFN SC SFI SFI BNG Data data data data data data data data Metadata bandwidth-cap = 34 Mbps Data data data data data data data data Metadata bandwidth-cap = 17 Mbps
metadata signaling - architectural options Option 1: In-band marking Attach metadata to each packet Option 2: Application Layer Headers E.g. HTTP extension headers SFN SFN SFN SFN SFN SFN SFI SFI SFI SFI SFI SFI data data data data data data HTTP Request GET / HTTP/1.1 Host: www.google.com Connection: keep-aliveCache-Control: max-age=0 Accept: text/html,application/xhtml+xml User-Agent: Mozilla/5.0 (Windows NT 6.1) Accept-Encoding: gzip,deflate Accept-Language: en-US,en;q=0.8 Metadata-Subscriber-ID: 12345 Metadata-Session-ID: 67890 metadata data metadata
metadata signaling - architectural options Option 3: Congruent Out-of-Band Signaling Option 4: Non-Congruent Out-of-Band Signaling Control Plane: Metadata Signaling SFN SFN SFN data plane data plane SFI SFI SFI control plane control plane metadata metadata metadata SFN SFN SFN SFI SFI SFI data data data data data data Data plane metadata data data data data data data Control plane
metadata signaling - architectural options SFN SFN SFN Option 5: Hybrid: In-Band Session-ID + Out-of-Band Signaling data plane data plane SFI SFI SFI control plane control plane Data plane session-id data Control plane session-id metadata mapping
metadata challenges • Support for metadata-unaware service function • Preserving metadata through metadata-unaware service functions • Metadata encoding (fixed length versus TLV) • Availability and performance of the control plane • Synchronization between the control plane and the data plane • Distributing metadata only to interested service functions • Associating data plane flow with control plane signaling • Layering considerations (separate path layer and service layer) • Load balancing and symmetry • High availability • Geographic dispersion • Multiple sources of metadata • Extensibility
conclusions • Need standardization for multi-vendor interoperability • Multiple approaches • In-band marking • Out-of-band signaling (congruent or non-congruent) • Hybrid approach • Many challenges with each approach • No single approach is obvious winner • Different approaches for different use cases? • Hybrid approach good match for mobile and fixed broadband • Keep service path signaling and metadata signaling separate • Separate layers, separate headers, separate protocols • Don't need to be standardized at the same time