an extensible lfb management and development model for forces by luckboy


an extensible lfb management and development model for forces

More Info
									An Extensible LFB Management and Development Model for ForCES Router Software*
Xinyi Ding, Weiming Wang, Chuanhuang Li, Ligang Dong College of Information & Electronic Engineering, Zhejiang GongShang University No.18, Xuezheng Str., Xiasha University Town, Hangzhou, 310018, P.R. China Email:,,,
Abstract—Extensible software architecture is needed to adapt to the development of router. As an important part of ForCES router software, an extensible LFB management and development model based on ForCES router software was illustrated, which enhances extensibility of the software. The ForCES router software structure was first discussed. Based on that, the architecture of this model was described. In order to testify the feasibility, an implementation of the model was presented and an ipv6 forwarding service based it was brought out. The impact on traffic flows and applications was evaluated. Keywords- Router; ForCES; Model; Extensibility; LFB

The software structure of ForCES router is shown in Fig.1. As in the figure, the structure is coarsely layered as CE and FE. CE is divided into ForCES protocol stack and application layer, while FE consists of ForCES protocol stack and LFB modules. Typical application layer consists of application modules including routing protocol modules, network management module, modules for QoS, and modules for other services. The ForCES protocol stack in CE provides generation and execution of ForCES protocol messages for certain operations on LFBs in FEs. In FE, the FE ForCES protocol stack is identical to that in CE.

I. INTRODUCTION AND RELATED WORK Forwarding and Control Element Separation (For-CES) [1], as a workgroup of Internet Engineering Task Force (IETF) in routing area specializes in the architecture and protocol of open programmable IP router and it is the top-rank organization of research on open programmable network at present. There exists router software based on ForCES architecture in several research institutions. The ForCES gateway (ForCEG) [2] is developed as part of the FlexiNET IST research project, and is logically placed between control software components and the forwarding hardware. A configurable software-based edge router architecture [3] has been developed, which merges the Click framework (an open source software architecture for the forwarding plane) and the Forwarding and Control Element Separation (ForCES) principle. For a ForCES router, to add a new function, a new Logical Function Block (LFB) should be added to the router software. That requires router software to have an interface which can easily plug a new LFB module in, and these modules can also be identified and managed effectively. The researches mentioned above didn’t address this problem. To meet that requirement, this paper presents a LFB Management and Development Model (LMDM), which is easy to develop a new LFB module and has a high performance to manage these LFB modules. II. SOFTWARE STRUCTURE OF FORCES ROUTER

Fig.1. Software Structure of ForCES Router

III. MODEL Based on ForCES requirement, FE Model [5] and the software structure above, this paper presents a LFB management and development model. As shown in the Fig.2, the model consists of LFB module management system and LFB module development system. LFB module management system is responsible for manage LFB modules, which consists of Operation Process Unit, Module Manager, Module Repository and LFB Resource Library. Operation Process Unit is primarily responsible for the communication with CE. Module Manager is a unit whose main function is to manage the LFB modules. It provides registration mechanism. And it must coordinate all of the modules to work together, including establishing instances, building data paths between LFB instances and passing message for modules. Module Repository is a database for saving information of the LFB modules. LFB Resource Library is a database to store the resource information of LFBs, which include capabilities, attributes and events. When CE manipulates those resources, this unit finds corresponding function and calls it.

IETF ForCES proposed the architecture and the protocol [4] for forwarding and control element separation. However, a detailed software structure based on the architecture is essential for any ForCES implementations and has not been presented yet. We present here a layered software structure which is fit for ForCES implementations.

Project sponsored by NSF China (60573116, 60603072), Zhejiang Provincial NSF China (Z106829, Y106747) and Zhejiang Sci & Tech Project (2006C11215, 2006R10019)

LFB module development system provides a tool and develop standard for developer. The core component is the Code Generator, which is described in detail in the following sections. To expand functions on ForCES router, the code corresponding modules must compiler with the router code as a whole, and then implement it.

code files as input. After compiling module source files, we got an executable file which could implement IPv6 forwarding. VI. PERFORMANCE EVALUATION

The objective of our test is to evaluate the impact of IPv6 router performed by the LMDM. The first experiment concerns on the forwarding function. We used Spirent SmartBits and SmartFlow 5.5 software to measure the zero-loss throughput at line-rate across two 100M ports. The SmartBits generated seven packet sizes: 64, 128, 256, 512, 1024, 1280 and 1518 bytes. The two 100M ports of the router were connected to a SmartBits test tool directly. The router was configured for basic IPv6 forwarding across two ports. The result shows that the performance throughput is close to the theoretical limit. The purpose of second experiment is to investigate how forwarding and control element separation affect the cost in terms of time spent on internal communication. We study a communication-intensive operation. The CE and the FE are connected by 10M ports. We use five large routing tables, which have 50K, 100K, 150K, 200K and 250K entries, are distributed from the CE to the FE through the LDLM. We only measure the communication time between the CE and the FE. Table updates in the FE are not included. The result shows that the delay grows linearly with the routing table size. However, the average delay remains below 5s. For these conditions, the configuration interface and the actual configuration actions within the ForCES router affect only marginally the end to end delay and cause no packet losses. VII. CONCLUSIONS In this work, we present a general model for managing and developing LFB modules, which is very important in ForCES router software. It helps to fasten the deployment of network upgrade and new service. ForCES router software which adopts the model above is extensibility and scalability, and it is very suitable for further development. This paper, at last, proves that the model is effective and practicable in ForCES router software. REFERENCES
[1] [2] L. Yang, R. Dantu, T Anderson, et al. “Forwarding and Control Element Separation (ForCES) Framework”, IETF RFC 3746, April, 2004. E. Haleplidis, R. Haas, S. Denazis, O. Koufopavlou, “A Web Service and ForCES-based Programmable Router Architecture”, International Working Conference on Active and Programmable Netwoks (IWAN), Sophia Antipolis, France, November 2005. Wajdi Louati, Badii Jouaber and Djamal Zeghlache, “Configurable software-based edge router architecture”, Computer Communications, Volume 28, Issue 14, 1 September 2005. A. Doria, R. Haas, et al. “ForCES Protocol Specification ”, draft-ietf, July 8, 2007, J. Halpern, E. Deleganes. “ForCES Forwarding Element Model”, draftietf, October 7, 2007,

Fig.2. LFB Management & Development Model

IV. IMPLEMENTATION Considering the flexibility and performance of FE, we chose Intel IXP2XXX network processor to develop FE. The LFB modules run on the Xscale layer which was the upper control unit of network processor. Each LFB in FE is constructed based on the microblocks. LFB Module Manager and LFB Resource Library were realized based on VxWorks operating system. As for the Code Generator, taking the flexibility into account, we chose Java to develop it, which could make use of rich XML processing API in Java. The CE hardware platform is general processor and the control plane software is realized in Linux. Routing protocol stack uses GNU Zebra which is opening source code. Virtual device technology is used, which simulate all forwarding plane physical interfaces to the networking stack on the control plane. V. EXAMPLE: AN IPV6 FORWARDING SERVICE

As a proof of concept of the model, a simple implementing IPv6 forwarding is took for example. The process is broadly divided into three steps: (1) We divided the IPv6 forwarding function into four LFBs, that is, IPv6 Validator LFB, IPv6 UcasrLPM LFB, IPv6 NexthopApplicatior LFB and IPv6AddrResolution LFB. Then, we made up the LFB class definition files for them. And microblocks in network processors are used to implement these LFBs. (2) The user code files were edited. Most of the resource operation functions in this application are the functions for operating on IPv6 tables. Those tables are prefix table, layer 2 table and next hop table. (3) Through the Code Generator, we obtained the module source code files by using LFB class definition files and user




To top