Internet DRAFT - draft-dimitri-irs-arch-frame
draft-dimitri-irs-arch-frame
Network Working Group Dimitri Papadimitriou
Internet Draft Martin Vigoureux
Intended status: Informational Alcatel-Lucent
Wouter Tavernier
Expires: April 14, 2013 Didier Colle
UGent
October 15 2012
IRS Architectural Framework
draft-dimitri-irs-arch-frame-00.txt
Abstract
This document details the possible architectural and design choices
in order to determine i) the spatial location of the so-called "IRS
interface" and the functional entities it directly and/or indirectly
involves, ii) the number of levels of redirection between routing
modules and application (and associated identifier space), and iii)
the various constraints that can be anticipated when dealing with the
coupling of functional planes including the prevention of
oscillations between two or more routing system states, coupling
effects (leading to amplification chains) and, concurrency (leading
to antagonistic action-reaction).
Disclaimer: this document doesn't intend to promote any specific
architecture; its purpose is to understand (some of) the
architectural challenges when designing interaction between routing
system and applicative levels/systems.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
D.Papadimitriou Expires Apr.14, 2013 [Page 1]
Internet-Draft IRS Architectural Framework Oct.15 2012
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on April 14 2013.
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction.................................................3
Conventions used in this document...............................4
2. Terminology, Notation and Acronyms...........................5
2.1. Terminology and Notation................................5
2.2. Acronyms................................................6
3. Use Cases....................................................7
4. Architectures................................................9
4.1. Dual architectures......................................9
4.1.1. Boundary on external interface.....................9
4.1.2. Boundary on internal interface....................13
4.2. Star architecture......................................15
4.2.1. Co-located Dispatch Function......................15
4.2.2. Non Co-located Dispatch Function..................16
4.3. Meshed architecture....................................18
5. Comparative Analysis........................................19
6. Security Considerations.....................................19
7. IANA Considerations.........................................19
8. Conclusions.................................................19
9. References..................................................20
9.1. Normative References...................................20
9.2. Informative References.................................20
10. Acknowledgments............................................20
D.Papadimitriou Expires Apr.14, 2013 [Page 2]
Internet-Draft IRS Architectural Framework Oct.15 2012
1. Introduction
Nowadays, applicative layers don't only rely on the shared
infrastructure for information communication purposes but also for
information storage (e.g., content delivery/caching, large date sets)
and processing (e.g., grid computing, virtual machines). The
expansion of the functional role of the shared infrastructure has in
turn induced the rise of intermediate systems/application level hubs
under the control / supervision of providers (usually ranging from
application providers to mediators).
With the current Internet model where the routing system is a closed
system, applications have to run their own measurement end-to-end to
determine forwarding path characteristics through traffic monitoring
but also have no means by which some network path can be enforced (by
network path we refer here to the path as computed on-line by routing
algorithms or those made available by off-line means). The best
example is the triangular inequality violation where the shortest
path between two end points (shortcut) may not be the best bandwidth
x delay path between these two points. Indeed, as there is no
deployed mean (e.g., source routing) by which applicative layers can
tell the network which path IP datagrams shall follow, measurements
don't allow any subsequent decision tuning on which network path to
follow to reach a given destination. The alternative is to drive the
routing table entries by applicative-triggers exchanged by means of
an API (referred to as IRS since one end of this interface terminates
in the "routing system") assuming applications share with the routing
system a common understanding of distance and resource usage metrics.
In other terms, compared to the decoupling between traffic
engineering decisions concerning network path and applicative layers
needs, such model would allow cooperation in the routing decision
process.
In this context, the actual objectives of the present document are
the following:
i) Enumerate possible architectural and design choices to determine
the spatial location of the so-called "IRS interface" and the
functional entities it directly and/or indirectly involves. In turn,
this enables determining internal vs. external interfaces (those that
MAY be standardized and those that MUST be standardized, and those
that require specific architectural focus when dealing with security
aspects).
ii) Determine the number of levels of redirection between routing
modules and application (and the associated identifier space).
D.Papadimitriou Expires Apr.14, 2013 [Page 3]
Internet-Draft IRS Architectural Framework Oct.15 2012
iii) Identify pro's and con's of possible architectures depending on
use cases (bottom-up) that in general will combine one or more of
these elements: distance/path, topology ((abstract) nodes, (abstract)
links), location/mobility (end-point, data, etc.); note that the
inclusion of traffic properties leads de facto to the introduction of
monitoring points.
iv) Anticipate the constraints (from base distributed control and
decision theory) when dealing with the coupling of functional planes
and some architectural invariants identified (top-down). These
includes the prevention of i) oscillations between two or more
routing system states, ii) coupling effects (leading to amplification
chains) and, iii) concurrency (leading to antagonistic action-
reaction).
v) Even if the initial architectural scope would be limited to single
autonomous system as starting point, propose a generic enough
description to enable inter-domain use cases in the future.
It is anticipated that the time dimension will limit applicability of
such information exchange to the control part of the routing system
(i.e. not the forwarding component). Indeed, the closer to the
forwarding component the smaller the time scale to ensure proper
functionality. The full Shortest Path Tree (SPT) computation takes of
the order of 10microsec per IGP destination prefix, optimizations can
be obtained using incremental Shortest Path First (iSPF) algorithms.
Updating the central node Routing Table (RT) ranges in the same order
of magnitude per destination prefix. The consecutive time the routing
engine CPU is spending to update the RT entries or their distribution
to the Forwarding Table (FT) is determined by the quantum of the
swapping process. The quantum time can typically be configured
between an order of 10 to 100ms. If we would consider an upper level
components and interactions not directly associated to the routing
system, it would logically operate in the order of the order 100ms or
more generally of the order of seconds and above. The routing system
is thus expected to remain the entity in charge of short-term
adaptations to network "topological" or "reachability" changes.
Conventions used in this document
In examples, "C:" and "S:" indicate lines sent by the client and
server respectively.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC-2119 [RFC2119].
D.Papadimitriou Expires Apr.14, 2013 [Page 4]
Internet-Draft IRS Architectural Framework Oct.15 2012
In this document, these words will appear with that interpretation
only when in ALL CAPS. Lower case uses of these words are not to be
interpreted as carrying RFC-2119 significance.
In this document, syntax specification uses the augmented Backus-Naur
Form (BNF) as described in RFC-2234 [RFC2234].
2. Terminology, Notation and Acronyms
2.1. Terminology and Notation
- Agent: in general terms equipping a given function (in present
context an exchange function) with memory property leads to the
notion of object. Providing these objects with the capacity to
adapt and to modify their behavior with respect to changing/
variable conditions leads to the notion of adaptive agent.
- Application: for the sake of clarity, application refers here to
computer software (organized collections of computer data and
instructions) performing tasks such as data processing and/or
storage, running on top of TCP/IP and accessible directly (or
indirectly) to the its end-users on terminals/hosts/servers to
accomplish these specific tasks.
Note: in practice, it is expected that the IRS will be initially
used in the context of "network applications", i.e., programs
receiving access to the routing modules and routing table in order
to associate specific routing protocol decision/execution and
routing table entries to specific needs as explained in Section 3.
- APP_i: agent associated to application i (where index i = 1,..,L)
that enables information exchanges with the dispatch function d.
- Boundary: determines/indicates the logical intersecting edge/area
between the routing system and the application system. The
existence as well as to the proper operation and management of
this edge/area is key in developing and maintaining coherence
across the intersecting systems.
- Co-located: refers to the placement of entities in close
physical/logical proximity so that remotely/distantly they appear
as occupying a single position/location.
- Dispatch function (D and d): generic term describing the functional
block redirecting information. Redirection of information is
defined either between dispatch functions or between dispatch
function and agents.
D.Papadimitriou Expires Apr.14, 2013 [Page 5]
Internet-Draft IRS Architectural Framework Oct.15 2012
Additionally the following functionality may be associated to this
functional block: syntax and semantic information processing,
aggregation/abstraction of information, orchestration, and
scheduling.
Equipping this function with (at least some of) these
additional functionality is also part of the architectural
discussion and specification.
- External interface: interface that is addressable by objects/
components outside of the objects/components they interconnect/put
in relation and which usually belong to different entities; each
object/component defining an entry point to the entity to which
they individually belong thus resulting in higher security
requirements.
- Internal interface: interface that is not addressable by objects/
components outside of the objects/components it interconnects/puts
in relation or the single entity that comprises them. The objects/
components interacting through an internal interface are co-
located.
- M_m: traffic monitoring module/point m (where index m = 1,..P).
Monitoring modules capture traffic and interface either with the
IRS or with other routing modules via the dispatch function.
- RTR_j (Router j, where index j = 1,..,M): entity hosting multiple
routing modules (RM).
- RM_k (Routing module k, where index k = 1,..,N): functional entity
such as Interior Gateway Protocols (IGP), Exterior Gateway
Protocol (EGP), etc. including the node global Routing Table
(database structure and controller) as well as shared routing path
computation functions (which for RSVP-TE is referred to as Path
Computation Element or PCE). An agent indexed in the same way is
associated to each routing module interacting with a dispatch
function.
2.2. Acronyms
EGP Exterior Gateway Protocol
FT Forwarding Table
IGP Interior Gateway Protocol
IRS Interface to the RS
RM Routing Module
RS Routing System
RT Routing Table
D.Papadimitriou Expires Apr.14, 2013 [Page 6]
Internet-Draft IRS Architectural Framework Oct.15 2012
RTR Router
3. Use Cases
The general purpose of the IRS is to enable the augmentation or the
enhancement of the IGP (and even the EGP) based routing system with
i) functionality it is not able to perform when operating on a pure
IGP prefix basis with or without additional state information
associated to their link (e.g. spatial traffic engineering
information), ii) functionality involving time varying information at
a higher rate than what IGP (and even EGP) can sustain by design,
and/or iii) functionality it has not been initially designed for but
that strongly influence the working of the routing system (this
category includes anomaly detection, intrusion detection, etc.).
Cases belonging to the sets i) and ii) would increase the memory cost
and adaptation cost if the IGP would be directly involved in the
corresponding routing information exchange process.
From this perspective, use cases can be further classified as
follows:
- Isolation of source (some of which may be included in IGP prefixes
and/or prefixes included in the routing table) and/or destination
addresses subset of the prefixes stored by the routing table (some of
which being derived from the IGP routing information base).
- Tuning of the routing entries parameters associated to destination
prefix(es) (with as particular case, host-based prefixes) being
subset of IGP destination prefixes from which routing table entries
are derived.
- Sequencing/ordering of the computation and activation of routing
table entries (where the sequence if left to the IGP alone would for
instance delay convergence).
Note that the cases outlined here below are not claimed to be genuine
but expectedly illustrative of the possible usage of the "IRS
interface". The proposed classes are expected to be generic enough
in order to "unify" its design.
Isolation refers to cases dealing with distributed intrusion
detection and distributed traffic anomaly detection (e.g., dDoS)
where the objective is to detect and identify the intrusion/anomaly
and possible prevent this intrusion/anomaly to further propagate. The
latter typically involves determining through which router the
corresponding traffic enters and possibly leaves the routing domain
as well as determining the best router from where and to which the
D.Papadimitriou Expires Apr.14, 2013 [Page 7]
Internet-Draft IRS Architectural Framework Oct.15 2012
incriminated traffic should be deflected. The term distributed means
that several routers monitors collect traffic traces/records from the
routing domain and the IRS is used as interface to a network
application module capable of processing traffic records taken out of
various monitors. Techniques enabling detection of never-seen-before
patterns are now available (see e.g., [ECODE]) that limit the amount
of configuration and maintenance required on each node (as long as the
information captured on multiple monitors can be cross-processed). In
case of isolation, the propagation of the information by means of the
IGP would increase the number of entries to be stored at each router
while only some of them require the corresponding information.
Tuning refers to use cases dealing with traffic engineering path
computation and decision on a finer granularity than the one
enforced by the destination prefixes distributed by means of the IGP.
Parameter setting includes the possibility to associate a given
incoming traffic flow to a specific routing entry (instead of using
the "default" entry as determined by the destination address). Such
parameters include in particular the bandwidth x delay product that
can be computed for some of the (edge-to-edge) segments crossing the
routing domain. The IRS can also be used to tune the parameter of the
active monitors used to compute the available and residual capacity
together with the edge-to-edge delay. On the other hand, passive
monitors would not need to be activated on edge routers but placed so
as to monitor specific spatial patterns of traffic. Moreover, instead
of running at a default rate, the rate of packet / flow capture could
be individually adapted depending on the applicative needs and the
topological location of the router following that pattern.
Sequencing typically involves cases related to distributed decisions
that need to be taken more rapidly and/or executions that need to be
performed more rapidly than the convergence time IGP would impose
(with all associated detrimental effects, e.g., routing loops, loss-
of-traffic, etc.). This class includes fast re-routing (activation of
a loop-free alternate routing/forwarding entry) but also
configuration and maintenance operations involving for instance link
metric changes, activation/deactivation of interfaces, etc.
As stated above, enabling several of these use cases would increase
the memory and adaptation cost if the IGP would be directly involved
in the corresponding routing information exchange process. Instead by
assuming that i) not all additional entries are needed during the
same period of time and ii) the number of active entries << total
number of routing entries, one should be able to ensure higher
"scaling" (or equivalently lower cost of scale) compared to the
default situation IGP imposes (resulting from flooding of routing
information).
D.Papadimitriou Expires Apr.14, 2013 [Page 8]
Internet-Draft IRS Architectural Framework Oct.15 2012
4. Architectures
The below section/sub-sections detail the architectures as far as our
understanding goes in providing an interaction channel between the
routing system (and its individual routers) and the applicative level
(and its numerous applications).
4.1. Dual architectures
These architectures are characterized by three levels (or tiers) of
redirection and a logical boundary between the routing system and the
application system defined by the interface between their respective
dispatch function.
4.1.1. Boundary on external interface
This architecture is similar to the one exposed in the [RTG_Area]
presentation, where each routing entity or router (RTR) owns its
individual dispatch function D and each APP agent is associated to a
dispatch function d, distinct from the function D. This architecture
involves three levels of redirection as depicted in Fig.1a. The
logical boundary between the routing system and the application
system is determined by the external interface between the dispatch
function d and D (see below).
From this figure, the following relationships can be derived:
- Relationship APP to d: n:m (particular case: 1:1)
- Relationship d to D: m:n (particular case: 1:1)
- Relationship D to RM (same RTR): 1:n (particular case: 1:1)
------- ------- ------- . . . . . . . .
| APP_1 | ... | APP_i | ... | APP_L | ^
------- ------- ------- |
| | | |
| | | | 3rd Level
| | | |
| ----- | v
---- ... -| d |- ... ----- . . . . . . . .
----- ^
/ | \ |
| |
__________________|_____ Boundary | 2nd Level
| |
| |
D.Papadimitriou Expires Apr.14, 2013 [Page 9]
Internet-Draft IRS Architectural Framework Oct.15 2012
----------------- |
RTR_1... | RTR_j | | ... RTR_M |
| ----- | v
| | D | | . . . . . . . .
| ----- | ^
| / | \ | |
| / | \ | | 1st Level
| | | | | |
| RM_1 RM_k RM_N | v
----------------- . . . . . . . .
Fig.1a: Boundary on external interface d-D (co-located dispatch
function D)
From Fig.1a, one can identify the following:
* Dual dispatch function:
. One dispatch function D is associated to each RTR entity.
This dispatch function D is co-located with the RTR to which it
is associated.
. One dispatch function d is associated to a set of one or more APP
agents.
This dispatch function d is not co-located with the APP agents
to which it is associated.
* RTR level:
. Includes co-located dispatch function D
. Agents running on each routing module RM_k communicate with the
dispatch function D via an internal interface (the associated
routing modules may be known to the local dispatch function D by
means of a registration process).
* Interfaces:
. External interface between APP agents and d
. External interface between dispatch functions d and D
. Internal interface between D and RM_k agent of RTR_j
. In terms of IRS:
- The IRS would include the interface defined between the
dispatch functions D and d (which is an external interface)
- The question which remains is: does the IRS span the
interfaces defined between i) RM_k and the dispatch function D
and/or ii) APP_i and the dispatch function d. If not then the
dispatch function will have to provide the syntax and semantic
functionality to process messages receives from various
agents.
D.Papadimitriou Expires Apr.14, 2013 [Page 10]
Internet-Draft IRS Architectural Framework Oct.15 2012
Note that one can extend this architecture and assume that the
dispatch function D is not co-located to its associated RTR as
depicted in Fig.1b. This architecture also involves three levels of
redirection as depicted in Fig.1b. In that case, the following
relationships can be derived:
- Relationship APP to d: n:m (particular case: 1:1)
- Relationship d to D: m:n (particular case: 1:1)
- Relationship D to RTR: m:n (particular case: 1:1), meaning that a
given dispatch function D can be shared among multiple RTRs.
------- ------- ------- . . . . . . . .
| APP_1 | ... | APP_i | ... | APP_L | ^
------- ------- ------- |
| | | |
| | | | 3rd Level
| | | |
| ----- | v
---- ... -| d |- ... ----- . . . . . . . .
----- ^
/ | \ |
| |
__________________|_____ Boundary | 2nd Level
| |
| |
----- v
--------------| D |----------- . . . . . . . .
| ----- | ^
| | | | | |
| ------|-|-|------ | |
RTR_1 |RTR_j | | | | RTR_M |
| / | \ | | 1st Level
| / | \ | |
| | | | | |
| RM_1 RM_k RM_N | v
----------------- . . . . . . . .
Fig.1b: Boundary on external interface d-D (non co-located dispatch
function D)
From Fig.1b, one can identify the following:
* Dual dispatch function:
D.Papadimitriou Expires Apr.14, 2013 [Page 11]
Internet-Draft IRS Architectural Framework Oct.15 2012
. One dispatch function D is associated to a set of one or more
RTR.
This dispatch function D is not co-located with either of the
RTR to which it is associated.
. One dispatch function d is associated to a set of one or more APP
This dispatch function d is not co-located with either of the
APP to which it is associated.
. The dispatch functions d and D are themselves not co-located,
i.e., exchanges are performed by means of an external interface.
* RTR level:
. No co-located dispatch function D
. Agents running on each routing module RM_k communicate with the
dispatch function D via an external interface (the associated
routing module may be known to the local function D by means of
a registration process).
* Interfaces:
. External interface between APP agents and d
. External interface between dispatch functions d and D
. External interface between D and RM_k agents of RTR_j
. In terms of IRS:
- The IRS would include the interface defined between the
dispatch function D and d (which is an external interface)
- Here too, the question which remains is: does the IRS span the
interfaces defined between i) RM_k and the dispatch function D
and/or ii) APP_i and the dispatch function d. If not then the
dispatch function will have to provide the syntax and semantic
functionality to process messages receives from various
agents.
Remark: this architecture mandates/imposes to standardize all
interfaces involved in the exchange process between the routing
system and the applicative level.
D.Papadimitriou Expires Apr.14, 2013 [Page 12]
Internet-Draft IRS Architectural Framework Oct.15 2012
4.1.2. Boundary on internal interface
This architecture involves three levels of redirection as depicted in
Fig.1c. The main differences with the architecture depicted in
Section 4.1.1/Fig.1a are i) non co-located dispatch function D (with
its associated RTR) and ii) an internal interface between the
dispatch function D and d (instead of an external interface). The
main differences with the architecture depicted in Section
4.1.1/Fig.1b is the internal interface between dispatch functions D
and d (instead of an external interface). The logical boundary
between the routing system and the application system is determined
by the internal interface between the dispatch function d and D.
The following relationships can be derived:
- Relationship APP to d: n:m (particular case: 1:1)
- Relationship d to D: m:n (particular case: 1:1)
- Relationship D to RTR: m:n (particular case: 1:1)
------- ------- ------- . . . . . . . .
| APP_1 | ... | APP_i | ... | APP_L | ^
------- ------- ------- |
| | | |
| | | | 3rd Level
| --------- | |
| | ----- | | v
---- ...|-| d |-|... ----- . . . . . . . .
| ----- | ^
| | | |
_____________|____|____|___ Boundary | 2nd Level
| | | |
| ----- | v
------------|-| D |-|--------- . . . . . . . .
| | ----- | | ^
| --------- | |
| | | | | |
| ------|-|-|------ | |
RTR_1 |RTR_j | | | | RTR_M |
| / | \ | | 1st Level
| / | \ | |
| | | | | |
| RM_1 RM_k RM_N | v
----------------- . . . . . . . .
Fig.1c: Boundary on internal interface d-D (non co-located dispatch
function D)
D.Papadimitriou Expires Apr.14, 2013 [Page 13]
Internet-Draft IRS Architectural Framework Oct.15 2012
From Fig.1c, one can identify the following:
* Dual dispatch function:
. One dispatch function D is associated to a set of one or more
RTR.
. One dispatch function d is associated to a set of one or more
APP.
. The dispatch functions d and D are themselves co-located,
i.e., exchanges are performed by means of an internal interface.
* RTR level:
. No co-located dispatch function D
. Agents running on each routing module RM_k communicate with the
dispatch function D via external interface (associated routing
module may be known to the local function D by means of a
registration process).
* Interfaces:
. External interface between APP agents and d
. Internal interface between dispatch functions d and D
. External interface between D and RM_k agents of RTR_j
. In terms of IRS:
- The IRS would include the interface defined between the
dispatch function D and d (which is an internal interface)
- Here too, the question which remains is: does the IRS span
the interfaces defined between i) RM_k and the dispatch
function D and/or ii) APP_i and the dispatch function d. If
not then the dispatch function will have to provide the
syntax and semantic functionality to process messages
receives from various agents.
Remark: this architecture doesn't require standardizing the interface
between dispatch functions (only procedures performed by the dispatch
functions would need specification).
D.Papadimitriou Expires Apr.14, 2013 [Page 14]
Internet-Draft IRS Architectural Framework Oct.15 2012
4.2. Star architecture
These architectures are characterized by i) two levels of
redirection, and ii) common dispatch function (dD) between APP and
RTR. The boundary in these architectures can be seen as determined by
the intersecting/common function dD. When this function is supplied
with memory property, it is referred to as a boundary object.
4.2.1. Co-located Dispatch Function
In this case, the following relationships can be derived:
- Relationship APP to dD: n:m (particular case: 1:1)
- Relationship dD to RM (same RTR): 1:n (particular case: 1:1)
------- ------- ------- . . . . . . . .
| APP_1 | ... | APP_i | ... | APP_N | ^
------- ------- ------- |
| | | |
| | | | 2nd Level
| ------------------- | |
| | RTR_j | | | |
| | ----- | | v
---|- .. -| dD |- .. -|--- . . . Boundary
| ----- | ^
| | | | | |
| / | \ | | 1st Level
| / | \ | |
| | | | | |
| RM_1 RM_k RM_N | v
------------------- . . . . . . . .
Fig.2a: Star architecture - Co-located common dispatch function
From Fig.2a, one can identify:
* Common dispatch function:
. A dispatch function dD is associated to each RTR. The same
dispatch function dD is associated to a set of one or more APP.
One can thus refer the function dD to as a common dispatch
function
. The dispatch function dD associated to the RTR_j is co-located
with the RTR_j
* RTR level:
. Includes co-located dispatch function dD
D.Papadimitriou Expires Apr.14, 2013 [Page 15]
Internet-Draft IRS Architectural Framework Oct.15 2012
. Agents running on each routing module RM_k communicate with the
dispatch function dD via internal interface (associated routing
module may be known to the local function D by means of a
registration process).
* Interfaces:
. External interface between APP agents and dispatch function dD
. Internal interface between dispatch function dD and RM_k agents
of RTR_j
. In terms of IRS:
- In this case, the IRS would span the interfaces defined
between APP_i and the dispatch function dD. The question
- The question which remains is: does the IRS span the
interfaces defined between RM_k and the dispatch function D.
If not then the dispatch function will have to provide the
syntax and semantic functionality to process messages receives
from various agents.
4.2.2. Non Co-located Dispatch Function
In this case, the following relationships can be derived:
- Relationship APP to dD: n:m (particular case: 1:1)
- Relationship dD to RTR: m:n (particular case: 1:1)
------- ------- ------- . . . . . . . .
| APP_1 | ... | APP_i | ... | APP_N | ^
------- ------- ------- |
| | | |
| | | | 2nd Level
| | | |
| ----- | v
---- ... -| dD |- ... ----- . . . Boundary
----- ^
-------|-|-|------- |
| RTR_j | | | | |
| / | \ | | 1st Level
| / | \ | |
| | | | | |
| RM_1 RM_k RM_N | v
------------------- . . . . . . . .
Fig.2b: Star Architecture - Non co-located common dispatch function
D.Papadimitriou Expires Apr.14, 2013 [Page 16]
Internet-Draft IRS Architectural Framework Oct.15 2012
From Fig.2b, one can identify:
* Common dispatch function:
. One common dispatch function dD is associated to a set of one or
more RTR and to a set of one or more APP.
. This dispatch function is neither co-located with the router
(RTR) (or its routing modules) nor with the APP agents. In this
case, one can refer to a commonly shared dispatch function dD.
* RTR level:
. No co-located dispatch function dD
. Agents running on each routing module RM_k communicate with the
dispatch function dD via external interface (associated routing
module agents may be known to the local function D by means of a
registration process).
* Interfaces:
. External interface between APP agents and dispatch function dD
. External interface between dispatch function dD and RM_k agents
of RTR_j
. In terms of IRS:
- In this case the IRS would span i) the interfaces defined
between APP_i and the dispatch function dD and ii) the
interfaces defined between RM_k and the dispatch function dD.
D.Papadimitriou Expires Apr.14, 2013 [Page 17]
Internet-Draft IRS Architectural Framework Oct.15 2012
4.3. Meshed architecture
Alternatively, one may consider that each agent executes its own
dispatch function and the relationship between APP_i and RM_k agents
is n:m. In this architecture, the boundary is thus determined by the
set of APP agent to RM agent relationships.
This architecture however implies that i) APP and RM agents are
knowledgeable of each other, and ii) the individual routers must
provide means to ensure consistency and coherence of decisions (by
their routing modules) but also to prevent concurrency between
decisions (leading to antagonistic action-reaction). For this
purpose, a decision control function (hD), performing decision
verification, consistency-check, etc. is to be considered that is co-
located with individual RTR (see Fig.3). The interface between each
routing module RM_k_and the function hD (indicated with asterisks in
Fig.3) falls beyond the scope of IRS.
------- ------- -------
| APP_1 | ... | APP_i | ... | APP_N |
------- ------- -------
| | ||
| | ||
| | ||
----------- | ------------- |
| || ------------
| || |
-------|-||-|-------
| RTR_j | || | |
| / || \ |
| / || \ |
| | || | |
| RM_1 RM_k RM_N |
| * * * |
| * * * |
| * ---- * |
| ***| hD |*** |
| ---- |
--------------------
Fig.3: Meshed architecture
In a sense, the architectures presented in Section 3.1 and 3.2
perform inbound decision control whereas the architecture depicted in
Fig.3 performs outbound decision control. Inbound (to RM) means that
the function D (in the Fig.1 and Fig.2) processes the incoming
information to ensure that the proper decision left subsequently to
D.Papadimitriou Expires Apr.14, 2013 [Page 18]
Internet-Draft IRS Architectural Framework Oct.15 2012
individual RM but the function D is not part of the decision control
process (verification, consistency-check, etc.). This process is
performed by the RM themselves. On the other hand, outbound (to RM)
means that the function hD (in Fig.3) performs verification,
consistency-check, etc. of the (individual) decisions taken by the
RMs.
5. Comparative Analysis
TBD.
6. Security Considerations
There are multiple levels at which security considerations shall be
embedded and from the start as part of the architecture. Indeed,
application and routing systems may (and often will) be under the
control of different parties/administrative unit and communication
between them (using the various external interfaces outlined in this
document) may be established across the Internet.
- Accessibility and communication: prevent denial of system/service
and overloads, enforce authentication of individual communicating
entities and prevent unauthorized access/masquerades (authorization).
- Information exchange: enforce information integrity and validity
(verification process) as well as prevent information/data spoofing;
information confidentiality may be critical for certain environments,
not necessarily for others (e.g., NREN).
- Semantic processing: assuming that routing modules would receive
information to derive decisions, individual information can be valid
but its interpretation and resulting decisions may lead to executions
weakening the routing system.
7. IANA Considerations
None
8. Conclusions
TBD
D.Papadimitriou Expires Apr.14, 2013 [Page 19]
Internet-Draft IRS Architectural Framework Oct.15 2012
9. References
9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2234] Crocker, D. and Overell, P.(Editors), "Augmented BNF for
Syntax Specifications: ABNF", RFC 2234, Internet Mail
Consortium and Demon Internet Ltd., November 1997.
9.2. Informative References
[RTG_Area] Atlas, A., et al. "Interface to the Internet Routing
System (IRS)", Routing Area Meeting, Vancouver (BC),
Canada, July 2012.
[ECODE] Project website: http://www.ecode-project.eu
[OFELIA] Project website: http://www.fp7-ofelia.eu
10. Acknowledgments
This document was prepared using 2-Word-v2.0.template.dot.
Copyright (c) 2012 IETF Trust and the persons identified as authors
of the code. All rights reserved.
Part of the input that led to this document has been derived from the
outcomes of the [ECODE] project (Grant No.223936) that is funded by
the Framework Program 7 (FP7) of the European Commission and from the
[OFELIA] FP7 project; both projects are part of the Future Internet
Research and Experimentation Initiative (FIRE) of the European
Commission.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
o Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
o Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
D.Papadimitriou Expires Apr.14, 2013 [Page 20]
Internet-Draft IRS Architectural Framework Oct.15 2012
o Neither the name of Internet Society, IETF or IETF Trust, nor the
names of specific contributors, may be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
D.Papadimitriou Expires Apr.14, 2013 [Page 21]
Internet-Draft IRS Architectural Framework Oct.15 2012
Authors' Addresses
Dimitri Papadimitriou
Alcatel-Lucent Bell N.V.
Dep.: Bell Labs Benelux
Copernicuslaan 50
2018 Antwerpen
Belgium
Email: dimitri.papadimitriou@alcatel-lucent.com
Tel: +32 3 2408491
Martin Vigoureux
Alcatel-Lucent Bell Labs France
Dep.: Bell Labs France
Route de Villejust
Nozay 91620
France
Email: martin.vigoureux@alcatel-lucent.com
Didier Colle
Ghent University
Dep.: INTEC
Gaston Crommenlaan 8 bus 201
9050 Ledeberg - Gent
Belgium
Email: didier.colle@intec.ugent.be
Tel: +32 9 3314900
Wouter Tavernier
Ghent University
Dep.: INTEC
Gaston Crommenlaan 8 bus 201
9050 Ledeberg - Gent
Belgium
Email: wouter.tavernier@intec.ugent.be
Tel: +32 9 3314900
D.Papadimitriou Expires Apr.14, 2013 [Page 22]