Skip to content
Welcome To Charanjit Cheema Blog

Welcome To Charanjit Cheema Blog

An Open Source and Cloud Blog

Menu
  • Home
  • About Me!
  • Way to my Technical Blog
  • Contact me
  • Privacy Policy
Menu

What is OpenFlow? How it works in SDN?

Posted on May 18, 2018 by Charanjit Cheema

OpenFlow is a standard protocol of SDN which assist SDN Controller to communicate directly with the forwarding plane of network devices such as switches and routers, both physical and virtual (hypervisor-based), so it can better adapt to changing business requirements.

Generally the conventional switches forwards the packets which are called the Forwarding Plane and do high-level routing that happens on the Control Plane which occur on same device but in OpenFlow switch it separates the forward plane from the control plane. The data plane or forwarding plane portion resides on the switch itself, whereas a separate controller makes high-level routing decisions. The switch and controller communicate by means of the OpenFlow protocol.

SDN Controller is the main core of Software Defined Network it relay the network information to switches/routers ‘below’ (via southbound APIs) and the applications and business logic ‘above’ (via northbound APIs).

A schematic overview of SDN implemented with OpenFlow.

 

 

Figure: High Level diagram of SDN with OpenFlow (Source ResearchGate)

SDN controller platforms reduce the load on network devices by removing it from the network hardware and putting the control plane centralized in SDN. SDN Controller use protocols such as OpenFlow and OVSDB to control traffic and configure network devices, typically via an assortment of modules that are able to provide different functions.

Benefits of OpenFlow:

Programmability

  • Enable innovation/differentiation
  • Accelerate new features and services introduction

Centralized Intelligence

  • Simplify provisioning
  • Optimize performance
  • Granular policy management

Abstraction

  • Decoupling of Hardware & Software, Control plane & forwarding, and Physical & logical configuration.

Protocol History

The original concept for OpenFlow begun at Stanford University in 2008. By December 2009, Version 1.0 of the OpenFlow switch specification was released. Since its inception, OpenFlow has been managed by the Open Networking Foundation (ONF), a user-led organization dedicated to open standards and SDN adoption.

Since its release, multiple companies and open source projects like the OpenDaylight Project support OpenFlow, and even provide OpenDaylight Controllers. Other companies like Cisco and Brocade also offer OpenFlow enabled controllers, with Cisco XNC and Brocade Vyatta Controller.

Recent Years

Several established companies including IBM, Google, and HP have either fully utilized, or announced their intention to support, the OpenFlow standard. Big Switch Networks, an SDN firm headquartered in Palo Alto, California, has implemented OpenFlow networks that run on top of traditional networks, making it possible to place virtual machines anywhere in a data center to reclaim stranded computing capacity. By early 2012, Google’s internal network ran entirely on OpenFlow.

Reference Sources:
https://www.networkcomputing.com/networking/sdn-controller-handbook/1301944566
https://whatis.techtarget.com/definition/OpenFlow
https://www.sdxcentral.com/sdn/definitions/what-is-openflow/

Loading

  • Author
  • Recent Posts
Charanjit Cheema
Follow him
Charanjit Cheema
Charanjit is currently working as a Cloud Architect at Mphasis, with 17 years of experience in IT infrastructure projects, implementation, and support. While his main role is as a DevOps engineer, he holds a Cloud Architect position and has strong skills in cloud technologies and automation. His expertise includes Terraform, Ansible, AWS, Azure DevOps, Azure Cloud, VMware, and Linux systems.

Charanjit is passionate about automating tasks and improving processes. He uses tools like Terraform and Azure DevOps to build and manage cloud infrastructure and streamline deployment. He also enjoys using Shell scripts and Ansible playbooks to make systems run more efficiently.

In his free time, Charanjit enjoys learning about new technologies and sharing his knowledge through his blog. When he’s not working, he likes listening to music, having a cup of coffee, and relaxing in nature.

You can connect with Charanjit on Twitter, Facebook, LinkedIn, or email him at charanjit.cheema@cjcheema.com.
Charanjit Cheema
Follow him
Latest posts by Charanjit Cheema (see all)
  • How to optimize the performance of Ansible Automation Platform or Ansible Tower - July 16, 2023
  • How to fix code and text file linting errors with the help of Visual Studio Code - June 27, 2023
  • How to migrate existing WordPress blog from AWS EC2 instance to Amazon Lightsail - May 29, 2023

Like this:

Like Loading...

Related

1 thought on “What is OpenFlow? How it works in SDN?”

  1. Narinder Jit singh says:
    May 24, 2018 at 7:20 pm

    Worth learning,keep up.

    Loading...
    Reply

Leave a ReplyCancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Tags

AWS Cloud Computing Dockers Networking Open Networking OpenSource RHEL-CentOS SDN Server Hardware SLES tcpdump Ubuntu WSL

Follow me @

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 2 other subscribers

Recent Posts

  • How to Deploy Docker Containers with NGINX on AWS EC2 Using Ansible and GitHub Actions
  • No More DynamoDB! Use Native S3 locking for Terraform State
  • How to Bring and Manage Manually Created AWS Resources Under Terraform Management
  • Iterating Cloud Resource Provisioning Using Terraform Count and For_Each Meta-Arguments
  • Terraform and Ansible Collaboration for AWS Cloud Deployment

Recent Comments

  1. Charanjit Singh on Terraform and Ansible Collaboration for AWS Cloud Deployment
  2. christinatodd2020aeaa798563 on Terraform and Ansible Collaboration for AWS Cloud Deployment
  3. Charanjit Singh on How to Set password policy in CentOS or RHEL system
  4. SAURABH on How to recover or rebuild initramfs in CentOS 7 Linux
  5. Sangita on How to Set password policy in CentOS or RHEL system

Archives

  • April 2025
  • February 2025
  • January 2025
  • August 2024
  • July 2024
  • June 2024
  • January 2024
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • September 2022
  • August 2022
  • July 2020
  • May 2020
  • February 2020
  • November 2019
  • June 2019
  • May 2019
  • March 2019
  • February 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • June 2018
  • May 2018
  • April 2018

Categories

  • Automation
  • Cloud Computing
  • Coding
  • CyberSecurity
  • Networking
  • OpenSource
  • RHEL-CentOS
  • Server Hardware
  • SLES
  • Technical Blog
  • Ubuntu
  • WSL

Blog Stats

  • 18,353 hits
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy
  • Home
  • About Me!
  • Way to my Technical Blog
  • Contact me
  • Privacy Policy
© 2025 Welcome To Charanjit Cheema Blog | Powered by Superbs Personal Blog theme
%d