Font Size: a A A

Programming network architectures

Posted on:2005-02-07Degree:Ph.DType:Thesis
University:Columbia UniversityCandidate:Kounavis, Michael EFull Text:PDF
GTID:2458390008988402Subject:Engineering
Abstract/Summary:
In the thesis we address the problem of programming network architectures. We broadly define a network architecture as a distributed communication system having the following attributes: (i) network services, which the network architecture realizes as a set of distributed network algorithms and offers to the end systems, (ii) network algorithms, which include transport, signaling/control and management mechanisms, (iii) multiple time scales, which impact and influence the design of the network algorithms; and (iv) network state management, which includes the state that the network algorithms operate on (e.g., switching, routing, QOS state) to support consistent services. Programmability allows network designers to add remove, or modify network service components on-demand. By adding, removing or modifying network service components, designers can architect their networks so that they behave more optimally according to some system-wide performance objective. Architecting networks can be accomplished in many different ways such as by programming the service disciplines that are supported by the intermediate nodes of networks or by programming the routing, signaling and flow control algorithms that affect the services offered to the end-systems.; Programming network architectures is a challenging problem. The difficulty stems from the fact that it is hard to define a unifying programmable networking model and a set of programming interfaces that encompass services as diverse as routing, signaling, and access control/forwarding. Another challenging issue is related to the computational efficiency and performance of programmable network architectures. Programmable networks require more computational resources than existing networks in order to support the introduction of new services in software. In addition, today's router systems are generally configured with only a small amount of memory with limited access bandwidth. Hence, a key challenge is to design programming systems and network algorithms that can operate efficiently under stringent space-time constraints.; This thesis makes a number of contributions. First, a programmable networking model that provides a common framework for understanding the state-of-the-art in programmable networks is presented. A number of projects are reviewed and discussed against a set of programmable network characteristics. We present a simple qualitative comparison of the surveyed work and make a number of observations about the direction of the field.; Next, we present the design, implementation and evaluation of a programming system that automates a life cycle process for the creation, deployment, management, and architecting of network architectures. (Abstract shortened by UMI.)...
Keywords/Search Tags:Network, Programming
Related items