Most of the challenges that need to be overcome to make PaaS is suitable for telco relate to the need for additional features that telco applications typically require in terms of latency, security, and availability. PaaS provides the building blocks for automated testing, continuous deployment, as well as supporting the DevOps approach, and as such simplifies the development process and reduces time to market.
The convergence of IT, telecoms, and other domains brings benefits to all industries. PaaS is a cloud-based service model that frees up developers to focus on how to deliver the best business solution. In PaaS, the platform delivers services that can be used to develop applications, differing from the traditional method of development in which developers need to create the entire software stack.
By using microservices – the construction or deconstruction of applications into small parts – developers can build solutions in a technology-agnostic manner, choosing just the right network protocol and solutions for the application at hand. This approach enables each part of the system to be developed, maintained, deployed, executed, upgraded, and scaled independently.
Avoiding dependencies enables technology choices to be made on a per-microservice basis. As new technologies become available, they can be implemented appropriately without the need for a synchronized cross-microservice upgrade. As a result, each microservice can evolve at the right pace in a way that is most appropriate for a particular service.
The technology gaps that need to be closed to pave the way to telco-grade PaaS include tenant isolation and trace support. But there are many more, and this article covers how they together with microservices architecture can be combined to maximize the benefit.
1. CLOSING THE GAPS ✱
MAY 25, 2016 ✱ ERICSSON TECHNOLOGY REVIEW 1
ERICSSON
TECHNOLOGY
software as a service (
platform as a service (P
infrastructure as a servic
consume
build and run on
host on
Users
Developers and testers
System administrators
C H A R T I N G T H E F U T U R E O F I N N O V A T I O N V O L U M E 9 3 | # 4 ∙ 2 0 1 6
PAVINGTHEWAYTO
TELCO-GRADEPAAS
2. ✱ CLOSING THE GAPS
2 ERICSSON TECHNOLOGY REVIEW ✱ MAY 25, 2016
EDVARD DRAKE
IBTISSAM EL KHAYAT
RAPHAËL QUINET
EINAR WENNMYR
JACKY WU
Independent of business, ways of working, or even technology adoption,
the pressure on modern industries to shorten time to market through rapid
development cycles is constant. The concepts of platform as a service (PaaS)
and microservices – which have been gaining traction in the IT world – are
deeply rooted in this need to cut development times. And the benefits are
equally important in the telco domain. But there are gaps that need to be
closed before PaaS is suitable for telco. Most of the challenges relate to the
need for additional features that telco applications typically require. Once
PaaS is telco approved, new applications will need to follow a number of
design patterns, so that the full advantages of the platform-as-a-service
approach can be realized.
pa a s i s a cloud service model that
allows developers to build, run, and manage
applications in a way that best suits their
business needs, and most significantly, in
a way that is independent of the underlying
hardware or software infrastructure.
Typically, PaaS enables developers to deploy
code on top of a software stack that includes
a runtime environment for one or several
programming languages, an operating
system, and basic services to build upon. PaaS
provides the building blocks for automated
testing, continuous deployment, as well as
supporting the DevOps approach, and as
such simplifies the development process and
reduces time to market.
telco-grade
PAVING THE WAY TO
PaaS
3. CLOSING THE GAPS ✱
MAY 25, 2016 ✱ ERICSSON TECHNOLOGY REVIEW 3
Inthestackofcloudservicemodels,shownin
Figure 1,PaaSfitsinbetweensoftwareasaservice
(SaaS)(whichtargetsuserswithlicensedsoftware
offerings)andinfrastructureasaservice(IaaS)
(whichaddressesthemanagementandsharingof
hardwareresources).
PaaSworkswithvariouscloudmodels:public,
private,orhybrid.Thehybridmodelcan,for
example,beusedbyenterprisesandtelecom
serviceproviderstooptimallycombinethedifferent
handlingneedsofsensitiveandnon-sensitive
workloads,wherethecommonmanagement
interfaceenablessometobedeployedonaprivate
cloudandothersonapubliccloud–asshown
inFigure 2.Latency-sensitiveworkloads,for
example,ortasksthatrequiresecurityorcontrolfor
proprietarydatacanbedeployedonpremisesina
privatecloud,whilenon-sensitiveworkloadscanbe
deployedinapubliccloud,maximizingagilityand
optimizingcosts.
Dependingonthelevelofautomationand
integrationprovided,PaaSsolutionscanbe
furtherdividedintotwocategories:structured
andunstructured.Unstructuredplatforms
leveragebasiccontainertechnologiesorpublic
PaaS offeringsandareusuallymanagedor
monitoredwithhomegrowntools. Technology-
centriccompaniestendtofavorsuchunstructured
platforms,astheyfacilitatedevelopmentand
maintenanceofsolutionscustomizedtomeet
businessneeds.
Structuredplatforms,ontheotherhand,come
withbuilt-infeaturessuchasorchestration,
monitoring,governance,loadbalancing,andhigh
availability.Thesecharacteristicsmakestructured
platformssuitableforenterprisesortelecomservice
providers,andarethereasonbehindEricsson’s
focusonstructuredPaaS.
ThebenefitsbroughtbyPaaS
WhatbenefitsPaaS canoffervaryfrombusiness
tobusinessandfromoneapplicationtothenext,
dependingonwhetherithasbeenspecifically
designedforPaaS orwhetheritsimplyrunsina
PaaS environment.ThePaaS approachiswell
suitedtoapplicationdevelopersandvendors,but
itcanalsobeofgreatvaluetootheruserssuchas
systemintegratorsandserviceoperators.
SomeoftheconceptsusedinPaaS,suchas
multipleapplicationinstancesandcomponent-
basedarchitecture,areestablishedapproaches
inthetelcodomain.Tokeepthecomplexityof
componentsatamanageablelevel,thetelcodomain
hasalong-standingtraditionofmodulardesign.
However,designingapplicationsspecificallyfor
PaaS increasesthenumberofbenefitsforthe
differentusergroups.
Benefitsforapplicationdevelopers
PaaS enablesdeveloperstofocusonthebusiness
logicoftheirapplications,asitfreesthemfromthe
concernsassociatedwithsettingupthenecessary
foundationfordeployment,testing,adaptation,
androllout.Indoingso,PaaS enablesinnovation
accelerationandrapidtimetomarket.
STRUCTURED PLATFORMS,
COME WITH BUILT-IN FEATURES
SUCH AS ORCHESTRATION,
MONITORING, GOVERNANCE,
LOAD BALANCING, AND HIGH
AVAILABILITY
Terms and abbreviations
IaaS – infrastructure as a service | MMTEL – multimedia telephony | PaaS – platform as a service | SaaS – software
as a service | SCTP – Stream Control Transmission Protocol | UDP – User Datagram Protocol | VNF – Virtualized
Network Function
4. ✱ CLOSING THE GAPS
4 ERICSSON TECHNOLOGY REVIEW ✱ MAY 25, 2016
software as a service (SaaS)
platform as a service (PaaS)
infrastructure as a service (IaaS)
consume
build and run on
host on
Users
Developers and testers
System administrators
Figure 1:
Cloud service models (from
the point of view of the
service consumer)
ApplicationsdesignedtoruninaPaaS
environmentarelikelytobelesscomplexand
consumelessresourcesthantheirtraditionally-
programmedcounterparts,astheydonotneedto
re-implementtheservicesthatareprovidedbythe
platform.Asaresult,aPaaS applicationtakesless
timetostartupthanapplicationsdeployedona
fullsoftwarestack.ThesimplifiednatureofPaaS
applicationsbringsbenefitsintermsofscalability,
especiallyforthosethatarestateless.
DesigninganapplicationforPaaS withloosely-
coupledinternalandexternalinterfacesmakesit
easiertomanagelifecyclesforthecomponentsof
anapplicationandfortheservicestheyuseinan
independentmanner.Deployingcomponentsthat
arelooselycouplednotonlysimplifiesanupgrade,
italsoreducesthecomplexityofvalidatingan
upgrade.Combinedwiththefreedomtochoosethe
programminglanguageandruntimeenvironment
bestsuitedtothetaskathand,loose-coupling
enablescomponentstobereplacedatanytimewith
adifferentimplementation–eveninadifferent
language–whichinturnsupportsthegradual
introductionofnewtechnologies.
ThePaaS frameworkprovidescommonways
toexposeandbindtoservices,whichsimplifies
thedeploymentofnewservices.Servicegateways
andbrokerscanalsoexposeexternalservices,so
theycanbeusedbyapplicationsrunninginsideor
outsidethePaaS environment.
Theeaseofintegrationofnewservicesbrought
aboutbyPaaS contributestofasterinnovation,
whichisoneofthemodel’sprimarybenefits.
Benefitsforsystemintegrators
Someofthebenefitsthatapplytodevelopersalso
applytosystemintegrators.Loosely-coupled
servicesandindependentlifecycles,forexample,
cansimplifythetestingandupgradeofcomponents,
asthesetaskscanbecarriedoutseparately.Andthe
commonbindingandserviceexposureframework
facilitatestheintegrationofnewservices.
5. CLOSING THE GAPS ✱
MAY 25, 2016 ✱ ERICSSON TECHNOLOGY REVIEW 5
Benefitsforserviceoperators
APaaS-designedapplicationcanscalequickly
andeasilywithflexibleworkloaddeployment,
whichleadstooptimaluseofhardwareresources.
However,careshouldbetakenwhendealing
withapplicationsdesignedwithlargenumbersof
lightweightcomponentsthatneedtocommunicate
witheachother,toensurethatworkload
deploymentsdonotnegativelyimpactperformance.
Ingeneral,securityassuranceandgovernance
bothbenefitwhenapplicationsrunonacommon
frameworkthatprovidescollectiveapplication
managementandsupportsintra-service
communication.Forexample,theplatform
approachremovestheneedtomanagemassesofad
hocsecuritysolutionsandtherulesgoverninghow
theyapplytoapplications.
Howdomicroservicescontribute?
Thesoftwareindustryiscurrentlyexperiencinga
riseintheuseofmicroservicesandmicroservices
architecture.AndwhilePaaS andmicroservices
aretwoseparateconcepts,viewingPaaS in
combinationwithmicroservicesandotherconcepts
likecontainersandDevOps,cansubstantially
increasetheleverageofeachofthem.
Microservicesisanarchitecturalpatternand
anapproachtodevelopment.Essentially,this
approachbuildsapplicationsfrom(ordeconstructs
existingapplicationsinto)smallparts–eachwitha
singleandwell-definedpurpose.Tocommunicate,
theparts(ormicroservices)uselanguage-and
technology-agnosticnetworkprotocols,andeach
partcanbedeveloped,maintained,deployed,
executed,upgraded,andscaledindependently.
Technologychoicesarespecifictothemicroservice
andeachmicroserviceshouldbeownedbyasmall
teamofdeveloperstominimizetheoverheadof
intra-teamcommunication.
Overall,theabilitytodeveloppartsinan
independentwayenablesrapidprogress,allowing
developmenttokeeppacewithmarketdemands,
andfacilitatesscalingofdevelopment.
Decouplingandindependencybetween
microservicesisfundamentaltoamicroservices
architecture.Independencesupportsscalingover
multipleteamsbecauseitenablesmanysmallteams
toworkinparallel,withclearresponsibilities,a
largedegreeoffreedom,andminimalinteraction.
Decouplingalsoenablesthedifferentpartsofthe
systemtoevolveattheirownpace.
Avoidingdependenciesenablestechnology
choicestobemadeonaper-microservicebasis.As
newtechnologiesbecomeavailable,theycanbe
implementedappropriatelywithouttheneedfor
asynchronizedcross-microserviceupgrade.Asa
result,eachmicroservicecanevolveattherightpace
inawaythatismostappropriateforaparticular
service:anefficientsystemthatlendsitselftothe
creationofever-improvingservices.
Whiletheadvantagesofamicroservices
architectureareapparent,inpractice,thisapproach
posesanumberofsignificantchallenges.Tostart
with,thewell-knownfallaciesofdistributed
computing[1]shouldbeavoided.Toperforma
giventask,anumberofmicroservicesareinvoked
sequentially,eachofwhichcontributesignificantly
tooveralllatency,makingitmoredifficulttopredict
thetheoveralllatencyofaservice.So,assuming,for
example,thatbandwidthisinfinite,orthatlatencyis
zerocanresultincostlyredesignwork.Challenges
includetheoverallcomplexity,bothindevelopment
andinruntime,ofalarge,highlydistributedsystems.
Theabilitytotestasystemisequallychallenging,
particularlywhenitcomestoadditionalcomplex
failurescenarios.
Oneway–andmaybetheonlyway–toovercome
thechallengessurroundinglatencyistoacceptthat
somepartsofthesystemneedtobedesignedwith
THE ABILITY TO DEVELOP
APPLICATION PARTS IN AN
INDEPENDENT WAY ENABLES
RAPID PROGRESS, ALLOWING
DEVELOPMENT TO KEEP PACE
WITH MARKET DEMANDS, AND
FACILITATES SCALING
7. CLOSING THE GAPS ✱
MAY 25, 2016 ✱ ERICSSON TECHNOLOGY REVIEW 7
detectedandrectifiedbeforetheycauseanoutage.
Today’sPaaS environmentsincludesomebasic
monitoringsupport(typicallycheckingwhether
ornotanapplicationisexecuting)butmore
advancedmechanismsareneeded,especiallyfor
amicroservicearchitecture,tohandlescenarios
whereapplicationsareindeadlock,ortocopewith
aninternalcrash,forexample.
Loggingsupport
Whenafaultdoesoccur,theoutagetimeuntil
normaloperationscanberegainedhasasignificant
impactonoverallavailability.Accesstoinformation
abouttheerroristhekeytorapidresolution.A
presentationofthelogsfromaPaaS application
–includingservicesused–isneededtofacilitate
properfaultanalysis.ExistingPaaS solutionsdonot
yetsupportsuchafeature.
Security
Theuseofrole-basedaccesstorestrictactionson
applicationsandtheinfrastructurereducesoutages
causedbyalackoftherightkindofcompetence.This
typeofsecuritymeasurealsoprotectsapplicationsfrom
maliciousaccess,whichreducestheriskofdowntime.
CurrentPaaS environmentsprovideadegreeof
supportintermsofaccesscontrol,butadditional
backingisneededintheformofdataencryption
solutions,protocolsthatguaranteeseparationoftraffic,
andcertificatehandling,forexample.
Tenantisolation
Strongsupportfortenantisolationcoveringall
aspectsoftheinfrastructure(compute,network,and
storage)minimizestheimpactafaultinonetenant
applicationhasonothertenantssharingthesame
physicalresources.CurrentPaaS environments
havesufficientsupportfortenantisolation.
Upgradesupport
Toensurethatcapacitylossesarekeptbelowthe
20percentlimit,applicationandinfrastructure
upgradesneedtobecarriedoutwithoutaffecting
operation.Forstatelessapplications,upgradesto
individualinstancesoftheapplicationcantake
placewithoutcausingadisturbance.Itmustalso
bepossibletoupgradethePaaS environmentitself
withoutaffectingrunningapplications.
Backupandrestore
Savingthestateofanapplicationandcorresponding
softwareversionenablesanapplicationto
berestoredquicklyfollowingamajorfailure,
minimizingdowntime.
Private cloud Public cloud
Hybrid cloud
Control
Performance
Reduced latency
Elasticity
Time to market
PaaS workloads
Figure 2:
Deploying PaaS
workloads in different
types of clouds
8. ✱ CLOSING THE GAPS
8 ERICSSON TECHNOLOGY REVIEW ✱ MAY 25, 2016
Quickrestarttime
Theabilitytorestartquicklyreducestheoutagetime
followingamajorproblem.Thiscapabilityiscurrently
supportedforstatelessPaaS applications.
Independentrestart
Tomaintainindependenceofinfrastructure
andapplicationavailability,restartingaPaaS
environmentintheeventofaninternalfault,
upgrade,orotheradministrativeprocessshouldnot
necessitatetherestartofapplications.
Networkprotocolsupport
Telcoapplicationsrequiresupportforawidersetof
networkprotocolsthantypicalIT applications.For
example,UDP andSCTP aretypicalofthetypeof
protocolsthattelcoapplicationsrelyon,whichare
notfoundintraditionalIT environments.Adding
supportforsuchprotocolswillexpandthesetof
applicationsthatcanbedeployed.
Alarms
Longeroutagescanbeavoidedbyissuinganalarm
indicatingboththataproblemhasarisenandhowto
addressit.Thisinformationneedstobecollectedin
aconsistentwayfromtheapplicationandthePaaS
servicesbeingused.
Performancecounters
Asystemthatsupportsarichsetofperformance
counterspreemptsproblemsbeforetheyarise,and
takesproactivemeasurestoavoidoutages.This
informationneedstobecollectedinaconsistentway
fromtheapplicationandthePaaS servicesbeing
used.
Tracesupport
Ifafaultoccursduringoperation,troubleshooting
needstobefasttominimizeoutagetime.Thetrace
outputofapplicationsisneededtofacilitateproper
troubleshooting.Thisinformationneedstobe
collectedinaconsistentwayfromtheapplicationand
thePaaS servicesbeingused.
Softreal-time
ThenetworkingsolutioninthePaaS environment
mustbehighlyefficientwithshortround-triptimesto
fulfillthelatencyrequirementsoftelcoapplications.
Closingthisgapisasignificantimprovementas
doingsowillincreasethepossibilityofdeploying
amicroservicesarchitecture(oneofthebiggest
concernsoversuchanarchitectureisthelatency
inducedbymultiplenetworkhops).
AchievingtelcoonPaaS
Thislistofwantedfeatureshighlightsthegapsthat
needtobeclosedtomakePaaS suitableforalltelco
applications.Butoncethesefeatureshavebeen
added,whatopportunitiesarelikelytoarise?
BuildinganewPaaSapplication
Whenwritinganewapplicationbasedon
microservicesarchitecturetorunonPaaS,new
designprinciplesareneededtomaximizethe
benefits.Someoftheseprinciplesareborrowedfrom
thetwelve-factorapp[2].Amongtheseprinciples,
telcomicroservicesneedto:
〉〉 encapsulate a well-bound and well-defined function
with a clear business need
〉〉 have separate life cycles – so they can be developed,
delivered, installed, and upgraded independently
〉〉 be stateless – by storing data that needs to persist in a
stateful backing service
〉〉 adhere to decoupled communication – using
well-defined interfaces, network protocols, and
asynchronous messages
〉〉 adhere to the share-nothing principle – data is
not shared between the different instances of a
microservice, enabling microservices to be scaled out
by adding more processes
〉〉 be built for failure – to manage service failures or
underperformance by supervising responses and
throttling the requests, for instance.
〉〉 discover peers dynamically – by using the platform
service discovery function to discover other
microservices during runtime
〉〉 be technology agnostic – so that the choice of technology
adopted for one microservice does not affect the choice
of another
〉〉 fail fast: instead of implementing complex recovery
mechanisms when severe errors occur, mini/microservice
9. CLOSING THE GAPS ✱
MAY 25, 2016 ✱ ERICSSON TECHNOLOGY REVIEW 9
instances should fail with a clear error message stating
the reason for the failure
〉〉 achieve high availability – by running in multiple
instances, allowing one instance to take over if another
one fails, and reading up state from the external store.
Theseprinciplesshouldbecomplementedbystate-
of-the-artmicroservicesdesignpatterns[2].
Extendingmatureapplications
Theissueofhandlinglegacyapplicationsinevitably
arisesduringdiscussionsoverthedesignofnew
applications.Whenevaluatingtheportability
ofmatureapplicationstoPaaS, anumberof
considerationsneedtobetakenintoaccount.
Generallyspeaking,rewritingapplicationsisnot
thebestapproachbecauseittendstobecostly/time-
consuming,itblockstheadditionofnewfeatures,
andopensthedoorforcompetitorstogainmarket
shareinthemeantime.Ifthemainreasonforthe
adoptionofPaaS istogaindevelopmentspeed,
redesignwillnotgenerateanymarketvalueifnonew
featuresneedtobedeveloped.
TherearecertainopportunitiesthatPaaS
adoptioncantakeadvantageofwithouttheneed
forapplicationredesign.Ifamatureapplication
requiresanewfeatureorifamarketadaptationis
calledfor,thefeaturecouldbeimplementedasa
microserviceonPaaS andaccessedfromthelegacy
application.Thisisindeed therecommended
approachforshiftingmonolithicapplicationstoa
microservicesarchitecture:tobreakoutindividual
servicesonebyone.Whenthisapproachcanbe
taken,thebestofboththeIaaS andPaaS worlds
canbecaptured:theperformanceoftheexisting
applicationremainsstable,whilenewfeatures
benefitfromtherapiddevelopmentPaaS offers,
freeingupthedesignteamtodevelopnewfeatures
withadditionalbusinessvalue–asillustratedin
Figure 3.
Naturally,communicationneedstobeenabled
betweenthemainapplicationandthenew
microservices.Sometelcoapplicationsalreadyhave
predefinedinterfacesthatcanbeusedtoextendthe
nodefunctionalities,suchastheParlayinterfacefor
theMMTEL applicationserver.However,when
nosuchinterfaceexists,themainapplicationand
themicroserviceshouldbedecoupledusingan
anticorruptionlayer.Allpatternsusedformigrating
frommonolithictomicroservicessuchasfacades,
IT applications VNF extension
µS µS µS
PaaS
VNF
(Telco application)
Figure 3:
Extension of telco
applications in PaaS
11. CLOSING THE GAPS ✱
MAY 25, 2016 ✱ ERICSSON TECHNOLOGY REVIEW 11
Edvard Drake
◆ is an expert in the area
of hardware and software
platform technologies
and an OSS/BSS
Implementation Architect
in Business Unit Support
Solutions (BUSS). He has
more than 20 years of
experience at Ericsson,
ranging from AXE-10
exchanges to open source
and commercial innovation.
He holds a B.Sc. in software
engineering from Umeå
University, Sweden.
Ibtissam El Khayat
◆ joined Ericsson in
2008 after having been a
researcher in academia
and consultant in the
telecom industry. Over
the years, she has worked
in different areas such as
communication protocol
design, utility and transport
areas, and eMBMS.
Currently, she works with
5G and cloud technology
in her role at BUCI DUNC
S&T. She holds a Ph.D. in
computer science from
University of Liège, Belgium.
Raphaël Quinet
◆ is a master systems
designer at Development
Unit Network Functions
& Cloud, Systems &
Technology. He has more
than 20 years of experience
at Ericsson, starting in
Research, optimizing the
performance of web traffic
over mobile networks,
then service-oriented
architecture and since
2010 cloud management,
virtualization and containers
for telco services. He
holds a degree in electrical
engineering from the
University of Liège, Belgium.
Einar Wennmyr
◆ is an expert in
implementationarchitecture
and is Chief Architect
for TEA Implementation
Architecture at Group
Function Technology
(GFT). He has about 35
years of experience at
Ericsson, ranging from
AXE-10, AXE-N, TSP Dicos,
CBA, ETOS and lately with
cloud technology and the
impacts it has on software
architecture. He graduated
from Chalmers University of
Technology and also holds
an M.Sc. from the University
of Southern California.
Jacky Wu
◆ is a senior specialist
at Development Unit
Network Functions & Cloud,
Systems & Technology.
He has around 18 years of
experience at Ericsson,
ranging from Mobile
Softswitch, CBA, cloud
technology and the impacts
it has on telco products. He
holds a degree in electronic
engineering from Shanghai
Jiao Tong University, China.
theauthors