170 likes | 313 Views
Scheduling of Updates in an IP Forwarding Engine with Partitioned Prefix Tables. Authors: Junghwan Kim and Jinsoo Kim Publisher: ICCSA 2008 Present : Chen-Rong Chang Date: December , 24, 2008. Department of Computer Science and Information Engineering
E N D
Scheduling of Updates in an IP Forwarding Engine with Partitioned Prefix Tables Authors:Junghwan Kim and Jinsoo Kim Publisher:ICCSA 2008 Present:Chen-Rong Chang Date:December, 24, 2008 Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C.
Outline • Introduction • IP Address Lookup with Partitioned Prefix Tables • Update Scheduling Algorithm • Experiment Environment • Performance Evaluation
Introduction • Most of the hardware approaches for IP address lookup are based on TCAM • So TCAM can store variable-sized prefixes and find the longest matching prefix in a single cycle using the associative memory. • However, it requires the ordering of prefixes and also a priority encoder logic to find the longest matching prefix.
IP Address Lookup with Partitioned Prefix Tables(1/3) • A conventional TCAM-based IP address lookup scheme needs both a priority encoder and some ordering constraint on prefixes. • If a prefix table is partitioned into several sets so that there can be at most one match in each set, then both the requirements can be eliminated
IP Address Lookup with Partitioned Prefix Tables(2/3) • Since at most one match can occur in each partitioned table, we don’t need to maintain ordered prefixes for finding the best match. • It makes update operations fast because there are no movements of existing prefixes for the ordering constraint.
Update Scheduling Algorithm(1/5) • The first step of the insertion is to find the available partitioned tables to which a new prefix can be inserted. The available partitions must contain free space and be adaptable for the prefix. • The second step of the insertion is to schedule the insertion, i.e., to decide one partition among all available partitions.
Update Scheduling Algorithm(2/5) • Four update scheduling algorithms called first-fit, next-fit, random and hashing. • These algorithms focus on the minimization of updates at the OVF partition and the fairly even distribution of prefixes over the DISJ partitions.
Update Scheduling Algorithm(4/5) • Case1: prefix=000010011* Key=00001001 h(00001001)=mod(9,7)=2
Update Scheduling Algorithm(5/5) • Case2: prefix=000010110* Key=00001011 h(00001011)=mod(11,7)=4
Conclusion(1/2) • The next-fit and the random have the characteristics of evenly distributed updates on partitions compared to other algorithms. • The first-fit has a problem that the number of updates of the OVF partition is radically increased due to the biased prefix distribution among DISJ partitions.
Conclusion(2/2) • The hashing algorithm is much better than any others in a point of view that there are fewer updates and prefixes in the OVF partition. • The results from a real-world routing table and an update stream show that the numbers of updates and prefixes in the OVF partition can be quite well controlled by the algorithms