Font Size: a A A

Research On Fast Packet Forwarding Based On Multicore System

Posted on:2018-06-17Degree:MasterType:Thesis
Country:ChinaCandidate:P H ChenFull Text:PDF
GTID:2348330518996553Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Router is one of the most important network devices in modern IP networks. Routers undertake the important tasks including network interconnection and data forwarding. As the computer hardware developing, multicore processors have become the majority of processors.Router system that can be deployed on general multicore platforms will provide more flexibility for different network environments. But as router systems, like most multithread programs, in modern general multicore systems, data packet forwarding performance is limited because overhead from thread shifting, memory copy. Intel DPDK[1] is widely used to develop packet forwarding functions. It implemented optimizations including driver manage, but it does not provide functions like network stack or route lookup. With IPv4 addresses exhausting, IPv6 is rapidly popularizing. The transition from IPv4 to IPv6 means not only deploy new protocols on routers, but also performance challenge on route lookup.This paper brings a design of packet forwarding system based on multicore system: in this paper, the collaborate modes of cores is studied,and two of them are used to implement the system, finally the system is developed over Linux, using DPDK. General platform oriented design grants the system more flexibility, makes the system more adaptable to more hardware platforms, offers more choices between performance and cost. The design includes two cores collaborate modes, which means more choices for different amounts of load. In experiments, the system's packet forwarding service worked well, and could support gigabit Ethernet cards working at full load without packet loss.As the lookup algorithm used in DPDK's LPM6, DIR-24-8, may cause performance problems, this paper brings a design of IPv6 route lookup algorithm to replace the LPMv6 library of DPDK. Beginning with analyzing the IPv6 FIB, this paper designs the algorithm combined segment lookup and hash lookup, segment lookup is used in dense part of the FIB to achieve better lookup performance, while hash lookup is used in sparse part to lower the memory usage. Then this paper provides two modifications of this algorithm, one aiming in less lookup memory access,the other aiming in less memory usage. In experiments, it took 2?3 times of memory access to finish a lookup on average, less than DIR-24-8. And the memory usage was limited in an acceptable amount, just as the expectation.
Keywords/Search Tags:fast packet forwarding, multicore system, router, route lookup
PDF Full Text Request
Related items