SlideShare a Scribd company logo
1 of 40
May 2014
Network Policy
Abstractions in Neutron
Mohammad Banikazemi
Sumit Naiksatam
Stephen Wong
Outline
❖ Introduction
❖ Neutron Abstractions
❖ Group Policy Extension
❖ PoC Implementation and Demo
❖ Future Directions
❖ Q&A
Networking in the Cloud
❖ Current API: network centric
❖ Need a more application centric set of abstractions
as well
❖ More easily understood/utilized by higher layers
❖ Declarative model
❖ Separation of concerns
Desired Features
❖ Provide policy-based connectivity between
application tiers
❖ Support dynamic application of policies
❖ Redirection to Network services and chains
❖ Policies defined by administrators and users
Current Neutron API
❖ Network centric, close to physical devices
❖ Network: isolated layer-2 broadcast domain; private/shared
❖ Subnet: CIDR IP address block associated with a network;
optionally associated with gateway, DNS/DHCP servers
❖ Port: virtual switch port on a network; has MAC and IP
address properties
❖ Router: connects networks, supports SNAT
Example: Multi Tier Apps
Q
Web
Application
DB
Firewall Load
Balancer
QoS
External Network
(Internet)
Neutron Representation
Q
Network/
subnet
Network/
subnet
Network/
subnet
Router
External Network
Port
Q
neutron net-create web_tier
neutron subnet-create web_tier 10.0.0.0/24
neutron router-create router1
neutron router-add-interface router1 web_subnet
. . .
Group Policy e x t e n s i o n
The Basic Idea
❖ Endpoint (EP): Lowest unit of
abstraction where policy is applied
❖ Endpoint Group (EPG): Logical
grouping of endpoints
❖ Policy Rule: Network policies to
access EPGs
❖ Contract: Collection of policy rules
EPG-Contract Relationship
❖ An EPG may provide one or more contracts
❖ An EPG may consume one or more contracts
Endpoint
Group
Contract
❖ Application deployer focused
Policy Rules
❖ Action is applied to traffic specified by Classifier
Policy Rule
Classifier
Protocol Ports Direction
Action
Type Value
Action
Type
Allow
Redirect
QoS
Log
Copy
Mark
Value
None
Service/Chain
QoS args
Log args
Copy args
Mark args
Group Policy - Workflow
neutron classifier-create Insecure-Web-Access --port 80 --protocol TCP --direction IN
neutron policy-rule insecure-web --policy-classifier Insecure-Web-Access --actions ALLOW
neutron contract-create Web-Server-Contract --policy-rule insecure-web
❖ Create contract
❖ Create EPGs and provide/consume contracts
neutron epg-create Web-Server-EPG --provides-contract Web-Server-Contract
neutron ep-create --endpoint-group Web-Server-EPG
neutron epg-create Outside-EPG --consumes-contract Web-Server-Contract
Putting It All Together – 3 Tier App
Web
Application
DB
Firewall Load
Balancer
External Network
(Internet)
Group Policy Realization
EPG
Web
EPG
Application
EPG
DB
Firewall
EPG
External Network
(Internet)
Contract
Protocol:TCP
Port:80
Action:Redirect
To FW_LB_CHAIN
ProvidesConsumes
Protocol:TCP
Port:3306
Action:ALLOW
Protocol:TCP
Port:9080
Action:ALLOW
EPG EPG
Optional Constructs in Model
❖ Scopes: put constraints around how provider and consumer
EPGs are matched
❖ Policy Rule Filters: allow for tagging Policy Rules with Labels
such that subsets can be created in a Contract
❖ Contract hierarchy: infra admin constraints can be achieved
by Contract hierarchical composition
❖ Endpoint labels: policies get triggered automatically when
labels are added or removed
Proof of Concept i m p l e m e n t a t i o n
PoC Implementation
❖ Team has worked on a PoC
implementation
❖ Considering various model and
implementation alternatives
❖ Using legacy driver
❖ CLI, Horizon, and Heat
CLI
Neutron
Heat Horizon
Policy Manager
Legacy
Policy Driver
ODL
Policy Driver
others
The Group Policy PoC Team
❖ Sumit Naiksatam, Robert Kukura, Mandeep Dhami (Cisco)
❖ Mohammad Banikazemi (IBM)
❖ Stephen Wong (Midokura)
❖ Ronak Shah (Nuage Networks)
❖ Hemanth Ravi, Susaant Kondapaneni, Prasad Vellanki (One
Convergence)
❖ Rudra Rugge (Juniper)
State of Implementation
❖ The blueprint for Group Policy has been
reviewed/approved
❖ Working PoC available (install from:
https://github.com/noironetworks/devstack/tree/group-
policy-poc)
❖ Neutron reference implementation for Group Policy is in
progress
❖ Complementary work on network services framework is in
progress
More Information
❖ Neutron Group-based Policy design session
May 16 • 10:50am - 11:30am • B304
❖ Wiki page:
https://wiki.openstack.org/wiki/Neutron/GroupPolicy
❖ Neutron Group Policy Sub-Team Meeting IRC weekly meetings:
https://wiki.openstack.org/wiki/Meetings/Neutron_Group_Policy
Backup
PoC
Separation of Concerns
❖ Different aspect of operations
performed by different agents
❖ Administrators specify the more
network specific requirements
❖ Other tenants specify app
specific
Dynamic/Automatic Updates
❖ Slide 12
Dynamic / Automatic Updates
❖ Slide 12
Multiple Policy Frameworks
Network
Policy
Manager
AdministratorMark hosts
as infected
All infected machines
should be quarantined Create access policy quarantine
(to end points labeled "infected")
SystemWide
PolicyManager
Outline of Policies
❖ Contract C1:
❖ Policy rule: redirect my_service_chain_fw_lb
❖ Contract C2:
❖ Policy rule: allow all
❖ Contract C3:
❖ Policy rule: allow all
❖ Policy rule: QoS my_qos_spec
Group Policy
a
c l o s e r
l o o k
EPG-Contract Relationship
Provide /
Consume
❖ Let’s look at more details
Endpoint
Group
Contract
Contract Scopes
❖ Contracts are provided and consumed through contract scopes
Contract Scope
Selector
Provider-
Capability/Consumer-
Role
Selector
Scope
Global
Tenant
EPG
Value
None
Tenant ID
EPG ID
❖ Selectors specify the scope: Global/Tenant/EPG
❖ Provider-Capabilities/Consumer-Roles: Policy labels, which allow
defining granular constraints within the contract
Policy Rules
Policy Rule
Classifier
Protocol Ports Direction
Action
Type Value
Policy Rules
❖ Filters/Labels used to limit policy rules provided/consumed
Policy Rule
Filter
Provider
Capability
Consumer
Role
Classifier
Protocol Ports Direction
Action
Type Value
Contract
Hierarchy of Contracts
❖ Contracts can refer to other contracts
❖ Specifying base contracts by administrators
Provide /
Consume
Endpoint
Group
Using Neutron Advanced Services
To fully take advantage of Group Policy:
❖ Defining a policy container for services
Leveraging advanced services:
❖ Unified, generic and flexible service definition
❖ Support for various service insertion modes
❖ Support for various service manifestations
❖ Service chaining and traffic steering
Group Policy r i c h
c o n s t r u c t
Dynamic Updates
Q
Web
Application
DB
Firewall Load
Balancer
QoS
External Network
(Internet)
Web
Separation of Concerns
Group
Policy
Manager
Administrator
Users
Allocate Network Resources
Sets up network contracts
Sets up access contracts
Create application contracts
Provide/consume contracts
Multiple Providers with Failover
Group
Policy
Manager
ProviderA
Provide contract
Set scope to Global
ProviderB
Users
Consume contract
Provide contract
Set scope to Global
Administrator
Create contracts
Other Policy Frameworks
Group
Policy
Manager
Administrator
Congress
Label hosts
as infected
All infected machines
should be quarantined Create access contract quarantine
(to end points labeled "infected")
Heat Implementation
❖ Native Neutron heat resources
❖ WIP patch available on Gerrit
❖ Provides richer and simpler abstraction
❖ Allows for complex topology declaration
❖ Demo HOT template
❖ Publishes secure web service

More Related Content

What's hot

Managing Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed Rawi
Managing Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed RawiManaging Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed Rawi
Managing Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed Rawi
MyNOG
 
Prefix Filtering Design Issues and Best Practise by Nurul Islam
Prefix Filtering Design Issues and Best Practise by Nurul IslamPrefix Filtering Design Issues and Best Practise by Nurul Islam
Prefix Filtering Design Issues and Best Practise by Nurul Islam
MyNOG
 
ETE405-lec9.ppt
ETE405-lec9.pptETE405-lec9.ppt
ETE405-lec9.ppt
mashiur
 

What's hot (20)

Managing Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed Rawi
Managing Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed RawiManaging Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed Rawi
Managing Traffic Flows via BGP Flowspec by Mohd Izni Zuhdi Mohamed Rawi
 
Qo s
Qo sQo s
Qo s
 
PLNOG16: Kreowanie usług przez operatorów – SP IWAN, Krzysztof Konkowski
PLNOG16: Kreowanie usług przez operatorów – SP IWAN, Krzysztof KonkowskiPLNOG16: Kreowanie usług przez operatorów – SP IWAN, Krzysztof Konkowski
PLNOG16: Kreowanie usług przez operatorów – SP IWAN, Krzysztof Konkowski
 
Transcoding & Streaming System for Media Companies
Transcoding & Streaming System for Media CompaniesTranscoding & Streaming System for Media Companies
Transcoding & Streaming System for Media Companies
 
Diameter Presentation
Diameter PresentationDiameter Presentation
Diameter Presentation
 
F5 Link controller Configuration
F5 Link controller Configuration F5 Link controller Configuration
F5 Link controller Configuration
 
Prefix Filtering Design Issues and Best Practise by Nurul Islam
Prefix Filtering Design Issues and Best Practise by Nurul IslamPrefix Filtering Design Issues and Best Practise by Nurul Islam
Prefix Filtering Design Issues and Best Practise by Nurul Islam
 
ETE405-lec9.ppt
ETE405-lec9.pptETE405-lec9.ppt
ETE405-lec9.ppt
 
Quality of service
Quality of serviceQuality of service
Quality of service
 
Streaming Video Protocol
Streaming Video ProtocolStreaming Video Protocol
Streaming Video Protocol
 
Mpls
MplsMpls
Mpls
 
Lte epc trial experience
Lte epc trial experienceLte epc trial experience
Lte epc trial experience
 
ProSBC introduction
ProSBC introductionProSBC introduction
ProSBC introduction
 
Cisco MPLS
Cisco MPLSCisco MPLS
Cisco MPLS
 
MPLS (Multi-Protocol Label Switching)
MPLS (Multi-Protocol Label Switching)MPLS (Multi-Protocol Label Switching)
MPLS (Multi-Protocol Label Switching)
 
PLNOG16: Jak zbudować Punkt Wymiany Ruchu używając urządzeń Junipera, Aleksan...
PLNOG16: Jak zbudować Punkt Wymiany Ruchu używając urządzeń Junipera, Aleksan...PLNOG16: Jak zbudować Punkt Wymiany Ruchu używając urządzeń Junipera, Aleksan...
PLNOG16: Jak zbudować Punkt Wymiany Ruchu używając urządzeń Junipera, Aleksan...
 
Dhcp presentation
Dhcp presentationDhcp presentation
Dhcp presentation
 
Qo s of service with winbox
Qo s of service with winboxQo s of service with winbox
Qo s of service with winbox
 
PEPPOL Online Workshop 1 Overview
PEPPOL Online Workshop 1 OverviewPEPPOL Online Workshop 1 Overview
PEPPOL Online Workshop 1 Overview
 
Nokia L3 VPN Configuration Guide
Nokia L3 VPN Configuration GuideNokia L3 VPN Configuration Guide
Nokia L3 VPN Configuration Guide
 

Similar to Network Policy Abstractions in OpenStack Neutron

Assessing Network Readiness
Assessing Network ReadinessAssessing Network Readiness
Assessing Network Readiness
rAVe [PUBS]
 
Managing infrastructure with Application Policy by Mike Cohen
Managing infrastructure with Application Policy by Mike CohenManaging infrastructure with Application Policy by Mike Cohen
Managing infrastructure with Application Policy by Mike Cohen
buildacloud
 
Cloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust VisibilityCloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust Visibility
Raphaël PINSON
 

Similar to Network Policy Abstractions in OpenStack Neutron (20)

Open stackatlantagrouppolicy
Open stackatlantagrouppolicyOpen stackatlantagrouppolicy
Open stackatlantagrouppolicy
 
Jg3416751681
Jg3416751681Jg3416751681
Jg3416751681
 
F5 Solutions for Service Providers
F5 Solutions for Service ProvidersF5 Solutions for Service Providers
F5 Solutions for Service Providers
 
Hyperledger Fabric update Meetup 20181101
Hyperledger Fabric update Meetup 20181101Hyperledger Fabric update Meetup 20181101
Hyperledger Fabric update Meetup 20181101
 
Neutron Networking: Service Groups, Policies and Chains
Neutron Networking: Service Groups, Policies and ChainsNeutron Networking: Service Groups, Policies and Chains
Neutron Networking: Service Groups, Policies and Chains
 
QoS in IP Network.pptx
QoS in IP Network.pptxQoS in IP Network.pptx
QoS in IP Network.pptx
 
Docker meetup oct14
Docker meetup   oct14Docker meetup   oct14
Docker meetup oct14
 
Assessing Network Readiness
Assessing Network ReadinessAssessing Network Readiness
Assessing Network Readiness
 
Managing infrastructure with Application Policy by Mike Cohen
Managing infrastructure with Application Policy by Mike CohenManaging infrastructure with Application Policy by Mike Cohen
Managing infrastructure with Application Policy by Mike Cohen
 
Network Convergence of Mobile, Broadband and Wi-Fi
Network Convergence of Mobile, Broadband and Wi-FiNetwork Convergence of Mobile, Broadband and Wi-Fi
Network Convergence of Mobile, Broadband and Wi-Fi
 
CNaaS service definition
CNaaS service definitionCNaaS service definition
CNaaS service definition
 
Open Source Networking Days- Service Mesh
Open Source Networking Days- Service MeshOpen Source Networking Days- Service Mesh
Open Source Networking Days- Service Mesh
 
Group Based Policy: Open Source Policy in OpenDaylight and OpenStack Neutron
Group Based Policy: Open Source Policy in OpenDaylight and OpenStack NeutronGroup Based Policy: Open Source Policy in OpenDaylight and OpenStack Neutron
Group Based Policy: Open Source Policy in OpenDaylight and OpenStack Neutron
 
Understanding Open Protocols in Building Automation
Understanding Open Protocols in Building AutomationUnderstanding Open Protocols in Building Automation
Understanding Open Protocols in Building Automation
 
Vivpn pp tfinal
Vivpn pp tfinalVivpn pp tfinal
Vivpn pp tfinal
 
VoD Solutions
VoD SolutionsVoD Solutions
VoD Solutions
 
Cloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust VisibilityCloud Native Bern 05.2023 — Zero Trust Visibility
Cloud Native Bern 05.2023 — Zero Trust Visibility
 
GCCP Session 3
GCCP Session 3GCCP Session 3
GCCP Session 3
 
Security and Transport Performance in 5G
Security and Transport Performance in 5GSecurity and Transport Performance in 5G
Security and Transport Performance in 5G
 
Whats new fireware-v11-10.compressed
Whats new fireware-v11-10.compressedWhats new fireware-v11-10.compressed
Whats new fireware-v11-10.compressed
 

More from Sumit Naiksatam (8)

Open stack gbp final sn-4-slideshare
Open stack gbp final sn-4-slideshareOpen stack gbp final sn-4-slideshare
Open stack gbp final sn-4-slideshare
 
Group-based Policy for Networking
Group-based Policy for NetworkingGroup-based Policy for Networking
Group-based Policy for Networking
 
Group-based Policy For OpenStack Networking
Group-based Policy For OpenStack NetworkingGroup-based Policy For OpenStack Networking
Group-based Policy For OpenStack Networking
 
OpenStack Neutron Service Chaining and Insertion
OpenStack Neutron Service Chaining and InsertionOpenStack Neutron Service Chaining and Insertion
OpenStack Neutron Service Chaining and Insertion
 
Quantum services' chaining open stack havana design summit, portland 2013
Quantum services' chaining   open stack havana design summit, portland 2013Quantum services' chaining   open stack havana design summit, portland 2013
Quantum services' chaining open stack havana design summit, portland 2013
 
Quantum firewall as a service open stack havana design summit, portland 2013
Quantum firewall as a service   open stack havana design summit, portland 2013Quantum firewall as a service   open stack havana design summit, portland 2013
Quantum firewall as a service open stack havana design summit, portland 2013
 
Quantum L3 (forwarding) model - OpenStack Folsom Design Summit
Quantum L3 (forwarding) model - OpenStack Folsom Design SummitQuantum L3 (forwarding) model - OpenStack Folsom Design Summit
Quantum L3 (forwarding) model - OpenStack Folsom Design Summit
 
OpenStack Quantum
OpenStack QuantumOpenStack Quantum
OpenStack Quantum
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 

Network Policy Abstractions in OpenStack Neutron

  • 1. May 2014 Network Policy Abstractions in Neutron Mohammad Banikazemi Sumit Naiksatam Stephen Wong
  • 2. Outline ❖ Introduction ❖ Neutron Abstractions ❖ Group Policy Extension ❖ PoC Implementation and Demo ❖ Future Directions ❖ Q&A
  • 3. Networking in the Cloud ❖ Current API: network centric ❖ Need a more application centric set of abstractions as well ❖ More easily understood/utilized by higher layers ❖ Declarative model ❖ Separation of concerns
  • 4. Desired Features ❖ Provide policy-based connectivity between application tiers ❖ Support dynamic application of policies ❖ Redirection to Network services and chains ❖ Policies defined by administrators and users
  • 5. Current Neutron API ❖ Network centric, close to physical devices ❖ Network: isolated layer-2 broadcast domain; private/shared ❖ Subnet: CIDR IP address block associated with a network; optionally associated with gateway, DNS/DHCP servers ❖ Port: virtual switch port on a network; has MAC and IP address properties ❖ Router: connects networks, supports SNAT
  • 6. Example: Multi Tier Apps Q Web Application DB Firewall Load Balancer QoS External Network (Internet)
  • 7. Neutron Representation Q Network/ subnet Network/ subnet Network/ subnet Router External Network Port Q neutron net-create web_tier neutron subnet-create web_tier 10.0.0.0/24 neutron router-create router1 neutron router-add-interface router1 web_subnet . . .
  • 8. Group Policy e x t e n s i o n
  • 9. The Basic Idea ❖ Endpoint (EP): Lowest unit of abstraction where policy is applied ❖ Endpoint Group (EPG): Logical grouping of endpoints ❖ Policy Rule: Network policies to access EPGs ❖ Contract: Collection of policy rules
  • 10. EPG-Contract Relationship ❖ An EPG may provide one or more contracts ❖ An EPG may consume one or more contracts Endpoint Group Contract ❖ Application deployer focused
  • 11. Policy Rules ❖ Action is applied to traffic specified by Classifier Policy Rule Classifier Protocol Ports Direction Action Type Value Action Type Allow Redirect QoS Log Copy Mark Value None Service/Chain QoS args Log args Copy args Mark args
  • 12. Group Policy - Workflow neutron classifier-create Insecure-Web-Access --port 80 --protocol TCP --direction IN neutron policy-rule insecure-web --policy-classifier Insecure-Web-Access --actions ALLOW neutron contract-create Web-Server-Contract --policy-rule insecure-web ❖ Create contract ❖ Create EPGs and provide/consume contracts neutron epg-create Web-Server-EPG --provides-contract Web-Server-Contract neutron ep-create --endpoint-group Web-Server-EPG neutron epg-create Outside-EPG --consumes-contract Web-Server-Contract
  • 13. Putting It All Together – 3 Tier App Web Application DB Firewall Load Balancer External Network (Internet)
  • 14. Group Policy Realization EPG Web EPG Application EPG DB Firewall EPG External Network (Internet) Contract Protocol:TCP Port:80 Action:Redirect To FW_LB_CHAIN ProvidesConsumes Protocol:TCP Port:3306 Action:ALLOW Protocol:TCP Port:9080 Action:ALLOW EPG EPG
  • 15. Optional Constructs in Model ❖ Scopes: put constraints around how provider and consumer EPGs are matched ❖ Policy Rule Filters: allow for tagging Policy Rules with Labels such that subsets can be created in a Contract ❖ Contract hierarchy: infra admin constraints can be achieved by Contract hierarchical composition ❖ Endpoint labels: policies get triggered automatically when labels are added or removed
  • 16. Proof of Concept i m p l e m e n t a t i o n
  • 17. PoC Implementation ❖ Team has worked on a PoC implementation ❖ Considering various model and implementation alternatives ❖ Using legacy driver ❖ CLI, Horizon, and Heat CLI Neutron Heat Horizon Policy Manager Legacy Policy Driver ODL Policy Driver others
  • 18. The Group Policy PoC Team ❖ Sumit Naiksatam, Robert Kukura, Mandeep Dhami (Cisco) ❖ Mohammad Banikazemi (IBM) ❖ Stephen Wong (Midokura) ❖ Ronak Shah (Nuage Networks) ❖ Hemanth Ravi, Susaant Kondapaneni, Prasad Vellanki (One Convergence) ❖ Rudra Rugge (Juniper)
  • 19. State of Implementation ❖ The blueprint for Group Policy has been reviewed/approved ❖ Working PoC available (install from: https://github.com/noironetworks/devstack/tree/group- policy-poc) ❖ Neutron reference implementation for Group Policy is in progress ❖ Complementary work on network services framework is in progress
  • 20. More Information ❖ Neutron Group-based Policy design session May 16 • 10:50am - 11:30am • B304 ❖ Wiki page: https://wiki.openstack.org/wiki/Neutron/GroupPolicy ❖ Neutron Group Policy Sub-Team Meeting IRC weekly meetings: https://wiki.openstack.org/wiki/Meetings/Neutron_Group_Policy
  • 22. PoC
  • 23. Separation of Concerns ❖ Different aspect of operations performed by different agents ❖ Administrators specify the more network specific requirements ❖ Other tenants specify app specific
  • 25. Dynamic / Automatic Updates ❖ Slide 12
  • 26. Multiple Policy Frameworks Network Policy Manager AdministratorMark hosts as infected All infected machines should be quarantined Create access policy quarantine (to end points labeled "infected") SystemWide PolicyManager
  • 27. Outline of Policies ❖ Contract C1: ❖ Policy rule: redirect my_service_chain_fw_lb ❖ Contract C2: ❖ Policy rule: allow all ❖ Contract C3: ❖ Policy rule: allow all ❖ Policy rule: QoS my_qos_spec
  • 28. Group Policy a c l o s e r l o o k
  • 29. EPG-Contract Relationship Provide / Consume ❖ Let’s look at more details Endpoint Group Contract
  • 30. Contract Scopes ❖ Contracts are provided and consumed through contract scopes Contract Scope Selector Provider- Capability/Consumer- Role Selector Scope Global Tenant EPG Value None Tenant ID EPG ID ❖ Selectors specify the scope: Global/Tenant/EPG ❖ Provider-Capabilities/Consumer-Roles: Policy labels, which allow defining granular constraints within the contract
  • 31. Policy Rules Policy Rule Classifier Protocol Ports Direction Action Type Value
  • 32. Policy Rules ❖ Filters/Labels used to limit policy rules provided/consumed Policy Rule Filter Provider Capability Consumer Role Classifier Protocol Ports Direction Action Type Value
  • 33. Contract Hierarchy of Contracts ❖ Contracts can refer to other contracts ❖ Specifying base contracts by administrators Provide / Consume Endpoint Group
  • 34. Using Neutron Advanced Services To fully take advantage of Group Policy: ❖ Defining a policy container for services Leveraging advanced services: ❖ Unified, generic and flexible service definition ❖ Support for various service insertion modes ❖ Support for various service manifestations ❖ Service chaining and traffic steering
  • 35. Group Policy r i c h c o n s t r u c t
  • 37. Separation of Concerns Group Policy Manager Administrator Users Allocate Network Resources Sets up network contracts Sets up access contracts Create application contracts Provide/consume contracts
  • 38. Multiple Providers with Failover Group Policy Manager ProviderA Provide contract Set scope to Global ProviderB Users Consume contract Provide contract Set scope to Global Administrator Create contracts
  • 39. Other Policy Frameworks Group Policy Manager Administrator Congress Label hosts as infected All infected machines should be quarantined Create access contract quarantine (to end points labeled "infected")
  • 40. Heat Implementation ❖ Native Neutron heat resources ❖ WIP patch available on Gerrit ❖ Provides richer and simpler abstraction ❖ Allows for complex topology declaration ❖ Demo HOT template ❖ Publishes secure web service