Internet-Draft tvr-requirements October 2023
King, et al. Expires 25 April 2024 [Page]
Workgroup:
Network Working Group
Internet-Draft:
draft-ietf-tvr-requirements-01
Published:
Intended Status:
Informational
Expires:
Authors:
D. King
Lancaster University
L. M. Contreras
Telefonica
B. Sipos
JHU/APL

TVR (Time-Variant Routing) Requirements

Abstract

Time-Variant Routing (TVR) refers to the calculation of a path or subpath through a network where the time of message transmission (or receipt) is part of the overall route computation. This means that, all things being equal, a TVR computation might produce different results depending on the time that the computation is performed without other detectable changes to the network topology or other cost functions associated with the route.

This document introduces requirements where TVR computations could improve message exchange in a network.

About This Document

This note is to be removed before publishing as an RFC.

Status information for this document may be found at https://datatracker.ietf.org/doc/draft-ietf-tvr-requirements/.

Discussion of this document takes place on the Time-Variant Routing Working Group mailing list (mailto:tvr@ietf.org), which is archived at https://mailarchive.ietf.org/arch/browse/tvr/. Subscribe at https://www.ietf.org/mailman/listinfo/tvr/.

Source for this draft and an issue tracker can be found at https://github.com/danielkinguk/tvr-requirements.

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). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

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."

This Internet-Draft will expire on 25 April 2024.

2. Conventions and Definitions

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

Specific terms used within this document are as follows:

Model:
The universe being modeled, which defines a parameter space.
Entity:
A single separable item within the model. Each entity has a stable identity which is time-invariant.
Property:
A single attribute of an entity which is used to parameterize that entity. The notion of a property is not time-variant, the property always exists within an entity but its value may be time-variant.
Property Value:
The specific value of a property, both as a planned state within the schedule timeline and as a realized state in wall-clock time.
Schedule:
The method of parameterizing time-variance intrinsic to a time-variant model. The parameters of a schedule are within the state space of the model.
Schedule Time:
An idealized timeline within a time-variant model over which entities and property values may change without a difference of state in the model itself. The notion of schedule time is intrinsic to the model.
Wall-Clock Time:
The true timeline, measured in some time scale by some local ticker. The notion of wall-clock time is extrinsic to the model; even non-time-variant models allow for changes over wall-clock time, just as different model states rather than a change within the model itself.
Time Instant:
A single instant of time, consistent with the concepts of date-time in [RFC3339].
Timeline:
A possibly bounded interval of time, consistent with the concept of a period in [RFC3339].
Subsequent:
A time instant which is later in a timeline than some reference time instant.
Orchestrator:
The subsystem of a managing device which centralizes control of a network and applies policy to manage a network.
Manager:
The subsystem in a managing device which operates a management protocol to control an Agent.
Agent:
The subsystem in a managed device which operates a management protocol to be controlled by a Manager.
(Routing) Application:
The subsystem of a managed device which performs the functions of a routing protocol and/or algorithm.
+--------------------+       +-------------------+
|   Managing Device  |       |   Managed Device  |
|                    |       |                   |
|  +--------------+  |       |  +-------------+  |
|  | Orchestrator |  |       |  | Application |  |
|  +--------------+  |       |  +-------------+  |
|         |          |       |         |         |
|  +--------------+  |       |  +-------------+  |
|  |    Manager   |<-----+----->|    Agent    |  |
|  +--------------+  |   :   |  +-------------+  |
+--------------------+   :   +-------------------+
                         :
                  +-------------+
                  |  Data Model |
                  +-------------+
Figure 1: Management Entities

3. Overview of Time-Variant Networks

Existing Internet routing techniques maintain end-to-end connected paths across a network. Routing mechanisms exist to recover connectivity and resume normal traffic forwarding as the topology changes. Occasionally, optimization of routes may also be requested, especially post-topology changes due to disruptive events. However, there are a growing number of use cases where changes to the routing topology are an expected part of network operations. In these scenarios, the pre-planned loss and restoration of an adjacency, or formation of an alternate adjacency, should be seen as a non-disruptive event.

Time-Variant Routing (TVR) refers to calculating a path or subpath through a network where the time of message transmission (or receipt) is part of the overall route computation. Therefore, a TVR computation might produce different results depending on the time that the calculation is performed without other detectable changes to the network topology or other cost functions associated with the route.

3.1. Resource Scheduling

Planned resource scheduling will be required for various scenarios; these include networks with mobile entities, such as crewless aerial vehicles and orbiting satellite constellations [I-D.ietf-tvr-use-cases]. In these scenarios, links are lost and re-established as a function of the mobility of the platforms. Furthermore, link activity might be restricted to certain times of the day in networks without reliable access to power, such as networks harvesting energy from tidal, wind, and solar resources. Similarly, network traffic might be planned around energy costs or expected user data volumes in networks prioritizing green computing and energy efficiency over data rate.

3.1.1. Schedule Visibility

Because scheduled time-variance is not a part of exsting routing algorithms and managed data models, not all routing applications will be made to handle schedules as part of the routing parameters intrinsically. Two extremes of schedules being associated to routing data are:

Intrinsic Schedule:
In this situation, the schedule is an intrinsic part of the managed data model which is visible to the routing application and used as part of the routing algorithms. When the schedule is intrinsic, there is not necessarily the notion of a schedule being "executed" in wall-clock time because the time-varying parameters are ingested as part of the routing algorithms natural functioning.
Extrinsic Schedule:
In this situation, the schedule is not part of the managed data proper but maintained within the Orchestrator; the routing application only sees the effects of changes in routing parameters as the schedule is executed (in wall-clock time) by the Agent.

There is also the possibility of an intermediate situation where the schedule is still part of the managed data model but is visible only to, and executed in wall-clock time by, the management Agent. This allows a more distributed use of scheduled data than centralizing its processing in an Orchestrator.

3.1.2. Schedule Locality

Similar to how different entities can have, or not have, visibility into a time-varying schedule there is also the aspect of where the schedule data is handled within the network topology. Two extremes for locality of schedule handling are:

Centralized:
In this situation, all schedule handling is centralized within a network Orchestrator and changes are sent to routing applications in wall-clock time via a management interface. This corresponds with the Extrinsic schedule visibility because the managed routers do not see the schedule to indicate why parameter changes are taking place.
Distributed:
This situation corresponds with the Intrinsic or intermediate schedule visibility, where a schedule (with a potentially limited time horizon from what is known at the Orchestrator) is part of the managed data which is distributed to managed devices to be handled either by the Agent or by the routing Application itself.

3.2. General Temporality

This section covers different aspects of how temporality applies to any potential TVR information model. Each aspect is roughly independent and informs how a model can choose to include temporality in its parameter space.

3.2.1. Scope of Time-Variability

One aspect of any time-varying model is the scope of what may be time-variable. Two extremes of this aspect are:

  • A model which is completely time-invariant, which while there is still a notion of time it has no affect on any of the model entities.
  • A model in which every entity has some kind of schedule applied.

It is expected that an application of time-variability to real world data models will keep some entities within the model time-invariant and allow scheduling of other, specific entities.

Another aspect of any time-varying model is the granularity of state to which a schedule can be applied. Two extremes of this aspect are:

  • A model where one single schedule applies to the entire universe (i.e. indicating when the time-variant entities are valid or invalid).
  • A model where every property of every entity can be scheduled independently. This is the temporality model of [AIXM].

It is expected that an application of time-variability to data models will fit within these extremes, possibly applying a schedule to each entity indicating when that entity is valid or invalid, or applying a schedule to groups of properties within the entity (while leaving other properties time-invariant).

3.2.2. Time Horizon

In an idealized model the schedules will apply indefinitely far in the past and the future, but in a realizable model with both processing and storage limitations there will need to be a time horizon within which the model applies and outside of which the model has no meaning. In some cases this horizon will be intrinsic to the model itself, with an explicit model parameter indicating the horizon. In other cases the model may allow indefinitely-large schedules but the processing of the planning timeline is bounded to limit resource needs.

3.2.3. Time Precision

Different time-variant models will require different granularities of planning time, either because of limitations or assumptions about wall-clock time or because of requirements within the modeled domain. It is up to specific models to define the precision of time values and the required accuracy and precison of wall-clocks which implement the schedules.

3.2.4. Validity in a Schedule

Within a single schedule over the planning timeline there will likely be a need to have multiple discrete intervals of validity over absolute schedule time. The time instants at which a schedule is invalid indicate an undefined property value, so it is important for a model to be able to accomodate multiple schedules as necessary to ensure that some properties can have values at all times.

A model which restricts itself to a single interval of validity could run into difficulties over a long enough time horizon and would need to resort to having multiple model entities represent the same modeled "thing" which can lead to confusion and inefficiency.

3.2.5. Periodicity in a Schedule

Separate from the concept of intervals of validity in absolute schedule time, there can be a need to model repetitive states in a concise way. One way to model a periodic change of state is to combine a set of absolute time intervals with a periodic parameterization (duration valid and duration invalid); this is the mdoel of [AIXM].

A model which does not include the notion of periodicy within a schedule could be used in situations where discrete intervals of validity are needed to handle periodic state changes which is neither storage nor processing efficient.

3.2.6. Continuity in a Schedule

A schedule which includes a sequence of time intervals needs to ensure that the interpretation of those intervals in the schedule timeline does not leave any "gaps" at the interval boundaries. For that reason, it is important that the model uses half-open intervals of time so that time-adjacent intervals leave no gap. In keeping with the terminology of [RFC3339], intervals are bounded by their "start" and "end" instants. It is RECOMMENDED that any time-varying model use schedules with intervals closed on their start time and open on their end time. This behavior lends to the interpretation, in the schedule timeline, that the scheduled state takes effect at an interval's start and continues until the subsequent state.

3.2.7. Time-Overlap and Priority

In an ideal situation a model would be guaranteed by design to contain only contiguous and non-overlapping schedules for each time-variant scope. In a realized model this kind of invaraint might not be enforcable or might lead to overly complex schedule structures. One way a model can handle this is to establish a concept of schedule priority, where some intervals of the schedule timeline contain overlapping schedules for the same properties and only the highest-priority schedule applies. When priorities are allowed by a model, it enables the concept of an "overlay" where a long-duration state can be temporarilly (in schedule time) superseded by a short-duration state.

3.2.8. Property Value Interpolation

When a schedule is applied to an entity in a way which is more granular (Section 3.2.1) than just indicating when that whole entity is valid or invalid, the model needs to consider how individual properties are to be treated between scheduled instants. Some of the possibile behaviors are:

Zero-order hold:
From the instant a scheduled value applies to a property until the subsequent-in-schedule-time value supersedes it. This is simple from a logical standpoint, but discontinuties in the value over schedule time could cause issues with the model itself. For some models, though, the constant values between change instants are actually beneficial by allowing the entire timeline to be compressed into a sequence of discrete state-change instants. This is the behavior implied in models such as [AIXM].
Linear interpolation:
At the instants of time defined in the schedule the property takes the exact values, but between those instants the property is interpolated linearly over time. This results in a state that is continuous over time, which is beneficial for some kinds of model but also means that there is no simple discrete sequence of states.
Higher-order or spline interpolation:
Higher order interpolations can result in properties that vary over schedule time in ways that are more or less beneficial to different types of models.

Regardless of the types of interpolation used, a model can choose to apply interpolation globally or per-property. Since different properties represent different physical or logical metrics of a network it is expected that different types of interpolation will be needed for different represented quantities.

3.2.9. Changes to Model State

Separate from how a time-variant model can contain a schedule timeline within the model state, a model design will need to consider how changes to the model state itself (over wall-clock time) are handled. This aspect is actually not specific to a time-variant model but is important to consider in this context.

Two extremes of this aspect are:

  • A model which can only be changed wholesale, superseded by an entire new model state. This is easy to keep consistent but has inefficiences of storage and transport if the model state is to be shared or exchanged between real entities.
  • A model which has an intrinsic notion of fine-grained superseding changes, possibly scoped to individual entities, individual schedules, or more complex groupings.

3.3. Topologies

The primary entities of a topological network model, as realized in [RFC8345] and similar predecessors, are nodes and unidirectional links, with a secondary entity representing the "termination point" for each side of a link at a node. Following the concepts described in Section 3.1 these are the entities to which an intrinsic schedule can be applied.

3.3.1. Nodes

When a schedule is applied to a node the granularity SHALL at least be at the individual node. In cases where the properties of a node have time-variable values the model SHALL define an interpolation method, either globally or per-property.

A node is just a named entity in Layer 3 [RFC8346] and Layer 2 [RFC8944] topologies. Schedules on a node SHALL be used to indicate the validity of the entire node or changing properties of that entity. When a schedule indicates that a node is not valid for a schedule time instant, that validity SHALL apply to all of its termination points and links as well. This logic allows a schedule to represent, for example, the expected power-on state of a node at a specific layer.

3.3.2. Termination Points

When a schedule is applied to a termination point the granularity SHALL at least be at the individual entity. In cases where the properties of a termination point have time-variable values the model SHALL define an interpolation method, either globally or per-property.

A termination point is associated with an IP address in Layer 3 [RFC8346] and a MAC address in Layer 2 [RFC8944] topologies. Schedules on a termination point SHALL be used to indicate the validity of the layer-2/3 interface represented by the entity or changing properties of that entity. When a schedule indicates that a termination point is not valid for a schedule time instant, that validity SHALL apply to all of its links as well. This logic allows a schedule to represent, for example, the expected power-on or administrative-enabled state of an attached network interface card (NIC) or virtual private network (VPN) endpoint.

3.3.4. Network Layering

When a schedule indicates that an entity is not valid for a schedule time instant, that validity SHALL NOT apply to any of its associated overlay or underlay network entities. The effects of scheduled administrative disabling or enabling of an entity at one layer do not imply a change in administrative enabled state at any other layer. Likewise, the assigning of an address property at one layer does not imply the presence or absence of an address assignment at that same time instant for any other layer.

3.4. Routing

Traditional network routing techniques typically use link bandwidth and delay for path calculation, and do not consider time-based factors. TVR should be capable of improving network performance and reliability in environments where entity livelyness and link availability is a time-based consideration, with various factors, including power availability, interface line of sight or expected demand.

However, even if some adjacency failures are predictable, others are not, including link failures and entity outages. Therefore, any new technique or routing protocol extension for TVR enviroments must be capable of handling planned and unexpected resource losses.

Time-Variant Routing (TVR) introduces a scenario of calculating a path, or sub-path within a network, taking into account the timing of message transmission or receipt as an integral part of the overall route computation.

Furthermore, Synchronization of network time across TVR-capable entities is critical in TVR networks.

Three scenarios are currently considered when computating TVR-enabled paths.

3.4.1. Centralized

The network entities will receive the time variable information and traffic forwarding rules directly from a logically centralized source, such as a Orchestrator. The time variable data may then be processed locally by the entuty entered into the scheduled routing table and specific forwarding rules applied.

3.4.2. Distributed

All network entities will participate in a routing scheme where time variable information is propagated through the network via capability and variability advertisements. This could be achieved using extensions to existing routing schemes and techniques so that link, adjacency, cost, and schedule may be considered when making forwarding decisions for per-hop packets or calculating traffic engineered end-to-end paths. It should be noted that schedule distribution and node computation latency may exist in some network environments.

3.4.3. Hybrid

In this scenario, mixed-entity TVR capability exists. Some entities will require a schedule provided by a centralized source, and others will be capable of advertising and learning scheduled information via a distributed mechanism.

This scenario presents time and schedule synchronization and source verification challenges and will require further study.

4. Time-Variant Use Case Requirements

Several TVR use cases have been identifed and discussed in [I-D.ietf-tvr-use-cases]. This section provides further detail on specific requirements to meet use case needs.

4.1. Operating Efficiency Use Case

Several operational efficiency requirements exist; these include:

  1. Distribution of Predicted Topology-change. The predicted topology-change information may include the valid time, invalid time, link costs at different times, and change periods.
  2. Topology Changes. The predicted topology-change information may change due to forecasted or unforecasted changes. The managing entity should be capable of providing a partial or full topology update as often as needed.
  3. The Minimum Route Recalculation Interval and Threshold. Although some cases may assume that the cost persists for a sufficient amount of time, considering that each route contains multiple links, the change frequency of the path may be much higher than the cost. In this case, the minimum recalculation interval or cost change threshold is needed to determine when a route recalculation is required. Of course, scheduled topology connection changes must be considered when path calculation is required.

7. Solution Considerations

This document does not mandate specific techniques for the requirements identified. However, it does propose that existing IETF mechanisms should be reused wherever possible to meet the TVR requirements.

The use of the YANG data modeling language is RECOMMENDED.

The use of the NETCONF protocol is RECOMMENDED.

Further discussion on the applicability and advantages of these technologies for TVR will be provided in future versions of this document.

8. Requirements Summary

8.1. Support the Identification and Advertisement of Entity Property Changes

In Time-Variant Routing, scheduling of the system are as expected. In practical situations, however, the properties of entities can be converted back and forth between Time-Variant and Non-Time-Variant Entities.

A entity MUST support the identification and advertisement of non-scheduled property changes.

Besides, If there are abnormal changes in the system, it is necessary to advertise them through the existing routing protocols in time to achieve the stability of Time-Variant Routing and avoid redundant advertisements. For example, a entity in the system is suddenly damaged due to external factors.

Changes in entity state outside of a schedule are communicated to other entities in a network through existing routing protocol mechanims, where they exist.

A manager SHOULD provide a advertisement methodology for responding to abnormal changes in the system.

8.2. Support Agent Entity Advertisement

Agent entities can help to improve the efficiency of the network. There are some entities in the network that do not have routing functions. When their properties change, they are unable to notify other entities in the network. Agent entities can help entities without routing functions to advertise information, thus improving the efficiency of the network. Therefore,

o MUST support agent entities to help non-routing entities implement information advertisement.

8.3. Support Identification and Classification of Entity Properties

The entity properties of the network may change as described in 3.1. If the system cannot timely identify and classify in a processing manner after the entity properties change, it will lead to suboptimal routing decisions. Therefore,

o MUST provide a discovery and resolving methodology for the identification and classification of entity properties.

8.4. Support System Schedule and Time Interval Changes

The system's schedule may change, requiring of to be reconfigured instead it being set once and not being able to be modified. Additionally, time-variant intervals in the system may also vary. Therefore,

o MUST support system schedule changes.

o MUST support time interval changes.

8.5. Support Appropriate Time Accuracy

The accuracy of the time cannot be too large or too small; otherwise, convergence may not be possible. Therefore,

o MUST support appropriate time accuracy.

9. IANA Considerations

This document has no IANA actions.

Contributors

The following authors contributed significantly to this document:


   Jing Wang
   China Mobile
   China
   Email: wangjingjc@chinamobile.com

   Peng Liu
   China Mobile
   China
   Email: liupengyjy@chinamobile.com

   Li Zhang
   Huawei
   China
   Email: zhangli344@huawei.com

   Zheng (Sandy) Zhang
   ZTE Corporation
   China
   Email: zhang.zheng@zte.com.cn

   Yuehua Wei
   ZTE Corporation
   China
   Email: wei.yuehua@zte.com.cn

References

Normative References

[I-D.ietf-tvr-use-cases]
Birrane, E. J., Kuhn, N., and Y. Qu, "TVR (Time-Variant Routing) Use Cases", Work in Progress, Internet-Draft, draft-ietf-tvr-use-cases-03, , <https://datatracker.ietf.org/doc/html/draft-ietf-tvr-use-cases-03>.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.

Informative References

[AIXM]
EUROCONTROL and Federal Aviation Administration, "AIXM 5 Temporality Model", , <https://aixm.aero/sites/aixm.aero/files/imce/AIXM51/aixm_temporality_1.0.pdf>.
[RFC3339]
Klyne, G. and C. Newman, "Date and Time on the Internet: Timestamps", RFC 3339, DOI 10.17487/RFC3339, , <https://www.rfc-editor.org/info/rfc3339>.
[RFC8345]
Clemm, A., Medved, J., Varga, R., Bahadur, N., Ananthakrishnan, H., and X. Liu, "A YANG Data Model for Network Topologies", RFC 8345, DOI 10.17487/RFC8345, , <https://www.rfc-editor.org/info/rfc8345>.
[RFC8346]
Clemm, A., Medved, J., Varga, R., Liu, X., Ananthakrishnan, H., and N. Bahadur, "A YANG Data Model for Layer 3 Topologies", RFC 8346, DOI 10.17487/RFC8346, , <https://www.rfc-editor.org/info/rfc8346>.
[RFC8944]
Dong, J., Wei, X., Wu, Q., Boucadair, M., and A. Liu, "A YANG Data Model for Layer 2 Network Topologies", RFC 8944, DOI 10.17487/RFC8944, , <https://www.rfc-editor.org/info/rfc8944>.

Authors' Addresses

D. King
Lancaster University
L. M. Contreras
Telefonica
B. Sipos
JHU/APL