mirror of
https://github.com/googleapis/googleapis.git
synced 2026-08-17 13:06:47 +02:00
feat: A new field `peering_type` is added to message `google.cloud.edgenetwork.v1.InterconnectAttachment` PiperOrigin-RevId: 824727309
645 lines
21 KiB
Protocol Buffer
645 lines
21 KiB
Protocol Buffer
// Copyright 2025 Google LLC
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
syntax = "proto3";
|
|
|
|
package google.cloud.edgenetwork.v1;
|
|
|
|
import "google/api/field_behavior.proto";
|
|
import "google/api/resource.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
|
|
option csharp_namespace = "Google.Cloud.EdgeNetwork.V1";
|
|
option go_package = "cloud.google.com/go/edgenetwork/apiv1/edgenetworkpb;edgenetworkpb";
|
|
option java_multiple_files = true;
|
|
option java_outer_classname = "ResourcesProto";
|
|
option java_package = "com.google.cloud.edgenetwork.v1";
|
|
option php_namespace = "Google\\Cloud\\EdgeNetwork\\V1";
|
|
option ruby_package = "Google::Cloud::EdgeNetwork::V1";
|
|
|
|
// ResourceState describes the state the resource.
|
|
// A normal lifecycle of a new resource being created would be: PENDING ->
|
|
// PROVISIONING -> RUNNING. A normal lifecycle of an existing resource being
|
|
// deleted would be: RUNNING -> DELETING. Any failures during processing will
|
|
// result the resource to be in a SUSPENDED state.
|
|
enum ResourceState {
|
|
// Unspecified state.
|
|
STATE_UNKNOWN = 0;
|
|
|
|
// The resource is being prepared to be applied to the rack.
|
|
STATE_PENDING = 1;
|
|
|
|
// The resource has started being applied to the rack.
|
|
STATE_PROVISIONING = 2;
|
|
|
|
// The resource has been pushed to the rack.
|
|
STATE_RUNNING = 3;
|
|
|
|
// The resource failed to push to the rack.
|
|
STATE_SUSPENDED = 4;
|
|
|
|
// The resource is under deletion.
|
|
STATE_DELETING = 5;
|
|
}
|
|
|
|
// Defines the remote peering destination for the interface. It is required
|
|
// when peering separation is enabled.
|
|
enum RemotePeeringNetworkType {
|
|
// Unspecified.
|
|
REMOTE_PEERING_NETWORK_TYPE_UNSPECIFIED = 0;
|
|
|
|
// Customer's trusted internal network.
|
|
REMOTE_PEERING_NETWORK_TYPE_CUSTOMER_INTERNAL = 1;
|
|
|
|
// Customer's untrust network that has internet access.
|
|
REMOTE_PEERING_NETWORK_TYPE_CUSTOMER_INTERNET = 2;
|
|
}
|
|
|
|
// A Google Edge Cloud zone.
|
|
message Zone {
|
|
option (google.api.resource) = {
|
|
type: "edgenetwork.googleapis.com/Zone"
|
|
pattern: "projects/{project}/locations/{location}/zones/{zone}"
|
|
};
|
|
|
|
// Required. The resource name of the zone.
|
|
string name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// Output only. The time when the zone was created.
|
|
google.protobuf.Timestamp create_time = 2
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. The time when the zone was last updated.
|
|
google.protobuf.Timestamp update_time = 3
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Deprecated: not implemented.
|
|
// Labels as key value pairs.
|
|
map<string, string> labels = 4 [deprecated = true];
|
|
|
|
// Deprecated: not implemented.
|
|
// The deployment layout type.
|
|
string layout_name = 5 [deprecated = true];
|
|
}
|
|
|
|
// Message describing Network object
|
|
message Network {
|
|
option (google.api.resource) = {
|
|
type: "edgenetwork.googleapis.com/Network"
|
|
pattern: "projects/{project}/locations/{location}/zones/{zone}/networks/{network}"
|
|
};
|
|
|
|
// Required. The canonical resource name of the network.
|
|
string name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// Output only. The time when the network was created.
|
|
google.protobuf.Timestamp create_time = 2
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. The time when the network was last updated.
|
|
google.protobuf.Timestamp update_time = 3
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Labels associated with this resource.
|
|
map<string, string> labels = 4;
|
|
|
|
// Optional. A free-text description of the resource. Max length 1024
|
|
// characters.
|
|
string description = 5 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// IP (L3) MTU value of the network.
|
|
// Valid values are: 1500 and 9000.
|
|
// Default to 1500 if not set.
|
|
int32 mtu = 6;
|
|
}
|
|
|
|
// Message describing Subnet object
|
|
message Subnet {
|
|
option (google.api.resource) = {
|
|
type: "edgenetwork.googleapis.com/Subnet"
|
|
pattern: "projects/{project}/locations/{location}/zones/{zone}/subnets/{subnet}"
|
|
};
|
|
|
|
// Bonding type in the subnet.
|
|
enum BondingType {
|
|
// Unspecified
|
|
// Bonding type will be unspecified by default and if the user chooses to
|
|
// not specify a bonding type at time of creating the VLAN. This will be
|
|
// treated as mixed bonding where the VLAN will have both bonded and
|
|
// non-bonded connectivity to machines.
|
|
BONDING_TYPE_UNSPECIFIED = 0;
|
|
|
|
// Multi homed.
|
|
BONDED = 1;
|
|
|
|
// Single homed.
|
|
NON_BONDED = 2;
|
|
}
|
|
|
|
// Required. The canonical resource name of the subnet.
|
|
string name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// Output only. The time when the subnet was created.
|
|
google.protobuf.Timestamp create_time = 2
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. The time when the subnet was last updated.
|
|
google.protobuf.Timestamp update_time = 3
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Labels associated with this resource.
|
|
map<string, string> labels = 4;
|
|
|
|
// Optional. A free-text description of the resource. Max length 1024
|
|
// characters.
|
|
string description = 5 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Required. The network that this subnetwork belongs to.
|
|
string network = 6 [
|
|
(google.api.field_behavior) = REQUIRED,
|
|
(google.api.resource_reference) = {
|
|
type: "edgenetwork.googleapis.com/Network"
|
|
}
|
|
];
|
|
|
|
// The ranges of ipv4 addresses that are owned by this subnetwork.
|
|
repeated string ipv4_cidr = 7;
|
|
|
|
// The ranges of ipv6 addresses that are owned by this subnetwork.
|
|
repeated string ipv6_cidr = 8;
|
|
|
|
// Optional. VLAN id provided by user. If not specified we assign one
|
|
// automatically.
|
|
int32 vlan_id = 9 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Optional. A bonding type in the subnet creation specifies whether a VLAN
|
|
// being created will be present on Bonded or Non-Bonded or Both port types.
|
|
// In addition, this flag is to be used to set the specific network
|
|
// configuration which clusters can then use for their workloads based on the
|
|
// bonding choice.
|
|
BondingType bonding_type = 11 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Output only. Current stage of the resource to the device by config push.
|
|
ResourceState state = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
|
|
}
|
|
|
|
// Message describing Interconnect object
|
|
message Interconnect {
|
|
option (google.api.resource) = {
|
|
type: "edgenetwork.googleapis.com/Interconnect"
|
|
pattern: "projects/{project}/locations/{location}/zones/{zone}/interconnects/{interconnect}"
|
|
};
|
|
|
|
// Type of interconnect.
|
|
enum InterconnectType {
|
|
// Unspecified.
|
|
INTERCONNECT_TYPE_UNSPECIFIED = 0;
|
|
|
|
// Dedicated Interconnect.
|
|
DEDICATED = 1;
|
|
}
|
|
|
|
// Required. The canonical resource name of the interconnect.
|
|
string name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// Output only. The time when the subnet was created.
|
|
google.protobuf.Timestamp create_time = 2
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. The time when the subnet was last updated.
|
|
google.protobuf.Timestamp update_time = 3
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Labels associated with this resource.
|
|
map<string, string> labels = 4;
|
|
|
|
// Optional. A free-text description of the resource. Max length 1024
|
|
// characters.
|
|
string description = 5 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Optional. Type of interconnect, which takes only the value 'DEDICATED' for
|
|
// now.
|
|
InterconnectType interconnect_type = 6
|
|
[(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Output only. Unique identifier for the link.
|
|
string uuid = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. Cloud resource name of the switch device.
|
|
string device_cloud_resource_name = 8
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. Physical ports (e.g., TenGigE0/0/0/1) that form the
|
|
// interconnect.
|
|
repeated string physical_ports = 9
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Optional. The remote peering network type of the interconnect. It is
|
|
// required when peering separation is enabled.
|
|
RemotePeeringNetworkType remote_peering_network_type = 10
|
|
[(google.api.field_behavior) = OPTIONAL];
|
|
}
|
|
|
|
// Message describing InterconnectAttachment object
|
|
message InterconnectAttachment {
|
|
option (google.api.resource) = {
|
|
type: "edgenetwork.googleapis.com/InterconnectAttachment"
|
|
pattern: "projects/{project}/locations/{location}/zones/{zone}/interconnectAttachments/{interconnect_attachment}"
|
|
};
|
|
|
|
// Required. The canonical resource name of the interconnect attachment.
|
|
string name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// Output only. The time when the interconnect attachment was created.
|
|
google.protobuf.Timestamp create_time = 2
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. The time when the interconnect attachment was last updated.
|
|
google.protobuf.Timestamp update_time = 3
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Labels associated with this resource.
|
|
map<string, string> labels = 4;
|
|
|
|
// Optional. A free-text description of the resource. Max length 1024
|
|
// characters.
|
|
string description = 5 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Required. The canonical name of underlying Interconnect object that this
|
|
// attachment's traffic will traverse through. The name is in the form of
|
|
// `projects/{project}/locations/{location}/zones/{zone}/interconnects/{interconnect}`.
|
|
string interconnect = 6 [
|
|
(google.api.field_behavior) = REQUIRED,
|
|
(google.api.resource_reference) = {
|
|
type: "edgenetwork.googleapis.com/Interconnect"
|
|
}
|
|
];
|
|
|
|
// Optional. The canonical Network name in the form of
|
|
// `projects/{project}/locations/{location}/zones/{zone}/networks/{network}`.
|
|
string network = 11 [
|
|
(google.api.field_behavior) = OPTIONAL,
|
|
(google.api.resource_reference) = {
|
|
type: "edgenetwork.googleapis.com/Network"
|
|
}
|
|
];
|
|
|
|
// Required. VLAN id provided by user. Must be site-wise unique.
|
|
int32 vlan_id = 8 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// IP (L3) MTU value of the virtual edge cloud.
|
|
// Valid values are: 1500 and 9000.
|
|
// Default to 1500 if not set.
|
|
int32 mtu = 9;
|
|
|
|
// Output only. Current stage of the resource to the device by config push.
|
|
ResourceState state = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Optional. The remote peering network type of the underlying interconnect.
|
|
// It is required when peering separation is enabled.
|
|
RemotePeeringNetworkType peering_type = 12
|
|
[(google.api.field_behavior) = OPTIONAL];
|
|
}
|
|
|
|
// Message describing Router object
|
|
message Router {
|
|
option (google.api.resource) = {
|
|
type: "edgenetwork.googleapis.com/Router"
|
|
pattern: "projects/{project}/locations/{location}/zones/{zone}/routers/{router}"
|
|
};
|
|
|
|
// Router Interface defines the GDCE zone side layer-3 information for
|
|
// building the BGP session.
|
|
message Interface {
|
|
// Name of this interface entry. Unique within the Zones resource.
|
|
string name = 1;
|
|
|
|
// IP address and range of the interface.
|
|
string ipv4_cidr = 3;
|
|
|
|
// IPv6 address and range of the interface.
|
|
string ipv6_cidr = 6;
|
|
|
|
// The canonical name of the linked Interconnect attachment.
|
|
string linked_interconnect_attachment = 2;
|
|
|
|
// The canonical name of the subnetwork resource that this interface
|
|
// belongs to.
|
|
string subnetwork = 4;
|
|
|
|
// Create loopback interface in the router when specified.
|
|
// The number of IP addresses must match the number of TOR devices.
|
|
repeated string loopback_ip_addresses = 5;
|
|
}
|
|
|
|
// BGPPeer defines the peer side layer-3 information for building the BGP
|
|
// session.
|
|
message BgpPeer {
|
|
// Name of this BGP peer. Unique within the Zones resource.
|
|
string name = 1;
|
|
|
|
// Name of the RouterInterface the BGP peer is associated with.
|
|
string interface = 2;
|
|
|
|
// IP range of the interface within Google.
|
|
string interface_ipv4_cidr = 3;
|
|
|
|
// IPv6 range of the interface within Google.
|
|
string interface_ipv6_cidr = 7;
|
|
|
|
// IP range of the BGP interface outside Google.
|
|
string peer_ipv4_cidr = 4;
|
|
|
|
// IPv6 range of the BGP interface outside Google.
|
|
string peer_ipv6_cidr = 6;
|
|
|
|
// Peer BGP Autonomous System Number (ASN). Each BGP interface may use
|
|
// a different value.
|
|
uint32 peer_asn = 5;
|
|
|
|
// Output only. Local BGP Autonomous System Number (ASN).
|
|
// This field is ST_NOT_REQUIRED because it stores private ASNs, which are
|
|
// meaningless outside the zone in which they are being used.
|
|
uint32 local_asn = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
|
|
}
|
|
|
|
// BGP information specific to this router.
|
|
message Bgp {
|
|
// Locally assigned BGP ASN.
|
|
uint32 asn = 1;
|
|
|
|
// The interval in seconds between BGP keepalive messages that are
|
|
// sent to the peer. Default is 20 with value between 20 and 60.
|
|
uint32 keepalive_interval_in_seconds = 2;
|
|
}
|
|
|
|
// Required. The canonical resource name of the router.
|
|
string name = 1 [(google.api.field_behavior) = REQUIRED];
|
|
|
|
// Output only. The time when the router was created.
|
|
google.protobuf.Timestamp create_time = 2
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Output only. The time when the router was last updated.
|
|
google.protobuf.Timestamp update_time = 3
|
|
[(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Labels associated with this resource.
|
|
map<string, string> labels = 4;
|
|
|
|
// Optional. A free-text description of the resource. Max length 1024
|
|
// characters.
|
|
string description = 5 [(google.api.field_behavior) = OPTIONAL];
|
|
|
|
// Required. The canonical name of the network to which this router belongs.
|
|
// The name is in the form of
|
|
// `projects/{project}/locations/{location}/zones/{zone}/networks/{network}`.
|
|
string network = 6 [
|
|
(google.api.field_behavior) = REQUIRED,
|
|
(google.api.resource_reference) = {
|
|
type: "edgenetwork.googleapis.com/Network"
|
|
}
|
|
];
|
|
|
|
// Router interfaces.
|
|
repeated Interface interface = 7;
|
|
|
|
// BGP peers.
|
|
repeated BgpPeer bgp_peer = 8;
|
|
|
|
// BGP information specific to this router.
|
|
Bgp bgp = 9;
|
|
|
|
// Output only. Current stage of the resource to the device by config push.
|
|
ResourceState state = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
|
|
|
|
// Optional. A list of CIDRs in IP/Length format to advertise northbound as
|
|
// static routes from this router.
|
|
repeated string route_advertisements = 11
|
|
[(google.api.field_behavior) = OPTIONAL];
|
|
}
|
|
|
|
// LinkLayerAddress contains an IP address and corresponding link-layer address.
|
|
message LinkLayerAddress {
|
|
// The MAC address of this neighbor.
|
|
string mac_address = 1;
|
|
|
|
// The IP address of this neighbor.
|
|
string ip_address = 2;
|
|
}
|
|
|
|
// SubnetStatus contains detailed and current technical information about this
|
|
// subnet resource.
|
|
message SubnetStatus {
|
|
// The name of CCFE subnet resource.
|
|
string name = 1;
|
|
|
|
// BVI MAC address.
|
|
string mac_address = 2;
|
|
|
|
// A list of LinkLayerAddress, describing the ip address and corresponding
|
|
// link-layer address of the neighbors for this subnet.
|
|
repeated LinkLayerAddress link_layer_addresses = 3;
|
|
}
|
|
|
|
// Diagnostics information about interconnect, contains detailed and current
|
|
// technical information about Google's side of the connection.
|
|
message InterconnectDiagnostics {
|
|
// Describing the status for each link on the Interconnect.
|
|
message LinkStatus {
|
|
// The unique ID for this link assigned during turn up by Google.
|
|
string circuit_id = 1;
|
|
|
|
// Describing the state of a LACP link.
|
|
LinkLACPStatus lacp_status = 2;
|
|
|
|
// A list of LinkLLDPStatus objects, used to describe LLDP status of each
|
|
// peer for each link on the Interconnect.
|
|
repeated LinkLLDPStatus lldp_statuses = 3;
|
|
|
|
// Packet counts specific statistics for this link.
|
|
PacketCounts packet_counts = 4;
|
|
}
|
|
|
|
// Containing a collection of interface-related statistics objects.
|
|
message PacketCounts {
|
|
// The number of packets that are delivered.
|
|
int64 inbound_unicast = 1;
|
|
|
|
// The number of inbound packets that contained errors.
|
|
int64 inbound_errors = 2;
|
|
|
|
// The number of inbound packets that were chosen to be discarded even
|
|
// though no errors had been detected to prevent their being deliverable.
|
|
int64 inbound_discards = 3;
|
|
|
|
// The total number of packets that are requested be transmitted.
|
|
int64 outbound_unicast = 4;
|
|
|
|
// The number of outbound packets that could not be transmitted because of
|
|
// errors.
|
|
int64 outbound_errors = 5;
|
|
|
|
// The number of outbound packets that were chosen to be discarded even
|
|
// though no errors had been detected to prevent their being transmitted.
|
|
int64 outbound_discards = 6;
|
|
}
|
|
|
|
// Describing the status of a LACP link.
|
|
message LinkLACPStatus {
|
|
// State enum for LACP link.
|
|
enum State {
|
|
// The default state indicating state is in unknown state.
|
|
UNKNOWN = 0;
|
|
|
|
// The link is configured and active within the bundle.
|
|
ACTIVE = 1;
|
|
|
|
// The link is not configured within the bundle, this means the rest of
|
|
// the object should be empty.
|
|
DETACHED = 2;
|
|
}
|
|
|
|
// The state of a LACP link.
|
|
State state = 1;
|
|
|
|
// System ID of the port on Google's side of the LACP exchange.
|
|
string google_system_id = 2;
|
|
|
|
// System ID of the port on the neighbor's side of the LACP exchange.
|
|
string neighbor_system_id = 3;
|
|
|
|
// A true value indicates that the participant will allow the link to be
|
|
// used as part of the aggregate.
|
|
// A false value indicates the link should be used as an individual link.
|
|
bool aggregatable = 4;
|
|
|
|
// If true, the participant is collecting incoming frames on the link,
|
|
// otherwise false
|
|
bool collecting = 5;
|
|
|
|
// When true, the participant is distributing outgoing frames; when false,
|
|
// distribution is disabled
|
|
bool distributing = 6;
|
|
}
|
|
|
|
// Describing a LLDP link.
|
|
message LinkLLDPStatus {
|
|
// The peer system's administratively assigned name.
|
|
string peer_system_name = 1;
|
|
|
|
// The textual description of the network entity of LLDP peer.
|
|
string peer_system_description = 2;
|
|
|
|
// The peer chassis component of the endpoint identifier associated with the
|
|
// transmitting LLDP agent.
|
|
string peer_chassis_id = 3;
|
|
|
|
// The format and source of the peer chassis identifier string.
|
|
string peer_chassis_id_type = 4;
|
|
|
|
// The port component of the endpoint identifier associated with the
|
|
// transmitting LLDP agent. If the specified port is an IEEE 802.3 Repeater
|
|
// port, then this TLV is optional.
|
|
string peer_port_id = 5;
|
|
|
|
// The format and source of the peer port identifier string.
|
|
string peer_port_id_type = 6;
|
|
}
|
|
|
|
// The MAC address of the Interconnect's bundle interface.
|
|
string mac_address = 1;
|
|
|
|
// A list of LinkLayerAddress, describing the ip address and corresponding
|
|
// link-layer address of the neighbors for this interconnect.
|
|
repeated LinkLayerAddress link_layer_addresses = 2;
|
|
|
|
// A list of LinkStatus objects, used to describe the status for each link on
|
|
// the Interconnect.
|
|
repeated LinkStatus links = 3;
|
|
}
|
|
|
|
// Describing the current status of a router.
|
|
message RouterStatus {
|
|
// Status of a BGP peer.
|
|
message BgpPeerStatus {
|
|
// Status of the BGP peer: {UP, DOWN}
|
|
enum BgpStatus {
|
|
// The default status indicating BGP session is in unknown state.
|
|
UNKNOWN = 0;
|
|
|
|
// The UP status indicating BGP session is established.
|
|
UP = 1;
|
|
|
|
// The DOWN state indicating BGP session is not established yet.
|
|
DOWN = 2;
|
|
}
|
|
|
|
// Name of this BGP peer. Unique within the Routers resource.
|
|
string name = 1;
|
|
|
|
// IP address of the local BGP interface.
|
|
string ip_address = 2;
|
|
|
|
// IP address of the remote BGP interface.
|
|
string peer_ip_address = 3;
|
|
|
|
// The current status of BGP.
|
|
BgpStatus status = 4;
|
|
|
|
// BGP state as specified in RFC1771.
|
|
string state = 5;
|
|
|
|
// Time this session has been up.
|
|
// Format:
|
|
// 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds
|
|
string uptime = 6;
|
|
|
|
// Time this session has been up, in seconds.
|
|
int64 uptime_seconds = 7;
|
|
|
|
// A collection of counts for prefixes.
|
|
PrefixCounter prefix_counter = 8;
|
|
}
|
|
|
|
// PrefixCounter contains a collection of prefixes related counts.
|
|
message PrefixCounter {
|
|
// Number of prefixes advertised.
|
|
int64 advertised = 1;
|
|
|
|
// Number of prefixes denied.
|
|
int64 denied = 2;
|
|
|
|
// Number of prefixes received.
|
|
int64 received = 3;
|
|
|
|
// Number of prefixes sent.
|
|
int64 sent = 4;
|
|
|
|
// Number of prefixes suppressed.
|
|
int64 suppressed = 5;
|
|
|
|
// Number of prefixes withdrawn.
|
|
int64 withdrawn = 6;
|
|
}
|
|
|
|
// The canonical name of the network to which this router belongs.
|
|
string network = 1 [(google.api.resource_reference) = {
|
|
type: "edgenetwork.googleapis.com/Network"
|
|
}];
|
|
|
|
// A list of BgpPeerStatus objects, describing all BGP peers related to this
|
|
// router.
|
|
repeated BgpPeerStatus bgp_peer_status = 2;
|
|
}
|