Tutorial 3: Middleware for Programmable Networks
Andrew T. Campbell
Center for Telecommunications Research
Columbia University
Overview
Recent advances in active network technology, open signaling and
control, distributed systems, service creation, resource allocation
and transportable software are driving a reexamination of existing
network architectures, middleware and the evolution of control and
management systems away from traditional constrained solutions. The
ability to dynamically create, deploy and manage new network
architectures, protocols and services in response to user demands is
creating a paradigm shift in telecommunications. Network researchers
are exploring new ways in which network switches, routers and base
stations can be dynamically programmed by network applications, users,
operators and third parties to accelerate network innovation.
This trend reflects the acceptance of computing and middleware paradigms
in telecommunication networks. Programmable networks seek to exploit
advanced software techniques and technologies in order to make network
infrastructure more flexible, thereby allowing users and service
providers to customize network elements to meet their own specific
needs. Customizing routing, signaling, resource allocation and
accelerating information processing in this manner raises a number of
significant security, reliability and performance issues.
In this tutorial we will discuss the state of the art in programmable
networks. We will discuss a number of important innovations that are
creating a paradigm shift in networking leading to higher levels of
network programmability. These include the:
- Separation between transmission hardware and control software,
- Availability of open programmable network interfaces,
- Accelerated virtualization of networking infrastructure,
- Rapid creation and deployment of new network services and
architectures, and
- Environments for resource partitioning and coexistence of multiple
distinct network architectures.
Topics covered in this tutorial will include:
- Open and innovative signaling systems
- Active networks
- Programming abstractions and interfaces for networks
- Service creation platforms
- Programming for mobility
- Experimental architectures and implementations
- Programming for QOS
- Enabling technologies, platforms and languages (CORBA, WWW, Java, ...)
- Support of multiple control planes
- Control and resource APIs and object representations
- Programmability support for virtual networks
- The role of standards
Who Should Attend
The tutorial is intended for software developers who are designing and
implementing communication systems, such as telecommunication switches
and routers, multimedia services, network management applications,
mobile personal communication systems, and upper-layer application
protocols.
Speaker Bio
Biography Andrew T. Campbell is an Assistant Professor in the
Department of Electrical Engineering and member of the COMET Group at
the Center for Telecommunications Research, Columbia University, New
York. His area of interest includes open programmable networks, mobile
networking, distributed systems and QOS research. He is a past
co-chair of the 5th IFIP/IEEE International Workshop on Quality of
Service (IWQOS97) and the 6th IEEE International Workshop on Mobile
Multimedia Communications (MOMUC99) and is currently the co-chair of
the 4th IEEE Conference on Open Architecture and Network Programming
(OPENARCH 2001). Andrew has been involved in building a number of
programmable networks for ATM (called xbind), mobile (called Mobiware)
and IP (called Genesis) networks. He is a guest editor for the IEEE
Journal on Selected Areas in Communications on Active and Programmable
Networks and is been a member of OPENSIG, the international working
group on programmable networks since its creation. Andrew received his
Ph.D. in Computer Science in 1996, the IBM Faculty Award 1998 and the
NSF CAREER Award for his research in programmable mobile networking in
1999.