This month we take a quick look at the role of domain specific languages in future telecoms networks, prodded into this topic by Cisco's recent promotion of intent based networks, which we argue are just another example of DSL.
Is the future of network management as simple as high-level policy statements? Where else do we see domain specific languages popping up in telecoms? We take a crack at answering these questions but your insights are always welcome in the comments section.
Alan Gatherer, Editor-in-Chief
The Rise of the Machine: Will Domain Specific Languages Take Over Your Network?
Alan Gatherer, CTO, Baseband System on Chip, Huawei
These are interesting, and perhaps tricky, times to be in the wireless telecom infrastructure business. On one hand, LTE has been a smashing success. ABI reported in March that 50% of the Global population would be able to connect to a 4G network by 2022 . Everyone who worked in telecoms in the last 10 years or so should be proud of the success of LTE. There have not been that many Gs and this has been a good one. Now there are signs that the deployments are slowing down as the market begins to saturate. At the same time, the 2G and 3G networks are in double-digit decline according to the same article, a testament to the industry (finally?) getting voice over LTE into an acceptable condition for it to take over. Again, this is a great success story as cellular wireless becomes a true data network. However, no good deed goes unpunished and now we find ourselves in a bit of a doldrums. LTE is built out and we wait for the breeze to pick up and blow 5G our way. Ericsson is notable as the biggest and tallest one in the boat right now with 11% year –on- year revenue declines . But others are feeling the pinch too.
So where should we go to find a little excitement and the next new thing for the next few years? If I actually knew that, I certainly wouldn't tell all of you. However, I'd like to suggest that there is a trend in the software industry that is starting to catch up with telecoms called Domain Specific Languages (confusingly abbreviating to DSL). As a System on Chip guy inside of telecoms I have seen the slow rise of DSL within the semiconductor business, perhaps over the last decade or so. But it seems to be speeding up now. The famous John Hennessey, cofounder of MIPS and professor at Stanford, recently gave a concise obituary for Moore's Law and Dennard's scaling and proposed DSL and Domain Specific Architectures (not so confusingly abbreviated to DSA) as the savior of the semiconductor industry . There are already some great examples of DSL in use today. Most notably CUDA and now OpenCL, which are DSLs originally intended for programming GPUs (a notable example of a DSA) and are now used on a diverse range of programmable platforms.
This trend is now starting to catch up to the telecoms space. If we can consider Software Defined Networks to be a DSA for networking, then finally we may have a DSL for that in P4 . As pointed out in the references , SDN suffers from a constantly growing API list as new features are added. Hardware in the field cannot keep up with the new changes. If done correctly, some kind of DSL may be able to give the switches and routers the ability to learn new skills while retaining a reasonable level of efficiency. DSL provides the compromise between efficiency and flexibility that allows a technology to grow after deployment. Shortly after P4 was introduced, Atomix, a DSL for developing radios on DSP SoC, was proposed with the idea of allowing easy programming in a real time environment . So DSL for programming packet and algorithmic flow in networks, boxes ticked. However, it is too early to say how these languages will survive. This author believes that there are not enough companies programming SoC in the wireless modem space to support an open source DSL. I am not so sure about a network chip, but time will tell.
Most recently, Intent-Based Networks (IBN) have arrived on the scene, promoted this year by Cisco Systems. Gartner has a brief summary of what these are with some very entertaining comments below the article . Is this a DSL? Well it certainly sounds like one, with the Domain being "business policy" and the output language being the network configuration (which if it is an SDN might then use P4, I guess!). One of the start-up champions of IBN is Apstra – they have a nice cartoon demo of how their system works . Their flow has a line that says it will "Algorithmically pre-validate that changes are semantically correct and consistent." Add a little optimization to that and it sounds like a compiler to me (if you have a compiler you have a DSL). Note that a DSL can produce all sorts of output, not just code but also configuration, data structures and mixtures of these. This is part of the power of the DSL approach. Interestingly, IBN will also rely on data collection and even Machine Learning to make sure the network is staying to the intended policy. The use of ML and data mining in DSLs is a theme we will probably see more of with time. The comments in the Gartner Blog Network  are correctly skeptical that a language can produce that amount of intelligence. And, there currently seems to be a lack of any kind of language standardization for the "business policy." Without this, I believe intent-based networks will not become widely popular and will not support an ecosystem of tooling that is required. Cisco made a big deal of their intent-based network plans just last month , but as the article points out they may intend to own the language and tooling and sell a complete and closed solution to customers. History seems to have taught us that this is a bad idea, even for a company as large as Cisco. Perhaps this year may reveal more of their strategy. Anyway, it looks like DSL for networks will be with us for a while. We can look forward to seeing if DSL of one type or another becomes a critical item in the 5G deployment after 2020.
 "The End of Road for General Purpose Processors and the Future of Computing", keynote, Hennessey, Stanford SystemX symposium, March 2017.
 "P4: Programming Protocol-Independent Packet Processors,” Bosshart et al, 2014.
 " Atomix: A Framework for Deploying Signal Processing Applications on Wireless Infrastructure", Bansal et al, 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI ’15).