Light Reading
How can cable engineers reduce the complexity in both network design and configuration?

Making Things Simpler

Jeff Finkelstein
6/16/2014
100%
0%

    “The way to build a complex system that works is to build it from very simple systems that work.” – Kevin Kelly, founding editor of Wired Magazine

In many ways, we are most comfortable with complexity. As engineers, we enjoy the process of creating, modifying, re-creating, and maybe at some point in time actually producing something that works. We find that more often than not we enjoy the process more than the creation itself. So we undertake the analysis, re-analysis, re-re-analysis, of solving a given problem and often find the most complex, sometimes most costly, often difficult, solution as it appeals to the problem solver in us all.

I often remember the following cartoon when I am faced with solving a technology problem…

Back in the good old days when I was involved in developing UNIX kernels, we often played games with code trying intentionally to make it as obfuscated as possible. We even gave prizes out for whoever could write the most unreadable code. We considered it a fun way to solve problems and also impress our peers with our programming skills.

What we lost in the process was that there were people actually using our software and that others in the future would have to maintain it. As I look back at code I wrote in the 80s, I have no idea what I was trying to do unless there were some semblance of comments scattered haphazardly throughout the code. It was fun back then, but today I would not be happy having to need to make a code change.

As engineers, we need to maintain the balance between simple solutions and complex answers. Occam's Razor has proven true all too many times for us to ignore it and yet at times we do. We become so enamored of our favorite shiny object that we develop an amazingly transparent blindness to others' blind spots, to anything other than what has become the new toy in our toy box. However, we do know we cannot completely depend on it. We may build large, complex, and even unwieldy, solutions to posed problems, but very often we are solving for things that have never even been presented as a concern.

For my architecture team, we maintain five simple rules:

1. Simple, modular architectures always win
2. Centralize what you can, distribute what you must
3. Silicon matters for scale, availability, and resilience
4. Automate anything that can be automated
5. Support open standards

The more complexity we introduce into an already complex ecosystem creates a difficult road to navigate over time. Each change creates a ping-pong effect that often touches remote pieces of the design in our minds, never to be impacted. But in some small way they are changed enough to cause havoc that we end up spending much time troubleshooting.

Back in my last column, I spent time discussing the delineation between network layers in the cable modem termination system (CMTS) functional block diagram that I've been using for a few articles to show how this simplification may help. Putting the physical layer components (and possibly MAC) into a remote device helps with the scale issues at hand while also simplifying the architecture. (See Embracing Technological Change and Learning From Mistakes.)

There are many ways to solve the same problems using monolithic architectures that are completely sound both technically and financially. But do they get us where we want in the long run? How do we simplify even more? What can we do to not only break the functional blocks and layers apart further, but also provide a communication path between them?

Enter SDN and NFV…

While they are our industry's current shiny objects, if we treat them as another tool in our toolbox they do provide a framework for achieving this goal. I am often involved in discussions about how they can be used to solve almost every imaginable issue simply by decomposing functions or using OpenFlow (or other protocols) as a standard communication mechanism. Realistically, both SDN and NFV are finding their way through the complex organism we call our network. But, in order for them to flourish in our technological world, we need some quick wins to show how they may help.

So what are they? I like to look for ways to reduce the complexity both in design and configuration. As we add more devices, paths, circuits, flows, routes, etc, we make things more complex. As we are required to configure more equipment with device-specific configurations using unique command line interfaces, we simply increase the complexity.

So how can we simplify things? One way is to use an abstraction that allows us to define things in such a way that it is applicable to multiple physical manifestations. Rather than force us to integrate device and service-level provisioning, is there a way to focus on the services and let the devices provision themselves? To me, it is a holy grail in network design and management; but through standardization we are getting much closer.

In the excellent work done at CableLabs, with MSO and vendor support, on Converged Cable Access Platform (CCAP) and DOCSIS 3.1, we are seeing a real-world impact through the use of YANG models for device and service abstraction, and NETCONF for configuring devices. In many ways, this is the beginning of a whole new way to view the cable ecosystem. We are no longer encumbered with doing things as we have always done them; it is a completely new way to envision how we may be able to manage our networks.

Stay tuned for future blog posts and ruminations on ways to think about N2GCable, i.e. the next-next generation of cable we are now entering…

— Jeff Finkelstein, Executive Director of Strategic Architecture, Cox Communications

(8)  | 
Comment  | 
Print  | 
Newest First  |  Oldest First  |  Threaded View
brookseven
50%
50%
brookseven,
User Rank: Light Sabre
6/18/2014 | 12:26:41 PM
Re: Abstraction as a language
I think the biggest challenge here is age.  I don't mean the age of people, but instead the age of products and services.

My experience with this is that things become difficult once a product or service exists for a period of time.  There becomes dependency on what I will call quirks in behavior.  This kind of kruft creeps in over time.

Why do I bring this up.  The kind of systems architecture discussion here is most valid about brand new things.  Do we have that in a network service?  FiOS was about as brand new as a service as I have been involved with.  Even there we had TIRKS.

So my question is...Can you define the entire current network as a single abstraction?  If not, I think that you will end up with issues around interconnecting the old and new.  I have had success in encapsulating the old and treating it as a block.  But old products are grumpy and have personalities.  They get mad when you try to get them to do things that they were never intended to do.

seven
nasimson
50%
50%
nasimson,
User Rank: Light Sabre
6/17/2014 | 11:29:17 PM
Re: Abstraction as a language
Thanks Mike. Now that I get it, I think it's an area where industry associations should play a greater and active role in defining and standardizing these abstractions and specifications.
@mbushong
50%
50%
@mbushong,
User Rank: Moderator
6/17/2014 | 10:10:02 PM
Re: Abstraction as a language
We tend to think of edge policy in very networking-centric terms: VLANs, ACLs, QOS, whatever. These are all constructs that help us specify how traffic traverses (or does not) the network. 

If the future is about converged infrastructure (including applications), the most meaningful abstractions are probably not networking constructs. What you might want is a set of abstractions relevant across all infrastructure. 

If the abstractions are in support of applications, the abstractions themselves could be expressed in application terms. For example, it might be interesting to label an application as HIPAA-compliant. Individual infrastructure elements would then translate this policy into behavior (isolating traffic on the network, for instance). You could specify things like application response times, loss thresholds, compliance requirements (like PCI), access restrictions, auditability requirements, etc.

Note that this would all need to be done in a way that is somewhat higher-level than the underlying compute, storage, and networking, and obviously in a way that is at least open access (like open source) if not standard.

Mike Bushong (@mbushong)

Plexxi
nasimson
50%
50%
nasimson,
User Rank: Light Sabre
6/17/2014 | 9:49:22 PM
Re: Abstraction as a language
> Maybe we need to be presenting policy as a derivative of applications SLAs? @Mike: Can you please elaborate the above a little? Thanks in advance.
nasimson
50%
50%
nasimson,
User Rank: Light Sabre
6/17/2014 | 9:41:00 PM
lot of insights
A great wow article! Only the other day, I was thinking of this image to put it in my work space so that we don't repeat these mistakes. To learn from the insights there in, and not to let these slip over from over time, I think I need to read it every once in a while.
Duh!
50%
50%
Duh!,
User Rank: Light Sabre
6/17/2014 | 10:16:30 AM
One more rule
Excellent points.

As a network architect, I have adapted a rule from software engineering.  Since it is complementary to the five rules that Jeff writes about, I'd simply add it to his list.

6. Strong cohesion within subsystems, loose coupling between subsystems.

Which means that subsystems should be kept small and simple by insisting that all their functions be the set of operations on a single, self-contained object.  And that interfaces between subsystems be kept simple.  When a subsystem gets too complex to understand, or has too many moving parts... you're doing it wrong.   When an interface gets too chatty or has a state explosion... you're doing it wrong.  Redraw your subsystem boundaries and start again.

 
danielcawrey
50%
50%
danielcawrey,
User Rank: Light Sabre
6/16/2014 | 5:28:19 PM
Re: Abstraction as a language
I can see a future where many systems will need multiple networks, not just one or two. Being able to rethink VLAN architecture with a more software-defined component I think is a step towards this. 

Ultimately, I think that network engineering is more going to be able compartmentalizing certain aspects of a system. Does anyone else see that type of architecture coming?
@mbushong
50%
50%
@mbushong,
User Rank: Moderator
6/16/2014 | 10:13:48 AM
Abstraction as a language
The needfor abstraction is absolutely a great way to siplify things going forward. We should be aware that these abstractions will eventually serve as the lingua france between infrastructure that current exists in separate silos. This begs for some real thought to be put into anything that resembles a policy abstraction. Should things be expressed in terms of networking constructs? Or in terms of storage or compute requirements? Maybe we need to be presenting policy as a derivative of applications SLAs? 

The point is not to advocate one or the other here, but rather to suggest that even abstraction needs to be thought about. Because it is being done within the context of networking today, we could very well end up with a reimagining of VLANs and ACLs, a good step for sure but certainly not a long-lasting evolutionary step.

Mike Bushong (@mbushong)

Plexxi
More Blogs from Column
Defining SDN realistically will help carriers cut through the hype, says Sunil Khandekar, CEO of Alcatel-Lucent's Nuage Networks.
They can go from also-rans to leaders -- if they don't mess up.
The benefits of SDN are hard to grasp because they're so big. But NFV provides a nice, finite-value proposition.
Intensive end-to-end test and measurement is essential to ensure the smooth rollout of new services like VoLTE.
European Union roaming regulations are opening the doorway to an enhanced consumer experience and higher market growth.
Flash Poll
LRTV Custom TV
A New Security Paradigm in SDN/NFV

7|28|14   |   02:54   |   (0) comments


Paul Shaneck, Global Director Network Solutions for Symantec, discusses the evolving virtualized network, explaining how Symantec is leading the security discussion as it relates to SDN and NFV, and helping to ensure the network is protected and compliant.
LRTV Documentaries
Sprint's Network Evolution

7|24|14   |   14:59   |   (0) comments


Sprint's Jay Bluhm gives a keynote speech at the Big Telecom Event (BTE) about Sprint's network and services evolution strategy, including Spark.
LRTV Documentaries
BTE Keynote: The Software-Defined Operator

7|24|14   |   18:43   |   (1) comment


Deutsche Telekom's Axel Clauberg explains the concept of the software-defined operator to the Big Telecom Event (BTE) crowd.
Light Reedy
Numbers Are In: LR's 2014 Salary Survey

7|24|14   |   1:25   |   (7) comments


Our fourth annual Salary Survey paints a picture of who's hiring, firing, earning, and yearning for a change in the telecom industry.
LRTV Custom TV
Driving the Network Transformation

7|23|14   |   4:29   |   (0) comments


Intel's Sandra Rivera discusses network transformation and how Intel technologies, programs, and standards body efforts have helped the industry migration to SDN and NFV.
LRTV Custom TV
Distributed NFV-Based Business Services by RAD

7|18|14   |   5:38   |   (0) comments


With the ETSI-approved Distributed NFV PoC running in the background, RAD's CEO, Dror Bin, talks about why D-NFV makes compelling sense for service providers, and about the dollars and cents RAD is putting behind D-NFV.
LRTV Custom TV
MRV – Accelerating Packet Optical Convergence

7|15|14   |   6:06   |   (0) comments


Giving you network insight to make your network smarter.
LRTV Custom TV
NFV-Enabled Ethernet for Generating New Revenues

7|15|14   |   5:49   |   (0) comments


Cyan's Planet Orchestrate allows service providers and their end-customers to activate software-based capabilities such as firewalls and encryption on top of existing Ethernet services in just minutes.
LRTV Custom TV
Symkloud NVF-Ready Video Transcoding, Big Data

7|9|14   |   3:41   |   (0) comments


Kontron and ISV partner Vantrix demonstrate high-performance video transcoding and data analytic solutions on same 2U standard platform that is ready for SDN and NFV deployments made by mobile, cable and cloud operators.
LRTV Huawei Video Resource Center
The Evolving Role of Hybrid Video for Competitive Success

7|4|14   |   4:09   |   (0) comments


At Huawei's Global Analysts Summit in Shenzhen, China, Steven C. Hawley from TV Strategies speaks to us about the evolving role of hybrid video for competitive success.
LRTV Huawei Video Resource Center
How CSPs Leverage Big Data in the Digital Economy

7|4|14   |   4:48   |   (2) comments


Justin van der Lande from Analysys Mason shares with us his views on how telecom operators can leverage customer asset monetization with big data. His discusses the current status of big data applications and the challenges and opportunities for telecom operators in the digital economy era.
LRTV Huawei Video Resource Center
Accelerator for Digital Business – Future Oriented BSS

7|4|14   |   3:08   |   (0) comments


Mobile and internet are becoming intertwined; IT and CT are integrating; and leading CSPs have begun to transform to information service and entertainment providers. How should the BSS system evolve to enable this transformation? Karl Whitelock, an analyst at Frost & Sullivan, shares his views.
Upcoming Live Events!!
September 16, 2014, Santa Clara, CA
September 16, 2014, Santa Clara, CA
October 29, 2014, New York City
November 6, 2014, Santa Clara
November 11, 2014, Atlanta, GA
December 9-10, 2014, Reykjavik, Iceland
Infographics
Packet Design asks network professionals how they handle the cloud, SDN, and network management.
Today's Cartoon
Vacation Special Caption Competition Click Here
Latest Comment
Hot Topics
The Municipal Menace?
Jason Meyers, Senior Editor, Utility Communications/IoT, 7/22/2014
Cisco Puts a Fog Over IoT
Sarah Reedy, Senior Editor, 7/23/2014
Apple Earnings: Strong iPhone Sales, iPad Sales Slump, $7.8B Profit
Mitch Wagner, West Coast Bureau Chief, Light Reading, 7/22/2014
Salary Survey Report 2014
Sarah Reedy, Senior Editor, 7/23/2014
Like Us on Facebook
Twitter Feed