General Questions
How is FABRIC different from GENI?
While FABRIC takes advantage of experience and approaches to building widely distributed testbeds collected from GENI, there are differences between FABRIC and GENI that drastically change and expand the types of experiments that can be performed:
FABRIC has a programmable core network infrastructure. FABRIC provides its own dedicated optical infrastructure or relies on dedicated L2 capacity wherever possible.
FABRIC provides access to a variety of programmable PCI devices Network cards, GPUs, FPGAs.
FABRIC supports highly accurate timestamping of events using GPS-based clocks.FABRIC interconnects a large number of existing scientific, computational and experimental facilities.
FABRIC experimenter network topologies can peer with production Internet (IPv4 or IPv6) on-demand.
FABRIC supports a broader range of data transfer speeds (10Gbs, 25Gbps, 100Gbps, 1.2Tbps) along with the ability to compute on data at line speeds within the network.
How does FABRIC fit in with other shared experimental infrastructures (NSF Clouds, PRP/NRP, PAWR testbeds)?
FABRIC is not meant to be an isolated testbed facility, rather it aims to interconnect many other experimental and production facilities to create a rich substrate for experimentation, which allows experimenters to pick and choose portions of the infrastructure for their experiment. We are interested in ideas for experiments that combine the capabilities of these facilities together, please reach out to us. FABRIC team works with organizations running other facilities in order to enable joint experiments through network connectivity, joint tooling, identity federation and other mechanisms that reduce the friction of creating cross-facility/cross-testbed experiments.
Does FABRIC support Expansion Sites or BYOE (Bring Your Own Equipment)?
Yes, FABRIC supports expansion sites (e.g. universities) that purchase their own FABRIC node (‘hank’) based on standard configurations, FABRIC team will also help facilitate connecting expansion sites to FABRIC topology either via Internet2 or with dedicated Layer2 or optical connectivity.
FABRIC nodes also support a Bring Your Own Equipment (BYOE) model of contributions. Contributions of hardware to FABRIC can take a number of forms:
PCI devices to be included in the available serversNetwork switching equipment added to individual sitesDiscrete servers added to individual sites
BYOE contributions are subject to a number of constraints:
Available rack space at individual sitesAvailable power (core sites are limited to only 4kW total power budget)Available PCI slots in serversAvailable ports on FABRIC node dataplane and management switches
Contributed hardware will be linked into the FABRIC management plane and individual resources become provisionable via FABRIC control software. Reach out to us if you are interested.
FABRIC nodes also support a Bring Your Own Equipment (BYOE) model of contributions. Contributions of hardware to FABRIC can take a number of forms:
BYOE contributions are subject to a number of constraints:
Contributed hardware will be linked into the FABRIC management plane and individual resources become provisionable via FABRIC control software. Reach out to us if you are interested.
Is there an interest in international partners participating – both from the hosting of internationally located nodes and international research teams?
Yes, we definitely are interested. Using separate funding from IRNC FAB project we have deployed FABRIC nodes to CERN, University of Amsterdam, University of Bristol and University of Tokyo. We are interested in collaborating with international partners to deploy facility ports that will allow them to interconnect their facilities to FABRIC. We share our software and hardware designs, so that experimental facilities like FABRIC can emerge in other countries and be federated with us to create a world-wide ‘testbed-of-testbeds’. We attend many international meetings where details of federation and connectivity are discussed so we can include them in our plans.
If you are interested in collaborating internationally with us, please contact us.
If you are interested in collaborating internationally with us, please contact us.
Will FABRIC always be experimental and no production?
FABRIC is a scientific instrument and a distributed laboratory for supporting research in cyber-infrastructure. This implies that its primary use is for experiments in a variety of areas related to internet architectures, cyber-security, distributed protocols and applications. Many of these experiments may need to be long-running and carry production-like traffic in order to truly understand the tradeoffs in the system that is being experimented on. However, by virtue of being experiments, they can’t be expected to provide production-grade reliability and robustness.
In order to support the widest possible variety of experiments spanning from blue-sky future Internet ideas to support for novel production science workflows, FABRIC provides on-demand connectivity with production networks and facilities, to allow experimenters mix and match production and experimental resources in combinations that make sense for their experiments.
In order to support the widest possible variety of experiments spanning from blue-sky future Internet ideas to support for novel production science workflows, FABRIC provides on-demand connectivity with production networks and facilities, to allow experimenters mix and match production and experimental resources in combinations that make sense for their experiments.
Using FABRIC
What types of resources does FABRIC provide and how are they allocated and accessed?
FABRIC allows experimenters to instantiate compute instances in the form of VMs with significant compute and storage capabilities as well as directly attached PCI devices: multi-port SmartNICs, GPUs and FPGAs. These compute instances are interconnected with on-demand high-bandwidth links up to 25-100Gbps in the Core and higher bit rates in the SuperCore portion of the topology. These compute instances can also have storage in the form of dedicated NVMe drives and slower, but larger persistent block storage. Several sites provide on-demand access to 100Gbps P4-capable switches, which can similarly be linked into experimenter topologies. Compute instances are accessible by experimenters via SSH, other more scalable experiment control tools may be contributed by the community later. FABRIC offers different network services: private and publicly-facing IPv4 and IPv6 networks matching FABRIC footprint, on-demand Layer 2 topologies and specialized network services. Public cloud peering at 100Gbps in two locations is offered through a partnership with Internet2.
How do experimenters interact with FABRIC?
A FABRIC Portal provides basic browser-based access to FABRIC resources. Programmatic access is provided with help of FABRIC client libraries that can be operated as a CLI or embedded into experimenter code. Initially Python bindings are provided which later may be extended to other languages. FABRIC provides a hosted Jupyter Hub environment for experimenters, which comes with Jupter notebooks automatically preloaded with FABRIC libraries and CLI tools. The portal and Jupyter Hub use federated identity through CI Logon and support any institutional identity provider that is part of InCommon R&S (Research and Scholarship) federation. This includes the majority of US educational institutions.
What measurement capabilities does FABRIC have?
The FABRIC Measurement Framework is designed to be adaptable/programmable, scalable, extensible, and shareable. It’s goal is to support an automated instrumentation of experiments, enabling experimenters to collect, store, and publish detailed measurement data from users and the system/experiment. Examples include CPU, disk and network utilization, packet error counts and other interface statistics, packet capture traces with precise timestamps from inside the experiment topologies.
The framework allows for fine-grained precise measurements leveraging a highly-accurate PTP timing signal from a GPS receiver located at the majority of FABRIC sites. This enables precise timestamping of packets using NIC cards (a.k.a., PacketGPS) with sub-millisecond accuracy.
FABRIC also allows for the collection of high-speed packet traces using RAM or high-speed NVMe drives at each site, which can be attached to individual experimenter compute instances. Larger data sets can be stored within experiment-attached block storage. The facility has between ½ and 1PB of file storage space to help ease moving measurement and other experiment-related data in- and out- of experiments in programmatic fashion. FABRIC collects logging and metrics from the underlying infrastructure to be made available to operators and experimenters.
The framework allows for fine-grained precise measurements leveraging a highly-accurate PTP timing signal from a GPS receiver located at the majority of FABRIC sites. This enables precise timestamping of packets using NIC cards (a.k.a., PacketGPS) with sub-millisecond accuracy.
FABRIC also allows for the collection of high-speed packet traces using RAM or high-speed NVMe drives at each site, which can be attached to individual experimenter compute instances. Larger data sets can be stored within experiment-attached block storage. The facility has between ½ and 1PB of file storage space to help ease moving measurement and other experiment-related data in- and out- of experiments in programmatic fashion. FABRIC collects logging and metrics from the underlying infrastructure to be made available to operators and experimenters.
Technical Questions
What is Project Lead?
Project Lead is a specially privileged user of FABRIC allowed to create new projects, designate Project Owner(s) and invite regular members into a project. Since this role comes with a lot of responsibilities, only tenure-track faculty or senior IT staff can request this role. This can be done from User Profile page on portal.
What is Facility Operator?
Facility Operator is a ‘superuser’ allowed to manipulate any project. This role is reserved for FABRIC staff.
What is a Project Owner?
A Project Owner can be assigned to a specific project by a Project Lead or another Project Owner. Their responsibility is to manage Project Members – add or remove them.
What is a Project Member?
This is a regular member of the project with no special privileges to manage the project. They can create slices within the project.
I lost the private SSH key from a bastion or sliver keypair, can you help?
No, for security reasons we do not store the private keys. It is best you regenerate the keypair – you can have up to 10 bastion and 10 sliver keypairs simultaneously.
What is the lifetime of a bastion keypair?
FABRIC only stores public keys. Bastion public keys are expired 6 months after their creation.
What is the lifetime of a sliver keypair?
FABRIC only stores public keys. Sliver public keys are expire 2 years after their creation.
Can I login to the bastion host?
No. Logging into bastion hosts is intentionally disabled as a security measure. You can only use them to ‘hop’ over into your VMs.
How many bastion hosts are available?
There are two geographically distributed bastion hosts: bastion-1.fabric-testbed.net and bastion-2.fabric-testbed.net