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
Communications service providers need to become digital service providers, but what exactly does that entail?
Here are some ideas for how cable operators can help low-income households connect to pay-TV and broadband services.
Once SDN and NFV are added to already complex wide area networks, management and security become even greater challenges for operators.
Operators should leverage their network, QoS, billing and big data to compete against OTT players with both consumer and enterprise offers.
Is it smarter to centralize network intelligence for LTE-Advanced and 5G, or continue the Flat-IP 4G trend of pushing intelligence to the edge?
Flash Poll
From The Founder
Is your network built on 'The Old IP,' or are you part of 'The New IP' revolution?
LRTV Documentaries
A Cultural Shift for an OTT World

9|26|14   |   01:41   |   (3) comments


Telcos need to embrace a new approach to partnerships if they are to generate extra revenues quickly and give customers what they want.
LRTV Documentaries
New Skills Needed as Telecom, IT Collide

9|26|14   |   4:07   |   (1) comment


As telecom and IT collide, new technologies are emerging, new skills are needed and new opportunities for women are arising.
UBB Forum News
Do IP Networks Need An Overhaul?

9|25|14   |   02:01   |   (0) comments


As traffic levels ramp, do IP networks need new technologies and topologies?
LRTV Documentaries
Sprint Wields Its Influence in the Valley

9|25|14   |   3:09   |   (11) comments


Anne-Louise Kardas, Sprint's connection to startups in the Valley, explains how telcos can be innovative and find new opportunities with partners.
LRTV Documentaries
SDN, NFV & The Future of XO's Network

9|25|14   |   3:47   |   (1) comment


XO Communications COO Don MacNeil explains how cloud, SDN and NFV are altering its network requirements as well as changing data centers of the future.
UBB Forum News
The OTT Conundrum

9|24|14   |   01:39   |   (0) comments


What is holding back prosperous partnerships between telcos and the OTT players?
LRTV Documentaries
Putting Broadband to Work

9|24|14   |   01:26   |   (0) comments


High-speed broadband network rollout is key to telco strategies, but it's what happens after the network is built that counts.
Light Reedy
Light Reading's Women in Telecom Recap

9|24|14   |   0:55   |   (4) comments


Our first Women in Telecom breakfast was a huge success, and we hope you'll join us in London for the next event on November 6.
UBB Forum News
Monetizing Ultra-Broadband

9|24|14   |   01:43   |   (2) comments


Ultra-broadband networks need to be built, with fiber-to-the-premises the ultimate goal, but they need to be monetized, too.
LRTV Huawei Video Resource Center
Sales Director of INIT on Plug & Play Switch Devices

9|19|14   |   3:21   |   (0) comments


INIT Italy uses both the Huawei S5700 and S7700 series switches for the campus LAN environment. Sales Director Andrea Curti says their company chose these Huawei devices over others because of their performance, flexible scalability and plug-and-play features.
LRTV Huawei Video Resource Center
Saudi Arabia Upgrades Vocational Training System

9|19|14   |   3:31   |   (0) comments


The Technical and Vocational Training Corporation (TVTC) has 100,000 students, 150 government-owned institutions and oversees 1000 private institutes. The CIO of TVTC explains that Huawei devices have allowed them to manage multiple datacenters using just one software program, scientifically tracking the progress of students and teachers, saving them millions.
LRTV Huawei Video Resource Center
Huawei's Media Solutions Are Here to Stay

9|19|14   |   4:35   |   (0) comments


The current media revolution requires rapid upgrades in technology. New formats (HD, 3D, 4K etc.) and the subsequent explosion of file sizes demand sophisticated network and storage architecture. Social media and the multiple distribution channels require a robust asset management system. Gartner analyst Venecia Liu speaks about the current technological trends in ...
Upcoming Live Events
October 29, 2014, New York City
November 6, 2014, Santa Clara
November 11, 2014, Atlanta, GA
December 2, 2014, New York City
December 3, 2014, New York City
December 9-10, 2014, Reykjavik, Iceland
June 9-10, 2015, Chicago, IL
Infographics
Half of the world's population will be connected to the Internet by 2017, but not just by smartphones and desktops.
Hot Topics
Facebook Pokes Around LTE Direct
Sarah Reedy, Senior Editor, 9/25/2014
Is Redbox Instant Shutting Down?
Mari Silbey, Independent Technology Editor, 9/30/2014
Sprint Wields Its Influence in the Valley
Sarah Reedy, Senior Editor, 9/25/2014
US Ignite Cultivates Gigabit Apps
Jason Meyers, Senior Editor, Utility Communications/IoT, 9/25/2014
Like Us on Facebook
Twitter Feed