AU8214_C000.fm Page i Wednesday, November 1, 2006 1:33 PM Active and Programmable Networks for Adaptive Architectures and Services AU8214_C000.fm Page ii Wednesday, November 1, 2006 1:33 PM OTHER TELECOMMUNICATIONS BOOKS FROM AUERBACH Architecting the Telecommunication Security in Distributed, Grid, Mobile, Evolution: Toward Converged Network and Pervasive Computing Services Yang Xiao Vijay K. Gurbani and Xian-He Sun ISBN: 0-8493-7921-0 ISBN: 0-8493-9567-4 TCP Performance over UMTS-HSDPA Business Strategies for the Systems Next-Generation Network Mohamad Assaad and Djamal Zeghlache Nigel Seel ISBN: 0-8493-6838-3 ISBN: 0-8493-8035-9 Testing Integrated QoS of VoIP: Chaos Applications in Packets to Perceptual Voice Quality Telecommunications Vlatko Lipovac Peter Stavroulakis ISBN: 0-8493-3521-3 ISBN: 0-8493-3832-8 The Handbook of Mobile Middleware Context-Aware Pervasive Systems: Paolo Bellavista and Antonio Corradi Architectures for a New Breed of ISBN: 0-8493-3833-6 Applications Seng Loke Traffic Management in IP-Based ISBN: 0-8493-7255-0 Communications Trinh Anh Tuan Fundamentals of DSL Technology ISBN: 0-8493-9577-1 Philip Golden, Herve Dedieu, Krista S Jacobsen ISBN: 0-8493-1913-7 Understanding Broadband over Power Line Introduction to Mobile Communications: Gilbert Held Technology, Services, Markets ISBN: 0-8493-9846-0 Tony Wakefield ISBN: 1-4200-4653-5 Understanding IPTV Gilbert Held IP Multimedia Subsystem: Service ISBN: 0-8493-7415-4 Infrastructure to Converge NGN, 3G and the Internet WiMAX: A Wireless Technology Rebecca Copeland Revolution ISBN: 0-8493-9250-0 G.S.V. Radha Krishna Rao, G. Radhamani ISBN: 0-8493-7059-0 MPLS for Metropolitan Area Networks Nam-Kee Tan WiMAX: Taking Wireless to the MAX ISBN: 0-8493-2212-X Deepak Pareek ISBN: 0-8493-7186-4 Performance Modeling and Analysis of Bluetooth Networks: Polling, Scheduling, Wireless Mesh Networking: Architectures, and Traffic Control Protocols and Standards Jelena Misic and Vojislav B Misic Yan Zhang, Jijun Luo and Honglin Hu ISBN: 0-8493-3157-9 ISBN: 0-8493-7399-9 A Practical Guide to Content Delivery Wireless Mesh Networks Networks Gilbert Held Gilbert Held ISBN: 0-8493-2960-4 ISBN: 0-8493-3649-X Resource, Mobility, and Security Management in Wireless Networks and Mobile Communications Yan Zhang, Honglin Hu, and Masayuki Fujise ISBN: 0-8493-8036-7 AUERBACH PUBLICATIONS www.auerbach-publications.com To Order Call: 1-800-272-7737 • Fax: 1-800-374-3401 E-mail: [email protected] AU8214_C000.fm Page iii Wednesday, November 1, 2006 1:33 PM Active and Programmable Networks for Adaptive Architectures and Services Syed Asad Hussain Boca Raton New York Auerbach Publications is an imprint of the Taylor & Francis Group, an informa business AU8214_C000.fm Page iv Wednesday, November 1, 2006 1:33 PM Auerbach Publications Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2007 by Taylor & Francis Group, LLC Auerbach is an imprint of Taylor & Francis Group, an Informa business No claim to original U.S. Government works Printed in the United States of America on acid-free paper 10 9 8 7 6 5 4 3 2 1 International Standard Book Number-10: 0-8493-8214-9 (Hardcover) International Standard Book Number-13: 978-0-8493-8214-7 (Hardcover) This book contains information obtained from authentic and highly regarded sources. Reprinted material is quoted with permission, and sources are indicated. A wide variety of references are listed. Reasonable efforts have been made to publish reliable data and information, but the author and the publisher cannot assume responsibility for the validity of all materials or for the conse- quences of their use. No part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers. For permission to photocopy or use material electronically from this work, please access www. copyright.com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC) 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged. Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe. Library of Congress Cataloging-in-Publication Data Hussain, Syed Asad. Active and programmable networks for adaptive architectures and services / Syed Asad Hussain. p. cm. ISBN 0-8493-8214-9 (alk. paper) 1. Computer networks--Management. I. Title. TK5105.5.H876 2006 004.6--dc22 2006047731 Visit the Taylor & Francis Web site at http://www.taylorandfrancis.com and the Auerbach Web site at http://www.auerbach-publications.com T&F_LOC_A_Master.indd 1 6/12/06 1:07:09 PM AU8214_C000.fm Page v Wednesday, November 1, 2006 1:33 PM Dedication Dedicated to those who are firmly rooted in knowledge. No exaltation or grandeur is superior to learning and knowledge. Hazrat Ali (A.S.) v AU8214_C000.fm Page vi Wednesday, November 1, 2006 1:33 PM AU8214_C000.fm Page vii Wednesday, November 1, 2006 1:33 PM Contents Preface.......................................................................................................................xv About the Author....................................................................................................xvii 1 Introduction..................................................................................1 1.1 A Brief Networking History....................................................................3 1.2 Network Standards and Protocols.........................................................7 1.3 Protocol Reference Models.....................................................................8 1.3.1 The OSI Model............................................................................8 1.3.1.1 Physical Layer...............................................................9 1.3.1.2 Data Link Layer..........................................................10 1.3.1.3 Network Layer............................................................10 1.3.1.4 Transport Layer...........................................................11 1.3.1.5 Session Layer..............................................................12 1.3.1.6 Presentation Layer......................................................12 1.3.1.7 Application Layer........................................................13 1.3.2 Why Are Protocol Reference Models Layered?......................13 1.3.3 Drawbacks of the OSI Model..................................................14 1.3.4 Ordering Constraints.................................................................16 1.3.5 Other Factors.............................................................................17 1.3.6 Heterogeneity and OSI.............................................................18 1.4 The Emergence of Middleware Architectures.....................................20 1.5 The TCP/IP Reference Model..............................................................22 1.5.1 The Network Layer...................................................................22 1.5.2 The Internet Layer....................................................................23 1.5.3 The Transport Layer..................................................................25 1.5.4 The Application Layer..............................................................25 1.6 Comparison of OSI and TCP/IP Models.............................................25 1.6.1 Comparison between the TCP/IP and OSI Transport Service Functions......................................................................26 1.6.1.1 Connection Establishment..........................................26 1.6.1.2 Called Address............................................................26 vii AU8214_C000.fm Page viii Wednesday, November 1, 2006 1:33 PM viii (cid:1) 1.6.1.3 Expedited Data Option..............................................26 1.6.1.4 TS User Data...............................................................27 1.6.1.5 Data Transfer..............................................................27 1.6.1.6 Connection Release Phase.........................................27 1.7 Standards Organizations.......................................................................28 1.7.1 International Organization for Standardization (ISO)............28 1.7.2 International Telecommunications Union (ITU).....................29 1.7.3 American National Standards Institute (ANSI)........................29 1.7.4 Institute of Electrical and Electronics Engineers (IEEE)........30 1.7.5 Electronic Industries Association (EIA)...................................30 1.7.6 Internet Engineering Task Force (IETF)..................................31 1.8 Summary................................................................................................31 Exercises..........................................................................................................32 References........................................................................................................32 2 Architecture of Active and Programmable Networks.............35 2.1 Introduction...........................................................................................35 2.2 Quality of Service Technologies for IP Network...............................36 2.3 Quality of Service Parameters..............................................................40 2.3.1 End-to-End Latency...................................................................40 2.3.2 Delay Jitter (Delay Variation)...................................................40 2.3.3 Packet Loss................................................................................42 2.4 Motivation for Active and Programmable Networks..........................42 2.5 The IEEE 1520 Standards Initiative for Programmable Networks......................................................................45 2.5.1 Programming Interfaces for ATM Networks...........................47 2.5.2 Programming Interfaces for IP Router Networks...................48 2.6 Classification of Active and Programmable Networks.......................48 2.6.1 Discrete Mechanism Approach................................................48 2.6.2 Integrated Mechanism or Capsule Approach.........................49 2.6.2.1 Foundation Components............................................50 2.6.2.2 Active Storage.............................................................50 2.6.2.3 Program Extensibility.................................................50 2.6.2.4 Interoperability in Capsule-Based Networks............51 2.6.2.5 Enabling Active Technologies...................................51 2.6.2.6 Source Code................................................................51 2.6.2.7 Intermediate Code......................................................52 2.6.2.8 Platform-Dependent (Binary) Code..........................52 2.6.2.9 Architectural Considerations......................................52 2.6.3 Programmable Switch Approach.............................................53 2.7 Components and Architecture of Active Networks............................53 2.7.1 Major Components....................................................................53 2.7.2 Packet Processing in Active Networks....................................54 2.8 Summary................................................................................................55 Exercises..........................................................................................................56 References........................................................................................................56 AU8214_C000.fm Page ix Wednesday, November 1, 2006 1:33 PM (cid:1) ix 3 Enabling Technologies for Network Programmability...........59 3.1 Introduction...........................................................................................59 3.2 Enabling Technologies for Network Programmability.......................59 3.2.1 Agents........................................................................................59 3.2.1.1 Agent Technologies....................................................60 3.2.1.2 Mobile Agents.............................................................62 3.2.2 Middleware Technology...........................................................70 3.2.2.1 Object Management Architecture..............................72 3.2.2.2 The Common Object Request Broker Architecture.................................................................73 3.2.3 Operating System Support for Programmable Networks......80 3.2.3.1 Janos: A Java-Oriented OS for Active Network Nodes...........................................................81 3.2.3.2 Bowman: Operating System for Active Nodes........83 3.2.4 Dynamically Reconfigurable Hardware...................................85 3.2.4.1 Applications of FPGAs in Active Networks.............85 3.2.4.2 Field-Programmable Port Extender (FPX)................86 3.2.4.3 P4: Programmable Protocol Processing Pipeline.....88 3.2.4.4 PLATO Reconfigurable Platform for ATM Networks............................................................89 3.3 Summary................................................................................................91 Exercises..........................................................................................................92 References........................................................................................................93 4 Active and Programmable Network Paradigms and Protoypes....................................................................................97 4.1 Introduction...........................................................................................97 4.2 Types of Active and Programmable Networks...................................98 4.2.1 The Binding Model...................................................................99 4.2.1.1 The Binding Architecture...........................................99 4.2.1.2 The Extended Reference Model..............................102 4.2.1.3 The Service Creation Process..................................103 4.2.2 ANTS: Active Network Transfer System................................103 4.2.2.1 Architecture of the ANTS.........................................104 4.2.2.2 Programming.............................................................108 4.2.3 Switchware...............................................................................109 4.2.4 Smart Packets..........................................................................110 4.2.5 Netscript...................................................................................112 4.2.6 CANEs: An Execution Environment for Composable Services..............................................................114 4.2.7 Supranets.................................................................................115 4.2.8 Switchlet-Based Tempest........................................................116 4.2.9 Routelet-Based Spawning Networks......................................118 4.2.10 Hierarchical Fair Service Curve Scheduling in Darwin........120 4.2.11 Virtual Active Network (VAN)................................................122 4.2.12 Active Network Node (ANN).................................................123