& cplSiteName &

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        ADD A COMMENT
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
Educational Resources
sponsor supplied content
Educational Resources Archive
More Blogs from Column
The systems and processes used for assuring networks services and business models will need to be updated to support telco cloud and virtualization strategies.
Private investment is essential if the US is to reach its broadband goals, particularly for connecting rural America, writes former Congressman Rick Boucher.
Operators want to take advantage of cloudification, but the communications network is not the data center so they need to bridge the gap between the network and the cloud.
Is the current virtual reality customer experience equivalent to the significant investment?
With flexibility and speed becoming increasingly important in service development, microservice capabilities are attracting increasing attention.
From The Founder
Cisco's Conrad Clemson, recently promoted to head up the company's Service Provider Apps & Platforms developments, talks to Light Reading's Founder and CEO Steve Saunders about how he's bringing cloud video, mobile and virtualization together to empower network operators.
Flash Poll
Live Streaming Video
Charting the CSP's Future
Six different communications service providers join to debate their visions of the future CSP, following a landmark presentation from AT&T on its massive virtualization efforts and a look back on where the telecom industry has been and where it's going from two industry veterans.
LRTV Custom TV
4.5G Evolution: Peter Zhou on Advanced MIMO Technologies & 5G Business Prep

2|25|17   |     |   (0) comments


In the process of service transformation, operators need to catch three major opportunities and start deploying in 4.5G networks, such as video, household broadband access and digital transformation of vertical industries. 5G is coming. Operators don't need to wait for it to happen but should progressively deploy 4.5G networks by introducing 5G-oriented ...
LRTV Custom TV
What WTTX Can Deliver

2|23|17   |     |   (0) comments


Mohamed Madkour explains the benefits of WTTX while Dimitris Mavrakis discusses the challenges of delivering home broadband access.
LRTV Custom TV
Huawei on Mobile Broadband

2|23|17   |     |   (0) comments


Mohamed Madkour shares his vision on MBB for the next three years.
LRTV Custom TV
Analysys Mason Talks About the Future of Digital Operations

2|23|17   |     |   (0) comments


The future of digital operations has three key aspects: 1. Highly automated operations for both service and network; 2. Highly converged BSS/OSS for business and resources; 3. Highly merged management and control for real-time cloud native operations.
LRTV Interviews
Software Trends in the Telecom Sector

2|23|17   |   03:40   |   (0) comments


Heavy Reading senior analyst James Crawshaw talks with Telecoms.com Editorial Director Scott Bicheno about trends and developments in the telecoms software sector and what to expect at MWC 2017.
LRTV Custom TV
Huawei's Pre-MWC Analyst Briefing 2017 Highlights

2|22|17   |     |   (0) comments


Huawei shares its vision for this year's MWC.
LRTV Interviews
MWC17: 5G, Cloud RAN & More

2|21|17   |   04:35   |   (0) comments


Ovum Senior Analyst Julian Bright talks to Scott Bicheno from Telecoms.com about all things MWC, including Cloud RAN, Huawei's pitch to the industry and the road to 5G.
LRTV Interviews
MWC 2017's Key 2-Letter Terms

2|20|17   |   08:29   |   (1) comment


5G, AI, VR... these are just some of the two-letter terms that will dominate show-floor chat at MWC 2017 in Barcelona, according to these two blow-hards (a.k.a. Scott Bicheno of Telecoms.com and Light Reading's Ray Le Maistre). And then there's PB...
LRTV Interviews
Key Trends for Mobile Operators in Developing Markets

2|20|17   |   06:37   |   (0) comments


Ovum's Matthew Reed talks to Scott Bicheno from Telecoms.com about the challenges and opportunities facing mobile operators in the developing markets of Africa and the Middle East.
LRTV Documentaries
YouTube Takes on Facebook Live-Streaming

2|17|17   |     |   (0) comments


Popular 'YouTubers' will be the first to get the new service on their smartphones. You have been warned.
LRTV Custom TV
Open Source NFV/SDN Automation

2|17|17   |   05:54   |   (0) comments


AT&T ECOMP (Enhanced Control, Orchestration, Management and Policy) code is transitioning into the Linux Foundation for placement into open source. In this video, Carol Wilson provides an update on the maturation of open source ECOMP and meets with industry leaders from AT&T, Bell Canada, Orange, Linux Foundation and Amdocs to discuss what this means for the ...
LRTV Documentaries
Uber & NASA Collaborate on Flying Car Project

2|16|17   |     |   (0) comments


Is Uber for real? Well, it's hired NASA engineer Mark Moore to lead the project, and he wouldn't come cheap.
Upcoming Live Events
March 21-22, 2017, The Curtis Hotel, Denver, CO
March 22, 2017, The Curtis Hotel, Denver, CO
March 22, 2017, The Curtis Hotel, Denver, CO
May 15-17, 2017, Austin Convention Center, Austin, TX
May 15, 2017, Austin Convention Center - Austin, TX
June 6, 2017, The Joule Hotel, Dallas, TX
All Upcoming Live Events
Infographics
With the mobile ecosystem becoming increasingly vulnerable to security threats, AdaptiveMobile has laid out some of the key considerations for the wireless community.
Hot Topics
Uber's HR Nightmare: Company Investigates Sexual Harassment Claims
Sarah Thomas, Director, Women in Comms, 2/21/2017
Broadband Has a Problem on the Pole
Mari Silbey, Senior Editor, Cable/Video, 2/21/2017
Verizon to Start Fixed 5G Customer Trials in April
Dan Jones, Mobile Editor, 2/22/2017
Sprint to Go Gigabit Crazy at MWC!
Dan Jones, Mobile Editor, 2/22/2017
MANO Marriage: ECOMP, Open-O Converge as ONAP
Carol Wilson, Editor-at-large, 2/23/2017
Like Us on Facebook
Twitter Feed
BETWEEN THE CEOs - Executive Interviews
Light Reading founder and CEO Steve Saunders chats with Sportlogiq CEO Craig Buntin about sports data analysis.
Eyal Waldman, CEO of Mellanox Technologies, speaks to Steve Saunders, CEO of Light Reading, for an exclusive interview about the 100 GB cable challenge, cybersecurity and much more.
Animals with Phones
No One Likes This Click Here
Take a hint!
Live Digital Audio

Playing it safe can only get you so far. Sometimes the biggest bets have the biggest payouts, and that is true in your career as well. For this radio show, Caroline Chan, general manager of the 5G Infrastructure Division of the Network Platform Group at Intel, will share her own personal story of how she successfully took big bets to build a successful career, as well as offer advice on how you can do the same. We’ll cover everything from how to overcome fear and manage risk, how to be prepared for where technology is going in the future and how to structure your career in a way to ensure you keep progressing. Chan, a seasoned telecom veteran and effective risk taker herself, will also leave plenty of time to answer all your questions live on the air.