A system comprising: a cable patch panel comprising a software-configurable network interface device having a first side, a second side different than the first side, a switch, and a configuration interface; the first side comprising a first plurality of network interface ports (302, 304) that, when the cable patch panel is situated in at least one panel of a cage enclosure demarcating a customer area and provider area within a communication facility, are accessible only to a communication facility provider for the communication facility; the second side comprising a second plurality of network interface ports (308, 310) that, when the cable patch panel is situated in the at least one panel of the cage enclosure demarcating the customer area and provider area, are accessible only to a customer of the communication facility provider; the configuration interface configured to, in response to receiving configuration data defining a connection between at least one port of the first plurality of network interface ports and at least one port of the second plurality of network interface ports, configure the switch to create the connection between the at least one port of the first plurality of network interface ports and the at least one port of the second plurality of network interface ports; and a programmable network platform configured to receive, via an interface that receives service requests for configuration of interconnection services within network infrastructure of one or more network data centers that are controlled by the programmable network platform and administered by the communication facility provider, a service request to configure an interconnection service within the network infrastructure of the one or more network data centers, wherein the network infrastructure within the one or more network data centers connect through one or more switching fabrics of the one or more network data centers, wherein the programmable network platform is configured to generate, based on the service request, the configuration data defining the connection, and wherein the programmable network platform is configured to send the configuration data to the cable patch panel to configure the cable patch panel with the connection. a cable patch panel comprising a software-configurable network interface device having a first side, a second side different than the first side, a switch, and a configuration interface; the first side comprising a first plurality of network interface ports (302, 304) that, when the cable patch panel is situated in at least one panel of a cage enclosure demarcating a customer area and provider area within a communication facility, are accessible only to a communication facility provider for the communication facility; the second side comprising a second plurality of network interface ports (308, 310) that, when the cable patch panel is situated in the at least one panel of the cage enclosure demarcating the customer area and provider area, are accessible only to a customer of the communication facility provider; the configuration interface configured to, in response to receiving configuration data defining a connection between at least one port of the first plurality of network interface ports and at least one port of the second plurality of network interface ports, configure the switch to create the connection between the at least one port of the first plurality of network interface ports and the at least one port of the second plurality of network interface ports; and a programmable network platform configured to receive, via an interface that receives service requests for configuration of interconnection services within network infrastructure of one or more network data centers that are controlled by the programmable network platform and administered by the communication facility provider, a service request to configure an interconnection service within the network infrastructure of the one or more network data centers, wherein the network infrastructure within the one or more network data centers connect through one or more switching fabrics of the one or more network data centers, wherein the programmable network platform is configured to generate, based on the service request, the configuration data defining the connection, and wherein the programmable network platform is configured to send the configuration data to the cable patch panel to configure the cable patch panel with the connection.