UCR Home ITS HPCC Campus status Get help
Research ComputingUniversity of California, Riverside
Home / Compute / FABRIC testbed
National | Networking and distributed-systems testbed

FABRIC testbed

FABRIC is an NSF-funded national testbed where researchers and classes build their own networks of virtual machines, GPUs, FPGAs and programmable network hardware across sites in the US and abroad.

External NetworkingTestbedGPUFPGAJupyter Data: P1 only (no protected data)

Is it right for you?

A good fit

  • Networking research (new protocols, congestion control, SDN, P4 programmable switches, in-band telemetry)
  • Distributed-systems, edge and cybersecurity experiments that need machines in several places linked by real wide-area paths
  • Experiments that need direct access to hardware (SmartNICs, FPGAs, GPUs, NVMe) inside a VM you control
  • Classes and workshops that teach networking or systems with hands-on topologies
  • Researchers comfortable with Python and Jupyter notebooks

Not a fit

  • General batch computing or long simulations (use the HPCC, or NSF ACCESS for larger runs)
  • Many small independent jobs (use the OSG / OSPool)
  • Always-on servers, web apps or databases (consider Jetstream2)
  • Any protected data (P2 to P4)
  • Production services; slices are experiments with a finite lifetime
Not sure? Describe your work in a short consultation request and the team will suggest options. Suggestions are guidance; the service terms decide what is provided.

What it is

FABRIC is a national research instrument for networking, distributed systems, cybersecurity and related computer science. Instead of submitting jobs to a cluster, you build a slice: a set of virtual machines placed at the FABRIC sites you choose, with the devices you need attached directly to them (GPUs, FPGAs, SmartNICs, NVMe drives), connected by the network services you choose. You then run your experiment on that topology, measure it and tear it down.

FABRIC sites are at universities, national labs and network exchange points across the US, with partner sites in Europe and Asia. Slices can also connect to other facilities, including the National Research Platform, cloud providers and campus networks.

How you use it

FABRIC offers three ways in:

  • JupyterHub. FABRIC runs a JupyterHub where you sign in with your UCR login and get a private notebook environment with FABRIC's Python library (FABlib) and a folder of example notebooks. FABRIC recommends starting here.
  • The portal. Manage your projects and SSH keys, see which resources are available, and build simple slices with a graphical slice builder.
  • The API from your own computer. FABlib installs from PyPI, so experiments can run from a laptop or a script once you are comfortable.

Projects, roles and permissions

Everything on FABRIC is done on behalf of a project, and the project's permissions decide what its members can use.

  • Project Lead. A faculty member or senior researcher who has been approved by FABRIC staff to lead projects. The lead creates the project and is responsible for the people in it.
  • Project Owner and Member. Owners manage membership; members (students, postdocs, collaborators) use the testbed under the project's permissions.
  • Permissions. New projects start with modest limits. Larger VMs, GPUs, FPGAs, P4 switches and some network features are unlocked by permission tags that FABRIC staff add at an owner's request, with a human review.
  • Renewal. Projects have an expiration date and are renewed by request through the FABRIC help portal.

A signed-up FABRIC account on its own cannot create slices: you need to be in an active project first.

Limits and guidelines

  • Data level. P1 only. No protected data.
  • Slices are temporary. Each slice has a lifetime and can usually be extended before it expires. Keep your code and results somewhere else.
  • Shared, reservable hardware. Availability changes with demand. FABRIC's portal shows what is available at each site and when, so you can plan before you request.
  • Acceptable use. Using FABRIC means accepting the FABRIC acceptable use policy. Publications that use FABRIC should cite FABRIC.

How to get started

  1. Sign up at the FABRIC portal with your UCR login.
  2. Join a project. Students and postdocs ask their PI or instructor to add them. Faculty and senior researchers can request to become a Project Lead and create a project for their group or class.
  3. Open JupyterHub, run the "Configure Environment" notebook (it creates your SSH keys), then "Hello, FABRIC" to create your first slice. In our test a one-VM slice was ready in under 10 minutes.

Our getting-started guide walks through each step with the UCR specifics. Research Computing can help you decide whether FABRIC fits your work and get your group set up; contact us.

  • Chameleon testbed: reserve whole bare-metal servers for systems experiments; FABRIC and Chameleon can be used together.
  • NRP Nautilus: Kubernetes, GPUs and JupyterHub on the National Research Platform, which FABRIC can connect to.
  • NSF ACCESS and Jetstream2: national computing allocations and cloud VMs.
  • OSG / OSPool: distributed high-throughput computing.
Owner: FABRIC (the testbed); Research Computing (UCR guidance) Reviewed: 5 Nov 2026 Governed by: FABRIC acceptable use policy