Font Size: a A A

Research On High-performance And Scalable Network Functions Virtualization Framework

Posted on:2020-06-23Degree:MasterType:Thesis
Country:ChinaCandidate:W MaoFull Text:PDF
GTID:2428330623963630Subject:Computer technology
Abstract/Summary:PDF Full Text Request
Computer networks often need to provide many additional functionalities that are more complicated than basic packets forwarding,such as access control,intrusion detection,and load balancing.These functionalities are usually implemented by proprietary hardware called Network Functions(NFs).After experiencing rapid technological development and explosive growth,NFs have become irreplaceable components in the network.NFs bring a wealth of functionalities,but their proprietary implementation also brings many serious problems.For example,expensive proprietary hardware increases the cost of network deployment,the diversity of hardware increases the cost of network management,and the lengthy development timescale of hardware limits the speed of developing new NFs.In order to solve these problems,Network Functions Virtualization(NFV)has been proposed.NFV proposes to implement NFs in software and run them in the virtualized environment on commodity servers,replacing NFs implemented by proprietary hardware.The NF running in the virtualized environment is called Virtual Network Function(VNF).Multiple VNFs are usually organized in sequence to form a data path called Service Chain(SC).Although NFV utilizes mature virtualization technologies,its implementation still faces many challenges involving performance,management and security.The performance challenges are particularly prominent.Many researchers proposed a number of NFV frameworks to optimize the performance of NFV from various aspects.These research works can be divided into the following three categories based on their consideration.Firstly,the optimization of a single VNF that mainly focus on using special hardware to accelerate VNFs' packets processing and reducing the virtualization overhead.Secondly,the optimization of the entire SC that mainly focus optimizing the resource allocation between VNFs,reducing the packets transmission overhead between VNFs and reducing the length of SC.Thirdly,the optimization of the packet's reception and transmission process that mainly focus reducing the overhead of receiving and transmitting packets through NIC and accelerating the packets dispatch.Among these research works,there are few works on packets dispatch,but it has a key impact on the overall performance of an NFV platform.Specifically,the packets dispatch is responsible for determining the destination SC among multiple SCs existing in an NFV platform that a newly received packet should pass through,and dispatching the packet to the first VNF of that SC.Packets dispatch is an indispensable operation for each newly received packet.If packets dispatch cannot be performed efficiently,subsequent SCs will be slowed down or even choked,the overall performance of the NFV platform will be limited consequently.Most of the existing NFV frameworks use dedicated software modules for packets dispatch.These software modules usually monopolize several CPU cores for performance.This software-only solution consumes lots of computing resources while still introducing large network latency.Therefore,some research has proposed to accelerate packets dispatch by using SDN switches,which significantly improves the performance and efficiency.However,SDN switches are expensive hardware and is expensive for commodity server platforms.And this solution also faces the scaling problem due to hardware resources limitation.We present an NFV framework named FlowLever,which leverages the Flow Director(FDir)feature commonly supported by modern high-performance NICs to accelerate packets dispatch.FDir provides a simple "Match-Action" function similar to that provided by SDN switches.By configuring FDir,we can instruct the NIC to match newly received packets against formerly configurated information,and dispatch the packets to different NIC queues according to the matching results.FlowLever configures FDir according to the network policies to instruct the NIC to perform packets dispatch to improve performance of packets dispatch.On the one hand,the workload of software modules that perform packets dispatch is reduced,thus computing resources are saved.On the other hand,packets are dispatched directly by the NIC,thus latency is reduced.In the further consideration of the implementation details,we encountered three main technical challenges: firstly,the matching pattern provided by FDir is limited;secondly,the matching capacity provided by FDir is limited;and thirdly,the configuration overhead of FDir is huge.Through an elaborated system design for FlowLever,we overcome these challenges and implemented a prototype system.Finally,we performed a number of micro-benchmarks and overall performance experiments on the implemented FlowLever prototype system,and demonstrated that FlowLever can significantly improve the performance of packets dispatch.
Keywords/Search Tags:Network Functions Virtualization, Packets Dispatch, Cache
PDF Full Text Request
Related items