Service Request

A ServiceRequest defines a request to Spacetime to move data from a source node (or set of nodes) to a destination node (or set of nodes).

The FlowRequirements describe a set of time-dynamic requirements for the network flow. In the requirements, you can define a committed information rate (defined as bandwidth_bps_minimum) and an excess information rate (defined as bandwidth_bps_requested). The latency_maximum can also be set to constrain Spacetime to find routes within a given end-to-end propagation delay for this service request’s path. Each requirement has an associated time_interval, which can be bounded or unbounded. If unbounded, the request for connectivity will exist from now into the future, until an end time on this service request is defined.

To support delay tolerant network flows (DTN), setting the is_disruption_tolerant field causes this request to be solved across time intervals of disconnectedness. Spacetime will compute a schedule of intermittent downlinks, which may be continuous or disconnected, so that the onboard memory of any node does not overflow. For example, if a delay tolerant service request specifies a capacity request of 5 Mbps, Spacetime will ensure that 5Mbps generated at the source node can reach the destination node without oversaturating any links or exceeding the storage capacity of any node.

The priority field is a hard prioritization metric, so Spacetime will assign resources to service requests strictly according to this metric. Since it is a simple double, this value can represent any metric of relevance that describes the relative importance of service requests, such as estimated revenue, number of customers served, or priority tiers.