Font Size: a A A

The Realization Of The Border Gateway Protocol Based On Linux And Its Parallelization Transformation

Posted on:2013-07-16Degree:MasterType:Thesis
Country:ChinaCandidate:Q ChengFull Text:PDF
GTID:2248330374985857Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
As the current network environment’s Border Gateway Protocol standard, BGPprotocol’s efficiency affects the entire network. The explosive growth of today’snetwork size brings a huge challenge to the router which in the network’s core nodes,thereby, increasing the efficiency of the implementation of the BGP protocol has agreat significance for the growth of demand to meet current and future network. BGPhas developed for more than twenty years, and it is difficult to obtain the desiredresults based on the optimization of the serial model for BGP, the performanceimprovement is very limited, so we must break the traditional model, and explore newdesign ideas to obtain better performance.The development of semiconductor technology makes multi-core CPU as themainstream of today’s computing platforms, and the continuous development ofmulti-core technology has brought new opportunities to solve the above problem.Multiple CPU cores in the multi-core computing platforms concentrated in a singlechip, and use a shared scheme to access memory and other resources, this designmakes the latency and overhead of communication between threads is significantlysmaller than multi-processor platform. So, the excavation for parallelism of the BGPprotocol and getting full use of the benefits of multi-core platforms through designingthe program by the multi-threaded parallel programming technology can make theefficiency of the implementation of the BGP protocol to get upgrade.Through depth analysis of the BGP protocol described by RFC1771, this thesisdesigns and implements a single-threaded serial version BGP protocol based on theLinux operating system. This BGP system uses the NETLINK socket provided byLinux to read and modify the Linux kernel route table. Because the Linux onlysupports one timer in one process, this thesis designs and implements a timer queue tosupport more than one timer in the BGP system. And, the BGP system configures itselfby reading a config file.After the completion of serial BGP, this thesis uses the pipeline model to analyzethe parallelism of BGP from the view of task parallelism first, and then analyzes the feasibility of a data parallelism method based on the thread pool model. At last thethesis finalizes packet-level data-parallel method based on a neighbor peer connectionfor the BGP protocol, and implements a parallel BGP based on the serial version of theBGP protocol.In this paper, the virtual machine is used to simulate a PC with multiple networkcards, and the system test platform is based on the simulated PC. Through testing, thecorrectness of BGP system’s function is verified. Finally, the performanceimprovement of the parallel BGP is tested, and in the test environment build in thispaper, the best speedup is1.55.
Keywords/Search Tags:RFC1771, BGP, Router, Parallel, Multi-threaded
PDF Full Text Request
Related items