Searching for Synergies among Future Internet Ingredients Antonio Marcos Alberti Instituto Nacional de Telecomunicações - INATEL, João de Camargo 510, Centro, Santa Rita do Sapucaí, CEP 37540-000, Minas Gerais, Brazil
[email protected]
Abstract. Currently, there are many proposals to redesign the Internet. While some design ingredients are common to several approaches, the way they are adopted and combined usually differs from proposal to proposal. This paper defends the argument that a deeper architectural rethinking requires a deeper search for synergies among the selected ingredients. It argues that this is fundamentally a possible path to simplify the design, since ingredients are homogenized towards more coherent blueprints. The paper explores raised synergies in a conceptual way and proposes some guidelines to help designing accordingly. Keywords: Future Internet, design, technologies, requirements, architecture.
1
Introduction
The research activities to redesign the Internet are popping up around the world [1][2]. Each project has its own set visions, requirements, and design principles. Despite of this huge diversity, some ingredients are demonstrating to be very popular, simultaneously appearing on many proposals. They frequently arise to solve the same problems. Examples are virtualization, autonomic technologies, identifier/locator (ID/Loc) splitting, and indirection resolution [3]. Every approach combines these ingredients with other ones to generate architectural proposals. In addition, these ingredients are adopted at different depths. For example, some projects adopt virtualization as a key ingredient, while others just assume that virtualization is important for experimental issues. Equally disparate are the interrelationships among adopted ingredients. For example, consider some hypothetical project where the ID/Loc splitting1 technology is applied only for information objects. Services continue to have socket addresses that overlap identification and location functionalities. In this situation, the ID/Loc technology is not being deeply explored in design. Services do not take advantage of it. However, in some other project, ID/Loc splitting is applied not only for information, but also for services and devices. In this case, the same ingredient is deeply explored in design. In summary, the main argument is that when introducing some building block in design, the architects need to explore deeply the possible synergies among this component and the other ones. 1
ID/Loc splitting aims to decouple identifiers from locators in design.
G. Lee et al. (Eds.): ICHIT 2012, CCIS 310, pp. 61–68, 2012. © Springer-Verlag Berlin Heidelberg 2012
62
A.M. Alberti
In this scenario, this paper has three main contributions: it presents some of the most frequently adopted ingredients in the current research panorama (Section 2); it searches for more fundamental synergies among those frequently adopted building blocks (Section 3); and it proposes a set of guidelines to help future Internet (FI) architects to explore those synergies on their projects (Section 4). Finally, the Section 5 concludes the paper.
2
Ingredients
In the context of this paper, an ingredient is defined as a material or an abstract building block of the architecture. Therefore, it could be a hardware, a software or even a more abstract concept. Take, for example, the publish/subscribe paradigm [4] where the publisher makes available some information to the possible subscribers. This paradigm could be implement as a software component. Therefore, this software is a digital ingredient. However, the pub/sub concept is also being considered as an architecture component itself, since they give origin to the software as it was implemented. Thus, without being exhaustive, and considering the current available literature on future Internet, it is possible to enumerate some ingredients that are frequently supporting contemporary proposals. Starting from the hardware point of view, substrate resource ingredients include all the visible equipment that can store, process, and exchange information. They are related to computing and communication hardware. Regarding communication equipment, some prominent ingredients are: (i) at the core: wavelength division multiplexing (WDM), optical time division multiplexing (OTDM), and optical packet switching (OPS); (ii) at the access: fiber to the home (FTTH) and flexible, opportunistic, cognitive, and reconfigurable radio; Field-programmable gate array (FPGA) technology is also frequently adopted to implement reconfigurable devices; (iii) to integrate real world with digital domain there are the network enabled devices, such as sensors and actuators. Regarding computing, real-time, high-performance, reconfigurable, distributed, multi-core, autonomic, and mobile computing are the main ingredients. Real-time support is required to enable software implementation of functionalities that were usually implemented on hardware, e.g. packet forwarding. The main requirements behind substrate resources are capacity, efficiency, scalability, ubiquity, availability, redundancy, and resiliency [3]. Another ingredient that became common is the ID/Loc splitting. It enables future Internet architectures to identify real and virtual entities persistently despite of their current locations. However, this creates the need for identification technologies, i.e. to generate identifiers for every existent entity in the architecture. An additional requirement is that the identifiers need to be unique in some scope [5]. As previously argued, another common ingredient is the hardware virtualization [6]. It enables the exposition of substrate resources to software creating what is being called software-defined networking [7]. Related to virtualization, there is the experimentation requirement. It is needed to proof-of-concept as well as to evolve architecture proposals. In this context, fast-prototyping is required to reduce time to achieve results that can validate or disapprove some proposal. Some projects also adopt technologies to integrate real-virtual worlds, i.e. to collect real world information, to make them timely available for software applications,
Searching for Synergies among Future Internet Ingredients
63
and to act over real world entities. In this case, some common ingredients are sensoring, monitoring, analyzing, and acting systems. Examples of efforts are Internet of things (IoT) [8] and real world Internet (RWI) [9]. Other examples include wireless sensor and actuator networks (WSANs), software-defined radio (SDR), and cognitive radio (CR) [3]. FI architectures need also to address the mobility challenge. Ingredients to support mobility and redundancy are required not only for substrate resources, but also for virtual entities, like services, applications, and of course for content. Redundancy on link connectivity, routing (multi-homing), and other functionalities is a requirement too. Indirection resolution is another frequent selected ingredient for future Internet blueprints. Why? Because the introduction of new layers of indirection is a common approach to address open challenges. Take for example the ID/Loc splitting ingredient. It introduces a new indirection layer between identifiers and locators, thus improving mobility support [3]. Therefore, current research is addressing indirection resolution, such as the distributed hash tables (DHTs). Related to indirection resolution there are the ingredients derived from the information-centrism [4], which concerns to persistently and consistently represent information on the Internet. Examples of ingredients are those for information objects (IOs) versioning, searching, distribution, caching, managing, charging, securing, authenticating, authorizing, and selfcertificating. In short, they are all related to the life-cycling of information objects. On the other side, there is the Internet of services (IoS) paradigm [10], which seems all architecture functionalities as dynamic compose-able service-based applica2 tions . Examples of ingredients are those for service exposing, searching, discovering, contracting, installing, policing, managing, securing, etc. In summary, they are all related to the life-cycling of distributed services. Also, related to the dynamic compose-ability of services there are the search and discovery ingredients. These ingredients are fundamental for bottom-up self-organization of services and contents. Other common FI ingredient is the generalization of the awareness property, e.g. network-awareness, service-awareness, etc. We call this the *-awareness ingredient. Service frameworks require some degree of network-awareness. On the contrary, network functionalities require some information about the services that are going to use the network resources, i.e. service-awareness. In some cases, components require the capacity to be aware of its own states and capabilities, i.e. self-awareness. In other cases, they demand for context-awareness. Besides *-awareness, there is also the need to accommodate semantics in the architecture itself. As an example, considers the semantics web [11], which aims to deal with meaning in the web. To reduce human intervention in management and control [12], autonomic technology is also frequently adopted. It aims to deal with the exponential growths we are experiencing on traffic, devices, connectivity, and interactions. Autonomic technologies can be applied to computing, networking, and even for storage. Generically, they are known as self-* properties. Besides autonomic ingredient, a cognitive ingredient is also employed to deal with reasoning, planning, learning, and acting. Finally, there are the security, privacy, and trust (SPT) ingredients that permeate all architectural levels in future Internet research. 2
Service-based applications are applications that are implemented as a result of the dynamic compose-ability of distributed services.
64
3
A.M. Alberti
Synergies
Figure 1 presents the previously described ingredients and their interrelationships (represented at the intersections). Take, for example, the interrelationship between information-centrism and virtualization and real-time support, i.e. “descriptors of virtualized resources; real-time information”. It means that information-centric approaches could provide persistent location-independent storage for virtualized resource descriptors, while real-time support is important to time-sensitive content. All entities (real and virtual) could have their IDs decoupled from locators. Hardware resources information could be exposed to overlay frameworks independently of their locations. For example, the capacity of a mobile access point could be exposed (using its ID) to a network operating system independently of its location. Even virtualized and reconfigurable hardware resources, such as virtual machines and FPGAs, could have unique IDs. Another advantage is the rise of ID-based security, privacy, and trust. However, to deal with the scalability of the ID-based design, some autonomic functionalities are required. For example, some self-configuring of ID/Loc bindings could be necessary to dynamically self-adapt to changes. Content-centric approaches also require persistent identification of IOs. The IDbased search and discovery of services is also an exciting approach for the emerging IoS. Even service descriptors could be treated as location independent IOs. The support of generalized mobility also depends on the overspread identification of entities. Semantic and context information could also have IDs as well as entity names. In summary, the ID-based design enables a one-fits-all solution, but it requires intensive an recursive dynamic resolution of ID-based bindings. ID-based search and indirection resolution are useful for finding adequate substrate hardware as well as for localizing virtually exposed sensors and actuators. For example, when creating a new virtual machine, the best candidate host could be discovered based on its ID. The same functionality is required when looking for some temperature sensor to compose a new service on RWI. Dynamic service orchestration depends on appropriate discovery of other services. Even mobility support depends on search and discovery of exposed intermittent connectivity, such on cognitive radio. Nonetheless, search and indirection resolution requires self-* functionalities to organize DHTs. It also requires semantics and context to bring the search closer to natural language. Notice that the intersection between search, indirection resolution, semantics, and context is close to the idea of a semantic web. FI designs require fast prototyping and experimental facilities to implement the understand-by-building idea. Such facilities require secure virtualization of their federated resources. Meanwhile, federated resources require semantics and context to provide rich substrate resource description as well as ID-based semantics rich compose-ability. Another point is that flexible hardware helps to ameliorate evolvability. Virtualization also provides scalability and optimization of resource utilization. It allows the mobility of virtualized entities among substrate resources. However, experimental facilities and network operating systems require self-management functionalities to deal with the scale in the number of virtual entities. Autonomic functionalities require contextualized and timely information to perform adequate decision loops. Moreover, they require *-awareness. For example, regulation-awareness is important to provide sound decisions on CR. Yet, self-* enable self-management of information, virtually exposed resources, locators, names,
Searching for Synergies among Future Internet Ingredients
65
services, security, privacy, and trust. Examples are autonomic content centric frameworks, autonomic substrate resource orchestration, self-configuring location systems, autonomic service frameworks, autonomic security, privacy, and trust mechanisms. Nevertheless, semantic and context systems also require autonomic properties to collect, contextualize, and disseminate information. Examples are the context selfdisseminating systems. In the opposite direction, semantics and context are also prerequisites to precisely define objectives and other cognitive aspects, i.e., to guide autonomic technologies towards our society's interests. Therefore, there is a two-way relationship between these key required ingredients. In addition, both are also related to the real-virtual worlds integration, which is fundamental to provide self-awareness and situation awareness for autonomic functions. On the other hand, autonomic functions are needed to deal with various challenges present at RWI, i.e., scale, dissemination, ID/Loc splitting of network enabled devices (NEDs), etc. Equally important is the contextualization of the real-world collected information. Security, privacy, and trust (SPT) are also prerequisites that permeate all the other ingredients. Information-centrism defends information security per se. Also, secure rendezvous of publish/subscribe mechanism characterizes another interrelation point. Dynamic service life-cycling requires built-in SPT. Publishing, search, discovery, and subscribing of services require authentication, secrecy, integrity, and authorization. Trust networks can be created among services in a service cluster. The same challenge reaches RWI. NEDs require innovative security mechanisms, including trust networks. Since localization, context, and objective information are sensible, generalized mobility, semantic, and context also requires SPT support. Real-time support is necessary for multimedia applications; to enable timely feedback control on autonomic loops, to enable virtual networks to quickly react to changes on substrate resources, and to provide freshness of information on RWI. In addition, virtual entities, e.g., virtual base stations, can also require real-time support to promptly react to environmental changes. Reconfigurable hardware is important for virtualization and experiment-driven research. Nonetheless, virtualization is required to provide evolvability and sustainability of reconfigurable hardware. Service-based applications accommodate compose-ability, diversity, extendability, and openness of applications, but requires autonomicity, security, privacy, conte xt, and semantics. Even the architectural ingredients can be considered as services - the architecture is itself service-based. In this context, indirection resolution allows dynamic, ID-based compose-ability of services. User services and applications can perform ID-based search and discovery to dynamically compose with architectural entities. Apparently, mobility support has no relation to virtualization and multihoming support. But, virtual machines can move from one substrate to other. Also, to improve multihoming support, redundancy on physical connectivity needs to be provided, which depends on mobility support, specially on wireless environment. Even semantics, context, and sensorial information needs to be accessed independently of its location, which again requires mobility support. The mobility of services and applications is also a prerequisite, since moving copies of services and virtual entities improve availability. Finally, there are the simplicity and evolvability requirements. Simplicity needs graceful and cohesive integration of all presented ingredients. More generic and simple approaches can be obtained if one selected ingredient can be deeply explored by other ones. Regarding evolvability, it is relevant to accommodate inside the architec-
66
A.M. Alberti
ture the contextualized pressures (aware of society needs) that will help on the selection of the best suited inhabitants. The integrated support for adaptability, self-*, *awareness, and evolvability make the idea of “evolution as it could be” - which means to evolve technology in an integrated, convergent, and sustainable way.
Fig. 1. Full mesh of synergies and dependencies among future Internet ingredients
4
Guidelines
FI architects could take advantage of the arguments behind this paper by applying the following guidelines to their designs: • Generalize the application of selected ingredients in the architecture as much as possible. It means to apply some introduced ingredient to support all the other architectural components. For instance, if the ID/Loc splitting is adopted for hosts and information, it should be adopted for services and other inhabitants. Although obvious, this is very difficult to be done in depth. For example, how to design vir-
Searching for Synergies among Future Internet Ingredients
67
tualization or service-based frameworks taking advantage of pub/sub ingredient? • Integrate ingredients in a cohesive and synergistic way. After exploring each ingredient in the most general possible way, the next step is to integrate them. Consider that the unambiguous identification ingredient is adopted in some architecture. This guideline points out that all the components need take advantage of it. Therefore, the implementation of such ingredient can support all the others regarding identification. • Make the design “as simple as possible, but not simpler”. This famous Einstein's quotation means that at the end of the integration work, the resulting architecture should still have some complexity that can not be removed without any loss on functionality. However, unnecessary functionalities, duplications, and overlappings can be removed without causing damages to the result.
5
Conclusion
Despite the diversity of approaches to redesign the Internet, this paper argues that some ingredients are adopted so frequently, and in so many efforts, that they can be precisely determined. This paper addressed this challenge, presenting and describing some of the typical ingredients adopted in FI design. The interrelationships among selected ingredients were explored to determine possible synergies and dependencies. The analysis done demonstrates that there are several unexplored synergies. Some are: to extend the ID/Loc splitting for services and to generically apply autonomicity, indirection resolution, mobility, and *-awareness. Also, it indicated that the current projects take little advantage of the synergy among the ingredients adopted. A common practice is to adopt certain ingredients just to address some specific part of the project. Finally, the paper derived some guidelines to allow the application of the methodology done at this work in other efforts. The expected gain is to simplify the final design through the synergistic and cohesive integration of ingredients.
References 1. Pan, J., Paul, S., Jain, R.: A Survey of the Research on Future Internet Architectures. IEEE Communications Magazine 49(7), 26–36 (2011) 2. Stuckmann, P., Zimmermann, R.: European Research on Future Internet Design. IEEE Wireless Communications 16(5), 14–22 (2009) 3. Alberti, A.M.: Future Network Architectures: Technological Challenges and Trends. In: Tronco, T. (ed.) New Network Architectures. SCI, vol. 297, pp. 79–120. Springer, Heidelberg (2010) 4. Tarkoma, S., Ain, M., Visala, K.: The Publish/Subscribe Internet Routing Paradigm (PSIRP): Designing the Future Internet Architecture. IOS Press (2009) 5. Chun, W., Lee, T.-H., Choi, T.: Yanail: Yet Another Definition on Names, Addresses, Identifiers, and Locators. In: 6th ICFT, New York (2011) 6. Chowdhury, N.M.M.K., Boutaba, R.: Network Virtualization: State of the Art and Research Challenges. IEEE Communications Magazine 47(7), 20–26 (2009)
68
A.M. Alberti
7. Reitblatt, M., Foster, N., Rexford, J., Walker, D.: Consistent Updates for Software-Defined Networks: Change You Can Believe In! In: 10th Hot Topics in Networks, New York (2011) 8. Atzori, L., Iera, A., Morabito, G.: The Internet of Things: A Survey. Comput. Netw. 54, 2787–2805 (2010) 9. Presser, M., et al.: Real World Internet. Future Internet Assembly, Tech. Rep. (2008) 10. Schroth, C., Janner, T.: Web 2.0 and SOA: Converging Concepts Enabling the Internet of Services. IT Professional 9(3), 36–41 (2007) 11. Shadbolt, N., Hall, W., Berners-Lee, T.: The Semantic Web Revisited. IEEE Intelligent Systems 21(3), 96–101 (2006) 12. Kephart, J., Chess, D.: The Vision of Autonomic Computing. Computer 36(1), 41–50 (2003)