Case Study - IPv6 Building automation solution introduction into an IPv4 Network Service Provider infrastructure



Similar documents
Case Study - IPv6 based building automation solution integration into an IPv4 Network Service Provider infrastructure

IPv4 to IPv6 Network Transformation

Moonv6 Test Suite DRAFT

SSVVP SIP School VVoIP Professional Certification

Managing the Co-existing Network of IPv6 and IPv4 under Various Transition Mechanisms

IPv4/IPv6 Transition Mechanisms. Luka Koršič, Matjaž Straus Istenič

Networking 4 Voice and Video over IP (VVoIP)

Real World IPv6 Migration Solutions. Asoka De Saram Sr. Director of Systems Engineering, A10 Networks

ProCurve Networking IPv6 The Next Generation of Networking

IPv6 Opportunity and challenge

IPV6 DEPLOYMENT GUIDELINES FOR. ARRIS Group, Inc.

Firewalls und IPv6 worauf Sie achten müssen!

Interconnecting Cisco Networking Devices Part 2

Transition to IPv6 for Managed Service Providers: Meet Customer Requirements for IP Addressing

Broadband Network Architecture

IPv6 Fundamentals, Design, and Deployment

: Interconnecting Cisco Networking Devices Part 2 v1.1

Demonstrating the high performance and feature richness of the compact MX Series

Cisco IP Solution Center MPLS VPN Management 5.0

Introduction to IP v6

IP/MPLS-Based VPNs Layer-3 vs. Layer-2

IPv6 in Axis Video Products

IPv6 Fundamentals: A Straightforward Approach

Industry Automation White Paper Januar 2013 IPv6 in automation technology

Provisioning Cable Services

Whitepaper IPv6. OpenScape UC Suite IPv6 Transition Strategy

Transition to IPv6 in Service Providers

MPLS Layer 2 VPNs Functional and Performance Testing Sample Test Plans

SBSCET, Firozpur (Punjab), India

Developing an IPv6 Addressing Plan Guidelines, Rules, Best Practice

IPv4 and IPv6 Integration. Formation IPv6 Workshop Location, Date

Campus IPv6 connection Campus IPv6 deployment

Step-by-Step Guide for Setting Up IPv6 in a Test Lab

WHITE PAPER. Best Practices for Deploying IPv6 over Broadband Access

ITL BULLETIN FOR JANUARY 2011

IPv6 for AT&T Broadband

Tackling the Challenges of MPLS VPN Testing. Todd Law Product Manager Advanced Networks Division

IPv6 Fundamentals Ch t ap 1 er I : ntroducti ti t on I o P IPv6 Copyright Cisco Academy Yannis Xydas

Interconnecting IPv6 Domains Using Tunnels

IPv6 Security. Scott Hogg, CCIE No Eric Vyncke. Cisco Press. Cisco Press 800 East 96th Street Indianapolis, IN USA

Enterprise Network Simulation Using MPLS- BGP

IPv6 Integration in Federal Government: Adopt a Phased Approach for Minimal Disruption and Earlier Benefits

Development of the FITELnet-G20 Metro Edge Router

IPv6 Deployment Strategies

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

GN1 (GÉANT) Deliverable D13.2

MPLS VPN over mgre. Finding Feature Information. Prerequisites for MPLS VPN over mgre

IP Addressing A Simplified Tutorial

VXLAN: Scaling Data Center Capacity. White Paper

Unifying the Distributed Enterprise with MPLS Mesh

TR-296 IPv6 Transition Mechanisms Test Plan

Example: Advertised Distance (AD) Example: Feasible Distance (FD) Example: Successor and Feasible Successor Example: Successor and Feasible Successor

IMPLEMENTING CISCO IP ROUTING V2.0 (ROUTE)

Types of IPv4 addresses in Internet

Basic IPv6 WAN and LAN Configuration

"Charting the Course...

Building Secure Network Infrastructure For LANs

IPv6 Advantages. Yanick Pouffary.

Network Functions Virtualization in Home Networks

Introduction to MPLS-based VPNs

Tomás P. de Miguel DIT-UPM. dit UPM

Deploying IPv6 Service Across Local IPv4 Access Networks

IPv4 and IPv6: Connecting NAT-PT to Network Address Pool

Transform Your Business and Protect Your Cisco Nexus Investment While Adopting Cisco Application Centric Infrastructure

Course Contents CCNP (CISco certified network professional)

Introducing Basic MPLS Concepts

Cisco Dynamic Multipoint VPN: Simple and Secure Branch-to-Branch Communications

How To Learn Cisco Cisco Ios And Cisco Vlan

464XLAT in mobile networks

Designing and Developing Scalable IP Networks

Residential IPv6 IPv6 a t at S wisscom Swisscom a, n an overview overview Martin Gysi

Virtual Private LAN Service

Network Virtualization Network Admission Control Deployment Guide

Dedication Preface 1. The Age of IPv6 1.1 INTRODUCTION 1.2 PROTOCOL STACK 1.3 CONCLUSIONS 2. Protocol Architecture 2.1 INTRODUCTION 2.

Implementing Cisco Service Provider Next-Generation Edge Network Services **Part of the CCNP Service Provider track**

MPLS L2VPN (VLL) Technology White Paper

Multi Protocol Label Switching (MPLS) is a core networking technology that

CGN Deployment with MPLS/VPNs

Implementing Cisco Quality of Service QOS v2.5; 5 days, Instructor-led

Sprint Global MPLS VPN IP Whitepaper

Truffle Broadband Bonding Network Appliance

The Evolution of Ethernet

Expert Reference Series of White Papers. An Overview of MPLS VPNs: Overlay; Layer 3; and PseudoWire

MPLS in Private Networks Is It a Good Idea?

IxNetwork TM MPLS-TP Emulation

Cisco IOS MPLS Management Technology Overview. Enabling Innovative Services. February Cisco Systems, Inc. All rights reserved.

MPLS VPN Services. PW, VPLS and BGP MPLS/IP VPNs

AT&T Managed IP Network Service (MIPNS) MPLS Private Network Transport Technical Configuration Guide Version 1.0

CIRA s experience in deploying IPv6

DirectAccess in Windows 7 and Windows Server 2008 R2. Aydin Aslaner Senior Support Escalation Engineer Microsoft MEA Networking Team

IPv6 over IPv4/MPLS Networks: The 6PE approach

Jive Core: Platform, Infrastructure, and Installation

Challenges in NetFlow based Event Logging

Network Virtualization for Large-Scale Data Centers

IP SLAs Overview. Finding Feature Information. Information About IP SLAs. IP SLAs Technology Overview

Cisco Change Management: Best Practices White Paper

: Interconnecting Cisco Networking Devices Part 1 v2.0 (ICND1)

HP and IPv6 Deployment. Bill Medlin HP-UX IPv6 Project Manager

Testing Software Defined Network (SDN) For Data Center and Cloud VERYX TECHNOLOGIES

Transcription:

Case Study - IPv6 Building automation solution introduction into an IPv4 Network Service Provider infrastructure Nikolay Milovanov 1, Ivan Bogomilov 2 Abstract - The article presents a case study describing an Internet Protocol (IP) version 6 (v6) introduction to an IPv4 Internet Service Provider (ISP) network infrastructure. The case study driver is an ISP willing to introduce a new killer service related to Internet of Things (IoT) style building automation. The service will be sold and provided by the provider and cooperation of third party companies specialized in building automation. The ISP has to deliver the network access layer and to accommodate the building automation solution traffic throughout its network infrastructure. The third party companies are system integrators and building automation solution vendors. The solution has to be IPv6 based because of the following facts. The operator s current network can t accommodate large number of IPv4 embedded devices due to the lack of address space. The manufacturing costs for an embedded device with a dual IP stack are higher then the same one for a device with a single stack. The Authors propose a strategy for IPv6 introduction into operator infrastructure based on the current network architecture present service portfolio and several transition mechanisms. The strategy has been applied in laboratory with setup close enough to the current operator s network. The criterion for a successful experiment is full two-way IPv6 application layer connectivity between the IPv6 server and the IPv6 Internet of Things (IoT) cloud. Keywords Internet of Things, IPv6, embedded systems, building automation INTRODUCTION The current global network - Internet has stormed through the word of telecommunications from 1983 when it was born until now. All those years it has been based on IPv4. It is the building block of the current Internet. It had great success and really pushed the industry during the last 30 years. Nowadays almost anybody s life is linked to Internet and IP network services. Despite that success, IPv4 is not perfect and has its limitations. Most of those have been overcome during the years except one - the limited address space. Despite all the efforts including private IP addresses and various kinds of network address translation the last /8 IPv4 address blocks are already allocated [1]. In [2] is written To support the large number of emerging applications for smart objects, the underlying networking technology must be inherently scalable, interoperable and have a solid standardization base to support future innovation as the application space grows. It can be stated that the TCP/IP model is the only communication technology that could be described as end-to-end, stable, open, lightweight, scalable, versatile and well standardized. The smart objects could be described as Internet of Things cloud. As per [3] Internet of Things refers to uniquely identifiable objects (things) and their virtual representations in an Internet-like structure. The current Internet is the only Internet-like structure we know today. It is IPv4 based and IPv4 has already an address shortage. From here could be concluded that the lack of more real IPv4 addresses is one of the burdens for future Internet of Things growth. 1 New Bulgarian University, 21 Montevideo Street, Sofia 1618, Bulgaria, nmilovanov@nbu.bg 2 New Bulgarian University, 21 Montevideo Street, Sofia 1618, Bulgaria, ibogomilov@nbu.bg

That impediment has became the reason why the client well known Internet Service Provider has hired the authors to analyze how an IoT based services and solutions could be integrated in its current network and be part of future service offerings. The Service Provider has already an established market position and a large number of residential and also business customers. IoT building automation solution offering will complement well its current value added services portfolio and will give him a competitive advantage among its rivals. The operator has realized that it can t step up directly on that market since his personal does not have the needed knowledge and is trying to provide an integrated solution with a third party companies. Building automation solution providers are willing to provide managed services to their customers. The managed services solution is based on a common management platform shared between many customers and reliable two-way network communication channel between the platform and the IoT sensor clouds. The ISP marketing department has realized the potential of the situation and has already made the first step several marketing and technical workshops with representatives of potentially interested building automation solution providers. The results of those workshops related to the author s task could be summarized as the following: Building automation solution based on IPv4 is the cheapest and easiest for implementation option for both sides. However it is not sustainable since the fact that most of the operator IPv4 address pool is already consumed. Building automation solution based on dual IP stack is the most sustainable one but dual IP stack sensors are more expensive and the solution is more complex for implementation and for maintenance (two network stacks has to be supported). Building automation solution based on IPv6 is scalable enough and will cost just a little bit more then the IPv4 only. Since options 2 and 3 are the most likely long-term solutions another question appeared What has to be done in order the operator to accommodate the IoT IPv6 network traffic in its current network setup? The rest of the article is focused on the answer of that one. In the next chapters are described the mechanisms for IPv6 introduction and IPv6 address autoconfiguration. Based on that information has been determined a strategy for migration. The strategy has been proved in laboratory environment identical to the current network setup. Finally are summarized the problems experienced by the authors during the case study. TRAFFIC FLOW AND QUALITY OF SERVICE CONSIDERATIONS It is important to be mentioned that the communication traffic flow between the IoT sensors and the management platform at the moment when the case study has been performed was still based on proprietary level 7+ protocols. With level 7+ the authors mean a custom style Representational state transfer (REST) protocol that has been build on top of the current level 7 Hyper Text Transfer Protocol (HTTP). Therefore we consider it as layer 7+ protocol. It is important to be noted that HTTP is the protocol caring most of the traffic in the current Internet. Despite the fact that the IP layer will change from IPv4 to IPv6 and most likely this will require an introduction of a new TCP/IP stack on operation system level no change is expected on HTTP and above layers. Most likely this is the reason why the embedded system manufacturers and our client consider a solution based on REST. In IPv4 to IPv6 context it is likely other manufacturers in other business domains to choose a similar approach. Now in the embedded domain are emerging new standards (still in draft stage) describing exactly the same topic [17]. Since we know that the traffic will be most likely HTTP+ protocol is time to think about the Quality of Service (QoS). Modern day operators have relatively complex QoS policies based on differentiated services markings different queuing and scheduling mechanisms for the different kinds of traffic and MPLS traffic engineering. In our case the operator has a similar kind of policy. It could be described as 6 different traffic levels. VOICE % of the traffic stripped from the layer-2 interface bandwidth and serviced by the priority queue DATA Calculated as % of the remaining Layer 2 Interface bandwidth VOICE. This traffic has been serviced by a Class-Based Weighted Fair Queuing (CBWFQ) mechanism. Each queue has been serviced by a Weighted Random Early Detection (WRED) mechanism. The following traffic classes were identified. It is important to note that they are ordered by their priority. Network Protocol Traffic 10% of the DATA. Used for all caring the control traffic from Internet protocols marked with IP precedence 6). Business1 Caring the traffic from critical business applications. Business2 Caring the traffic from the not so critical business applications.

Streaming - Caring the traffic from all streaming applications. Internet Internet Access traffic Other Junk traffic as torrents and other p2p applications. Based on that QoS map our has been proposed the traffic from the building automation to be placed in a new CBWFQ queue with priority higher then the business1 traffic and lower then the Network Protocol Traffic. In the end if certain fire alarm has not been signalized properly and the office building burns down who cares about the business traffic. IPV6 INTRODUCTION MECHANISMS INTO AN IPv4 NETWORK ENVIRONMENT IN EMBEDED SYSTEMS CONTEXT There are many methods for IPv6 introduction in an IPv4 network. In IoT there will be many devices with limited resources that could be considered from network perspective as end hosts and resource rich network that will contain many kinds of equipment as switches, routers and servers. The devices have to be identifiable through a unique network address. The resource and feature rich network is usually a nice to have advantage but actually is quite a challenge. Many of the popular features available for IPv4 are still just bullets in the roadmaps of the network equipment vendors. Despite that fact since the end hosts are the one with the most limited resources has to be considered a migration strategy suitable to the particular current network setup and the limited end device capabilities. In IoT the uniquely identifiable objects could be split to three major groups. Objects with an IPv4 network address Such are all embedded systems part of the current IPv4 Internet. Examples are most of the home routers, mobile phones and many other IPv4 enabled devices. For those that have to join an IPv6 based Internet of Things several approaches are possible. If the embedded device resources are enough for handling the new IPv6 TCP/IP and there is a new firmware the easiest possible way will be a firmware upgrade to a version that has IPv6. For those devices that do not offer such opportunity could be used 4to6 network address translation (NAT) into the core of operator s network or 6bed4 tunneling methodology [7]. The translation could be done with Carrier Grade NAT (CGN) [13] Network Address Translation/Protocol Translation (NAT-PT) [12] or NAT46 [14]. CGN is suitable for large-scale networks - for example for ISP with hundreds of thousands of customers with IPv4 enabled devices. CGN advantage is that it allows the operator to perform a smooth migration towards IPv6 without his subscribers to understand about that. Its limitations are related to the fact that it breaks the end-to-end communication model. It has significant security, reliability and scalability problems and makes law-enforcement procedures more difficult. NAT46 is a mechanism that relies on DNS to determine whether the destination IP address is in an IPv4 or in IPv6 domain. Therefore it is always used together with DNS46. If the destination is in the IPv4 domain the packets from the end hosts exit without been translated, if it is in IPv6 domain they will be prepended with special prefix that later will be striped by a NAT46 enabled device. NAT46/DNS46 is a good option for medium sized organizations and small service providers. NAT-PT is the direct ancestor of the current IPv4 NAT and therefore is easy for implementation and configuration. Its disadvantage is in the requirement for as much IPv4 addresses as IPv6 such. Request for Comments (RFC) 4966 is the one that obsoletes NAT-PT and describes its weak sides. Despite that currently it is still the most popular and widely used transition mechanism. 6bed4 is a tunneling mechanism from IPv4 to IPv6 developed specifically for embedded systems. It proposes an IPv6 tunneling technique over UDP port and IPv4 as layer 3 protocol[7]. Embedded systems obtain a routable IPv6 address over the tunnel through stateless auto-configuration [11] from an anycast tunnel service. The mechanism is still in its draft stage and currently there is only one public service offering 6bed4. It is provided by http://www.surfnet.nl/. Objects with IPv6 network address only Having only an IPv6 address is the preferred case for the Internet of Things deployments. Each system will have a unique IPv6 address and will be able to communicate to any other system or server that has global IPv6 address. The question here is How such systems will communicate with the IPv4 domains? The answer is - if such

communication is really needed it could be achieved through NAT64/DNS64 [15],[16] or tunneling mechanism such as 6bed4. NAT64/DNS64 implements the same mechanism as NAT46/DNS46 but in direction 6 to 4. The only difference is that the prefix that will be prepended to the packets exiting towards IPv4 domain is specified to be FFFF:0/96. The experiment presented later in the current paper is simulating exactly that case - a feature rich network with simple IPv6 enabled hosts able to communicate to IPv6 and to IPv4 network domains. Objects with Dual IP stack Dual stack is the best transition mechanism. It ensures that each device will have connectivity in IPv4 and IPv6 domains. However having fully functional IPv4 and IPv6 TCP/IP stacks is not possible for many embedded devices. This approach brings additional complexity to embedded systems development process and requirements for more processor and memory resources. It also doubles the complexity of the network infrastructure since the network has to support all native features for both stack. As native features we consider IP routing, security, quality of service, management etc. With other words, dual stack might be an acceptable approach from network point of view but is the least desired one from the embedded systems developments point of view. IPV6 ADDRESS CONFIGURATION IP address could be manually configured or automatically obtained. In IPv4 domain manual configuration could be considered as less resource demanding then automatic. Automatic configuration is statefull and is performed through Dynamic Host Configuration Protocol (DHCP) client implementation in end host device and DHCP server implemented into the server/router side. Manual configuration has two major drawbacks - it requires interface through which configuration to be entered (e.g. interface implementation also needs resources) and it is manual. The way of configuration in any case is difficult even impractical for application in a large-scale network. The only possible way is through a specialized IP address management product plus a good auto configuration engine. However there are not so many products on the market able to perform both functions. In IPv6 the options are the same with one small but very important difference. Automatic configuration could happen in two ways - statefull (e.g. again through DHCP version 6[12]) or stateless [11]. Stateless Autoconfiguration The IPv6 stateless auto-configuration (SLAAC) mechanism requires no manual configuration of hosts, minimal (if any) configuration of routers and no additional servers. SLAAC provides plug-and-play IP connectivity in two phases: Phase 1 Link-Local address assignment and then in Phase 2 Global address assignment. Phase 1 Link-Local Address Link-Local Address Generation: Any time that a multicast-capable IPv6-enabled interface is turned up, the node generates a link-local address for that interface. This is done by appending an interface identifier to the link-local prefix (FE80::/10). Duplicate Address Detection: Before assigning the new link-local address to its interface, the node verifies that the address is unique. This is accomplished by sending a neighbor solicitation message destined to the new address. If there is a reply than the address is a duplicate and the process stops (requiring operator intervention). Link-Local Address Assignment: If the address is unique, the node assigns it to the interface for which it was generated. At this point, the node has IPv6 connectivity to all other nodes on the same link. Only hosts move on to Phase 2; a router s interface addresses must be configured by other means.

Phase 2 Global Address Router Advertisement: The node sends a router solicitation to prompt all on-link routers to send it router advertisements. When the router is enabled to provide stateless autoconfiguration support, the router advertisement will contain a subnet prefix for use by neighboring hosts. Global Address Generation: Once it receives a subnet prefix from a router, the host generates a global address by appending the interface id to the supplied prefix. Duplicate Address Detection: The host again performs duplicate detection, this time for the new global address. Global Address Assignment: Assuming that the address is not a duplicate, the host assigns it to the interface. The stateless approach is useful when there is no particularly concerned about the exact addresses hosts use as long as they are unique and properly routable. On the other hand, DHCPv6 is used when a site requires tighter control over exact address assignments. Both stateless address auto-configuration and DHCPv6 may be used simultaneously. It is also important to mention that the DHCPv6 process will consume more resources and will increase the cost of the devices. In Internet of Things the strict control won t be so important, manual configuration is impossible and the manufacturing cost of the device is a substantial factor. With those considerations in mind, the authors propose an IPv6 stateless mechanism implemented into the embedded device in combination with address information advertised by local routers for mass network deployment of IoT devices with limited resources. STRATEGY The goal of the authors was to develop an IPv6 introduction strategy in the context of the current network operator infrastructure and current and future planned service offerings. As per the requirements the strategy has to reflect the current network architecture and future growth plans. The strategy has to ensure smooth introduction of IPv6 and the customers should not experience any unplanned service outage. The strategy has to be executed during the maintenance windows mentioned in the Service Level Agreements (SLA) signed between the ISP and its customers. Based on the analysis of the transition mechanisms and the options for address autoconfiguration our intention was to introduce a fully functional dual IP stack network infrastructure, IPv6 stateless autoconfiguartion for the IoT cloud of devices and NAT64/DNS64 in case any IPv6 traffic has to exit from the IoT cloud to the current IPv4 Internet. The IoT building automation system responsible for management of sensor clouds is also dual stack based and accessible from the internal and external through IPv4 or IPv6. In order to prove that the strategy is working our team performed an experiment in a laboratory environment as close as possible to the real network. For the purpose operator s personal has prepared a setup with hardware and software similar or same as the one in the production network. Experiment setup The network laboratory has been built from several equipment vendors. Among them there are devices from CISCO Systems, Juniper Networks and Huawei Technologies. As Embedded systems have been used aj-200 development kits [8]. The kits were able to support IPv4, IPv6 or both. As services they were able to perform ICMP echo and echo reply and also to perform simple Representational State Transfer (REST) http GETs and POSTs. Those two were vital for having a realistic enough scenario and an ability to meet the criteria for successful test.

Building automation service zone BMS 2 Internet Access service zone IoT device Computer Small office/ home office subscriber 1 P P CPE Customer Premises Equipment Metro Switch PE PE SW Provider Edge Router SW SOHO CPE PE Provider(Core) Router IoT devices 3 Figure 1. Experiment setup P Building Automation solution traffic flows Current Data Service traffic flows Building automation as any other IoT based system operates by generating network traffic. The traffic flows in IoT in the case of the current Building automation setup will be two-way communications between the embedded systems and centralized servers and between the server and the end users. In the future is expected also a direct traffic from an embedded system to an embedded system. The experiment is focused only on the first traffic flow (marked with 1 on fig. 1) - between the IPv6 server and the embedded devices. The second one (marked with 2 on fig. 1) between the server and the users is considered as not so problematic and therefore not so interesting from the scientific point of view. The third one (3) also brings our interest since it might be quite limited initially but might have a tremendous growth in the future. The author s task was to simulate the current Operator s network setup in a lab environment and to test various mechanisms for IPv4 to IPv6 network migration in the context of IoT killer service rollout. The criteria for a successful test are a full layer 3 connectivity and successful application layer http transaction. Experiment scenario Experiment scenario has been split to several steps: Step 1: Identify the initial network setup. Since the network has been pre arranged our task was to try to reason about it based on the configurations created by the ISP personal and the network design guides that we possessed. Also we had to gather as detailed as possible information about the devices, modules, topology, IP address allocation, routing protocols and security settings. For the purpose our team has used a custom made SNMP discovery tool [4] able to discover the network topology and to gather the required inventory information. Step 2: Analyze and compare the network discovery results with the provided documentation. On that step our team has compared the real network setup against the information provided in the documentation sources. As a result many deviations were discovered. Some of the examples were: Software versions and hardware modules used on some of the lab devices were actually different (more or less left to default) from the one recommended by the vendors in the design guides. IP Address allocation rules were not strictly followed and deviated a lot from the one in the guides. Configuration did not follow some of the provided in the documentation templates. The deviations could be summarized as: Differences related to typos (wrong or misleading interface descriptions) Wrong policy rules for routing protocol-to-protocol redistribution. The recommended Security Best Practices were partially and inconsistently implemented. The result of Step 2 audit was so disturbing for the High Management officials that a separate unplanned audit step 2 was conducted against several sites of the real network. The results were not that much different then the one in the lab environment. So after 2 the goals of our team was not only to define a strategy for IPv6 network

transformation and IP allocation rules for IPv6 embedded devices but also to inline the current network setup to the level described into the design documentation. In order to achieve that in a large-scale network some form of network automation has to be used. The custom discovery tool was a good start but was not sufficient. We needed an automation solution also in direction device configuration and device operation system upgrades. Step 3: Network alignment to the design Best Practices. Most of the effort part of that step was spent in development of custom scripts for device software upgrade creation and configuration templates creation and automation. In the end our team has prepared several scripts able to face the issues discovered in step 2. Step 4: IPv6 core network migration. Step 4 could be considered as the real start of the current project. Our strategy could be summarized as dual stack enabled through the network operator s network. Dual stack as the name suggests almost doubles the device configuration, requires more resources and definitely increases the complexity of the already complex network setup. Step 4 consists of several substeps. 1. IPv6 forwarding enablement throughout the network core, aggregation and access layers. 2. IPv6 configuration on the currently enabled IPv4 interfaces. 3. IPv6 core routing protocol introduction next to the current IPv4 core routing protocol. In the current case the IPv4 routing protocol has been OSPF. OSPF is an IP based protocol so a completely new OSPF version 3 has to be configured in order to follow the current IPv4 OSPF setup. Other network operators might save a lot of effort on that step if they use Intermediate System to Intermediate System (IS-IS) routing protocol. IS-IS is an ISO protocol that is independent from the IP layer and just carries the IP routing information. So there is no need for almost any IS-IS reconfiguration on protocol layer in order to accommodate IPv6. 4. Verifies end-to-end IPv6 network connectivity between any two PE routers part of the current lab setup. Step 5: IPv6 in the access network. The building automation solution has as a target both business customers and home subscribers. Business customers were terminated as Layer 2 MPLS VPNs and Layer 3 MPLS VPNs. Home subscribers get Internet Access Service plus additional value added services as IPTV, Telephony and Video on Demand. Each customer case is a separate subscenario of step 5. 1. MPLS L2 VPN customers. L2 VPN as the name suggests is a virtual private network on layer 2. There are two major approaches for L2 VPN service delivery point-to-point (virtual private wire service) and point-to-multipoint (Virtual Private LAN Service VPLS). The service provider has three times more customers on point-to-point pseudowires then on point to multipoint. In either case the building automation solution was provided as a separate VLAN VPLS service terminated in the building automation service zone as a Layer 3 IPv6 interface. The IPv6 address prefix used for stateless IPv6 autoconfiguration has been configured for each separate vlan interface. Each of the embedded systems under test was able to obtain correctly both the local link and the global IPv6 address. 2. VPLS L3 VPN customers. L3 VPN is a VPN on an IP level and there are common IP links between ISP s PE routers and the CPE. The most suitable option for the building automation solution is to be provided in a separate L3 VPN next to the current VPN. In that case all the embedded devices will be in separate IPv6 Layer 3 VPN. As configuration the building automation L3 MPLS VPN is a classical hub and spoke. First was configured a Virtual Routing and Forwarding (VRF) instance on the hub and on the spokes. The hub is the site where the building automation solution server resides and the spokes are the customer sites. The hub site has to export its own route-target and to import the customer site router-targets. The customer sites have to import server route-target and to export their own one. The IPv6 global prefix that has been used for stateless address autoconfiguraiton has been configured on the CPE interfaces facing the Embedded device cloud. Between the CPE and the PE has been configured a separate global routing subnet. On the CPE has been configured a default route pointing towards the PE. On the PEs has been configured a static route matching the global IPv6 prefix for the IoT cloud and pointing towards the CPE. Finally the static route on the PE has been redistributed into the Building automation BGP address family. 3. Small Office Home Office (SOHO) customers. The current SOHO subscribers receive a basic Internet access service + optional supplementary services as Voice over IP Telephony or IPTV. In that context the building automation is just yet another service. Currently each service has been provided through a separate device (IP phone or set-top-box) connected to the main SOHO access device. In the case of building automation there will be a yet another IPv6 enabled box between the sensors and the

system. The only additional change needed was to enable IPv6 on the Internet Customer Access device and to configure IPv6 global address prefix on the UNI interface. Step 6: Verification. Two verification mechanisms were used to test the IPv6 connectivity between the server and the devices in the IoT cloud. The first mechanism verifies IPv6 layer three connectivity. It was based on IPv6 ping echo test between the embedded devices and the server. The ping echo s were performed through an automated script. Each 10 th minute were executed 30 IPv6 pings from the server to the IoT devices. The criteria for success were 98% successfully received echo-replies. The second mechanism was a full HTTP test between the IoTs and the server. The criteria for success in the HTTP case were a successful bi-directional HTTP GET and HTTP POST between the server and the embedded devices. After executing steps 1-6 the experiment goals were achieved and the lab network was able to support twoway unicast IPv6 connectivity between the embedded devices and the server. With this, the project team has executed its initial goals related to integrating IPv6 Building automation service in the context of multivendor Internet Service Provider network architecture. PROBLEMS It won t be fair to say that this process has been smooth and there were no bumps on the road. The first burden was to harmonize the current network setup. The commonly agreed network setup could be based on design documentation, vendor support documentation or just on the experience of the engineers working with the network. The only important quality attribute that has to be achieved is consistency through the network. Unfortunately this was not the case. The audit has clearly proved that a lot of effort has to be spent just for reaching this point. The effort could be minimized if proper software tools were available for the purpose. Since that was not the case the only option is ad-hoc tools development. Ad-hoc software development is good fulfillment of a particular task but in general does not lead to sustainable results. If the process is carefully planed and the tools and architecture into a platform could be achieved much better results. The second issue was to determine the migration strategy itself. It has to be noted that this is not just a strategy for integration of a new protocol that will continue a few weeks or months but in the case of IPv4 and IPv6 a separate state of the network that will persist for years. The third problem was the numerous problems experienced during the strategy application. Basically despite that the network was with the proper configuration as per the design documentation and with the proper software versions there were a number of missing features needed for the successful strategy application. The real problem here was that the router equipment vendors did not properly document these features and even when they were they did not function as expected. That whole process has triggered again several device software upgrades. After each upgrade a regression testing was performed to verify that all the other features really work as expected with the new operation system. Again some proper automation software could help that process to be optimized but the operator did not have such and the verifications were done by hand. CONCLUSION Internet of Things will be a great achievement from any perspective of view for the human society. With all those objects equipped with minuscule identifying devices, daily life on Earth would undergo a wonderful transformation. Companies would not run out of stock or waste products, as all involved parties would know exactly which products are required and consumed. Mislaid and stolen items would be easily tracked and located. Office Buildings and our homes will be much smarter, will spent less electricity and the CO2 emissions will be decreased. In order all that to happen all the things has be uniquely identified in a global network infrastructure. The only feasible way this to become reality is to be reused the current Internet. However Internet also has its own limitations. It is built around IPv4 and IPv4 address space has already been used. Therefore the only real option for Internet of Things is to go towards IPv6. The current article is based on the author s experience from a real project related to IPv6 Building automation solution deployment as an additional value added service offered by a network operator. Others could use our approach and design decisions for deploying similar solutions of other IoT clouds. It does not cover deep technical details about how such transformation will be executed but it shows the steps that could be followed in order that to happen.

As a final conclusion could be stated that such migration will be extremely cumbersome and clumsy in production network environment and it is a definite must first to be conducted a similar experiment in a test lab environment close enough to the real network setup and second to be used software tools for automating some of the transition steps. Author s future research will be focused on developing a software tools based on the currently used one for transforming networks from one state to the other. REFERENCES [1] IANA IPv4 Address Space Registry, http://www.iana.org/assignments/ipv4-address-space/ipv4- address-space.xml [2] Ashton K., That 'Internet of Things' Thing In: RFID Journal, 22 July 2009. [3] Dunkels A., Vasseur JP, IP for Smart Objects, Internet Protocol for Smart Objects (IPSO) Alliance, September 2008 [4] Slavinski A., Bogomilov I., Milovanov N., 4to6TRANS USE CASE Discovering Internet Service Provider topology, MOTSP 2011 [7] Rein. R,. IPv6 Tunneling for Embedded Systems (6bed4)- draft-vanrein-v6ops-6bed4-00, IETF, 7.2011 [8] Ajile Systems, http://www.ajile.com/downloads/aj-200v1.pdf [9] Oliveira, L.M.L., Rodrigues, J.J.P.C., Macao, B.M., Nicolau, P.A., Lei Wang; Lei Shu, End-to-end connectivity IPv6 over wireless sensor networks, ICUFN 2011 [10] Aoun C., Davis, E., Reasons to Move the Network Address Translator - Protocol Translator (NAT- PT) to Historic Status, RFC 4966, IETF, July 2007 [11] Thomson S., Narten T., IPv6 Stateless Address Autoconfiguration RFC4862, IETF, September 2007 [12] Droms Ed., Bound K., Dynamic Host Configuration Protocol for IPv6, RFC 3315 IETF, July 2003 [13] Jiang S., Carpenter B., An Incremental Carrier-Grade NAT (CGN) for IPv6 Transition, RFC 6264, IETF, June 2011 [14] Liu D., Deng H., NAT46 considerations, draft-liu-behave-nat46-02, IETF March 2010 [15] Bagnulo M., Sullivan A., DNS64:DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers, RFC 6147, IETF, April 2011 [16] Bagnulo M., Matthews P., Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers, RFC 6146, IETF, April 2011 [17] Shelby Z., Luimula M., Peintner D., Efficient XML Encoding and 6LowApp, Internet Draft, IETF, October 16, 2009