Redesigning	the	LTE	Packet	Core	
with	NFV	and	SDN	
Mythili	Vutukuru	
	
Assistant	Professor,	CSE	
IIT	Bombay
Network	Func<on	Virtualiza<on	(NFV)	
Source:	http://www.globalservices.bt.com/uk/en/point-of-view/nfv
SoAware	Defined	Networking	(SDN)	
Source:	http://cacm.acm.org/magazines/2014/10/178789-abstractions-for-software-deOined-networks/
Why	SDN	and	NFV?	
•  Why	NFV?	
–  Easier	to	develop	software	appliances		
–  Elastic	scaling	with	distributed	software	
•  Why	SDN?	
–  Flexibility	in	changing	control	plane	logic	
–  Easier	scaling	of	commodity	data	plane	
•  Applications	
–  Middleboxes	(Oirewalls,	DPI,	load	balancers)	
–  Appliances	in	telecom	networks	(LTE	packet	core,	customer	
premise	equipment)
LTE	Evolved	Packet	Core	(EPC)	
Attach/register	
Data	
•  Complex	functionality	in	hardware	appliances	
•  DifOicult	to	scale,	inOlexible,	expensive
Proposal:	NFV	EPC	
•  Flexible,	scalable	software	appliances	
•  Use	commodity	high-end	servers,	data	centers
Proposal:	SDN	EPC	
•  Flexible	software-based	control	plane	
•  Commodity	SDN	switches	in	data	plane
So,	what	is	the	future	of	EPC?	
•  Several	proposals	that	use	NFV	and	SDN	to	redesign	LTE	
packet	core	in	5G	and	beyond.	
•  Probably	no	clear	winner:	which	design	is	better	depends	
on	several	factors.	
•  A	few	commercial	startups	in	trial	mode.	
	
•  No	open-source	software	implementation	to	compare	
performance	of	various	designs	
–  A	few	frameworks	focus	on	standards	compliance	only	
–  No	published	performance	comparison	of	prototypes	
–  DifOicult	for	researchers	to	compare	across	designs
Our	work:	Enable	Performance	
Comparison	of	EPC	Design	Choices	
•  Goals:	
– Develop	various	candidate	EPC	prototypes	
– Common	framework	to	compare	design	choices	
– Implement	features	that	impact	performance	
– Modular,	extensible,	open-source	code	
•  Non	goals:	full	standards	compliance,	real	
life	deployments
Our	NFV-based	EPC	
•  RAN	simulator	to	simulate	user+base	station	
•  Multi-threaded	program	to	simulate	multiple	users	
•  Simulated	users	can	attach,	detach,	send	data	trafOic	to	sink
Our	SDN-based	EPC	
•  Floodlight	SDN	controller	and	Open	vSwitch	SDN	switches	
•  SDN	switch	(“Default	Switch”)	connects	RAN	to	EPC
Experimental	Setup	
•  NFV	EPC	
–  OpenStack	private	cloud	
–  Components	run	on	KVM-based	VMs	
•  SDN	EPC		
–  Software	SDN	switches:	OpenvSwitch	on	Linux	
–  Floodlight	controller	on	high	end	server	
–  Some	experiments	with	all	components	on	same	
physical	machine	–	to	overcome	network	bottleneck	
•  Similar	CPU	and	memory	for	both	setups	for	fair	
comparison
Experimental	Method	
•  Experiments	
–  Users	in	simulated	RAN	continuously	register	and	
detach	(control	plane)		
–  Attached	simulated	users	continuously	pump	TCP	
trafOic	(data	plane)	
•  Metrics	
–  Control	plane	throughput	(number	of	registrations/sec)	
–  Data	plane	throughput	(bps	forwarded	by	gateways)	
–  Latency,	processing	overheads
Results:	Control	Plane		
NFV	 SDN	
•  NFV	EPC	gives	much	higher	control	throughput	
•  SDN	EPC	limited	by	controller	-switch	communication	
•  Latency	and	processing	overhead	comparable	
~9,000	req/s	
~3,000	req/s
Results:	Data	Plane	
NFV	 SDN	
•  SDN	EPC	handles	much	higher	data	plane	trafOic	
•  NFV	EPC	limited	by	OS	network	stack	in	the	VM	and	host	
~120	Mbps	
~45	Gbps
Summary	of	results	
•  NFV	or	SDN	for	EPC?	Well,	it	depends	on…	
–  Mix	of	trafOic	(control	vs.	data)	
–  SpeciOic	implementation	used	
•  Performance	of	both	prototypes	can	be	improved	
–  Distributed	/	hierarchical	SDN	controllers	
–  Optimized	NFV	data	plane	(e.g.,	using	DPDK)	
–  Elastic,	scalable	network	functions	
•  Many	other	points	to	explore	in	the	design	space	
•  Our	comparison	is	not	the	Oinal	word;	only	the	
beginning	of	an	exploration	of	design	choices
Ongoing	research	using	our	code	
•  Design	of	a	multicore	VNF	when	using	kernel	bypass	like	
DPDK:	how	to	steer	packets	to	app	cores?	
–  Hardware	multiqueue	or	software	distribution	
–  Partition	using	application	sematics	or	TCP	header?
Our	code	on	GitHub	
•  https://github.com/networkedsystemsIITB	
•  v1.0	of	both	EPCs	released	in	June	2016	
•  v1.1	of	NFV	EPC	(distributed	EPC)	released	Nov	2016	
•  v2.0	of	both	EPCs	expected	in	next	few	months	
–  Hierarchical	SDN	controllers	
–  Improved	data	plane	using	Intel	DPDK,	netmap	
–  Userspace	network	stack	based	on	multicore-TCP

Redesigning the LTE Packet Core