Title :
A language-based approach to programmable networks
Author :
Wakeman, Ian ; Jeffrey, Alan ; Owen, Tim
Author_Institution :
Sch. of Cognitive & Comput. Sci., Sussex Univ., Brighton, UK
fDate :
3/1/2000 12:00:00 AM
Abstract :
It appears that some degree of programmability is inevitable within a network, whether it be through active networks, active services or programmable middleware. We argue that programming network elements with languages that were designed for use within a single machine is inappropriate, since the only defence for the shared resources of the network is through the use of sandboxes, which are prone to performance problems and are difficult to implement correctly. Instead, we believe that new languages should be designed for programmable networks, using type systems that ensure safe programs and encourage correct programs. We have designed and provided the full semantics for such a language. Building upon this, we have implemented a compiler, a runtime environment and a simulation environment for our language. In this paper, we describe the major features of the language that protect the network: abstracted locations, located objects, volatile routing, thread and class loading, and enforced resource counting. We show how these features are used in a number of small case studies and in implementing optimised communication libraries. The ease with which these demonstrations have been built and debugged shows the potential for enforcing network programming models with well-typed languages
Keywords :
abstract data types; active networks; client-server systems; computer networks; distributed programming; program compilers; programming language semantics; telecommunication computing; telecommunication network routing; telecommunication security; abstracted locations; active networks; active services; case studies; class loading; compiler; correct programs; debugging; enforced resource counting; language semantics; language-based approach; located objects; network element programming; network programming models; network protection; optimised communication libraries; performance; programmable middleware; programmable networks; runtime environment; safe programs; sandboxes; shared network resources; simulation environment; thread loading; type systems; volatile routing; well-typed languages; Computer science; Filters; Intelligent networks; Libraries; Middleware; Multicast protocols; Protection; Routing; Runtime environment; Yarn;
Conference_Titel :
Open Architectures and Network Programming, 2000. Proceedings. OPENARCH 2000. 2000 IEEE Third Conference on
Conference_Location :
Tel Aviv
Print_ISBN :
0-7803-6268-3
DOI :
10.1109/OPNARC.2000.828140