Network load balancing vs. application load balancing
On F5's DevCentral blog, Lori MacVittie, senior project manager at the company, broke down the differences between network load balancing and application load balancing. MacVittie wrote about the history of each and added that the main difference between the two concepts lies primarily in the variables used to distribute load. Network load balancing relies solely on network variables, while application load balancing relies mainly on application variables.
So what does this mean for SDN? According to MacVittie, layer 3 switches can support network load balancing, but that strategy is not application-centric, so it can't take into account factors like application status, connection capacity, etc. As a result, the architecture used to implement SDN for lower-order network layer services won't be the same as that used to implement SDN for higher-order network layer services.
SDN and the bigger picture
The Networking Nerd's Tom Hollingsworth likens an old parable of six blind men feeling an elephant to what's happening with SDN in the industry now. Too often individual experiences with IT dictate views on SDN, but if you concentrate on the areas of SDN that you are most familiar, it's easy to lose sight of the bigger picture of what SDN can do in the long run, he wrote.
Hollingsworth explored some leading policies in the market right now, including Cisco's ACI and OpenStack Congress, and said these companies have moved past the individual parts of SDN and are instead working on creating a framework to apply those parts. As a whole, Hollingsworth said many vendors are still focused solely on individual aspects of SDN, and are failing to have a larger vision.
Take a look at Hollingsworth's post on SDN, elephants and the bigger picture of what SDN can do in the industry.
What is SDN consumability?
According to Lisa Caywood, "SDN consumability" means SDN platforms should be simple to operate, safe and reliable, and have no blue-sky requirements. On her blog, The Borg Queen, Caywood talked about SDN adoption and the importance of "open SDN." A recent OpenDaylight Project survey said users are mainly looking for platform requirements that include formal design and development practices, delivered and deployed via proven tools and techniques, and supported by trusted programs and processes.
Caywood added that she suspects leading "open SDN" implementations will most likely be delivered by classic network vendors and services/open source firms that are anchored by the OpenDaylight Project. The most interesting aspect of IT adoption, Caywood concluded, is that it's never only about the technology -- instead, innovations are more of a starting point to a longer process.
Read more of Caywood's thinking behind SDN consumability and adoption.
Declarative versus procedural programming
On his ipSpace blog, industry expert Ivan Pepelnjak explained the differences between declarative programming and procedural programming, writing that in a nutshell, declarative programming languages let you see what needs to be done, while procedural programming languages focus on how to do it. Pepelnjak also explained the differences between Puppet manifests and router configurations, writing that it's obvious router configurations are procedural programs. The main difference between Puppet manifests and router configurations is in their levels of abstraction. Although this may sound confusing, Pepelnjak suggested focusing on principles, not implementation details.
Check out Pepelnjak's thoughts on the differences between declarative programming and procedural programming.