forwarding

package
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ActionType_name = map[int32]string{
		0:  "ACTION_TYPE_UNSPECIFIED",
		1:  "ACTION_TYPE_DROP",
		2:  "ACTION_TYPE_TRANSMIT",
		3:  "ACTION_TYPE_LOOKUP",
		4:  "ACTION_TYPE_RATE",
		5:  "ACTION_TYPE_ENCAP",
		6:  "ACTION_TYPE_DECAP",
		8:  "ACTION_TYPE_UPDATE",
		9:  "ACTION_TYPE_TEST",
		10: "ACTION_TYPE_CONTINUE",
		11: "ACTION_TYPE_OUTPUT",
		12: "ACTION_TYPE_MIRROR",
		13: "ACTION_TYPE_EVALUATE",
		14: "ACTION_TYPE_BRIDGE_LEARN",
		15: "ACTION_TYPE_FLOW_COUNTER",
		16: "ACTION_TYPE_REPARSE",
		17: "ACTION_TYPE_SELECT_ACTION_LIST",
		18: "ACTION_TYPE_DEBUG",
		19: "ACTION_TYPE_SWAP_OUTPUT_TAP_EXTERNAL",
	}
	ActionType_value = map[string]int32{
		"ACTION_TYPE_UNSPECIFIED":              0,
		"ACTION_TYPE_DROP":                     1,
		"ACTION_TYPE_TRANSMIT":                 2,
		"ACTION_TYPE_LOOKUP":                   3,
		"ACTION_TYPE_RATE":                     4,
		"ACTION_TYPE_ENCAP":                    5,
		"ACTION_TYPE_DECAP":                    6,
		"ACTION_TYPE_UPDATE":                   8,
		"ACTION_TYPE_TEST":                     9,
		"ACTION_TYPE_CONTINUE":                 10,
		"ACTION_TYPE_OUTPUT":                   11,
		"ACTION_TYPE_MIRROR":                   12,
		"ACTION_TYPE_EVALUATE":                 13,
		"ACTION_TYPE_BRIDGE_LEARN":             14,
		"ACTION_TYPE_FLOW_COUNTER":             15,
		"ACTION_TYPE_REPARSE":                  16,
		"ACTION_TYPE_SELECT_ACTION_LIST":       17,
		"ACTION_TYPE_DEBUG":                    18,
		"ACTION_TYPE_SWAP_OUTPUT_TAP_EXTERNAL": 19,
	}
)

Enum value maps for ActionType.

View Source
var (
	UpdateType_name = map[int32]string{
		0: "UPDATE_TYPE_UNSPECIFIED",
		1: "UPDATE_TYPE_SET",
		2: "UPDATE_TYPE_INC",
		3: "UPDATE_TYPE_DEC",
		4: "UPDATE_TYPE_COPY",
		5: "UPDATE_TYPE_BIT_WRITE",
		6: "UPDATE_TYPE_BIT_AND",
		7: "UPDATE_TYPE_BIT_OR",
	}
	UpdateType_value = map[string]int32{
		"UPDATE_TYPE_UNSPECIFIED": 0,
		"UPDATE_TYPE_SET":         1,
		"UPDATE_TYPE_INC":         2,
		"UPDATE_TYPE_DEC":         3,
		"UPDATE_TYPE_COPY":        4,
		"UPDATE_TYPE_BIT_WRITE":   5,
		"UPDATE_TYPE_BIT_AND":     6,
		"UPDATE_TYPE_BIT_OR":      7,
	}
)

Enum value maps for UpdateType.

View Source
var (
	SelectActionListActionDesc_SelectAlgorithm_name = map[int32]string{
		0: "SELECT_ALGORITHM_UNSPECIFIED",
		2: "SELECT_ALGORITHM_CRC16",
		3: "SELECT_ALGORITHM_CRC32",
		5: "SELECT_ALGORITHM_RANDOM",
	}
	SelectActionListActionDesc_SelectAlgorithm_value = map[string]int32{
		"SELECT_ALGORITHM_UNSPECIFIED": 0,
		"SELECT_ALGORITHM_CRC16":       2,
		"SELECT_ALGORITHM_CRC32":       3,
		"SELECT_ALGORITHM_RANDOM":      5,
	}
)

Enum value maps for SelectActionListActionDesc_SelectAlgorithm.

View Source
var (
	PortAction_name = map[int32]string{
		0: "PORT_ACTION_UNSPECIFIED",
		1: "PORT_ACTION_INPUT",
		2: "PORT_ACTION_OUTPUT",
		3: "PORT_ACTION_WRITE",
	}
	PortAction_value = map[string]int32{
		"PORT_ACTION_UNSPECIFIED": 0,
		"PORT_ACTION_INPUT":       1,
		"PORT_ACTION_OUTPUT":      2,
		"PORT_ACTION_WRITE":       3,
	}
)

Enum value maps for PortAction.

View Source
var (
	PacketHeaderGroup_name = map[int32]string{
		0:  "PACKET_HEADER_GROUP_UNSPECIFIED",
		1:  "PACKET_HEADER_GROUP_NONE",
		2:  "PACKET_HEADER_GROUP_PACKET",
		3:  "PACKET_HEADER_GROUP_L2",
		4:  "PACKET_HEADER_GROUP_L3",
		5:  "PACKET_HEADER_GROUP_L4",
		6:  "PACKET_HEADER_GROUP_PAYLOAD",
		20: "PACKET_HEADER_GROUP_COUNT",
	}
	PacketHeaderGroup_value = map[string]int32{
		"PACKET_HEADER_GROUP_UNSPECIFIED": 0,
		"PACKET_HEADER_GROUP_NONE":        1,
		"PACKET_HEADER_GROUP_PACKET":      2,
		"PACKET_HEADER_GROUP_L2":          3,
		"PACKET_HEADER_GROUP_L3":          4,
		"PACKET_HEADER_GROUP_L4":          5,
		"PACKET_HEADER_GROUP_PAYLOAD":     6,
		"PACKET_HEADER_GROUP_COUNT":       20,
	}
)

Enum value maps for PacketHeaderGroup.

View Source
var (
	PacketHeaderId_name = map[int32]string{
		0:    "PACKET_HEADER_ID_UNSPECIFIED",
		1:    "PACKET_HEADER_ID_NONE",
		2:    "PACKET_HEADER_ID_METADATA",
		3:    "PACKET_HEADER_ID_ETHERNET",
		4:    "PACKET_HEADER_ID_ETHERNET_VLAN",
		5:    "PACKET_HEADER_ID_ETHERNET_1Q",
		6:    "PACKET_HEADER_ID_IP4",
		7:    "PACKET_HEADER_ID_IP6",
		8:    "PACKET_HEADER_ID_GRE",
		9:    "PACKET_HEADER_ID_TCP",
		10:   "PACKET_HEADER_ID_UDP",
		11:   "PACKET_HEADER_ID_ARP",
		12:   "PACKET_HEADER_ID_ICMP4",
		13:   "PACKET_HEADER_ID_OPAQUE",
		14:   "PACKET_HEADER_ID_ICMP6",
		15:   "PACKET_HEADER_ID_TUNNEL_6TO4_AUTO",
		16:   "PACKET_HEADER_ID_TUNNEL_6TO4_SECURE",
		19:   "PACKET_HEADER_ID_IP",
		1000: "PACKET_HEADER_ID_COUNT",
	}
	PacketHeaderId_value = map[string]int32{
		"PACKET_HEADER_ID_UNSPECIFIED":        0,
		"PACKET_HEADER_ID_NONE":               1,
		"PACKET_HEADER_ID_METADATA":           2,
		"PACKET_HEADER_ID_ETHERNET":           3,
		"PACKET_HEADER_ID_ETHERNET_VLAN":      4,
		"PACKET_HEADER_ID_ETHERNET_1Q":        5,
		"PACKET_HEADER_ID_IP4":                6,
		"PACKET_HEADER_ID_IP6":                7,
		"PACKET_HEADER_ID_GRE":                8,
		"PACKET_HEADER_ID_TCP":                9,
		"PACKET_HEADER_ID_UDP":                10,
		"PACKET_HEADER_ID_ARP":                11,
		"PACKET_HEADER_ID_ICMP4":              12,
		"PACKET_HEADER_ID_OPAQUE":             13,
		"PACKET_HEADER_ID_ICMP6":              14,
		"PACKET_HEADER_ID_TUNNEL_6TO4_AUTO":   15,
		"PACKET_HEADER_ID_TUNNEL_6TO4_SECURE": 16,
		"PACKET_HEADER_ID_IP":                 19,
		"PACKET_HEADER_ID_COUNT":              1000,
	}
)

Enum value maps for PacketHeaderId.

View Source
var (
	PacketFieldNum_name = map[int32]string{
		0:    "PACKET_FIELD_NUM_UNSPECIFIED",
		1:    "PACKET_FIELD_NUM_NONE",
		2:    "PACKET_FIELD_NUM_ETHER_MAC_SRC",
		3:    "PACKET_FIELD_NUM_ETHER_MAC_DST",
		4:    "PACKET_FIELD_NUM_ETHER_TYPE",
		5:    "PACKET_FIELD_NUM_VLAN_TAG",
		6:    "PACKET_FIELD_NUM_VLAN_PRIORITY",
		7:    "PACKET_FIELD_NUM_IP_VERSION",
		8:    "PACKET_FIELD_NUM_IP_ADDR_SRC",
		9:    "PACKET_FIELD_NUM_IP_ADDR_DST",
		10:   "PACKET_FIELD_NUM_IP_HOP",
		11:   "PACKET_FIELD_NUM_IP_PROTO",
		12:   "PACKET_FIELD_NUM_IP_QOS",
		13:   "PACKET_FIELD_NUM_IP6_FLOW",
		14:   "PACKET_FIELD_NUM_PACKET_PORT_INPUT",
		15:   "PACKET_FIELD_NUM_PACKET_PORT_OUTPUT",
		16:   "PACKET_FIELD_NUM_PACKET_LENGTH",
		17:   "PACKET_FIELD_NUM_ICMP_TYPE",
		18:   "PACKET_FIELD_NUM_ICMP_CODE",
		19:   "PACKET_FIELD_NUM_L4_PORT_SRC",
		20:   "PACKET_FIELD_NUM_L4_PORT_DST",
		21:   "PACKET_FIELD_NUM_TCP_FLAGS",
		22:   "PACKET_FIELD_NUM_ARP_TPA",
		23:   "PACKET_FIELD_NUM_GRE_KEY",
		24:   "PACKET_FIELD_NUM_GRE_SEQUENCE",
		25:   "PACKET_FIELD_NUM_PACKET_VRF",
		26:   "PACKET_FIELD_NUM_ICMP6_ND_TARGET",
		27:   "PACKET_FIELD_NUM_ICMP6_ND_SLL",
		28:   "PACKET_FIELD_NUM_ICMP6_ND_TLL",
		34:   "PACKET_FIELD_NUM_PACKET_ATTRIBUTE_32",
		46:   "PACKET_FIELD_NUM_PACKET_ATTRIBUTE_16",
		49:   "PACKET_FIELD_NUM_PACKET_ATTRIBUTE_8",
		50:   "PACKET_FIELD_NUM_PACKET_ATTRIBUTE_24",
		52:   "PACKET_FIELD_NUM_ARP_TMAC",
		53:   "PACKET_FIELD_NUM_ARP_SMAC",
		54:   "PACKET_FIELD_NUM_ARP_SPA",
		56:   "PACKET_FIELD_NUM_NEXT_HOP_IP",
		1000: "PACKET_FIELD_NUM_COUNT",
	}
	PacketFieldNum_value = map[string]int32{
		"PACKET_FIELD_NUM_UNSPECIFIED":         0,
		"PACKET_FIELD_NUM_NONE":                1,
		"PACKET_FIELD_NUM_ETHER_MAC_SRC":       2,
		"PACKET_FIELD_NUM_ETHER_MAC_DST":       3,
		"PACKET_FIELD_NUM_ETHER_TYPE":          4,
		"PACKET_FIELD_NUM_VLAN_TAG":            5,
		"PACKET_FIELD_NUM_VLAN_PRIORITY":       6,
		"PACKET_FIELD_NUM_IP_VERSION":          7,
		"PACKET_FIELD_NUM_IP_ADDR_SRC":         8,
		"PACKET_FIELD_NUM_IP_ADDR_DST":         9,
		"PACKET_FIELD_NUM_IP_HOP":              10,
		"PACKET_FIELD_NUM_IP_PROTO":            11,
		"PACKET_FIELD_NUM_IP_QOS":              12,
		"PACKET_FIELD_NUM_IP6_FLOW":            13,
		"PACKET_FIELD_NUM_PACKET_PORT_INPUT":   14,
		"PACKET_FIELD_NUM_PACKET_PORT_OUTPUT":  15,
		"PACKET_FIELD_NUM_PACKET_LENGTH":       16,
		"PACKET_FIELD_NUM_ICMP_TYPE":           17,
		"PACKET_FIELD_NUM_ICMP_CODE":           18,
		"PACKET_FIELD_NUM_L4_PORT_SRC":         19,
		"PACKET_FIELD_NUM_L4_PORT_DST":         20,
		"PACKET_FIELD_NUM_TCP_FLAGS":           21,
		"PACKET_FIELD_NUM_ARP_TPA":             22,
		"PACKET_FIELD_NUM_GRE_KEY":             23,
		"PACKET_FIELD_NUM_GRE_SEQUENCE":        24,
		"PACKET_FIELD_NUM_PACKET_VRF":          25,
		"PACKET_FIELD_NUM_ICMP6_ND_TARGET":     26,
		"PACKET_FIELD_NUM_ICMP6_ND_SLL":        27,
		"PACKET_FIELD_NUM_ICMP6_ND_TLL":        28,
		"PACKET_FIELD_NUM_PACKET_ATTRIBUTE_32": 34,
		"PACKET_FIELD_NUM_PACKET_ATTRIBUTE_16": 46,
		"PACKET_FIELD_NUM_PACKET_ATTRIBUTE_8":  49,
		"PACKET_FIELD_NUM_PACKET_ATTRIBUTE_24": 50,
		"PACKET_FIELD_NUM_ARP_TMAC":            52,
		"PACKET_FIELD_NUM_ARP_SMAC":            53,
		"PACKET_FIELD_NUM_ARP_SPA":             54,
		"PACKET_FIELD_NUM_NEXT_HOP_IP":         56,
		"PACKET_FIELD_NUM_COUNT":               1000,
	}
)

Enum value maps for PacketFieldNum.

View Source
var (
	CounterId_name = map[int32]string{
		0:   "COUNTER_ID_UNSPECIFIED",
		1:   "COUNTER_ID_RX_PACKETS",
		2:   "COUNTER_ID_RX_OCTETS",
		3:   "COUNTER_ID_RX_DROP_PACKETS",
		4:   "COUNTER_ID_RX_DROP_OCTETS",
		5:   "COUNTER_ID_RX_ERROR_PACKETS",
		6:   "COUNTER_ID_RX_ERROR_OCTETS",
		7:   "COUNTER_ID_TX_PACKETS",
		8:   "COUNTER_ID_TX_OCTETS",
		9:   "COUNTER_ID_TX_DROP_PACKETS",
		10:  "COUNTER_ID_TX_DROP_OCTETS",
		11:  "COUNTER_ID_TX_ERROR_PACKETS",
		12:  "COUNTER_ID_TX_ERROR_OCTETS",
		13:  "COUNTER_ID_RATELIMIT_PACKETS",
		14:  "COUNTER_ID_RATELIMIT_OCTETS",
		15:  "COUNTER_ID_DROP_PACKETS",
		16:  "COUNTER_ID_DROP_OCTETS",
		17:  "COUNTER_ID_ERROR_PACKETS",
		18:  "COUNTER_ID_ERROR_OCTETS",
		19:  "COUNTER_ID_RX_BAD_PACKETS",
		20:  "COUNTER_ID_RX_BAD_OCTETS",
		21:  "COUNTER_ID_RX_ADMIN_DROP_PACKETS",
		22:  "COUNTER_ID_RX_ADMIN_DROP_OCTETS",
		23:  "COUNTER_ID_TX_ADMIN_DROP_PACKETS",
		24:  "COUNTER_ID_TX_ADMIN_DROP_OCTETS",
		25:  "COUNTER_ID_MIRROR_PACKETS",
		26:  "COUNTER_ID_MIRROR_OCTETS",
		27:  "COUNTER_ID_MIRROR_ERROR_PACKETS",
		28:  "COUNTER_ID_MIRROR_ERROR_OCTETS",
		29:  "COUNTER_ID_ENCAP_ERROR_PACKETS",
		30:  "COUNTER_ID_ENCAP_ERROR_OCTETS",
		31:  "COUNTER_ID_DECAP_ERROR_PACKETS",
		32:  "COUNTER_ID_DECAP_ERROR_OCTETS",
		33:  "COUNTER_ID_FLOW_COUNTER_OCTETS",
		34:  "COUNTER_ID_FLOW_COUNTER_PACKETS",
		35:  "COUNTER_ID_RX_DEBUG_PACKETS",
		36:  "COUNTER_ID_RX_DEBUG_OCTETS",
		255: "COUNTER_ID_MAX",
	}
	CounterId_value = map[string]int32{
		"COUNTER_ID_UNSPECIFIED":           0,
		"COUNTER_ID_RX_PACKETS":            1,
		"COUNTER_ID_RX_OCTETS":             2,
		"COUNTER_ID_RX_DROP_PACKETS":       3,
		"COUNTER_ID_RX_DROP_OCTETS":        4,
		"COUNTER_ID_RX_ERROR_PACKETS":      5,
		"COUNTER_ID_RX_ERROR_OCTETS":       6,
		"COUNTER_ID_TX_PACKETS":            7,
		"COUNTER_ID_TX_OCTETS":             8,
		"COUNTER_ID_TX_DROP_PACKETS":       9,
		"COUNTER_ID_TX_DROP_OCTETS":        10,
		"COUNTER_ID_TX_ERROR_PACKETS":      11,
		"COUNTER_ID_TX_ERROR_OCTETS":       12,
		"COUNTER_ID_RATELIMIT_PACKETS":     13,
		"COUNTER_ID_RATELIMIT_OCTETS":      14,
		"COUNTER_ID_DROP_PACKETS":          15,
		"COUNTER_ID_DROP_OCTETS":           16,
		"COUNTER_ID_ERROR_PACKETS":         17,
		"COUNTER_ID_ERROR_OCTETS":          18,
		"COUNTER_ID_RX_BAD_PACKETS":        19,
		"COUNTER_ID_RX_BAD_OCTETS":         20,
		"COUNTER_ID_RX_ADMIN_DROP_PACKETS": 21,
		"COUNTER_ID_RX_ADMIN_DROP_OCTETS":  22,
		"COUNTER_ID_TX_ADMIN_DROP_PACKETS": 23,
		"COUNTER_ID_TX_ADMIN_DROP_OCTETS":  24,
		"COUNTER_ID_MIRROR_PACKETS":        25,
		"COUNTER_ID_MIRROR_OCTETS":         26,
		"COUNTER_ID_MIRROR_ERROR_PACKETS":  27,
		"COUNTER_ID_MIRROR_ERROR_OCTETS":   28,
		"COUNTER_ID_ENCAP_ERROR_PACKETS":   29,
		"COUNTER_ID_ENCAP_ERROR_OCTETS":    30,
		"COUNTER_ID_DECAP_ERROR_PACKETS":   31,
		"COUNTER_ID_DECAP_ERROR_OCTETS":    32,
		"COUNTER_ID_FLOW_COUNTER_OCTETS":   33,
		"COUNTER_ID_FLOW_COUNTER_PACKETS":  34,
		"COUNTER_ID_RX_DEBUG_PACKETS":      35,
		"COUNTER_ID_RX_DEBUG_OCTETS":       36,
		"COUNTER_ID_MAX":                   255,
	}
)

Enum value maps for CounterId.

View Source
var (
	ContextUpdateRequest_Operation_name = map[int32]string{
		0: "OPERATION_UNSPECIFIED",
		1: "OPERATION_UPDATE_PACKET_ADDRESS",
		2: "OPERATION_UPDATE_NOTIFICATION_ADDRESS",
	}
	ContextUpdateRequest_Operation_value = map[string]int32{
		"OPERATION_UNSPECIFIED":                 0,
		"OPERATION_UPDATE_PACKET_ADDRESS":       1,
		"OPERATION_UPDATE_NOTIFICATION_ADDRESS": 2,
	}
)

Enum value maps for ContextUpdateRequest_Operation.

View Source
var (
	InfoType_name = map[int32]string{
		0: "INFO_TYPE_UNSPECIFIED",
		1: "INFO_TYPE_ALL",
		2: "INFO_TYPE_LOOKUP",
		3: "INFO_TYPE_PORT_INPUT",
		4: "INFO_TYPE_PORT_OUTPUT",
	}
	InfoType_value = map[string]int32{
		"INFO_TYPE_UNSPECIFIED": 0,
		"INFO_TYPE_ALL":         1,
		"INFO_TYPE_LOOKUP":      2,
		"INFO_TYPE_PORT_INPUT":  3,
		"INFO_TYPE_PORT_OUTPUT": 4,
	}
)

Enum value maps for InfoType.

View Source
var (
	Event_name = map[int32]string{
		0: "EVENT_UNSPECIFIED",
		1: "EVENT_PORT",
	}
	Event_value = map[string]int32{
		"EVENT_UNSPECIFIED": 0,
		"EVENT_PORT":        1,
	}
)

Enum value maps for Event.

View Source
var (
	PortType_name = map[int32]string{
		0: "PORT_TYPE_UNSPECIFIED",
		1: "PORT_TYPE_CPU_PORT",
		2: "PORT_TYPE_AGGREGATE_PORT",
		3: "PORT_TYPE_KERNEL",
		4: "PORT_TYPE_TAP",
	}
	PortType_value = map[string]int32{
		"PORT_TYPE_UNSPECIFIED":    0,
		"PORT_TYPE_CPU_PORT":       1,
		"PORT_TYPE_AGGREGATE_PORT": 2,
		"PORT_TYPE_KERNEL":         3,
		"PORT_TYPE_TAP":            4,
	}
)

Enum value maps for PortType.

View Source
var (
	AggregateHashAlgorithm_name = map[int32]string{
		0: "AGGREGATE_HASH_ALGORITHM_UNSPECIFIED",
		2: "AGGREGATE_HASH_ALGORITHM_CRC16",
		3: "AGGREGATE_HASH_ALGORITHM_CRC32",
		5: "AGGREGATE_HASH_ALGORITHM_FLOOD",
	}
	AggregateHashAlgorithm_value = map[string]int32{
		"AGGREGATE_HASH_ALGORITHM_UNSPECIFIED": 0,
		"AGGREGATE_HASH_ALGORITHM_CRC16":       2,
		"AGGREGATE_HASH_ALGORITHM_CRC32":       3,
		"AGGREGATE_HASH_ALGORITHM_FLOOD":       5,
	}
)

Enum value maps for AggregateHashAlgorithm.

View Source
var (
	PortLaserState_name = map[int32]string{
		0: "PORT_LASER_STATE_UNSPECIFIED",
		1: "PORT_LASER_STATE_NOT_EMULATED",
		2: "PORT_LASER_STATE_ENABLED",
		3: "PORT_LASER_STATE_DISABLED",
	}
	PortLaserState_value = map[string]int32{
		"PORT_LASER_STATE_UNSPECIFIED":  0,
		"PORT_LASER_STATE_NOT_EMULATED": 1,
		"PORT_LASER_STATE_ENABLED":      2,
		"PORT_LASER_STATE_DISABLED":     3,
	}
)

Enum value maps for PortLaserState.

View Source
var (
	PortSpeedBehavior_name = map[int32]string{
		0: "PORT_SPEED_BEHAVIOR_UNSPECIFIED",
		1: "PORT_SPEED_BEHAVIOR_ANY_SPEED",
		2: "PORT_SPEED_BEHAVIOR_SAME_SPEED",
	}
	PortSpeedBehavior_value = map[string]int32{
		"PORT_SPEED_BEHAVIOR_UNSPECIFIED": 0,
		"PORT_SPEED_BEHAVIOR_ANY_SPEED":   1,
		"PORT_SPEED_BEHAVIOR_SAME_SPEED":  2,
	}
)

Enum value maps for PortSpeedBehavior.

View Source
var (
	LinkState_name = map[int32]string{
		0: "LINK_STATE_UNSPECIFIED",
		1: "LINK_STATE_UP",
		2: "LINK_STATE_DOWN",
	}
	LinkState_value = map[string]int32{
		"LINK_STATE_UNSPECIFIED": 0,
		"LINK_STATE_UP":          1,
		"LINK_STATE_DOWN":        2,
	}
)

Enum value maps for LinkState.

View Source
var (
	TableType_name = map[int32]string{
		0: "TABLE_TYPE_UNSPECIFIED",
		1: "TABLE_TYPE_EXACT",
		2: "TABLE_TYPE_PREFIX",
		3: "TABLE_TYPE_FLOW",
		4: "TABLE_TYPE_BRIDGE",
	}
	TableType_value = map[string]int32{
		"TABLE_TYPE_UNSPECIFIED": 0,
		"TABLE_TYPE_EXACT":       1,
		"TABLE_TYPE_PREFIX":      2,
		"TABLE_TYPE_FLOW":        3,
		"TABLE_TYPE_BRIDGE":      4,
	}
)

Enum value maps for TableType.

View Source
var File_proto_forwarding_forwarding_action_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_attribute_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_common_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_info_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_notification_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_operation_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_packetsink_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_port_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_service_proto protoreflect.FileDescriptor
View Source
var File_proto_forwarding_forwarding_table_proto protoreflect.FileDescriptor
View Source
var Info_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "forwarding.Info",
	HandlerType: (*InfoServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "InfoList",
			Handler:    _Info_InfoList_Handler,
		},
		{
			MethodName: "InfoElement",
			Handler:    _Info_InfoElement_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "proto/forwarding/forwarding_service.proto",
}

Info_ServiceDesc is the grpc.ServiceDesc for Info service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var Notification_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "forwarding.Notification",
	HandlerType: (*NotificationServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Notify",
			Handler:    _Notification_Notify_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "proto/forwarding/forwarding_service.proto",
}

Notification_ServiceDesc is the grpc.ServiceDesc for Notification service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var PacketSink_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "forwarding.PacketSink",
	HandlerType: (*PacketSinkServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "PacketInject",
			Handler:    _PacketSink_PacketInject_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "proto/forwarding/forwarding_service.proto",
}

PacketSink_ServiceDesc is the grpc.ServiceDesc for PacketSink service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var Service_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "forwarding.Service",
	HandlerType: (*ServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ContextCreate",
			Handler:    _Service_ContextCreate_Handler,
		},
		{
			MethodName: "ContextUpdate",
			Handler:    _Service_ContextUpdate_Handler,
		},
		{
			MethodName: "ContextDelete",
			Handler:    _Service_ContextDelete_Handler,
		},
		{
			MethodName: "ContextList",
			Handler:    _Service_ContextList_Handler,
		},
		{
			MethodName: "SetCreate",
			Handler:    _Service_SetCreate_Handler,
		},
		{
			MethodName: "SetUpdate",
			Handler:    _Service_SetUpdate_Handler,
		},
		{
			MethodName: "AttributeList",
			Handler:    _Service_AttributeList_Handler,
		},
		{
			MethodName: "AttributeUpdate",
			Handler:    _Service_AttributeUpdate_Handler,
		},
		{
			MethodName: "ObjectDelete",
			Handler:    _Service_ObjectDelete_Handler,
		},
		{
			MethodName: "ObjectList",
			Handler:    _Service_ObjectList_Handler,
		},
		{
			MethodName: "ObjectCounters",
			Handler:    _Service_ObjectCounters_Handler,
		},
		{
			MethodName: "TableCreate",
			Handler:    _Service_TableCreate_Handler,
		},
		{
			MethodName: "TableEntryAdd",
			Handler:    _Service_TableEntryAdd_Handler,
		},
		{
			MethodName: "TableEntryRemove",
			Handler:    _Service_TableEntryRemove_Handler,
		},
		{
			MethodName: "TableList",
			Handler:    _Service_TableList_Handler,
		},
		{
			MethodName: "PortCreate",
			Handler:    _Service_PortCreate_Handler,
		},
		{
			MethodName: "PortUpdate",
			Handler:    _Service_PortUpdate_Handler,
		},
		{
			MethodName: "PortState",
			Handler:    _Service_PortState_Handler,
		},
		{
			MethodName: "FlowCounterCreate",
			Handler:    _Service_FlowCounterCreate_Handler,
		},
		{
			MethodName: "FlowCounterQuery",
			Handler:    _Service_FlowCounterQuery_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "Operation",
			Handler:       _Service_Operation_Handler,
			ServerStreams: true,
			ClientStreams: true,
		},
	},
	Metadata: "proto/forwarding/forwarding_service.proto",
}

Service_ServiceDesc is the grpc.ServiceDesc for Service service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterInfoServer

func RegisterInfoServer(s grpc.ServiceRegistrar, srv InfoServer)

func RegisterNotificationServer

func RegisterNotificationServer(s grpc.ServiceRegistrar, srv NotificationServer)

func RegisterPacketSinkServer

func RegisterPacketSinkServer(s grpc.ServiceRegistrar, srv PacketSinkServer)

func RegisterServiceServer

func RegisterServiceServer(s grpc.ServiceRegistrar, srv ServiceServer)

Types

type ActionDesc

type ActionDesc struct {
	ActionType ActionType `protobuf:"varint,1,opt,name=action_type,json=actionType,proto3,enum=forwarding.ActionType" json:"action_type,omitempty"`
	OnEvaluate bool       `protobuf:"varint,2,opt,name=on_evaluate,json=onEvaluate,proto3" json:"on_evaluate,omitempty"`
	// Types that are assignable to Action:
	//	*ActionDesc_Transmit
	//	*ActionDesc_Lookup
	//	*ActionDesc_Rate
	//	*ActionDesc_Encap
	//	*ActionDesc_Decap
	//	*ActionDesc_Update
	//	*ActionDesc_Test
	//	*ActionDesc_Mirror
	//	*ActionDesc_Bridge
	//	*ActionDesc_Flow
	//	*ActionDesc_Reparse
	//	*ActionDesc_Select
	Action isActionDesc_Action `protobuf_oneof:"action"`
	// contains filtered or unexported fields
}

An ActionDesc describes an operation that can be performed on a packet. It is assumed that the desc will contain the appropriate values in the oneof.

Actions that are marked on evaluate are executed only when the evaluate action is processed.

func (*ActionDesc) Descriptor deprecated

func (*ActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use ActionDesc.ProtoReflect.Descriptor instead.

func (*ActionDesc) GetAction

func (m *ActionDesc) GetAction() isActionDesc_Action

func (*ActionDesc) GetActionType

func (x *ActionDesc) GetActionType() ActionType

func (*ActionDesc) GetBridge

func (x *ActionDesc) GetBridge() *BridgeLearnActionDesc

func (*ActionDesc) GetDecap

func (x *ActionDesc) GetDecap() *DecapActionDesc

func (*ActionDesc) GetEncap

func (x *ActionDesc) GetEncap() *EncapActionDesc

func (*ActionDesc) GetFlow

func (x *ActionDesc) GetFlow() *FlowCounterActionDesc

func (*ActionDesc) GetLookup

func (x *ActionDesc) GetLookup() *LookupActionDesc

func (*ActionDesc) GetMirror

func (x *ActionDesc) GetMirror() *MirrorActionDesc

func (*ActionDesc) GetOnEvaluate

func (x *ActionDesc) GetOnEvaluate() bool

func (*ActionDesc) GetRate

func (x *ActionDesc) GetRate() *RateActionDesc

func (*ActionDesc) GetReparse

func (x *ActionDesc) GetReparse() *ReparseActionDesc

func (*ActionDesc) GetSelect

func (x *ActionDesc) GetSelect() *SelectActionListActionDesc

func (*ActionDesc) GetTest

func (x *ActionDesc) GetTest() *TestActionDesc

func (*ActionDesc) GetTransmit

func (x *ActionDesc) GetTransmit() *TransmitActionDesc

func (*ActionDesc) GetUpdate

func (x *ActionDesc) GetUpdate() *UpdateActionDesc

func (*ActionDesc) ProtoMessage

func (*ActionDesc) ProtoMessage()

func (*ActionDesc) ProtoReflect

func (x *ActionDesc) ProtoReflect() protoreflect.Message

func (*ActionDesc) Reset

func (x *ActionDesc) Reset()

func (*ActionDesc) String

func (x *ActionDesc) String() string

type ActionDesc_Bridge

type ActionDesc_Bridge struct {
	Bridge *BridgeLearnActionDesc `protobuf:"bytes,11,opt,name=bridge,proto3,oneof"`
}

type ActionDesc_Decap

type ActionDesc_Decap struct {
	Decap *DecapActionDesc `protobuf:"bytes,7,opt,name=decap,proto3,oneof"`
}

type ActionDesc_Encap

type ActionDesc_Encap struct {
	Encap *EncapActionDesc `protobuf:"bytes,6,opt,name=encap,proto3,oneof"`
}

type ActionDesc_Flow

type ActionDesc_Flow struct {
	Flow *FlowCounterActionDesc `protobuf:"bytes,12,opt,name=flow,proto3,oneof"`
}

type ActionDesc_Lookup

type ActionDesc_Lookup struct {
	Lookup *LookupActionDesc `protobuf:"bytes,4,opt,name=lookup,proto3,oneof"`
}

type ActionDesc_Mirror

type ActionDesc_Mirror struct {
	Mirror *MirrorActionDesc `protobuf:"bytes,10,opt,name=mirror,proto3,oneof"`
}

type ActionDesc_Rate

type ActionDesc_Rate struct {
	Rate *RateActionDesc `protobuf:"bytes,5,opt,name=rate,proto3,oneof"`
}

type ActionDesc_Reparse

type ActionDesc_Reparse struct {
	Reparse *ReparseActionDesc `protobuf:"bytes,13,opt,name=reparse,proto3,oneof"`
}

type ActionDesc_Select

type ActionDesc_Select struct {
	Select *SelectActionListActionDesc `protobuf:"bytes,14,opt,name=select,proto3,oneof"`
}

type ActionDesc_Test

type ActionDesc_Test struct {
	Test *TestActionDesc `protobuf:"bytes,9,opt,name=test,proto3,oneof"`
}

type ActionDesc_Transmit

type ActionDesc_Transmit struct {
	Transmit *TransmitActionDesc `protobuf:"bytes,3,opt,name=transmit,proto3,oneof"`
}

type ActionDesc_Update

type ActionDesc_Update struct {
	Update *UpdateActionDesc `protobuf:"bytes,8,opt,name=update,proto3,oneof"`
}

type ActionList

type ActionList struct {
	Actions []*ActionDesc `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty"`
	Weight  uint64        `protobuf:"varint,2,opt,name=weight,proto3" json:"weight,omitempty"`
	// contains filtered or unexported fields
}

An ActionList describes a sequence of actions.

func (*ActionList) Descriptor deprecated

func (*ActionList) Descriptor() ([]byte, []int)

Deprecated: Use ActionList.ProtoReflect.Descriptor instead.

func (*ActionList) GetActions

func (x *ActionList) GetActions() []*ActionDesc

func (*ActionList) GetWeight

func (x *ActionList) GetWeight() uint64

func (*ActionList) ProtoMessage

func (*ActionList) ProtoMessage()

func (*ActionList) ProtoReflect

func (x *ActionList) ProtoReflect() protoreflect.Message

func (*ActionList) Reset

func (x *ActionList) Reset()

func (*ActionList) String

func (x *ActionList) String() string

type ActionType

type ActionType int32

An ActionType enumerates all supported forwarding actions.

const (
	ActionType_ACTION_TYPE_UNSPECIFIED              ActionType = 0  // Unspecified action
	ActionType_ACTION_TYPE_DROP                     ActionType = 1  // Drop packets.
	ActionType_ACTION_TYPE_TRANSMIT                 ActionType = 2  // Transmit packets on a specific port
	ActionType_ACTION_TYPE_LOOKUP                   ActionType = 3  // Lookup a table to decide next action
	ActionType_ACTION_TYPE_RATE                     ActionType = 4  // Ratelimit the packet and continue
	ActionType_ACTION_TYPE_ENCAP                    ActionType = 5  // Add a packet header and continue
	ActionType_ACTION_TYPE_DECAP                    ActionType = 6  // Remove a packet header and continue
	ActionType_ACTION_TYPE_UPDATE                   ActionType = 8  // Update a packet field
	ActionType_ACTION_TYPE_TEST                     ActionType = 9  // Action used to write tests
	ActionType_ACTION_TYPE_CONTINUE                 ActionType = 10 // Action used to continue processing the packet
	ActionType_ACTION_TYPE_OUTPUT                   ActionType = 11 // Action used to evaluate packet processing
	ActionType_ACTION_TYPE_MIRROR                   ActionType = 12 // Action used to mirror a packet
	ActionType_ACTION_TYPE_EVALUATE                 ActionType = 13 // Action used to evaluate all pending actions
	ActionType_ACTION_TYPE_BRIDGE_LEARN             ActionType = 14 // Action used to learn on the specified bridge
	ActionType_ACTION_TYPE_FLOW_COUNTER             ActionType = 15 // Action used to increment the per-flow counter
	ActionType_ACTION_TYPE_REPARSE                  ActionType = 16 // Reparses the packet as a specific type of header
	ActionType_ACTION_TYPE_SELECT_ACTION_LIST       ActionType = 17 // Action used select a action list from a set of action lists
	ActionType_ACTION_TYPE_DEBUG                    ActionType = 18 // Action used to set the debug flag on a packet
	ActionType_ACTION_TYPE_SWAP_OUTPUT_TAP_EXTERNAL ActionType = 19 // Ation used to set a packet's output port
)

func (ActionType) Descriptor

func (ActionType) Descriptor() protoreflect.EnumDescriptor

func (ActionType) Enum

func (x ActionType) Enum() *ActionType

func (ActionType) EnumDescriptor deprecated

func (ActionType) EnumDescriptor() ([]byte, []int)

Deprecated: Use ActionType.Descriptor instead.

func (ActionType) Number

func (x ActionType) Number() protoreflect.EnumNumber

func (ActionType) String

func (x ActionType) String() string

func (ActionType) Type

type AggregateHashAlgorithm

type AggregateHashAlgorithm int32

AggregateHashAlgorithm enumerates algorithms used to select from a set of ports.

const (
	AggregateHashAlgorithm_AGGREGATE_HASH_ALGORITHM_UNSPECIFIED AggregateHashAlgorithm = 0
	AggregateHashAlgorithm_AGGREGATE_HASH_ALGORITHM_CRC16       AggregateHashAlgorithm = 2 // x16+x15+x2+1
	AggregateHashAlgorithm_AGGREGATE_HASH_ALGORITHM_CRC32       AggregateHashAlgorithm = 3 // x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1
	AggregateHashAlgorithm_AGGREGATE_HASH_ALGORITHM_FLOOD       AggregateHashAlgorithm = 5 // floods the packet.
)

func (AggregateHashAlgorithm) Descriptor

func (AggregateHashAlgorithm) Enum

func (AggregateHashAlgorithm) EnumDescriptor deprecated

func (AggregateHashAlgorithm) EnumDescriptor() ([]byte, []int)

Deprecated: Use AggregateHashAlgorithm.Descriptor instead.

func (AggregateHashAlgorithm) Number

func (AggregateHashAlgorithm) String

func (x AggregateHashAlgorithm) String() string

func (AggregateHashAlgorithm) Type

type AggregatePortAddMemberUpdateDesc

type AggregatePortAddMemberUpdateDesc struct {
	PortId        *PortId       `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	SelectActions []*ActionDesc `protobuf:"bytes,2,rep,name=select_actions,json=selectActions,proto3" json:"select_actions,omitempty"` // Actions applied when the port is selected.
	InstanceCount uint32        `protobuf:"varint,3,opt,name=instance_count,json=instanceCount,proto3" json:"instance_count,omitempty"`
	// contains filtered or unexported fields
}

An AggregatePortAddMemberUpdateDesc adds a member to an aggregate port with the specified number of instances.

func (*AggregatePortAddMemberUpdateDesc) Descriptor deprecated

func (*AggregatePortAddMemberUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use AggregatePortAddMemberUpdateDesc.ProtoReflect.Descriptor instead.

func (*AggregatePortAddMemberUpdateDesc) GetInstanceCount

func (x *AggregatePortAddMemberUpdateDesc) GetInstanceCount() uint32

func (*AggregatePortAddMemberUpdateDesc) GetPortId

func (x *AggregatePortAddMemberUpdateDesc) GetPortId() *PortId

func (*AggregatePortAddMemberUpdateDesc) GetSelectActions

func (x *AggregatePortAddMemberUpdateDesc) GetSelectActions() []*ActionDesc

func (*AggregatePortAddMemberUpdateDesc) ProtoMessage

func (*AggregatePortAddMemberUpdateDesc) ProtoMessage()

func (*AggregatePortAddMemberUpdateDesc) ProtoReflect

func (*AggregatePortAddMemberUpdateDesc) Reset

func (*AggregatePortAddMemberUpdateDesc) String

type AggregatePortAlgorithmUpdateDesc

type AggregatePortAlgorithmUpdateDesc struct {
	Hash     AggregateHashAlgorithm `protobuf:"varint,1,opt,name=hash,proto3,enum=forwarding.AggregateHashAlgorithm" json:"hash,omitempty"` // Type of hashing to use.
	FieldIds []*PacketFieldId       `protobuf:"bytes,2,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`                 // List of fields to use for hashing.
	// contains filtered or unexported fields
}

An AggregatePortAlgorithmUpdateDesc updates how the aggregate port selects constituents for processing packets.

func (*AggregatePortAlgorithmUpdateDesc) Descriptor deprecated

func (*AggregatePortAlgorithmUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use AggregatePortAlgorithmUpdateDesc.ProtoReflect.Descriptor instead.

func (*AggregatePortAlgorithmUpdateDesc) GetFieldIds

func (x *AggregatePortAlgorithmUpdateDesc) GetFieldIds() []*PacketFieldId

func (*AggregatePortAlgorithmUpdateDesc) GetHash

func (*AggregatePortAlgorithmUpdateDesc) ProtoMessage

func (*AggregatePortAlgorithmUpdateDesc) ProtoMessage()

func (*AggregatePortAlgorithmUpdateDesc) ProtoReflect

func (*AggregatePortAlgorithmUpdateDesc) Reset

func (*AggregatePortAlgorithmUpdateDesc) String

type AggregatePortRemoveMemberUpdateDesc

type AggregatePortRemoveMemberUpdateDesc struct {
	PortId *PortId `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	// contains filtered or unexported fields
}

An AggregatePortRemoveMemberUpdateDesc removes a member from an aggregate port. Note that all instances are removed.

func (*AggregatePortRemoveMemberUpdateDesc) Descriptor deprecated

func (*AggregatePortRemoveMemberUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use AggregatePortRemoveMemberUpdateDesc.ProtoReflect.Descriptor instead.

func (*AggregatePortRemoveMemberUpdateDesc) GetPortId

func (*AggregatePortRemoveMemberUpdateDesc) ProtoMessage

func (*AggregatePortRemoveMemberUpdateDesc) ProtoMessage()

func (*AggregatePortRemoveMemberUpdateDesc) ProtoReflect

func (*AggregatePortRemoveMemberUpdateDesc) Reset

func (*AggregatePortRemoveMemberUpdateDesc) String

type AggregatePortUpdateDesc

type AggregatePortUpdateDesc struct {
	PortIds       []*PortId                `protobuf:"bytes,1,rep,name=port_ids,json=portIds,proto3" json:"port_ids,omitempty"`                    // List of ports.
	Hash          AggregateHashAlgorithm   `protobuf:"varint,2,opt,name=hash,proto3,enum=forwarding.AggregateHashAlgorithm" json:"hash,omitempty"` // Type of hashing to use.
	FieldIds      []*PacketFieldId         `protobuf:"bytes,3,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`                 // List of fields to use for hashing.
	SelectActions []*AggregateSelectAction `protobuf:"bytes,4,rep,name=select_actions,json=selectActions,proto3" json:"select_actions,omitempty"`  // List of select actions.
	// contains filtered or unexported fields
}

An AggregatePortUpdateDesc updates all attributes of an aggregate port such as the algorithm to select a member and the packet fields used by the hash algorithm.

func (*AggregatePortUpdateDesc) Descriptor deprecated

func (*AggregatePortUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use AggregatePortUpdateDesc.ProtoReflect.Descriptor instead.

func (*AggregatePortUpdateDesc) GetFieldIds

func (x *AggregatePortUpdateDesc) GetFieldIds() []*PacketFieldId

func (*AggregatePortUpdateDesc) GetHash

func (*AggregatePortUpdateDesc) GetPortIds

func (x *AggregatePortUpdateDesc) GetPortIds() []*PortId

func (*AggregatePortUpdateDesc) GetSelectActions

func (x *AggregatePortUpdateDesc) GetSelectActions() []*AggregateSelectAction

func (*AggregatePortUpdateDesc) ProtoMessage

func (*AggregatePortUpdateDesc) ProtoMessage()

func (*AggregatePortUpdateDesc) ProtoReflect

func (x *AggregatePortUpdateDesc) ProtoReflect() protoreflect.Message

func (*AggregatePortUpdateDesc) Reset

func (x *AggregatePortUpdateDesc) Reset()

func (*AggregatePortUpdateDesc) String

func (x *AggregatePortUpdateDesc) String() string

type AggregateSelectAction

type AggregateSelectAction struct {
	PortId  *PortId       `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"` // Port Id.
	Actions []*ActionDesc `protobuf:"bytes,2,rep,name=actions,proto3" json:"actions,omitempty"`             // Actions applied when the port is selected.
	// contains filtered or unexported fields
}

An AggregateSelectAction describes actions to be applied when the aggregate port selects the specified port.

func (*AggregateSelectAction) Descriptor deprecated

func (*AggregateSelectAction) Descriptor() ([]byte, []int)

Deprecated: Use AggregateSelectAction.ProtoReflect.Descriptor instead.

func (*AggregateSelectAction) GetActions

func (x *AggregateSelectAction) GetActions() []*ActionDesc

func (*AggregateSelectAction) GetPortId

func (x *AggregateSelectAction) GetPortId() *PortId

func (*AggregateSelectAction) ProtoMessage

func (*AggregateSelectAction) ProtoMessage()

func (*AggregateSelectAction) ProtoReflect

func (x *AggregateSelectAction) ProtoReflect() protoreflect.Message

func (*AggregateSelectAction) Reset

func (x *AggregateSelectAction) Reset()

func (*AggregateSelectAction) String

func (x *AggregateSelectAction) String() string

type AttributeDesc

type AttributeDesc struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Help string `protobuf:"bytes,2,opt,name=help,proto3" json:"help,omitempty"`
	// contains filtered or unexported fields
}

An AttributeDesc describes an attribute.

func (*AttributeDesc) Descriptor deprecated

func (*AttributeDesc) Descriptor() ([]byte, []int)

Deprecated: Use AttributeDesc.ProtoReflect.Descriptor instead.

func (*AttributeDesc) GetHelp

func (x *AttributeDesc) GetHelp() string

func (*AttributeDesc) GetName

func (x *AttributeDesc) GetName() string

func (*AttributeDesc) ProtoMessage

func (*AttributeDesc) ProtoMessage()

func (*AttributeDesc) ProtoReflect

func (x *AttributeDesc) ProtoReflect() protoreflect.Message

func (*AttributeDesc) Reset

func (x *AttributeDesc) Reset()

func (*AttributeDesc) String

func (x *AttributeDesc) String() string

type AttributeListReply

type AttributeListReply struct {
	Attrs []*AttributeDesc `protobuf:"bytes,1,rep,name=attrs,proto3" json:"attrs,omitempty"`
	// contains filtered or unexported fields
}

func (*AttributeListReply) Descriptor deprecated

func (*AttributeListReply) Descriptor() ([]byte, []int)

Deprecated: Use AttributeListReply.ProtoReflect.Descriptor instead.

func (*AttributeListReply) GetAttrs

func (x *AttributeListReply) GetAttrs() []*AttributeDesc

func (*AttributeListReply) ProtoMessage

func (*AttributeListReply) ProtoMessage()

func (*AttributeListReply) ProtoReflect

func (x *AttributeListReply) ProtoReflect() protoreflect.Message

func (*AttributeListReply) Reset

func (x *AttributeListReply) Reset()

func (*AttributeListReply) String

func (x *AttributeListReply) String() string

type AttributeListRequest

type AttributeListRequest struct {
	// contains filtered or unexported fields
}

An AttributeListRequest is a request to list all supported attributes.

func (*AttributeListRequest) Descriptor deprecated

func (*AttributeListRequest) Descriptor() ([]byte, []int)

Deprecated: Use AttributeListRequest.ProtoReflect.Descriptor instead.

func (*AttributeListRequest) ProtoMessage

func (*AttributeListRequest) ProtoMessage()

func (*AttributeListRequest) ProtoReflect

func (x *AttributeListRequest) ProtoReflect() protoreflect.Message

func (*AttributeListRequest) Reset

func (x *AttributeListRequest) Reset()

func (*AttributeListRequest) String

func (x *AttributeListRequest) String() string

type AttributeUpdateReply

type AttributeUpdateReply struct {
	// contains filtered or unexported fields
}

func (*AttributeUpdateReply) Descriptor deprecated

func (*AttributeUpdateReply) Descriptor() ([]byte, []int)

Deprecated: Use AttributeUpdateReply.ProtoReflect.Descriptor instead.

func (*AttributeUpdateReply) ProtoMessage

func (*AttributeUpdateReply) ProtoMessage()

func (*AttributeUpdateReply) ProtoReflect

func (x *AttributeUpdateReply) ProtoReflect() protoreflect.Message

func (*AttributeUpdateReply) Reset

func (x *AttributeUpdateReply) Reset()

func (*AttributeUpdateReply) String

func (x *AttributeUpdateReply) String() string

type AttributeUpdateRequest

type AttributeUpdateRequest struct {
	ContextId *ContextId `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	ObjectId  *ObjectId  `protobuf:"bytes,2,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	AttrId    string     `protobuf:"bytes,3,opt,name=attr_id,json=attrId,proto3" json:"attr_id,omitempty"`
	AttrValue string     `protobuf:"bytes,4,opt,name=attr_value,json=attrValue,proto3" json:"attr_value,omitempty"`
	// contains filtered or unexported fields
}

An AttributeUpdateRequest is a request to update an attribute. The attribute id is a mandatory field. If the context_id is not specified, the attribute is applied to all forwarding contexts. If the object id is not specified the attribute is applied to all fields. If the value is not specified the attribute is deleted.

func (*AttributeUpdateRequest) Descriptor deprecated

func (*AttributeUpdateRequest) Descriptor() ([]byte, []int)

Deprecated: Use AttributeUpdateRequest.ProtoReflect.Descriptor instead.

func (*AttributeUpdateRequest) GetAttrId

func (x *AttributeUpdateRequest) GetAttrId() string

func (*AttributeUpdateRequest) GetAttrValue

func (x *AttributeUpdateRequest) GetAttrValue() string

func (*AttributeUpdateRequest) GetContextId

func (x *AttributeUpdateRequest) GetContextId() *ContextId

func (*AttributeUpdateRequest) GetObjectId

func (x *AttributeUpdateRequest) GetObjectId() *ObjectId

func (*AttributeUpdateRequest) ProtoMessage

func (*AttributeUpdateRequest) ProtoMessage()

func (*AttributeUpdateRequest) ProtoReflect

func (x *AttributeUpdateRequest) ProtoReflect() protoreflect.Message

func (*AttributeUpdateRequest) Reset

func (x *AttributeUpdateRequest) Reset()

func (*AttributeUpdateRequest) String

func (x *AttributeUpdateRequest) String() string

type BridgeLearnActionDesc

type BridgeLearnActionDesc struct {
	TableId *TableId `protobuf:"bytes,1,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"` // Table used for learning.
	// contains filtered or unexported fields
}

A BridgeLearnAction describes BRIDGE_LEARN_ACTION. The descriptor contains a table-id that identifies a table that is used to learn the packet.

func (*BridgeLearnActionDesc) Descriptor deprecated

func (*BridgeLearnActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use BridgeLearnActionDesc.ProtoReflect.Descriptor instead.

func (*BridgeLearnActionDesc) GetTableId

func (x *BridgeLearnActionDesc) GetTableId() *TableId

func (*BridgeLearnActionDesc) ProtoMessage

func (*BridgeLearnActionDesc) ProtoMessage()

func (*BridgeLearnActionDesc) ProtoReflect

func (x *BridgeLearnActionDesc) ProtoReflect() protoreflect.Message

func (*BridgeLearnActionDesc) Reset

func (x *BridgeLearnActionDesc) Reset()

func (*BridgeLearnActionDesc) String

func (x *BridgeLearnActionDesc) String() string

type BridgeTableDesc

type BridgeTableDesc struct {

	//  timeout value for entries. If no timeout is specified, entries are
	// never timed out.
	TransientTimeout uint32 `protobuf:"varint,1,opt,name=transient_timeout,json=transientTimeout,proto3" json:"transient_timeout,omitempty"`
	// contains filtered or unexported fields
}

A BridgeTableDesc describes a BRIDGE_TABLE. The table monitors and removes transient entries that are not used for a configured amount of time.

func (*BridgeTableDesc) Descriptor deprecated

func (*BridgeTableDesc) Descriptor() ([]byte, []int)

Deprecated: Use BridgeTableDesc.ProtoReflect.Descriptor instead.

func (*BridgeTableDesc) GetTransientTimeout

func (x *BridgeTableDesc) GetTransientTimeout() uint32

func (*BridgeTableDesc) ProtoMessage

func (*BridgeTableDesc) ProtoMessage()

func (*BridgeTableDesc) ProtoReflect

func (x *BridgeTableDesc) ProtoReflect() protoreflect.Message

func (*BridgeTableDesc) Reset

func (x *BridgeTableDesc) Reset()

func (*BridgeTableDesc) String

func (x *BridgeTableDesc) String() string

type CPUPortDesc

type CPUPortDesc struct {
	QueueId        string           `protobuf:"bytes,1,opt,name=queue_id,json=queueId,proto3" json:"queue_id,omitempty"`                        // CPU queue-id.
	QueueLength    int32            `protobuf:"varint,2,opt,name=queue_length,json=queueLength,proto3" json:"queue_length,omitempty"`           // Length of the CPU queue, unbounded by default
	ExportFieldIds []*PacketFieldId `protobuf:"bytes,3,rep,name=export_field_ids,json=exportFieldIds,proto3" json:"export_field_ids,omitempty"` // Packet fields to export
	// contains filtered or unexported fields
}

A CPUPortDesc describes CPU_PORT. The descriptor identifies the cpu-queue-id. Note that the CPU port is connected to the packet sink service, and hence it does not define a specific start header for its frames. The CPU port can also export the specified list of packet fields when writing the packet.

func (*CPUPortDesc) Descriptor deprecated

func (*CPUPortDesc) Descriptor() ([]byte, []int)

Deprecated: Use CPUPortDesc.ProtoReflect.Descriptor instead.

func (*CPUPortDesc) GetExportFieldIds

func (x *CPUPortDesc) GetExportFieldIds() []*PacketFieldId

func (*CPUPortDesc) GetQueueId

func (x *CPUPortDesc) GetQueueId() string

func (*CPUPortDesc) GetQueueLength

func (x *CPUPortDesc) GetQueueLength() int32

func (*CPUPortDesc) ProtoMessage

func (*CPUPortDesc) ProtoMessage()

func (*CPUPortDesc) ProtoReflect

func (x *CPUPortDesc) ProtoReflect() protoreflect.Message

func (*CPUPortDesc) Reset

func (x *CPUPortDesc) Reset()

func (*CPUPortDesc) String

func (x *CPUPortDesc) String() string

type CPUPortUpdateDesc

type CPUPortUpdateDesc struct {
	Inputs  []*ActionDesc `protobuf:"bytes,1,rep,name=inputs,proto3" json:"inputs,omitempty"`
	Outputs []*ActionDesc `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"`
	// contains filtered or unexported fields
}

A CPUPortUpdateDesc updates the CPU port's input and output actions.

func (*CPUPortUpdateDesc) Descriptor deprecated

func (*CPUPortUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use CPUPortUpdateDesc.ProtoReflect.Descriptor instead.

func (*CPUPortUpdateDesc) GetInputs

func (x *CPUPortUpdateDesc) GetInputs() []*ActionDesc

func (*CPUPortUpdateDesc) GetOutputs

func (x *CPUPortUpdateDesc) GetOutputs() []*ActionDesc

func (*CPUPortUpdateDesc) ProtoMessage

func (*CPUPortUpdateDesc) ProtoMessage()

func (*CPUPortUpdateDesc) ProtoReflect

func (x *CPUPortUpdateDesc) ProtoReflect() protoreflect.Message

func (*CPUPortUpdateDesc) Reset

func (x *CPUPortUpdateDesc) Reset()

func (*CPUPortUpdateDesc) String

func (x *CPUPortUpdateDesc) String() string

type ContextAttr

type ContextAttr struct {
	ContextId           *ContextId `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	PacketAddress       string     `protobuf:"bytes,2,opt,name=packet_address,json=packetAddress,proto3" json:"packet_address,omitempty"`                   // Address of the packet service
	NotificationAddress string     `protobuf:"bytes,3,opt,name=notification_address,json=notificationAddress,proto3" json:"notification_address,omitempty"` // Address of the notification service
	// contains filtered or unexported fields
}

A ContextAttr contains the attributes of a forwarding context.

func (*ContextAttr) Descriptor deprecated

func (*ContextAttr) Descriptor() ([]byte, []int)

Deprecated: Use ContextAttr.ProtoReflect.Descriptor instead.

func (*ContextAttr) GetContextId

func (x *ContextAttr) GetContextId() *ContextId

func (*ContextAttr) GetNotificationAddress

func (x *ContextAttr) GetNotificationAddress() string

func (*ContextAttr) GetPacketAddress

func (x *ContextAttr) GetPacketAddress() string

func (*ContextAttr) ProtoMessage

func (*ContextAttr) ProtoMessage()

func (*ContextAttr) ProtoReflect

func (x *ContextAttr) ProtoReflect() protoreflect.Message

func (*ContextAttr) Reset

func (x *ContextAttr) Reset()

func (*ContextAttr) String

func (x *ContextAttr) String() string

type ContextCreateReply

type ContextCreateReply struct {
	// contains filtered or unexported fields
}

func (*ContextCreateReply) Descriptor deprecated

func (*ContextCreateReply) Descriptor() ([]byte, []int)

Deprecated: Use ContextCreateReply.ProtoReflect.Descriptor instead.

func (*ContextCreateReply) ProtoMessage

func (*ContextCreateReply) ProtoMessage()

func (*ContextCreateReply) ProtoReflect

func (x *ContextCreateReply) ProtoReflect() protoreflect.Message

func (*ContextCreateReply) Reset

func (x *ContextCreateReply) Reset()

func (*ContextCreateReply) String

func (x *ContextCreateReply) String() string

type ContextCreateRequest

type ContextCreateRequest struct {
	ContextId           *ContextId `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	PacketAddress       string     `protobuf:"bytes,2,opt,name=packet_address,json=packetAddress,proto3" json:"packet_address,omitempty"`                   // Address of the context's packet service.
	NotificationAddress string     `protobuf:"bytes,3,opt,name=notification_address,json=notificationAddress,proto3" json:"notification_address,omitempty"` // Address of the context's notification service.
	// contains filtered or unexported fields
}

A ContextCreateRequest is a request to create a context with the specified ID.

func (*ContextCreateRequest) Descriptor deprecated

func (*ContextCreateRequest) Descriptor() ([]byte, []int)

Deprecated: Use ContextCreateRequest.ProtoReflect.Descriptor instead.

func (*ContextCreateRequest) GetContextId

func (x *ContextCreateRequest) GetContextId() *ContextId

func (*ContextCreateRequest) GetNotificationAddress

func (x *ContextCreateRequest) GetNotificationAddress() string

func (*ContextCreateRequest) GetPacketAddress

func (x *ContextCreateRequest) GetPacketAddress() string

func (*ContextCreateRequest) ProtoMessage

func (*ContextCreateRequest) ProtoMessage()

func (*ContextCreateRequest) ProtoReflect

func (x *ContextCreateRequest) ProtoReflect() protoreflect.Message

func (*ContextCreateRequest) Reset

func (x *ContextCreateRequest) Reset()

func (*ContextCreateRequest) String

func (x *ContextCreateRequest) String() string

type ContextDeleteReply

type ContextDeleteReply struct {
	// contains filtered or unexported fields
}

func (*ContextDeleteReply) Descriptor deprecated

func (*ContextDeleteReply) Descriptor() ([]byte, []int)

Deprecated: Use ContextDeleteReply.ProtoReflect.Descriptor instead.

func (*ContextDeleteReply) ProtoMessage

func (*ContextDeleteReply) ProtoMessage()

func (*ContextDeleteReply) ProtoReflect

func (x *ContextDeleteReply) ProtoReflect() protoreflect.Message

func (*ContextDeleteReply) Reset

func (x *ContextDeleteReply) Reset()

func (*ContextDeleteReply) String

func (x *ContextDeleteReply) String() string

type ContextDeleteRequest

type ContextDeleteRequest struct {
	ContextId *ContextId `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

A ContextDeleteRequest is a request to delete a context with the specified ID. Note that all objects in the context are implicitly deleted.

func (*ContextDeleteRequest) Descriptor deprecated

func (*ContextDeleteRequest) Descriptor() ([]byte, []int)

Deprecated: Use ContextDeleteRequest.ProtoReflect.Descriptor instead.

func (*ContextDeleteRequest) GetContextId

func (x *ContextDeleteRequest) GetContextId() *ContextId

func (*ContextDeleteRequest) ProtoMessage

func (*ContextDeleteRequest) ProtoMessage()

func (*ContextDeleteRequest) ProtoReflect

func (x *ContextDeleteRequest) ProtoReflect() protoreflect.Message

func (*ContextDeleteRequest) Reset

func (x *ContextDeleteRequest) Reset()

func (*ContextDeleteRequest) String

func (x *ContextDeleteRequest) String() string

type ContextId

type ContextId struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

A ContextId identifies a forwarding context.

func (*ContextId) Descriptor deprecated

func (*ContextId) Descriptor() ([]byte, []int)

Deprecated: Use ContextId.ProtoReflect.Descriptor instead.

func (*ContextId) GetId

func (x *ContextId) GetId() string

func (*ContextId) ProtoMessage

func (*ContextId) ProtoMessage()

func (*ContextId) ProtoReflect

func (x *ContextId) ProtoReflect() protoreflect.Message

func (*ContextId) Reset

func (x *ContextId) Reset()

func (*ContextId) String

func (x *ContextId) String() string

type ContextListReply

type ContextListReply struct {
	Contexts []*ContextAttr `protobuf:"bytes,1,rep,name=contexts,proto3" json:"contexts,omitempty"`
	// contains filtered or unexported fields
}

func (*ContextListReply) Descriptor deprecated

func (*ContextListReply) Descriptor() ([]byte, []int)

Deprecated: Use ContextListReply.ProtoReflect.Descriptor instead.

func (*ContextListReply) GetContexts

func (x *ContextListReply) GetContexts() []*ContextAttr

func (*ContextListReply) ProtoMessage

func (*ContextListReply) ProtoMessage()

func (*ContextListReply) ProtoReflect

func (x *ContextListReply) ProtoReflect() protoreflect.Message

func (*ContextListReply) Reset

func (x *ContextListReply) Reset()

func (*ContextListReply) String

func (x *ContextListReply) String() string

type ContextListRequest

type ContextListRequest struct {
	// contains filtered or unexported fields
}

A ContextListRequest is a request to list all the contexts.

func (*ContextListRequest) Descriptor deprecated

func (*ContextListRequest) Descriptor() ([]byte, []int)

Deprecated: Use ContextListRequest.ProtoReflect.Descriptor instead.

func (*ContextListRequest) ProtoMessage

func (*ContextListRequest) ProtoMessage()

func (*ContextListRequest) ProtoReflect

func (x *ContextListRequest) ProtoReflect() protoreflect.Message

func (*ContextListRequest) Reset

func (x *ContextListRequest) Reset()

func (*ContextListRequest) String

func (x *ContextListRequest) String() string

type ContextUpdateReply

type ContextUpdateReply struct {
	// contains filtered or unexported fields
}

func (*ContextUpdateReply) Descriptor deprecated

func (*ContextUpdateReply) Descriptor() ([]byte, []int)

Deprecated: Use ContextUpdateReply.ProtoReflect.Descriptor instead.

func (*ContextUpdateReply) ProtoMessage

func (*ContextUpdateReply) ProtoMessage()

func (*ContextUpdateReply) ProtoReflect

func (x *ContextUpdateReply) ProtoReflect() protoreflect.Message

func (*ContextUpdateReply) Reset

func (x *ContextUpdateReply) Reset()

func (*ContextUpdateReply) String

func (x *ContextUpdateReply) String() string

type ContextUpdateRequest

type ContextUpdateRequest struct {
	ContextId           *ContextId                       `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	PacketAddress       string                           `protobuf:"bytes,2,opt,name=packet_address,json=packetAddress,proto3" json:"packet_address,omitempty"`                   // Address of the context's packet service.
	NotificationAddress string                           `protobuf:"bytes,3,opt,name=notification_address,json=notificationAddress,proto3" json:"notification_address,omitempty"` // Address of the context's notification service.
	Operations          []ContextUpdateRequest_Operation ``                                                                                                                       // List of update operations.
	/* 128-byte string literal not displayed */
	// contains filtered or unexported fields
}

A ContextUpdateRequest is a request to update a context with the specified ID. For a given attribute, specifying an operation without specifying a value, effectively unsets the attribute. Note that only the specified operations are performed by the update. If an operation is not specified, the corresponding attribute value is ignored.

func (*ContextUpdateRequest) Descriptor deprecated

func (*ContextUpdateRequest) Descriptor() ([]byte, []int)

Deprecated: Use ContextUpdateRequest.ProtoReflect.Descriptor instead.

func (*ContextUpdateRequest) GetContextId

func (x *ContextUpdateRequest) GetContextId() *ContextId

func (*ContextUpdateRequest) GetNotificationAddress

func (x *ContextUpdateRequest) GetNotificationAddress() string

func (*ContextUpdateRequest) GetOperations

func (*ContextUpdateRequest) GetPacketAddress

func (x *ContextUpdateRequest) GetPacketAddress() string

func (*ContextUpdateRequest) ProtoMessage

func (*ContextUpdateRequest) ProtoMessage()

func (*ContextUpdateRequest) ProtoReflect

func (x *ContextUpdateRequest) ProtoReflect() protoreflect.Message

func (*ContextUpdateRequest) Reset

func (x *ContextUpdateRequest) Reset()

func (*ContextUpdateRequest) String

func (x *ContextUpdateRequest) String() string

type ContextUpdateRequest_Operation

type ContextUpdateRequest_Operation int32
const (
	ContextUpdateRequest_OPERATION_UNSPECIFIED                 ContextUpdateRequest_Operation = 0
	ContextUpdateRequest_OPERATION_UPDATE_PACKET_ADDRESS       ContextUpdateRequest_Operation = 1 // Update the packet sink service address.
	ContextUpdateRequest_OPERATION_UPDATE_NOTIFICATION_ADDRESS ContextUpdateRequest_Operation = 2 // Update the notification service address.
)

func (ContextUpdateRequest_Operation) Descriptor

func (ContextUpdateRequest_Operation) Enum

func (ContextUpdateRequest_Operation) EnumDescriptor deprecated

func (ContextUpdateRequest_Operation) EnumDescriptor() ([]byte, []int)

Deprecated: Use ContextUpdateRequest_Operation.Descriptor instead.

func (ContextUpdateRequest_Operation) Number

func (ContextUpdateRequest_Operation) String

func (ContextUpdateRequest_Operation) Type

type Counter

type Counter struct {
	Id    CounterId `protobuf:"varint,1,opt,name=id,proto3,enum=forwarding.CounterId" json:"id,omitempty"`
	Value uint64    `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

A Counter is a counter-id and its value.

func (*Counter) Descriptor deprecated

func (*Counter) Descriptor() ([]byte, []int)

Deprecated: Use Counter.ProtoReflect.Descriptor instead.

func (*Counter) GetId

func (x *Counter) GetId() CounterId

func (*Counter) GetValue

func (x *Counter) GetValue() uint64

func (*Counter) ProtoMessage

func (*Counter) ProtoMessage()

func (*Counter) ProtoReflect

func (x *Counter) ProtoReflect() protoreflect.Message

func (*Counter) Reset

func (x *Counter) Reset()

func (*Counter) String

func (x *Counter) String() string

type CounterId

type CounterId int32

CounterId enumerates the various counters that may be maintained.

const (
	CounterId_COUNTER_ID_UNSPECIFIED           CounterId = 0   // Represents a non existing counter.
	CounterId_COUNTER_ID_RX_PACKETS            CounterId = 1   // Number of received packets.
	CounterId_COUNTER_ID_RX_OCTETS             CounterId = 2   // Number of received octets.
	CounterId_COUNTER_ID_RX_DROP_PACKETS       CounterId = 3   // Number of packets dropped after receiving.
	CounterId_COUNTER_ID_RX_DROP_OCTETS        CounterId = 4   // Number of octets dropped after receiving.
	CounterId_COUNTER_ID_RX_ERROR_PACKETS      CounterId = 5   // Number of packets with errors after receiving.
	CounterId_COUNTER_ID_RX_ERROR_OCTETS       CounterId = 6   // Number of octets with error after receiving.
	CounterId_COUNTER_ID_TX_PACKETS            CounterId = 7   // Number of packets that were enqueued for TX.
	CounterId_COUNTER_ID_TX_OCTETS             CounterId = 8   // Number of octets that were enqueued for TX .
	CounterId_COUNTER_ID_TX_DROP_PACKETS       CounterId = 9   // Number of packets dropped after TX enqueue.
	CounterId_COUNTER_ID_TX_DROP_OCTETS        CounterId = 10  // Number of octets dropped after TX enqueue.
	CounterId_COUNTER_ID_TX_ERROR_PACKETS      CounterId = 11  // Number of packets with errors after TX enqueue.
	CounterId_COUNTER_ID_TX_ERROR_OCTETS       CounterId = 12  // Number of octets with error after after TX enqueue.
	CounterId_COUNTER_ID_RATELIMIT_PACKETS     CounterId = 13  // Number of ratelimit packets.
	CounterId_COUNTER_ID_RATELIMIT_OCTETS      CounterId = 14  // Number of ratelimit octets.
	CounterId_COUNTER_ID_DROP_PACKETS          CounterId = 15  // Number of dropped packets.
	CounterId_COUNTER_ID_DROP_OCTETS           CounterId = 16  // Number of dropped octets.
	CounterId_COUNTER_ID_ERROR_PACKETS         CounterId = 17  // Number of error packets.
	CounterId_COUNTER_ID_ERROR_OCTETS          CounterId = 18  // Number of error octets.
	CounterId_COUNTER_ID_RX_BAD_PACKETS        CounterId = 19  // Number of bad packets.
	CounterId_COUNTER_ID_RX_BAD_OCTETS         CounterId = 20  // Number of bad octets.
	CounterId_COUNTER_ID_RX_ADMIN_DROP_PACKETS CounterId = 21  // Number of packets dropped due to an administrative reason.
	CounterId_COUNTER_ID_RX_ADMIN_DROP_OCTETS  CounterId = 22  // Number of octets dropped due to an administrative reason.
	CounterId_COUNTER_ID_TX_ADMIN_DROP_PACKETS CounterId = 23  // Number of packets dropped due to an administrative reason.
	CounterId_COUNTER_ID_TX_ADMIN_DROP_OCTETS  CounterId = 24  // Number of octets dropped due to an administrative reason.
	CounterId_COUNTER_ID_MIRROR_PACKETS        CounterId = 25  // Number of mirror packets.
	CounterId_COUNTER_ID_MIRROR_OCTETS         CounterId = 26  // Number of mirror octets.
	CounterId_COUNTER_ID_MIRROR_ERROR_PACKETS  CounterId = 27  // Number of mirror error packets.
	CounterId_COUNTER_ID_MIRROR_ERROR_OCTETS   CounterId = 28  // Number of mirror error octets.
	CounterId_COUNTER_ID_ENCAP_ERROR_PACKETS   CounterId = 29  // Number of encap error packets.
	CounterId_COUNTER_ID_ENCAP_ERROR_OCTETS    CounterId = 30  // Number of encap error octets.
	CounterId_COUNTER_ID_DECAP_ERROR_PACKETS   CounterId = 31  // Number of decap error packets.
	CounterId_COUNTER_ID_DECAP_ERROR_OCTETS    CounterId = 32  // Number of decap error octets.
	CounterId_COUNTER_ID_FLOW_COUNTER_OCTETS   CounterId = 33  // The byte_count value of flow counters.
	CounterId_COUNTER_ID_FLOW_COUNTER_PACKETS  CounterId = 34  // The packet_count value of flow counters.
	CounterId_COUNTER_ID_RX_DEBUG_PACKETS      CounterId = 35  // Number of packet debugged after receiving.
	CounterId_COUNTER_ID_RX_DEBUG_OCTETS       CounterId = 36  // Number of octets debugged after receiving.
	CounterId_COUNTER_ID_MAX                   CounterId = 255 // Maximum counter id.
)

func (CounterId) Descriptor

func (CounterId) Descriptor() protoreflect.EnumDescriptor

func (CounterId) Enum

func (x CounterId) Enum() *CounterId

func (CounterId) EnumDescriptor deprecated

func (CounterId) EnumDescriptor() ([]byte, []int)

Deprecated: Use CounterId.Descriptor instead.

func (CounterId) Number

func (x CounterId) Number() protoreflect.EnumNumber

func (CounterId) String

func (x CounterId) String() string

func (CounterId) Type

type DecapActionDesc

type DecapActionDesc struct {
	HeaderId PacketHeaderId `protobuf:"varint,1,opt,name=header_id,json=headerId,proto3,enum=forwarding.PacketHeaderId" json:"header_id,omitempty"` // Header to remove.
	// contains filtered or unexported fields
}

A DecapActionDesc describes DECAP_ACTION. The descriptor identifies the header that is removed from the packet. Note that when the packet has multiple instance of the specified header, the outermost instance is always removed.

func (*DecapActionDesc) Descriptor deprecated

func (*DecapActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use DecapActionDesc.ProtoReflect.Descriptor instead.

func (*DecapActionDesc) GetHeaderId

func (x *DecapActionDesc) GetHeaderId() PacketHeaderId

func (*DecapActionDesc) ProtoMessage

func (*DecapActionDesc) ProtoMessage()

func (*DecapActionDesc) ProtoReflect

func (x *DecapActionDesc) ProtoReflect() protoreflect.Message

func (*DecapActionDesc) Reset

func (x *DecapActionDesc) Reset()

func (*DecapActionDesc) String

func (x *DecapActionDesc) String() string

type Empty

type Empty struct {
	// contains filtered or unexported fields
}

func (*Empty) Descriptor deprecated

func (*Empty) Descriptor() ([]byte, []int)

Deprecated: Use Empty.ProtoReflect.Descriptor instead.

func (*Empty) ProtoMessage

func (*Empty) ProtoMessage()

func (*Empty) ProtoReflect

func (x *Empty) ProtoReflect() protoreflect.Message

func (*Empty) Reset

func (x *Empty) Reset()

func (*Empty) String

func (x *Empty) String() string

type EncapActionDesc

type EncapActionDesc struct {
	HeaderId PacketHeaderId `protobuf:"varint,1,opt,name=header_id,json=headerId,proto3,enum=forwarding.PacketHeaderId" json:"header_id,omitempty"` // Header to add.
	// contains filtered or unexported fields
}

An EncapActionDesc describes ENCAP_ACTION. The descriptor contains a header-id and a series of bytes that are added to the packet.

func (*EncapActionDesc) Descriptor deprecated

func (*EncapActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use EncapActionDesc.ProtoReflect.Descriptor instead.

func (*EncapActionDesc) GetHeaderId

func (x *EncapActionDesc) GetHeaderId() PacketHeaderId

func (*EncapActionDesc) ProtoMessage

func (*EncapActionDesc) ProtoMessage()

func (*EncapActionDesc) ProtoReflect

func (x *EncapActionDesc) ProtoReflect() protoreflect.Message

func (*EncapActionDesc) Reset

func (x *EncapActionDesc) Reset()

func (*EncapActionDesc) String

func (x *EncapActionDesc) String() string

type EntryDesc

type EntryDesc struct {

	// Types that are assignable to Entry:
	//	*EntryDesc_Exact
	//	*EntryDesc_Prefix
	//	*EntryDesc_Flow
	//	*EntryDesc_Bridge
	Entry isEntryDesc_Entry `protobuf_oneof:"entry"`
	// contains filtered or unexported fields
}

An EntryDesc describes how a table entry is identified.

func (*EntryDesc) Descriptor deprecated

func (*EntryDesc) Descriptor() ([]byte, []int)

Deprecated: Use EntryDesc.ProtoReflect.Descriptor instead.

func (*EntryDesc) GetBridge

func (x *EntryDesc) GetBridge() *BridgeTableDesc

func (*EntryDesc) GetEntry

func (m *EntryDesc) GetEntry() isEntryDesc_Entry

func (*EntryDesc) GetExact

func (x *EntryDesc) GetExact() *ExactEntryDesc

func (*EntryDesc) GetFlow

func (x *EntryDesc) GetFlow() *FlowEntryDesc

func (*EntryDesc) GetPrefix

func (x *EntryDesc) GetPrefix() *PrefixEntryDesc

func (*EntryDesc) ProtoMessage

func (*EntryDesc) ProtoMessage()

func (*EntryDesc) ProtoReflect

func (x *EntryDesc) ProtoReflect() protoreflect.Message

func (*EntryDesc) Reset

func (x *EntryDesc) Reset()

func (*EntryDesc) String

func (x *EntryDesc) String() string

type EntryDesc_Bridge

type EntryDesc_Bridge struct {
	Bridge *BridgeTableDesc `protobuf:"bytes,4,opt,name=bridge,proto3,oneof"`
}

type EntryDesc_Exact

type EntryDesc_Exact struct {
	Exact *ExactEntryDesc `protobuf:"bytes,1,opt,name=exact,proto3,oneof"`
}

type EntryDesc_Flow

type EntryDesc_Flow struct {
	Flow *FlowEntryDesc `protobuf:"bytes,3,opt,name=flow,proto3,oneof"`
}

type EntryDesc_Prefix

type EntryDesc_Prefix struct {
	Prefix *PrefixEntryDesc `protobuf:"bytes,2,opt,name=prefix,proto3,oneof"`
}

type Event

type Event int32

Event enumerates different types of events that can be generated.

const (
	Event_EVENT_UNSPECIFIED Event = 0
	Event_EVENT_PORT        Event = 1
)

func (Event) Descriptor

func (Event) Descriptor() protoreflect.EnumDescriptor

func (Event) Enum

func (x Event) Enum() *Event

func (Event) EnumDescriptor deprecated

func (Event) EnumDescriptor() ([]byte, []int)

Deprecated: Use Event.Descriptor instead.

func (Event) Number

func (x Event) Number() protoreflect.EnumNumber

func (Event) String

func (x Event) String() string

func (Event) Type

func (Event) Type() protoreflect.EnumType

type EventDesc

type EventDesc struct {
	Event          Event  `protobuf:"varint,1,opt,name=event,proto3,enum=forwarding.Event" json:"event,omitempty"`
	SequenceNumber uint64 `protobuf:"varint,2,opt,name=sequence_number,json=sequenceNumber,proto3" json:"sequence_number,omitempty"` // Monotonically increasing sequence number of event
	// Types that are assignable to Desc:
	//	*EventDesc_Port
	Desc isEventDesc_Desc `protobuf_oneof:"desc"`
	// contains filtered or unexported fields
}

EventDesc describes an event.

func (*EventDesc) Descriptor deprecated

func (*EventDesc) Descriptor() ([]byte, []int)

Deprecated: Use EventDesc.ProtoReflect.Descriptor instead.

func (*EventDesc) GetDesc

func (m *EventDesc) GetDesc() isEventDesc_Desc

func (*EventDesc) GetEvent

func (x *EventDesc) GetEvent() Event

func (*EventDesc) GetPort

func (x *EventDesc) GetPort() *PortEventDesc

func (*EventDesc) GetSequenceNumber

func (x *EventDesc) GetSequenceNumber() uint64

func (*EventDesc) ProtoMessage

func (*EventDesc) ProtoMessage()

func (*EventDesc) ProtoReflect

func (x *EventDesc) ProtoReflect() protoreflect.Message

func (*EventDesc) Reset

func (x *EventDesc) Reset()

func (*EventDesc) String

func (x *EventDesc) String() string

type EventDesc_Port

type EventDesc_Port struct {
	Port *PortEventDesc `protobuf:"bytes,3,opt,name=port,proto3,oneof"`
}

type ExactEntryDesc

type ExactEntryDesc struct {

	// Required packet fields used to match entries in the table.
	Fields []*PacketFieldBytes `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty"`
	// True if the entry should be timed out (based on the table's
	// transient_timeout) value.
	Transient bool `protobuf:"varint,2,opt,name=transient,proto3" json:"transient,omitempty"`
	// contains filtered or unexported fields
}

A ExactEntryDesc describes an entry in an EXACT_TABLE. An entry in the table is idenfied by the values of the specified packet fields. Note that the ordering of the packet fields is determined by the table desc.

func (*ExactEntryDesc) Descriptor deprecated

func (*ExactEntryDesc) Descriptor() ([]byte, []int)

Deprecated: Use ExactEntryDesc.ProtoReflect.Descriptor instead.

func (*ExactEntryDesc) GetFields

func (x *ExactEntryDesc) GetFields() []*PacketFieldBytes

func (*ExactEntryDesc) GetTransient

func (x *ExactEntryDesc) GetTransient() bool

func (*ExactEntryDesc) ProtoMessage

func (*ExactEntryDesc) ProtoMessage()

func (*ExactEntryDesc) ProtoReflect

func (x *ExactEntryDesc) ProtoReflect() protoreflect.Message

func (*ExactEntryDesc) Reset

func (x *ExactEntryDesc) Reset()

func (*ExactEntryDesc) String

func (x *ExactEntryDesc) String() string

type ExactTableDesc

type ExactTableDesc struct {

	// Required packet fields used to match entries in the table.
	FieldIds []*PacketFieldId `protobuf:"bytes,1,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`
	//  timeout value for entries. If no timeout is specified, entries are
	// never timed out.
	TransientTimeout uint32 `protobuf:"varint,2,opt,name=transient_timeout,json=transientTimeout,proto3" json:"transient_timeout,omitempty"`
	// contains filtered or unexported fields
}

An ExactTableDesc describes a EXACT_TABLE. All entries within the table are idenfied by unique keys formed by the specified packet fields. The table monitors and removes transient entries that are not used for a configured amount of time.

func (*ExactTableDesc) Descriptor deprecated

func (*ExactTableDesc) Descriptor() ([]byte, []int)

Deprecated: Use ExactTableDesc.ProtoReflect.Descriptor instead.

func (*ExactTableDesc) GetFieldIds

func (x *ExactTableDesc) GetFieldIds() []*PacketFieldId

func (*ExactTableDesc) GetTransientTimeout

func (x *ExactTableDesc) GetTransientTimeout() uint32

func (*ExactTableDesc) ProtoMessage

func (*ExactTableDesc) ProtoMessage()

func (*ExactTableDesc) ProtoReflect

func (x *ExactTableDesc) ProtoReflect() protoreflect.Message

func (*ExactTableDesc) Reset

func (x *ExactTableDesc) Reset()

func (*ExactTableDesc) String

func (x *ExactTableDesc) String() string

type FlowCounter

type FlowCounter struct {
	Id      *FlowCounterId `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Octets  uint64         `protobuf:"varint,2,opt,name=octets,proto3" json:"octets,omitempty"`
	Packets uint64         `protobuf:"varint,3,opt,name=packets,proto3" json:"packets,omitempty"`
	// contains filtered or unexported fields
}

The value contained in the flow counter, along with an identifier for it.

func (*FlowCounter) Descriptor deprecated

func (*FlowCounter) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounter.ProtoReflect.Descriptor instead.

func (*FlowCounter) GetId

func (x *FlowCounter) GetId() *FlowCounterId

func (*FlowCounter) GetOctets

func (x *FlowCounter) GetOctets() uint64

func (*FlowCounter) GetPackets

func (x *FlowCounter) GetPackets() uint64

func (*FlowCounter) ProtoMessage

func (*FlowCounter) ProtoMessage()

func (*FlowCounter) ProtoReflect

func (x *FlowCounter) ProtoReflect() protoreflect.Message

func (*FlowCounter) Reset

func (x *FlowCounter) Reset()

func (*FlowCounter) String

func (x *FlowCounter) String() string

type FlowCounterActionDesc

type FlowCounterActionDesc struct {
	CounterId *FlowCounterId `protobuf:"bytes,1,opt,name=counter_id,json=counterId,proto3" json:"counter_id,omitempty"`
	// contains filtered or unexported fields
}

A FlowCounterActionDesc describes a FLOW_COUNTER_ACTION. It increments the per flow counter associated with this row; the id of the counter is specified.

func (*FlowCounterActionDesc) Descriptor deprecated

func (*FlowCounterActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounterActionDesc.ProtoReflect.Descriptor instead.

func (*FlowCounterActionDesc) GetCounterId

func (x *FlowCounterActionDesc) GetCounterId() *FlowCounterId

func (*FlowCounterActionDesc) ProtoMessage

func (*FlowCounterActionDesc) ProtoMessage()

func (*FlowCounterActionDesc) ProtoReflect

func (x *FlowCounterActionDesc) ProtoReflect() protoreflect.Message

func (*FlowCounterActionDesc) Reset

func (x *FlowCounterActionDesc) Reset()

func (*FlowCounterActionDesc) String

func (x *FlowCounterActionDesc) String() string

type FlowCounterCreateReply

type FlowCounterCreateReply struct {
	// contains filtered or unexported fields
}

func (*FlowCounterCreateReply) Descriptor deprecated

func (*FlowCounterCreateReply) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounterCreateReply.ProtoReflect.Descriptor instead.

func (*FlowCounterCreateReply) ProtoMessage

func (*FlowCounterCreateReply) ProtoMessage()

func (*FlowCounterCreateReply) ProtoReflect

func (x *FlowCounterCreateReply) ProtoReflect() protoreflect.Message

func (*FlowCounterCreateReply) Reset

func (x *FlowCounterCreateReply) Reset()

func (*FlowCounterCreateReply) String

func (x *FlowCounterCreateReply) String() string

type FlowCounterCreateRequest

type FlowCounterCreateRequest struct {
	ContextId *ContextId     `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	Id        *FlowCounterId `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

A FlowCounterCreateRequest is a request to create a per flow counter.

func (*FlowCounterCreateRequest) Descriptor deprecated

func (*FlowCounterCreateRequest) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounterCreateRequest.ProtoReflect.Descriptor instead.

func (*FlowCounterCreateRequest) GetContextId

func (x *FlowCounterCreateRequest) GetContextId() *ContextId

func (*FlowCounterCreateRequest) GetId

func (*FlowCounterCreateRequest) ProtoMessage

func (*FlowCounterCreateRequest) ProtoMessage()

func (*FlowCounterCreateRequest) ProtoReflect

func (x *FlowCounterCreateRequest) ProtoReflect() protoreflect.Message

func (*FlowCounterCreateRequest) Reset

func (x *FlowCounterCreateRequest) Reset()

func (*FlowCounterCreateRequest) String

func (x *FlowCounterCreateRequest) String() string

type FlowCounterId

type FlowCounterId struct {
	ObjectId *ObjectId `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	// contains filtered or unexported fields
}

An Id uniquely identifies a flow counter, within the specified forwarding context.

func (*FlowCounterId) Descriptor deprecated

func (*FlowCounterId) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounterId.ProtoReflect.Descriptor instead.

func (*FlowCounterId) GetObjectId

func (x *FlowCounterId) GetObjectId() *ObjectId

func (*FlowCounterId) ProtoMessage

func (*FlowCounterId) ProtoMessage()

func (*FlowCounterId) ProtoReflect

func (x *FlowCounterId) ProtoReflect() protoreflect.Message

func (*FlowCounterId) Reset

func (x *FlowCounterId) Reset()

func (*FlowCounterId) String

func (x *FlowCounterId) String() string

type FlowCounterQueryReply

type FlowCounterQueryReply struct {
	Counters []*FlowCounter `protobuf:"bytes,1,rep,name=counters,proto3" json:"counters,omitempty"`
	// contains filtered or unexported fields
}

func (*FlowCounterQueryReply) Descriptor deprecated

func (*FlowCounterQueryReply) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounterQueryReply.ProtoReflect.Descriptor instead.

func (*FlowCounterQueryReply) GetCounters

func (x *FlowCounterQueryReply) GetCounters() []*FlowCounter

func (*FlowCounterQueryReply) ProtoMessage

func (*FlowCounterQueryReply) ProtoMessage()

func (*FlowCounterQueryReply) ProtoReflect

func (x *FlowCounterQueryReply) ProtoReflect() protoreflect.Message

func (*FlowCounterQueryReply) Reset

func (x *FlowCounterQueryReply) Reset()

func (*FlowCounterQueryReply) String

func (x *FlowCounterQueryReply) String() string

type FlowCounterQueryRequest

type FlowCounterQueryRequest struct {
	ContextId *ContextId       `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	Ids       []*FlowCounterId `protobuf:"bytes,2,rep,name=ids,proto3" json:"ids,omitempty"`
	// contains filtered or unexported fields
}

A FlowCounterQueryRequest is a request to read a bunch of flow counters.

func (*FlowCounterQueryRequest) Descriptor deprecated

func (*FlowCounterQueryRequest) Descriptor() ([]byte, []int)

Deprecated: Use FlowCounterQueryRequest.ProtoReflect.Descriptor instead.

func (*FlowCounterQueryRequest) GetContextId

func (x *FlowCounterQueryRequest) GetContextId() *ContextId

func (*FlowCounterQueryRequest) GetIds

func (x *FlowCounterQueryRequest) GetIds() []*FlowCounterId

func (*FlowCounterQueryRequest) ProtoMessage

func (*FlowCounterQueryRequest) ProtoMessage()

func (*FlowCounterQueryRequest) ProtoReflect

func (x *FlowCounterQueryRequest) ProtoReflect() protoreflect.Message

func (*FlowCounterQueryRequest) Reset

func (x *FlowCounterQueryRequest) Reset()

func (*FlowCounterQueryRequest) String

func (x *FlowCounterQueryRequest) String() string

type FlowEntryDesc

type FlowEntryDesc struct {

	//  priority of the flow.
	Priority uint32 `protobuf:"varint,1,opt,name=priority,proto3" json:"priority,omitempty"`
	//  packet fields and their masked values used to match packets to
	// this entry. If no fields are specified, the entry matches all packets.
	Fields []*PacketFieldMaskedBytes `protobuf:"bytes,2,rep,name=fields,proto3" json:"fields,omitempty"`
	//  bank where this entry should be added.
	Bank uint32 `protobuf:"varint,3,opt,name=bank,proto3" json:"bank,omitempty"`
	//  id of the entry.
	Id uint32 `protobuf:"varint,4,opt,name=id,proto3" json:"id,omitempty"`
	//  set of qualifiers used to match packets to this entry. A qualifier
	// matches a packet field to one of a set of possible values.
	Qualifiers []*PacketFieldSet `protobuf:"bytes,5,rep,name=qualifiers,proto3" json:"qualifiers,omitempty"`
	// contains filtered or unexported fields
}

A FlowEntryDesc describes an entry in a FLOW_TABLE. Each entry is described by a priority, bank, id, a set of bits in various packet fields and set of qualifiers describing possible values of various packet fields.

func (*FlowEntryDesc) Descriptor deprecated

func (*FlowEntryDesc) Descriptor() ([]byte, []int)

Deprecated: Use FlowEntryDesc.ProtoReflect.Descriptor instead.

func (*FlowEntryDesc) GetBank

func (x *FlowEntryDesc) GetBank() uint32

func (*FlowEntryDesc) GetFields

func (x *FlowEntryDesc) GetFields() []*PacketFieldMaskedBytes

func (*FlowEntryDesc) GetId

func (x *FlowEntryDesc) GetId() uint32

func (*FlowEntryDesc) GetPriority

func (x *FlowEntryDesc) GetPriority() uint32

func (*FlowEntryDesc) GetQualifiers

func (x *FlowEntryDesc) GetQualifiers() []*PacketFieldSet

func (*FlowEntryDesc) ProtoMessage

func (*FlowEntryDesc) ProtoMessage()

func (*FlowEntryDesc) ProtoReflect

func (x *FlowEntryDesc) ProtoReflect() protoreflect.Message

func (*FlowEntryDesc) Reset

func (x *FlowEntryDesc) Reset()

func (*FlowEntryDesc) String

func (x *FlowEntryDesc) String() string

type FlowTableDesc

type FlowTableDesc struct {

	//  number of banks in the flow table.
	BankCount uint32 `protobuf:"varint,1,opt,name=bank_count,json=bankCount,proto3" json:"bank_count,omitempty"`
	// contains filtered or unexported fields
}

A FlowTableDesc describes a FLOW_TABLE. The table consists of multiple banks that are looked up in parallel. Each bank contains flows in priority order. The priority order is numerically reversed i.e. higher priorities have lower numeric values. Note that ther priority between banks is such that Bank0 gets the highest priority. There is a caveat with actions that consume the packet. When such an action is encountered and it is set to immediate, it will be carried out when looked up regardless of the priority between banks. For instance, if Bank1 says to transmit the packet and Bank0 says to drop the packet, then the packet will be transmitted because Bank1 gets looked up first. This is done so that Bank0 will get looked up last and thus get the highest priority.

func (*FlowTableDesc) Descriptor deprecated

func (*FlowTableDesc) Descriptor() ([]byte, []int)

Deprecated: Use FlowTableDesc.ProtoReflect.Descriptor instead.

func (*FlowTableDesc) GetBankCount

func (x *FlowTableDesc) GetBankCount() uint32

func (*FlowTableDesc) ProtoMessage

func (*FlowTableDesc) ProtoMessage()

func (*FlowTableDesc) ProtoReflect

func (x *FlowTableDesc) ProtoReflect() protoreflect.Message

func (*FlowTableDesc) Reset

func (x *FlowTableDesc) Reset()

func (*FlowTableDesc) String

func (x *FlowTableDesc) String() string

type InfoClient

type InfoClient interface {
	// InfoList retrieves a list of all information elements.
	InfoList(ctx context.Context, in *InfoListRequest, opts ...grpc.CallOption) (*InfoListReply, error)
	// InfoElement retrieves the contents of the specified information element.
	InfoElement(ctx context.Context, in *InfoElementRequest, opts ...grpc.CallOption) (*InfoElementReply, error)
}

InfoClient is the client API for Info service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewInfoClient

func NewInfoClient(cc grpc.ClientConnInterface) InfoClient

type InfoElementReply

type InfoElementReply struct {
	Content string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
	// contains filtered or unexported fields
}

An InfoElementReply is the formatted contents of the specified information element.

func (*InfoElementReply) Descriptor deprecated

func (*InfoElementReply) Descriptor() ([]byte, []int)

Deprecated: Use InfoElementReply.ProtoReflect.Descriptor instead.

func (*InfoElementReply) GetContent

func (x *InfoElementReply) GetContent() string

func (*InfoElementReply) ProtoMessage

func (*InfoElementReply) ProtoMessage()

func (*InfoElementReply) ProtoReflect

func (x *InfoElementReply) ProtoReflect() protoreflect.Message

func (*InfoElementReply) Reset

func (x *InfoElementReply) Reset()

func (*InfoElementReply) String

func (x *InfoElementReply) String() string

type InfoElementRequest

type InfoElementRequest struct {
	Name  string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Type  InfoType `protobuf:"varint,2,opt,name=type,proto3,enum=forwarding.InfoType" json:"type,omitempty"`
	Frame []byte   `protobuf:"bytes,3,opt,name=frame,proto3" json:"frame,omitempty"` // packet frame if applicable
	// Start header of the frame if applicable. (INFO_TYPE_LOOKUP,
	// INFO_PORT_INPUT, INFO_PORT_OUTPUT)
	StartHeader PacketHeaderId `` /* 126-byte string literal not displayed */
	// contains filtered or unexported fields
}

An InfoElementRequest is a request for the contents of the specified information element. The request specifies the type of information and arguments if needed by the type of information.

func (*InfoElementRequest) Descriptor deprecated

func (*InfoElementRequest) Descriptor() ([]byte, []int)

Deprecated: Use InfoElementRequest.ProtoReflect.Descriptor instead.

func (*InfoElementRequest) GetFrame

func (x *InfoElementRequest) GetFrame() []byte

func (*InfoElementRequest) GetName

func (x *InfoElementRequest) GetName() string

func (*InfoElementRequest) GetStartHeader

func (x *InfoElementRequest) GetStartHeader() PacketHeaderId

func (*InfoElementRequest) GetType

func (x *InfoElementRequest) GetType() InfoType

func (*InfoElementRequest) ProtoMessage

func (*InfoElementRequest) ProtoMessage()

func (*InfoElementRequest) ProtoReflect

func (x *InfoElementRequest) ProtoReflect() protoreflect.Message

func (*InfoElementRequest) Reset

func (x *InfoElementRequest) Reset()

func (*InfoElementRequest) String

func (x *InfoElementRequest) String() string

type InfoListReply

type InfoListReply struct {
	Names []string `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"`
	// contains filtered or unexported fields
}

An InfoListReply is a list of all information elements.

func (*InfoListReply) Descriptor deprecated

func (*InfoListReply) Descriptor() ([]byte, []int)

Deprecated: Use InfoListReply.ProtoReflect.Descriptor instead.

func (*InfoListReply) GetNames

func (x *InfoListReply) GetNames() []string

func (*InfoListReply) ProtoMessage

func (*InfoListReply) ProtoMessage()

func (*InfoListReply) ProtoReflect

func (x *InfoListReply) ProtoReflect() protoreflect.Message

func (*InfoListReply) Reset

func (x *InfoListReply) Reset()

func (*InfoListReply) String

func (x *InfoListReply) String() string

type InfoListRequest

type InfoListRequest struct {
	// contains filtered or unexported fields
}

An InfoListRequest is a request to list all information elements.

func (*InfoListRequest) Descriptor deprecated

func (*InfoListRequest) Descriptor() ([]byte, []int)

Deprecated: Use InfoListRequest.ProtoReflect.Descriptor instead.

func (*InfoListRequest) ProtoMessage

func (*InfoListRequest) ProtoMessage()

func (*InfoListRequest) ProtoReflect

func (x *InfoListRequest) ProtoReflect() protoreflect.Message

func (*InfoListRequest) Reset

func (x *InfoListRequest) Reset()

func (*InfoListRequest) String

func (x *InfoListRequest) String() string

type InfoServer

type InfoServer interface {
	// InfoList retrieves a list of all information elements.
	InfoList(context.Context, *InfoListRequest) (*InfoListReply, error)
	// InfoElement retrieves the contents of the specified information element.
	InfoElement(context.Context, *InfoElementRequest) (*InfoElementReply, error)
	// contains filtered or unexported methods
}

InfoServer is the server API for Info service. All implementations must embed UnimplementedInfoServer for forward compatibility

type InfoType

type InfoType int32

InfoType enumerates the different types of information contained in an information element. The current types of information are: INFO_TYPE_ALL - All information present in the element. It is supported by

all info elements and does not need any additional arguments.

INFO_TYPE_LOOKUP - Information about the lookup of the given frame in the

specific table.

INFO_TYPE_PORT_INPUT - Information about the input processing of the given

frame by the specified port.

INFO_TYPE_PORT_OUTPUT - Information about the output processing of the given

frame by the specified port.
const (
	InfoType_INFO_TYPE_UNSPECIFIED InfoType = 0
	InfoType_INFO_TYPE_ALL         InfoType = 1
	InfoType_INFO_TYPE_LOOKUP      InfoType = 2
	InfoType_INFO_TYPE_PORT_INPUT  InfoType = 3
	InfoType_INFO_TYPE_PORT_OUTPUT InfoType = 4
)

func (InfoType) Descriptor

func (InfoType) Descriptor() protoreflect.EnumDescriptor

func (InfoType) Enum

func (x InfoType) Enum() *InfoType

func (InfoType) EnumDescriptor deprecated

func (InfoType) EnumDescriptor() ([]byte, []int)

Deprecated: Use InfoType.Descriptor instead.

func (InfoType) Number

func (x InfoType) Number() protoreflect.EnumNumber

func (InfoType) String

func (x InfoType) String() string

func (InfoType) Type

type KernelPortDesc

type KernelPortDesc struct {
	DeviceName string `protobuf:"bytes,1,opt,name=device_name,json=deviceName,proto3" json:"device_name,omitempty"`
	// contains filtered or unexported fields
}

func (*KernelPortDesc) Descriptor deprecated

func (*KernelPortDesc) Descriptor() ([]byte, []int)

Deprecated: Use KernelPortDesc.ProtoReflect.Descriptor instead.

func (*KernelPortDesc) GetDeviceName

func (x *KernelPortDesc) GetDeviceName() string

func (*KernelPortDesc) ProtoMessage

func (*KernelPortDesc) ProtoMessage()

func (*KernelPortDesc) ProtoReflect

func (x *KernelPortDesc) ProtoReflect() protoreflect.Message

func (*KernelPortDesc) Reset

func (x *KernelPortDesc) Reset()

func (*KernelPortDesc) String

func (x *KernelPortDesc) String() string

type KernelPortUpdateDesc

type KernelPortUpdateDesc struct {
	Inputs  []*ActionDesc `protobuf:"bytes,1,rep,name=inputs,proto3" json:"inputs,omitempty"`
	Outputs []*ActionDesc `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"`
	// contains filtered or unexported fields
}

A KernelPortUpdateDesc updates the kernel port's input and output actions.

func (*KernelPortUpdateDesc) Descriptor deprecated

func (*KernelPortUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use KernelPortUpdateDesc.ProtoReflect.Descriptor instead.

func (*KernelPortUpdateDesc) GetInputs

func (x *KernelPortUpdateDesc) GetInputs() []*ActionDesc

func (*KernelPortUpdateDesc) GetOutputs

func (x *KernelPortUpdateDesc) GetOutputs() []*ActionDesc

func (*KernelPortUpdateDesc) ProtoMessage

func (*KernelPortUpdateDesc) ProtoMessage()

func (*KernelPortUpdateDesc) ProtoReflect

func (x *KernelPortUpdateDesc) ProtoReflect() protoreflect.Message

func (*KernelPortUpdateDesc) Reset

func (x *KernelPortUpdateDesc) Reset()

func (*KernelPortUpdateDesc) String

func (x *KernelPortUpdateDesc) String() string

type LinkState

type LinkState int32

LinkState enumerates the state of a link between two ports. This can be the objective state of the link, or the state as seen by one of the ports.

LinkState is determined by the following rules: 1) If either port laser is DISABLED, the link is DOWN; else 2) if either port speed behavior is MATCH_ANY, the link is UP; else 3) if the speed of both ports is equal, the link is UP; else 4) the link is DOWN.

const (
	LinkState_LINK_STATE_UNSPECIFIED LinkState = 0
	LinkState_LINK_STATE_UP          LinkState = 1
	LinkState_LINK_STATE_DOWN        LinkState = 2
)

func (LinkState) Descriptor

func (LinkState) Descriptor() protoreflect.EnumDescriptor

func (LinkState) Enum

func (x LinkState) Enum() *LinkState

func (LinkState) EnumDescriptor deprecated

func (LinkState) EnumDescriptor() ([]byte, []int)

Deprecated: Use LinkState.Descriptor instead.

func (LinkState) Number

func (x LinkState) Number() protoreflect.EnumNumber

func (LinkState) String

func (x LinkState) String() string

func (LinkState) Type

type LinkStateDesc

type LinkStateDesc struct {
	State      LinkState `protobuf:"varint,1,opt,name=state,proto3,enum=forwarding.LinkState" json:"state,omitempty"`
	RemotePort *PortInfo `protobuf:"bytes,2,opt,name=remote_port,json=remotePort,proto3" json:"remote_port,omitempty"`
	// contains filtered or unexported fields
}

LinkStateDesc specifies whether a port's link is up, as well as more granular laser and speed information for the remote port (if one is connected).

func (*LinkStateDesc) Descriptor deprecated

func (*LinkStateDesc) Descriptor() ([]byte, []int)

Deprecated: Use LinkStateDesc.ProtoReflect.Descriptor instead.

func (*LinkStateDesc) GetRemotePort

func (x *LinkStateDesc) GetRemotePort() *PortInfo

func (*LinkStateDesc) GetState

func (x *LinkStateDesc) GetState() LinkState

func (*LinkStateDesc) ProtoMessage

func (*LinkStateDesc) ProtoMessage()

func (*LinkStateDesc) ProtoReflect

func (x *LinkStateDesc) ProtoReflect() protoreflect.Message

func (*LinkStateDesc) Reset

func (x *LinkStateDesc) Reset()

func (*LinkStateDesc) String

func (x *LinkStateDesc) String() string

type LookupActionDesc

type LookupActionDesc struct {
	TableId *TableId `protobuf:"bytes,1,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"` // Table used for lookup.
	// contains filtered or unexported fields
}

A LookupActionDesc describes LOOKUP_ACTION. The descriptor contains a table-id that identifies a table that is used to look up the packet to determine the next set of actions.

func (*LookupActionDesc) Descriptor deprecated

func (*LookupActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use LookupActionDesc.ProtoReflect.Descriptor instead.

func (*LookupActionDesc) GetTableId

func (x *LookupActionDesc) GetTableId() *TableId

func (*LookupActionDesc) ProtoMessage

func (*LookupActionDesc) ProtoMessage()

func (*LookupActionDesc) ProtoReflect

func (x *LookupActionDesc) ProtoReflect() protoreflect.Message

func (*LookupActionDesc) Reset

func (x *LookupActionDesc) Reset()

func (*LookupActionDesc) String

func (x *LookupActionDesc) String() string

type MirrorActionDesc

type MirrorActionDesc struct {
	Actions    []*ActionDesc    `protobuf:"bytes,3,rep,name=actions,proto3" json:"actions,omitempty"`                                                     // Actions applied to the mirrored packet
	PortId     *PortId          `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`                                         // Port used for mirroring
	PortAction PortAction       `protobuf:"varint,2,opt,name=port_action,json=portAction,proto3,enum=forwarding.PortAction" json:"port_action,omitempty"` // Indicates how the packet is injected
	FieldIds   []*PacketFieldId `protobuf:"bytes,4,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`                                   // Packet fields to restore
	// contains filtered or unexported fields
}

A MirrorActionDesc describes a MIRROR_ACTION. It mirrors the packet and applies the specified actions to the mirrored packet. If specified, the packet is then transmitted using the specified port and port action.

func (*MirrorActionDesc) Descriptor deprecated

func (*MirrorActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use MirrorActionDesc.ProtoReflect.Descriptor instead.

func (*MirrorActionDesc) GetActions

func (x *MirrorActionDesc) GetActions() []*ActionDesc

func (*MirrorActionDesc) GetFieldIds

func (x *MirrorActionDesc) GetFieldIds() []*PacketFieldId

func (*MirrorActionDesc) GetPortAction

func (x *MirrorActionDesc) GetPortAction() PortAction

func (*MirrorActionDesc) GetPortId

func (x *MirrorActionDesc) GetPortId() *PortId

func (*MirrorActionDesc) ProtoMessage

func (*MirrorActionDesc) ProtoMessage()

func (*MirrorActionDesc) ProtoReflect

func (x *MirrorActionDesc) ProtoReflect() protoreflect.Message

func (*MirrorActionDesc) Reset

func (x *MirrorActionDesc) Reset()

func (*MirrorActionDesc) String

func (x *MirrorActionDesc) String() string

type NotificationClient

type NotificationClient interface {
	// Notify notifies an event.
	Notify(ctx context.Context, in *EventDesc, opts ...grpc.CallOption) (*Empty, error)
}

NotificationClient is the client API for Notification service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type NotificationServer

type NotificationServer interface {
	// Notify notifies an event.
	Notify(context.Context, *EventDesc) (*Empty, error)
	// contains filtered or unexported methods
}

NotificationServer is the server API for Notification service. All implementations must embed UnimplementedNotificationServer for forward compatibility

type ObjectCountersReply

type ObjectCountersReply struct {
	Counters []*Counter `protobuf:"bytes,1,rep,name=counters,proto3" json:"counters,omitempty"`
	// contains filtered or unexported fields
}

func (*ObjectCountersReply) Descriptor deprecated

func (*ObjectCountersReply) Descriptor() ([]byte, []int)

Deprecated: Use ObjectCountersReply.ProtoReflect.Descriptor instead.

func (*ObjectCountersReply) GetCounters

func (x *ObjectCountersReply) GetCounters() []*Counter

func (*ObjectCountersReply) ProtoMessage

func (*ObjectCountersReply) ProtoMessage()

func (*ObjectCountersReply) ProtoReflect

func (x *ObjectCountersReply) ProtoReflect() protoreflect.Message

func (*ObjectCountersReply) Reset

func (x *ObjectCountersReply) Reset()

func (*ObjectCountersReply) String

func (x *ObjectCountersReply) String() string

type ObjectCountersRequest

type ObjectCountersRequest struct {
	ObjectId  *ObjectId  `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

An ObjectCountersRequest is a request for counters of an object associated with the specified id.

func (*ObjectCountersRequest) Descriptor deprecated

func (*ObjectCountersRequest) Descriptor() ([]byte, []int)

Deprecated: Use ObjectCountersRequest.ProtoReflect.Descriptor instead.

func (*ObjectCountersRequest) GetContextId

func (x *ObjectCountersRequest) GetContextId() *ContextId

func (*ObjectCountersRequest) GetObjectId

func (x *ObjectCountersRequest) GetObjectId() *ObjectId

func (*ObjectCountersRequest) ProtoMessage

func (*ObjectCountersRequest) ProtoMessage()

func (*ObjectCountersRequest) ProtoReflect

func (x *ObjectCountersRequest) ProtoReflect() protoreflect.Message

func (*ObjectCountersRequest) Reset

func (x *ObjectCountersRequest) Reset()

func (*ObjectCountersRequest) String

func (x *ObjectCountersRequest) String() string

type ObjectDeleteReply

type ObjectDeleteReply struct {
	// contains filtered or unexported fields
}

func (*ObjectDeleteReply) Descriptor deprecated

func (*ObjectDeleteReply) Descriptor() ([]byte, []int)

Deprecated: Use ObjectDeleteReply.ProtoReflect.Descriptor instead.

func (*ObjectDeleteReply) ProtoMessage

func (*ObjectDeleteReply) ProtoMessage()

func (*ObjectDeleteReply) ProtoReflect

func (x *ObjectDeleteReply) ProtoReflect() protoreflect.Message

func (*ObjectDeleteReply) Reset

func (x *ObjectDeleteReply) Reset()

func (*ObjectDeleteReply) String

func (x *ObjectDeleteReply) String() string

type ObjectDeleteRequest

type ObjectDeleteRequest struct {
	ObjectId  *ObjectId  `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

An ObjectDeleteRequest is a request to delete an existing object associated with the specified id.

func (*ObjectDeleteRequest) Descriptor deprecated

func (*ObjectDeleteRequest) Descriptor() ([]byte, []int)

Deprecated: Use ObjectDeleteRequest.ProtoReflect.Descriptor instead.

func (*ObjectDeleteRequest) GetContextId

func (x *ObjectDeleteRequest) GetContextId() *ContextId

func (*ObjectDeleteRequest) GetObjectId

func (x *ObjectDeleteRequest) GetObjectId() *ObjectId

func (*ObjectDeleteRequest) ProtoMessage

func (*ObjectDeleteRequest) ProtoMessage()

func (*ObjectDeleteRequest) ProtoReflect

func (x *ObjectDeleteRequest) ProtoReflect() protoreflect.Message

func (*ObjectDeleteRequest) Reset

func (x *ObjectDeleteRequest) Reset()

func (*ObjectDeleteRequest) String

func (x *ObjectDeleteRequest) String() string

type ObjectId

type ObjectId struct {
	Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

An ObjectId is a human readable identifier that is assigned by the client. It identifies a forwarding object within a forwarding context, and is used for all operations on the object.

func (*ObjectId) Descriptor deprecated

func (*ObjectId) Descriptor() ([]byte, []int)

Deprecated: Use ObjectId.ProtoReflect.Descriptor instead.

func (*ObjectId) GetId

func (x *ObjectId) GetId() string

func (*ObjectId) ProtoMessage

func (*ObjectId) ProtoMessage()

func (*ObjectId) ProtoReflect

func (x *ObjectId) ProtoReflect() protoreflect.Message

func (*ObjectId) Reset

func (x *ObjectId) Reset()

func (*ObjectId) String

func (x *ObjectId) String() string

type ObjectIndex

type ObjectIndex struct {
	Index uint64 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
	// contains filtered or unexported fields
}

An ObjectIndex is a numeric identifier that is assigned by lucius. It identifies a forwarding object within a forwarding context, and is used for identifying objects during packet processing.

func (*ObjectIndex) Descriptor deprecated

func (*ObjectIndex) Descriptor() ([]byte, []int)

Deprecated: Use ObjectIndex.ProtoReflect.Descriptor instead.

func (*ObjectIndex) GetIndex

func (x *ObjectIndex) GetIndex() uint64

func (*ObjectIndex) ProtoMessage

func (*ObjectIndex) ProtoMessage()

func (*ObjectIndex) ProtoReflect

func (x *ObjectIndex) ProtoReflect() protoreflect.Message

func (*ObjectIndex) Reset

func (x *ObjectIndex) Reset()

func (*ObjectIndex) String

func (x *ObjectIndex) String() string

type ObjectListReply

type ObjectListReply struct {
	Objects []*ObjectId `protobuf:"bytes,1,rep,name=objects,proto3" json:"objects,omitempty"`
	// contains filtered or unexported fields
}

func (*ObjectListReply) Descriptor deprecated

func (*ObjectListReply) Descriptor() ([]byte, []int)

Deprecated: Use ObjectListReply.ProtoReflect.Descriptor instead.

func (*ObjectListReply) GetObjects

func (x *ObjectListReply) GetObjects() []*ObjectId

func (*ObjectListReply) ProtoMessage

func (*ObjectListReply) ProtoMessage()

func (*ObjectListReply) ProtoReflect

func (x *ObjectListReply) ProtoReflect() protoreflect.Message

func (*ObjectListReply) Reset

func (x *ObjectListReply) Reset()

func (*ObjectListReply) String

func (x *ObjectListReply) String() string

type ObjectListRequest

type ObjectListRequest struct {
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

A ObjectListRequest is a request of all objects within forwarding.

func (*ObjectListRequest) Descriptor deprecated

func (*ObjectListRequest) Descriptor() ([]byte, []int)

Deprecated: Use ObjectListRequest.ProtoReflect.Descriptor instead.

func (*ObjectListRequest) GetContextId

func (x *ObjectListRequest) GetContextId() *ContextId

func (*ObjectListRequest) ProtoMessage

func (*ObjectListRequest) ProtoMessage()

func (*ObjectListRequest) ProtoReflect

func (x *ObjectListRequest) ProtoReflect() protoreflect.Message

func (*ObjectListRequest) Reset

func (x *ObjectListRequest) Reset()

func (*ObjectListRequest) String

func (x *ObjectListRequest) String() string

type OperationReply

type OperationReply struct {

	// Types that are assignable to Reply:
	//	*OperationReply_TableEntryAdd
	//	*OperationReply_TableEntryRemove
	Reply isOperationReply_Reply `protobuf_oneof:"reply"`
	// contains filtered or unexported fields
}

Union of all possible streaming message replies.

func (*OperationReply) Descriptor deprecated

func (*OperationReply) Descriptor() ([]byte, []int)

Deprecated: Use OperationReply.ProtoReflect.Descriptor instead.

func (*OperationReply) GetReply

func (m *OperationReply) GetReply() isOperationReply_Reply

func (*OperationReply) GetTableEntryAdd

func (x *OperationReply) GetTableEntryAdd() *TableEntryAddReply

func (*OperationReply) GetTableEntryRemove

func (x *OperationReply) GetTableEntryRemove() *TableEntryRemoveReply

func (*OperationReply) ProtoMessage

func (*OperationReply) ProtoMessage()

func (*OperationReply) ProtoReflect

func (x *OperationReply) ProtoReflect() protoreflect.Message

func (*OperationReply) Reset

func (x *OperationReply) Reset()

func (*OperationReply) String

func (x *OperationReply) String() string

type OperationReply_TableEntryAdd

type OperationReply_TableEntryAdd struct {
	TableEntryAdd *TableEntryAddReply `protobuf:"bytes,1,opt,name=table_entry_add,json=tableEntryAdd,proto3,oneof"`
}

type OperationReply_TableEntryRemove

type OperationReply_TableEntryRemove struct {
	TableEntryRemove *TableEntryRemoveReply `protobuf:"bytes,2,opt,name=table_entry_remove,json=tableEntryRemove,proto3,oneof"`
}

type OperationRequest

type OperationRequest struct {

	// Types that are assignable to Request:
	//	*OperationRequest_TableEntryAdd
	//	*OperationRequest_TableEntryRemove
	Request isOperationRequest_Request `protobuf_oneof:"request"`
	// contains filtered or unexported fields
}

Union of all possible streaming message requests.

func (*OperationRequest) Descriptor deprecated

func (*OperationRequest) Descriptor() ([]byte, []int)

Deprecated: Use OperationRequest.ProtoReflect.Descriptor instead.

func (*OperationRequest) GetRequest

func (m *OperationRequest) GetRequest() isOperationRequest_Request

func (*OperationRequest) GetTableEntryAdd

func (x *OperationRequest) GetTableEntryAdd() *TableEntryAddRequest

func (*OperationRequest) GetTableEntryRemove

func (x *OperationRequest) GetTableEntryRemove() *TableEntryRemoveRequest

func (*OperationRequest) ProtoMessage

func (*OperationRequest) ProtoMessage()

func (*OperationRequest) ProtoReflect

func (x *OperationRequest) ProtoReflect() protoreflect.Message

func (*OperationRequest) Reset

func (x *OperationRequest) Reset()

func (*OperationRequest) String

func (x *OperationRequest) String() string

type OperationRequest_TableEntryAdd

type OperationRequest_TableEntryAdd struct {
	TableEntryAdd *TableEntryAddRequest `protobuf:"bytes,1,opt,name=table_entry_add,json=tableEntryAdd,proto3,oneof"`
}

type OperationRequest_TableEntryRemove

type OperationRequest_TableEntryRemove struct {
	TableEntryRemove *TableEntryRemoveRequest `protobuf:"bytes,2,opt,name=table_entry_remove,json=tableEntryRemove,proto3,oneof"`
}

type PacketBytes

type PacketBytes struct {
	HeaderGroup PacketHeaderGroup ``                                                                       /* 129-byte string literal not displayed */
	Instance    uint32            `protobuf:"varint,2,opt,name=instance,proto3" json:"instance,omitempty"` // Instance of the header.
	Offset      uint32            `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`     // Offset in bytes within the header.
	Size        uint32            `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`         // Size in bytes.
	// contains filtered or unexported fields
}

PacketBytes identifies a set of bytes within the packet.

func (*PacketBytes) Descriptor deprecated

func (*PacketBytes) Descriptor() ([]byte, []int)

Deprecated: Use PacketBytes.ProtoReflect.Descriptor instead.

func (*PacketBytes) GetHeaderGroup

func (x *PacketBytes) GetHeaderGroup() PacketHeaderGroup

func (*PacketBytes) GetInstance

func (x *PacketBytes) GetInstance() uint32

func (*PacketBytes) GetOffset

func (x *PacketBytes) GetOffset() uint32

func (*PacketBytes) GetSize

func (x *PacketBytes) GetSize() uint32

func (*PacketBytes) ProtoMessage

func (*PacketBytes) ProtoMessage()

func (*PacketBytes) ProtoReflect

func (x *PacketBytes) ProtoReflect() protoreflect.Message

func (*PacketBytes) Reset

func (x *PacketBytes) Reset()

func (*PacketBytes) String

func (x *PacketBytes) String() string

type PacketField

type PacketField struct {
	FieldNum PacketFieldNum `protobuf:"varint,1,opt,name=field_num,json=fieldNum,proto3,enum=forwarding.PacketFieldNum" json:"field_num,omitempty"`
	Instance uint32         `protobuf:"varint,2,opt,name=instance,proto3" json:"instance,omitempty"` // Instance of the field.
	// contains filtered or unexported fields
}

PacketField identfies a field within the packet.

func (*PacketField) Descriptor deprecated

func (*PacketField) Descriptor() ([]byte, []int)

Deprecated: Use PacketField.ProtoReflect.Descriptor instead.

func (*PacketField) GetFieldNum

func (x *PacketField) GetFieldNum() PacketFieldNum

func (*PacketField) GetInstance

func (x *PacketField) GetInstance() uint32

func (*PacketField) ProtoMessage

func (*PacketField) ProtoMessage()

func (*PacketField) ProtoReflect

func (x *PacketField) ProtoReflect() protoreflect.Message

func (*PacketField) Reset

func (x *PacketField) Reset()

func (*PacketField) String

func (x *PacketField) String() string

type PacketFieldBytes

type PacketFieldBytes struct {
	FieldId *PacketFieldId `protobuf:"bytes,1,opt,name=field_id,json=fieldId,proto3" json:"field_id,omitempty"`
	Bytes   []byte         `protobuf:"bytes,2,opt,name=bytes,proto3" json:"bytes,omitempty"`
	// contains filtered or unexported fields
}

A PacketFieldBytes describes the value of a field as a series of bytes.

func (*PacketFieldBytes) Descriptor deprecated

func (*PacketFieldBytes) Descriptor() ([]byte, []int)

Deprecated: Use PacketFieldBytes.ProtoReflect.Descriptor instead.

func (*PacketFieldBytes) GetBytes

func (x *PacketFieldBytes) GetBytes() []byte

func (*PacketFieldBytes) GetFieldId

func (x *PacketFieldBytes) GetFieldId() *PacketFieldId

func (*PacketFieldBytes) ProtoMessage

func (*PacketFieldBytes) ProtoMessage()

func (*PacketFieldBytes) ProtoReflect

func (x *PacketFieldBytes) ProtoReflect() protoreflect.Message

func (*PacketFieldBytes) Reset

func (x *PacketFieldBytes) Reset()

func (*PacketFieldBytes) String

func (x *PacketFieldBytes) String() string

type PacketFieldId

type PacketFieldId struct {
	Field *PacketField `protobuf:"bytes,1,opt,name=field,proto3" json:"field,omitempty"`
	Bytes *PacketBytes `protobuf:"bytes,2,opt,name=bytes,proto3" json:"bytes,omitempty"`
	// contains filtered or unexported fields
}

PacketFieldId identifies a packet field. The field is either identified using an enumeration (PacketField) or a set of bytes (PacketByte)

func (*PacketFieldId) Descriptor deprecated

func (*PacketFieldId) Descriptor() ([]byte, []int)

Deprecated: Use PacketFieldId.ProtoReflect.Descriptor instead.

func (*PacketFieldId) GetBytes

func (x *PacketFieldId) GetBytes() *PacketBytes

func (*PacketFieldId) GetField

func (x *PacketFieldId) GetField() *PacketField

func (*PacketFieldId) ProtoMessage

func (*PacketFieldId) ProtoMessage()

func (*PacketFieldId) ProtoReflect

func (x *PacketFieldId) ProtoReflect() protoreflect.Message

func (*PacketFieldId) Reset

func (x *PacketFieldId) Reset()

func (*PacketFieldId) String

func (x *PacketFieldId) String() string

type PacketFieldMaskedBytes

type PacketFieldMaskedBytes struct {
	FieldId *PacketFieldId `protobuf:"bytes,1,opt,name=field_id,json=fieldId,proto3" json:"field_id,omitempty"`
	Bytes   []byte         `protobuf:"bytes,2,opt,name=bytes,proto3" json:"bytes,omitempty"`
	Masks   []byte         `protobuf:"bytes,3,opt,name=masks,proto3" json:"masks,omitempty"`
	// contains filtered or unexported fields
}

A PacketFieldMaskedBytes describes bits within a packet field as a series of bytes and masks.

func (*PacketFieldMaskedBytes) Descriptor deprecated

func (*PacketFieldMaskedBytes) Descriptor() ([]byte, []int)

Deprecated: Use PacketFieldMaskedBytes.ProtoReflect.Descriptor instead.

func (*PacketFieldMaskedBytes) GetBytes

func (x *PacketFieldMaskedBytes) GetBytes() []byte

func (*PacketFieldMaskedBytes) GetFieldId

func (x *PacketFieldMaskedBytes) GetFieldId() *PacketFieldId

func (*PacketFieldMaskedBytes) GetMasks

func (x *PacketFieldMaskedBytes) GetMasks() []byte

func (*PacketFieldMaskedBytes) ProtoMessage

func (*PacketFieldMaskedBytes) ProtoMessage()

func (*PacketFieldMaskedBytes) ProtoReflect

func (x *PacketFieldMaskedBytes) ProtoReflect() protoreflect.Message

func (*PacketFieldMaskedBytes) Reset

func (x *PacketFieldMaskedBytes) Reset()

func (*PacketFieldMaskedBytes) String

func (x *PacketFieldMaskedBytes) String() string

type PacketFieldNum

type PacketFieldNum int32

PacketFieldNum enumerates the packet fields recognized by forwarding.

const (
	PacketFieldNum_PACKET_FIELD_NUM_UNSPECIFIED         PacketFieldNum = 0
	PacketFieldNum_PACKET_FIELD_NUM_NONE                PacketFieldNum = 1
	PacketFieldNum_PACKET_FIELD_NUM_ETHER_MAC_SRC       PacketFieldNum = 2  // ethernet source mac address.
	PacketFieldNum_PACKET_FIELD_NUM_ETHER_MAC_DST       PacketFieldNum = 3  // ethernet destination mac address.
	PacketFieldNum_PACKET_FIELD_NUM_ETHER_TYPE          PacketFieldNum = 4  // ethernet type.
	PacketFieldNum_PACKET_FIELD_NUM_VLAN_TAG            PacketFieldNum = 5  // vlan tag.
	PacketFieldNum_PACKET_FIELD_NUM_VLAN_PRIORITY       PacketFieldNum = 6  // vlan priority.
	PacketFieldNum_PACKET_FIELD_NUM_IP_VERSION          PacketFieldNum = 7  // IP version of the packet.
	PacketFieldNum_PACKET_FIELD_NUM_IP_ADDR_SRC         PacketFieldNum = 8  // 16B IP source address (v4 or v6)
	PacketFieldNum_PACKET_FIELD_NUM_IP_ADDR_DST         PacketFieldNum = 9  // 16B IP destination address (v4 or v6).
	PacketFieldNum_PACKET_FIELD_NUM_IP_HOP              PacketFieldNum = 10 // IP hop limit (v6) or ttl (v4).
	PacketFieldNum_PACKET_FIELD_NUM_IP_PROTO            PacketFieldNum = 11 // IP protocol.
	PacketFieldNum_PACKET_FIELD_NUM_IP_QOS              PacketFieldNum = 12 // IP qos bits.
	PacketFieldNum_PACKET_FIELD_NUM_IP6_FLOW            PacketFieldNum = 13 // IPv6 flow label.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_PORT_INPUT   PacketFieldNum = 14 // Packet input port.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_PORT_OUTPUT  PacketFieldNum = 15 // Packet output port.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_LENGTH       PacketFieldNum = 16 // Packet length.
	PacketFieldNum_PACKET_FIELD_NUM_ICMP_TYPE           PacketFieldNum = 17 // ICMP type.
	PacketFieldNum_PACKET_FIELD_NUM_ICMP_CODE           PacketFieldNum = 18 // ICMP code.
	PacketFieldNum_PACKET_FIELD_NUM_L4_PORT_SRC         PacketFieldNum = 19 // L4 source port (UDP or TCP).
	PacketFieldNum_PACKET_FIELD_NUM_L4_PORT_DST         PacketFieldNum = 20 // L4 destination port (UDP or TCP).
	PacketFieldNum_PACKET_FIELD_NUM_TCP_FLAGS           PacketFieldNum = 21 // TCP flags.
	PacketFieldNum_PACKET_FIELD_NUM_ARP_TPA             PacketFieldNum = 22 // ARP target protocol address.
	PacketFieldNum_PACKET_FIELD_NUM_GRE_KEY             PacketFieldNum = 23 // GRE key.
	PacketFieldNum_PACKET_FIELD_NUM_GRE_SEQUENCE        PacketFieldNum = 24 // GRE sequence.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_VRF          PacketFieldNum = 25 // VRF ID.
	PacketFieldNum_PACKET_FIELD_NUM_ICMP6_ND_TARGET     PacketFieldNum = 26 // ICMPv6 ND target address.
	PacketFieldNum_PACKET_FIELD_NUM_ICMP6_ND_SLL        PacketFieldNum = 27 // ICMPv6 ND source link-layer address.
	PacketFieldNum_PACKET_FIELD_NUM_ICMP6_ND_TLL        PacketFieldNum = 28 // ICMPv6 ND target link-layer address.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_ATTRIBUTE_32 PacketFieldNum = 34 // 32-bit packet attributes.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_ATTRIBUTE_16 PacketFieldNum = 46 // 16-bit packet attributes.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_ATTRIBUTE_8  PacketFieldNum = 49 // 8-bit packet attributes.
	PacketFieldNum_PACKET_FIELD_NUM_PACKET_ATTRIBUTE_24 PacketFieldNum = 50 // 24-bit packet attributes.
	PacketFieldNum_PACKET_FIELD_NUM_ARP_TMAC            PacketFieldNum = 52 // ARP target mac address.
	PacketFieldNum_PACKET_FIELD_NUM_ARP_SMAC            PacketFieldNum = 53 // ARP source mac address.
	PacketFieldNum_PACKET_FIELD_NUM_ARP_SPA             PacketFieldNum = 54 // ARP source protocol address.
	PacketFieldNum_PACKET_FIELD_NUM_NEXT_HOP_IP         PacketFieldNum = 56 // Next hop ip (packet metadata).
	PacketFieldNum_PACKET_FIELD_NUM_COUNT               PacketFieldNum = 1000
)

func (PacketFieldNum) Descriptor

func (PacketFieldNum) Enum

func (x PacketFieldNum) Enum() *PacketFieldNum

func (PacketFieldNum) EnumDescriptor deprecated

func (PacketFieldNum) EnumDescriptor() ([]byte, []int)

Deprecated: Use PacketFieldNum.Descriptor instead.

func (PacketFieldNum) Number

func (PacketFieldNum) String

func (x PacketFieldNum) String() string

func (PacketFieldNum) Type

type PacketFieldSet

type PacketFieldSet struct {
	FieldId *PacketFieldId `protobuf:"bytes,1,opt,name=field_id,json=fieldId,proto3" json:"field_id,omitempty"`
	SetId   *SetId         `protobuf:"bytes,2,opt,name=set_id,json=setId,proto3" json:"set_id,omitempty"`
	// contains filtered or unexported fields
}

A PacketFieldSet describes the value of a field as one of a set of bytes. The set must reference to a precreated forwarding set with the appropriate values.

func (*PacketFieldSet) Descriptor deprecated

func (*PacketFieldSet) Descriptor() ([]byte, []int)

Deprecated: Use PacketFieldSet.ProtoReflect.Descriptor instead.

func (*PacketFieldSet) GetFieldId

func (x *PacketFieldSet) GetFieldId() *PacketFieldId

func (*PacketFieldSet) GetSetId

func (x *PacketFieldSet) GetSetId() *SetId

func (*PacketFieldSet) ProtoMessage

func (*PacketFieldSet) ProtoMessage()

func (*PacketFieldSet) ProtoReflect

func (x *PacketFieldSet) ProtoReflect() protoreflect.Message

func (*PacketFieldSet) Reset

func (x *PacketFieldSet) Reset()

func (*PacketFieldSet) String

func (x *PacketFieldSet) String() string

type PacketHeaderGroup

type PacketHeaderGroup int32

PacketHeaderGroup enumerates the groups of packet headers recognized by forwarding.

const (
	PacketHeaderGroup_PACKET_HEADER_GROUP_UNSPECIFIED PacketHeaderGroup = 0
	PacketHeaderGroup_PACKET_HEADER_GROUP_NONE        PacketHeaderGroup = 1
	PacketHeaderGroup_PACKET_HEADER_GROUP_PACKET      PacketHeaderGroup = 2 // Start of packet.
	PacketHeaderGroup_PACKET_HEADER_GROUP_L2          PacketHeaderGroup = 3 // L2 header.
	PacketHeaderGroup_PACKET_HEADER_GROUP_L3          PacketHeaderGroup = 4 // L3 header.
	PacketHeaderGroup_PACKET_HEADER_GROUP_L4          PacketHeaderGroup = 5 // L4 header.
	PacketHeaderGroup_PACKET_HEADER_GROUP_PAYLOAD     PacketHeaderGroup = 6 // Payload.
	PacketHeaderGroup_PACKET_HEADER_GROUP_COUNT       PacketHeaderGroup = 20
)

func (PacketHeaderGroup) Descriptor

func (PacketHeaderGroup) Enum

func (PacketHeaderGroup) EnumDescriptor deprecated

func (PacketHeaderGroup) EnumDescriptor() ([]byte, []int)

Deprecated: Use PacketHeaderGroup.Descriptor instead.

func (PacketHeaderGroup) Number

func (PacketHeaderGroup) String

func (x PacketHeaderGroup) String() string

func (PacketHeaderGroup) Type

type PacketHeaderId

type PacketHeaderId int32

PacketHeaderId enumerates the packet headers recognized by forwarding. METADATA - Contains packet attributes that are not encoded in the frame ETHERNET - Ethernet frame ETHERNET_VLAN - Single tag in an ethernet frame ETHERNET_1Q - Pair of tags in an ethernet frame IP4 - IP4 header as the packet or tunnel header IP6 - IP6 header as the packet or tunnel header IP - IP header which may be IP4 or IP6 GRE - GRE header in the GRE tunnel TCP - TCP header in the payload UDP - UDP header in the payload ARP - ARP message in the ethernet frame ICMP4 - ICMP message in a IP4 header OPAQUE - Represents opaque data ICMP6 - ICMP message in a IP6 header TUNNEL_6TO4_AUTO - IP4 header carrying IP6 where

pkt_inner_dip[127:112]=16’h2002 &
pkt_outer_dip[31:0]=pkt_inner_dip[111:80]
This used only for encap/decap and is defined by RFC 3056.

TUNNEL_6TO4_SECURE - IP4 header carrying IP6 where

pkt_inner_sip[127:112]=16’h2002 &
pkt_outer_sip[31:0]=pkt_inner_sip[111:80]
pkt_inner_dip[127:112]=16’h2002 &
pkt_outer_dip[31:0]=pkt_inner_dip[111:80]
This used only for encap/decap and is defined by RFC 3056.
const (
	PacketHeaderId_PACKET_HEADER_ID_UNSPECIFIED        PacketHeaderId = 0
	PacketHeaderId_PACKET_HEADER_ID_NONE               PacketHeaderId = 1
	PacketHeaderId_PACKET_HEADER_ID_METADATA           PacketHeaderId = 2
	PacketHeaderId_PACKET_HEADER_ID_ETHERNET           PacketHeaderId = 3
	PacketHeaderId_PACKET_HEADER_ID_ETHERNET_VLAN      PacketHeaderId = 4
	PacketHeaderId_PACKET_HEADER_ID_ETHERNET_1Q        PacketHeaderId = 5
	PacketHeaderId_PACKET_HEADER_ID_IP4                PacketHeaderId = 6
	PacketHeaderId_PACKET_HEADER_ID_IP6                PacketHeaderId = 7
	PacketHeaderId_PACKET_HEADER_ID_GRE                PacketHeaderId = 8
	PacketHeaderId_PACKET_HEADER_ID_TCP                PacketHeaderId = 9
	PacketHeaderId_PACKET_HEADER_ID_UDP                PacketHeaderId = 10
	PacketHeaderId_PACKET_HEADER_ID_ARP                PacketHeaderId = 11
	PacketHeaderId_PACKET_HEADER_ID_ICMP4              PacketHeaderId = 12
	PacketHeaderId_PACKET_HEADER_ID_OPAQUE             PacketHeaderId = 13
	PacketHeaderId_PACKET_HEADER_ID_ICMP6              PacketHeaderId = 14
	PacketHeaderId_PACKET_HEADER_ID_TUNNEL_6TO4_AUTO   PacketHeaderId = 15
	PacketHeaderId_PACKET_HEADER_ID_TUNNEL_6TO4_SECURE PacketHeaderId = 16
	PacketHeaderId_PACKET_HEADER_ID_IP                 PacketHeaderId = 19
	PacketHeaderId_PACKET_HEADER_ID_COUNT              PacketHeaderId = 1000
)

func (PacketHeaderId) Descriptor

func (PacketHeaderId) Enum

func (x PacketHeaderId) Enum() *PacketHeaderId

func (PacketHeaderId) EnumDescriptor deprecated

func (PacketHeaderId) EnumDescriptor() ([]byte, []int)

Deprecated: Use PacketHeaderId.Descriptor instead.

func (PacketHeaderId) Number

func (PacketHeaderId) String

func (x PacketHeaderId) String() string

func (PacketHeaderId) Type

type PacketInjectReply

type PacketInjectReply struct {
	// contains filtered or unexported fields
}

func (*PacketInjectReply) Descriptor deprecated

func (*PacketInjectReply) Descriptor() ([]byte, []int)

Deprecated: Use PacketInjectReply.ProtoReflect.Descriptor instead.

func (*PacketInjectReply) ProtoMessage

func (*PacketInjectReply) ProtoMessage()

func (*PacketInjectReply) ProtoReflect

func (x *PacketInjectReply) ProtoReflect() protoreflect.Message

func (*PacketInjectReply) Reset

func (x *PacketInjectReply) Reset()

func (*PacketInjectReply) String

func (x *PacketInjectReply) String() string

type PacketInjectRequest

type PacketInjectRequest struct {
	PortId       *PortId             `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`                    // Port used to process the packet
	ContextId    *ContextId          `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`           // Context containing the port
	Bytes        []byte              `protobuf:"bytes,3,opt,name=bytes,proto3" json:"bytes,omitempty"`                                    // Bytes in the L2 frame
	Action       PortAction          `protobuf:"varint,4,opt,name=action,proto3,enum=forwarding.PortAction" json:"action,omitempty"`      // Select a set of actions on the port
	Preprocesses []*ActionDesc       `protobuf:"bytes,7,rep,name=preprocesses,proto3" json:"preprocesses,omitempty"`                      // Actions used to preprocess the packet
	Ingress      *PortId             `protobuf:"bytes,8,opt,name=ingress,proto3" json:"ingress,omitempty"`                                // Identifies the ingress of the packet
	Egress       *PortId             `protobuf:"bytes,9,opt,name=egress,proto3" json:"egress,omitempty"`                                  // Identifies the egress of the packet
	StartHeader  PacketHeaderId      ``                                                                                                   /* 127-byte string literal not displayed */
	ParsedFields []*PacketFieldBytes `protobuf:"bytes,11,rep,name=parsed_fields,json=parsedFields,proto3" json:"parsed_fields,omitempty"` // List of fields describing the L2 frame
	Debug        bool                `protobuf:"varint,12,opt,name=debug,proto3" json:"debug,omitempty"`                                  // Whether to turn on debug messages.
	// contains filtered or unexported fields
}

PacketInjectRequest is a request to inject frames into the port.

func (*PacketInjectRequest) Descriptor deprecated

func (*PacketInjectRequest) Descriptor() ([]byte, []int)

Deprecated: Use PacketInjectRequest.ProtoReflect.Descriptor instead.

func (*PacketInjectRequest) GetAction

func (x *PacketInjectRequest) GetAction() PortAction

func (*PacketInjectRequest) GetBytes

func (x *PacketInjectRequest) GetBytes() []byte

func (*PacketInjectRequest) GetContextId

func (x *PacketInjectRequest) GetContextId() *ContextId

func (*PacketInjectRequest) GetDebug

func (x *PacketInjectRequest) GetDebug() bool

func (*PacketInjectRequest) GetEgress

func (x *PacketInjectRequest) GetEgress() *PortId

func (*PacketInjectRequest) GetIngress

func (x *PacketInjectRequest) GetIngress() *PortId

func (*PacketInjectRequest) GetParsedFields

func (x *PacketInjectRequest) GetParsedFields() []*PacketFieldBytes

func (*PacketInjectRequest) GetPortId

func (x *PacketInjectRequest) GetPortId() *PortId

func (*PacketInjectRequest) GetPreprocesses

func (x *PacketInjectRequest) GetPreprocesses() []*ActionDesc

func (*PacketInjectRequest) GetStartHeader

func (x *PacketInjectRequest) GetStartHeader() PacketHeaderId

func (*PacketInjectRequest) ProtoMessage

func (*PacketInjectRequest) ProtoMessage()

func (*PacketInjectRequest) ProtoReflect

func (x *PacketInjectRequest) ProtoReflect() protoreflect.Message

func (*PacketInjectRequest) Reset

func (x *PacketInjectRequest) Reset()

func (*PacketInjectRequest) String

func (x *PacketInjectRequest) String() string

type PacketSinkClient

type PacketSinkClient interface {
	// PacketInject injects a packet into the specified port.
	PacketInject(ctx context.Context, in *PacketInjectRequest, opts ...grpc.CallOption) (*PacketInjectReply, error)
}

PacketSinkClient is the client API for PacketSink service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewPacketSinkClient

func NewPacketSinkClient(cc grpc.ClientConnInterface) PacketSinkClient

type PacketSinkServer

type PacketSinkServer interface {
	// PacketInject injects a packet into the specified port.
	PacketInject(context.Context, *PacketInjectRequest) (*PacketInjectReply, error)
	// contains filtered or unexported methods
}

PacketSinkServer is the server API for PacketSink service. All implementations must embed UnimplementedPacketSinkServer for forward compatibility

type PortAction

type PortAction int32

PortAction enumerates the types of action sets associated with a port. INPUT is a set of actions applied to packets on ingress. OUTPUT is a set of actions applied to packets on egress. WRITE writes the packet out without applying any actions.

const (
	PortAction_PORT_ACTION_UNSPECIFIED PortAction = 0
	PortAction_PORT_ACTION_INPUT       PortAction = 1
	PortAction_PORT_ACTION_OUTPUT      PortAction = 2
	PortAction_PORT_ACTION_WRITE       PortAction = 3
)

func (PortAction) Descriptor

func (PortAction) Descriptor() protoreflect.EnumDescriptor

func (PortAction) Enum

func (x PortAction) Enum() *PortAction

func (PortAction) EnumDescriptor deprecated

func (PortAction) EnumDescriptor() ([]byte, []int)

Deprecated: Use PortAction.Descriptor instead.

func (PortAction) Number

func (x PortAction) Number() protoreflect.EnumNumber

func (PortAction) String

func (x PortAction) String() string

func (PortAction) Type

type PortCreateReply

type PortCreateReply struct {
	ObjectIndex *ObjectIndex `protobuf:"bytes,2,opt,name=object_index,json=objectIndex,proto3" json:"object_index,omitempty"`
	// contains filtered or unexported fields
}

func (*PortCreateReply) Descriptor deprecated

func (*PortCreateReply) Descriptor() ([]byte, []int)

Deprecated: Use PortCreateReply.ProtoReflect.Descriptor instead.

func (*PortCreateReply) GetObjectIndex

func (x *PortCreateReply) GetObjectIndex() *ObjectIndex

func (*PortCreateReply) ProtoMessage

func (*PortCreateReply) ProtoMessage()

func (*PortCreateReply) ProtoReflect

func (x *PortCreateReply) ProtoReflect() protoreflect.Message

func (*PortCreateReply) Reset

func (x *PortCreateReply) Reset()

func (*PortCreateReply) String

func (x *PortCreateReply) String() string

type PortCreateRequest

type PortCreateRequest struct {
	Port      *PortDesc  `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"`
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

A PortCreateRequest is a request to create a port.

func (*PortCreateRequest) Descriptor deprecated

func (*PortCreateRequest) Descriptor() ([]byte, []int)

Deprecated: Use PortCreateRequest.ProtoReflect.Descriptor instead.

func (*PortCreateRequest) GetContextId

func (x *PortCreateRequest) GetContextId() *ContextId

func (*PortCreateRequest) GetPort

func (x *PortCreateRequest) GetPort() *PortDesc

func (*PortCreateRequest) ProtoMessage

func (*PortCreateRequest) ProtoMessage()

func (*PortCreateRequest) ProtoReflect

func (x *PortCreateRequest) ProtoReflect() protoreflect.Message

func (*PortCreateRequest) Reset

func (x *PortCreateRequest) Reset()

func (*PortCreateRequest) String

func (x *PortCreateRequest) String() string

type PortDesc

type PortDesc struct {
	PortType PortType `protobuf:"varint,1,opt,name=port_type,json=portType,proto3,enum=forwarding.PortType" json:"port_type,omitempty"`
	PortId   *PortId  `protobuf:"bytes,2,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	// Types that are assignable to Port:
	//	*PortDesc_Cpu
	//	*PortDesc_Kernel
	//	*PortDesc_Tap
	Port isPortDesc_Port `protobuf_oneof:"port"`
	// contains filtered or unexported fields
}

A PortDesc describes a forwarding port. It is assumed that the descriptor will contain the appropriate message in the oneof describing the port's specific type.

func (*PortDesc) Descriptor deprecated

func (*PortDesc) Descriptor() ([]byte, []int)

Deprecated: Use PortDesc.ProtoReflect.Descriptor instead.

func (*PortDesc) GetCpu

func (x *PortDesc) GetCpu() *CPUPortDesc

func (*PortDesc) GetKernel

func (x *PortDesc) GetKernel() *KernelPortDesc

func (*PortDesc) GetPort

func (m *PortDesc) GetPort() isPortDesc_Port

func (*PortDesc) GetPortId

func (x *PortDesc) GetPortId() *PortId

func (*PortDesc) GetPortType

func (x *PortDesc) GetPortType() PortType

func (*PortDesc) GetTap

func (x *PortDesc) GetTap() *TAPPortDesc

func (*PortDesc) ProtoMessage

func (*PortDesc) ProtoMessage()

func (*PortDesc) ProtoReflect

func (x *PortDesc) ProtoReflect() protoreflect.Message

func (*PortDesc) Reset

func (x *PortDesc) Reset()

func (*PortDesc) String

func (x *PortDesc) String() string

type PortDesc_Cpu

type PortDesc_Cpu struct {
	Cpu *CPUPortDesc `protobuf:"bytes,3,opt,name=cpu,proto3,oneof"`
}

type PortDesc_Kernel

type PortDesc_Kernel struct {
	Kernel *KernelPortDesc `protobuf:"bytes,4,opt,name=kernel,proto3,oneof"`
}

type PortDesc_Tap

type PortDesc_Tap struct {
	Tap *TAPPortDesc `protobuf:"bytes,5,opt,name=tap,proto3,oneof"`
}

type PortEventDesc

type PortEventDesc struct {
	Context   *ContextId     `protobuf:"bytes,2,opt,name=context,proto3" json:"context,omitempty"`
	PortId    *PortId        `protobuf:"bytes,5,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	LinkEvent *LinkStateDesc `protobuf:"bytes,6,opt,name=link_event,json=linkEvent,proto3" json:"link_event,omitempty"`
	// contains filtered or unexported fields
}

PortEventDesc describes a change on the indicated port.

func (*PortEventDesc) Descriptor deprecated

func (*PortEventDesc) Descriptor() ([]byte, []int)

Deprecated: Use PortEventDesc.ProtoReflect.Descriptor instead.

func (*PortEventDesc) GetContext

func (x *PortEventDesc) GetContext() *ContextId

func (*PortEventDesc) GetLinkEvent

func (x *PortEventDesc) GetLinkEvent() *LinkStateDesc

func (*PortEventDesc) GetPortId

func (x *PortEventDesc) GetPortId() *PortId

func (*PortEventDesc) ProtoMessage

func (*PortEventDesc) ProtoMessage()

func (*PortEventDesc) ProtoReflect

func (x *PortEventDesc) ProtoReflect() protoreflect.Message

func (*PortEventDesc) Reset

func (x *PortEventDesc) Reset()

func (*PortEventDesc) String

func (x *PortEventDesc) String() string

type PortId

type PortId struct {
	ObjectId *ObjectId `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	// contains filtered or unexported fields
}

A PortId identifies a forwarding port.

func (*PortId) Descriptor deprecated

func (*PortId) Descriptor() ([]byte, []int)

Deprecated: Use PortId.ProtoReflect.Descriptor instead.

func (*PortId) GetObjectId

func (x *PortId) GetObjectId() *ObjectId

func (*PortId) ProtoMessage

func (*PortId) ProtoMessage()

func (*PortId) ProtoReflect

func (x *PortId) ProtoReflect() protoreflect.Message

func (*PortId) Reset

func (x *PortId) Reset()

func (*PortId) String

func (x *PortId) String() string

type PortInfo

type PortInfo struct {
	Laser PortLaserState `protobuf:"varint,1,opt,name=laser,proto3,enum=forwarding.PortLaserState" json:"laser,omitempty"`
	Speed *PortSpeed     `protobuf:"bytes,2,opt,name=speed,proto3" json:"speed,omitempty"`
	// contains filtered or unexported fields
}

PortInfo carries state information for a port.

func (*PortInfo) Descriptor deprecated

func (*PortInfo) Descriptor() ([]byte, []int)

Deprecated: Use PortInfo.ProtoReflect.Descriptor instead.

func (*PortInfo) GetLaser

func (x *PortInfo) GetLaser() PortLaserState

func (*PortInfo) GetSpeed

func (x *PortInfo) GetSpeed() *PortSpeed

func (*PortInfo) ProtoMessage

func (*PortInfo) ProtoMessage()

func (*PortInfo) ProtoReflect

func (x *PortInfo) ProtoReflect() protoreflect.Message

func (*PortInfo) Reset

func (x *PortInfo) Reset()

func (*PortInfo) String

func (x *PortInfo) String() string

type PortLaserState

type PortLaserState int32

PortLaserState describes the laser state of a port. It can be used either as a passive status or as an indicator of the desired state. For the link to be up, neither port laser can be disabled.

const (
	PortLaserState_PORT_LASER_STATE_UNSPECIFIED  PortLaserState = 0
	PortLaserState_PORT_LASER_STATE_NOT_EMULATED PortLaserState = 1 // Port is state-agnostic.
	PortLaserState_PORT_LASER_STATE_ENABLED      PortLaserState = 2 // Port laser is on.
	PortLaserState_PORT_LASER_STATE_DISABLED     PortLaserState = 3 // Port laser is off.
)

func (PortLaserState) Descriptor

func (PortLaserState) Enum

func (x PortLaserState) Enum() *PortLaserState

func (PortLaserState) EnumDescriptor deprecated

func (PortLaserState) EnumDescriptor() ([]byte, []int)

Deprecated: Use PortLaserState.Descriptor instead.

func (PortLaserState) Number

func (PortLaserState) String

func (x PortLaserState) String() string

func (PortLaserState) Type

type PortSpeed

type PortSpeed struct {
	Kbps     uint64            `protobuf:"varint,1,opt,name=kbps,proto3" json:"kbps,omitempty"`
	Behavior PortSpeedBehavior `protobuf:"varint,2,opt,name=behavior,proto3,enum=forwarding.PortSpeedBehavior" json:"behavior,omitempty"`
	// contains filtered or unexported fields
}

PortSpeed indicates the speed and speed-matching behavior used by a port.

func (*PortSpeed) Descriptor deprecated

func (*PortSpeed) Descriptor() ([]byte, []int)

Deprecated: Use PortSpeed.ProtoReflect.Descriptor instead.

func (*PortSpeed) GetBehavior

func (x *PortSpeed) GetBehavior() PortSpeedBehavior

func (*PortSpeed) GetKbps

func (x *PortSpeed) GetKbps() uint64

func (*PortSpeed) ProtoMessage

func (*PortSpeed) ProtoMessage()

func (*PortSpeed) ProtoReflect

func (x *PortSpeed) ProtoReflect() protoreflect.Message

func (*PortSpeed) Reset

func (x *PortSpeed) Reset()

func (*PortSpeed) String

func (x *PortSpeed) String() string

type PortSpeedBehavior

type PortSpeedBehavior int32

PortSpeedBehavior defines how the speed of a port affects its ability to connect with other ports. A link can only go up if its ports have matching speeds, or if at least one uses MATCH_ANY_SPEED behavior.

const (
	PortSpeedBehavior_PORT_SPEED_BEHAVIOR_UNSPECIFIED PortSpeedBehavior = 0
	// Matches any peer speed, regardless of peer behavior.
	PortSpeedBehavior_PORT_SPEED_BEHAVIOR_ANY_SPEED PortSpeedBehavior = 1
	// Matches if peer speed is equal, or if peer uses MATCH_ANY_SPEED.
	PortSpeedBehavior_PORT_SPEED_BEHAVIOR_SAME_SPEED PortSpeedBehavior = 2
)

func (PortSpeedBehavior) Descriptor

func (PortSpeedBehavior) Enum

func (PortSpeedBehavior) EnumDescriptor deprecated

func (PortSpeedBehavior) EnumDescriptor() ([]byte, []int)

Deprecated: Use PortSpeedBehavior.Descriptor instead.

func (PortSpeedBehavior) Number

func (PortSpeedBehavior) String

func (x PortSpeedBehavior) String() string

func (PortSpeedBehavior) Type

type PortStateReply

type PortStateReply struct {
	LocalPort *PortInfo      `protobuf:"bytes,2,opt,name=local_port,json=localPort,proto3" json:"local_port,omitempty"`
	Link      *LinkStateDesc `protobuf:"bytes,3,opt,name=link,proto3" json:"link,omitempty"`
	// contains filtered or unexported fields
}

func (*PortStateReply) Descriptor deprecated

func (*PortStateReply) Descriptor() ([]byte, []int)

Deprecated: Use PortStateReply.ProtoReflect.Descriptor instead.

func (x *PortStateReply) GetLink() *LinkStateDesc

func (*PortStateReply) GetLocalPort

func (x *PortStateReply) GetLocalPort() *PortInfo

func (*PortStateReply) ProtoMessage

func (*PortStateReply) ProtoMessage()

func (*PortStateReply) ProtoReflect

func (x *PortStateReply) ProtoReflect() protoreflect.Message

func (*PortStateReply) Reset

func (x *PortStateReply) Reset()

func (*PortStateReply) String

func (x *PortStateReply) String() string

type PortStateRequest

type PortStateRequest struct {
	PortId    *PortId    `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	Operation *PortInfo  `protobuf:"bytes,4,opt,name=operation,proto3" json:"operation,omitempty"`
	// contains filtered or unexported fields
}

A PortStateRequest can change a port's state and returns the resulting state.

func (*PortStateRequest) Descriptor deprecated

func (*PortStateRequest) Descriptor() ([]byte, []int)

Deprecated: Use PortStateRequest.ProtoReflect.Descriptor instead.

func (*PortStateRequest) GetContextId

func (x *PortStateRequest) GetContextId() *ContextId

func (*PortStateRequest) GetOperation

func (x *PortStateRequest) GetOperation() *PortInfo

func (*PortStateRequest) GetPortId

func (x *PortStateRequest) GetPortId() *PortId

func (*PortStateRequest) ProtoMessage

func (*PortStateRequest) ProtoMessage()

func (*PortStateRequest) ProtoReflect

func (x *PortStateRequest) ProtoReflect() protoreflect.Message

func (*PortStateRequest) Reset

func (x *PortStateRequest) Reset()

func (*PortStateRequest) String

func (x *PortStateRequest) String() string

type PortType

type PortType int32

PortType indicates the types of forwarding ports.

const (
	PortType_PORT_TYPE_UNSPECIFIED    PortType = 0
	PortType_PORT_TYPE_CPU_PORT       PortType = 1 // Port associated with provisioning
	PortType_PORT_TYPE_AGGREGATE_PORT PortType = 2 // Port that is an aggregate of ports
	PortType_PORT_TYPE_KERNEL         PortType = 3 // Port that is kernel network interface.
	PortType_PORT_TYPE_TAP            PortType = 4 // Port that is kernel TAP interface.
)

func (PortType) Descriptor

func (PortType) Descriptor() protoreflect.EnumDescriptor

func (PortType) Enum

func (x PortType) Enum() *PortType

func (PortType) EnumDescriptor deprecated

func (PortType) EnumDescriptor() ([]byte, []int)

Deprecated: Use PortType.Descriptor instead.

func (PortType) Number

func (x PortType) Number() protoreflect.EnumNumber

func (PortType) String

func (x PortType) String() string

func (PortType) Type

type PortUpdateDesc

type PortUpdateDesc struct {

	// Types that are assignable to Port:
	//	*PortUpdateDesc_Cpu
	//	*PortUpdateDesc_Aggregate
	//	*PortUpdateDesc_AggregateAdd
	//	*PortUpdateDesc_AggregateDel
	//	*PortUpdateDesc_AggregateAlgo
	//	*PortUpdateDesc_Kernel
	Port isPortUpdateDesc_Port `protobuf_oneof:"port"`
	// contains filtered or unexported fields
}

A PortUpdateDesc updates a forwarding port.

func (*PortUpdateDesc) Descriptor deprecated

func (*PortUpdateDesc) Descriptor() ([]byte, []int)

Deprecated: Use PortUpdateDesc.ProtoReflect.Descriptor instead.

func (*PortUpdateDesc) GetAggregate

func (x *PortUpdateDesc) GetAggregate() *AggregatePortUpdateDesc

func (*PortUpdateDesc) GetAggregateAdd

func (x *PortUpdateDesc) GetAggregateAdd() *AggregatePortAddMemberUpdateDesc

func (*PortUpdateDesc) GetAggregateAlgo

func (x *PortUpdateDesc) GetAggregateAlgo() *AggregatePortAlgorithmUpdateDesc

func (*PortUpdateDesc) GetAggregateDel

func (*PortUpdateDesc) GetCpu

func (x *PortUpdateDesc) GetCpu() *CPUPortUpdateDesc

func (*PortUpdateDesc) GetKernel

func (x *PortUpdateDesc) GetKernel() *KernelPortUpdateDesc

func (*PortUpdateDesc) GetPort

func (m *PortUpdateDesc) GetPort() isPortUpdateDesc_Port

func (*PortUpdateDesc) ProtoMessage

func (*PortUpdateDesc) ProtoMessage()

func (*PortUpdateDesc) ProtoReflect

func (x *PortUpdateDesc) ProtoReflect() protoreflect.Message

func (*PortUpdateDesc) Reset

func (x *PortUpdateDesc) Reset()

func (*PortUpdateDesc) String

func (x *PortUpdateDesc) String() string

type PortUpdateDesc_Aggregate

type PortUpdateDesc_Aggregate struct {
	Aggregate *AggregatePortUpdateDesc `protobuf:"bytes,2,opt,name=aggregate,proto3,oneof"`
}

type PortUpdateDesc_AggregateAdd

type PortUpdateDesc_AggregateAdd struct {
	AggregateAdd *AggregatePortAddMemberUpdateDesc `protobuf:"bytes,3,opt,name=aggregate_add,json=aggregateAdd,proto3,oneof"`
}

type PortUpdateDesc_AggregateAlgo

type PortUpdateDesc_AggregateAlgo struct {
	AggregateAlgo *AggregatePortAlgorithmUpdateDesc `protobuf:"bytes,5,opt,name=aggregate_algo,json=aggregateAlgo,proto3,oneof"`
}

type PortUpdateDesc_AggregateDel

type PortUpdateDesc_AggregateDel struct {
	AggregateDel *AggregatePortRemoveMemberUpdateDesc `protobuf:"bytes,4,opt,name=aggregate_del,json=aggregateDel,proto3,oneof"`
}

type PortUpdateDesc_Cpu

type PortUpdateDesc_Cpu struct {
	Cpu *CPUPortUpdateDesc `protobuf:"bytes,1,opt,name=cpu,proto3,oneof"`
}

type PortUpdateDesc_Kernel

type PortUpdateDesc_Kernel struct {
	Kernel *KernelPortUpdateDesc `protobuf:"bytes,6,opt,name=kernel,proto3,oneof"`
}

type PortUpdateReply

type PortUpdateReply struct {
	// contains filtered or unexported fields
}

func (*PortUpdateReply) Descriptor deprecated

func (*PortUpdateReply) Descriptor() ([]byte, []int)

Deprecated: Use PortUpdateReply.ProtoReflect.Descriptor instead.

func (*PortUpdateReply) ProtoMessage

func (*PortUpdateReply) ProtoMessage()

func (*PortUpdateReply) ProtoReflect

func (x *PortUpdateReply) ProtoReflect() protoreflect.Message

func (*PortUpdateReply) Reset

func (x *PortUpdateReply) Reset()

func (*PortUpdateReply) String

func (x *PortUpdateReply) String() string

type PortUpdateRequest

type PortUpdateRequest struct {
	PortId    *PortId         `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
	ContextId *ContextId      `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	Update    *PortUpdateDesc `protobuf:"bytes,3,opt,name=update,proto3" json:"update,omitempty"`
	// contains filtered or unexported fields
}

A PortUpdateRequest is a request to update the port.

func (*PortUpdateRequest) Descriptor deprecated

func (*PortUpdateRequest) Descriptor() ([]byte, []int)

Deprecated: Use PortUpdateRequest.ProtoReflect.Descriptor instead.

func (*PortUpdateRequest) GetContextId

func (x *PortUpdateRequest) GetContextId() *ContextId

func (*PortUpdateRequest) GetPortId

func (x *PortUpdateRequest) GetPortId() *PortId

func (*PortUpdateRequest) GetUpdate

func (x *PortUpdateRequest) GetUpdate() *PortUpdateDesc

func (*PortUpdateRequest) ProtoMessage

func (*PortUpdateRequest) ProtoMessage()

func (*PortUpdateRequest) ProtoReflect

func (x *PortUpdateRequest) ProtoReflect() protoreflect.Message

func (*PortUpdateRequest) Reset

func (x *PortUpdateRequest) Reset()

func (*PortUpdateRequest) String

func (x *PortUpdateRequest) String() string

type PrefixEntryDesc

type PrefixEntryDesc struct {

	// Required packet fields and their values used to match packets to this
	// entry.
	Fields []*PacketFieldMaskedBytes `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty"`
	// contains filtered or unexported fields
}

A PrefixEntryDesc describes an entry in a PREFIX_TABLE. An entry in the table is identified by the values of the specified packet fields and their masks. Other than the last field as defined by the table, all fields should either have no mask or have a mask with all bits set. Note that the ordering of the packet fields is determined by the table desc.

func (*PrefixEntryDesc) Descriptor deprecated

func (*PrefixEntryDesc) Descriptor() ([]byte, []int)

Deprecated: Use PrefixEntryDesc.ProtoReflect.Descriptor instead.

func (*PrefixEntryDesc) GetFields

func (x *PrefixEntryDesc) GetFields() []*PacketFieldMaskedBytes

func (*PrefixEntryDesc) ProtoMessage

func (*PrefixEntryDesc) ProtoMessage()

func (*PrefixEntryDesc) ProtoReflect

func (x *PrefixEntryDesc) ProtoReflect() protoreflect.Message

func (*PrefixEntryDesc) Reset

func (x *PrefixEntryDesc) Reset()

func (*PrefixEntryDesc) String

func (x *PrefixEntryDesc) String() string

type PrefixTableDesc

type PrefixTableDesc struct {

	// Required packet fields used to match entries in the table.
	FieldIds []*PacketFieldId `protobuf:"bytes,1,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`
	// contains filtered or unexported fields
}

A PrefixTableDesc describes a PREFIX_TABLE. All entries within the table are idenfied by unique keys formed by the specified packet fields.

func (*PrefixTableDesc) Descriptor deprecated

func (*PrefixTableDesc) Descriptor() ([]byte, []int)

Deprecated: Use PrefixTableDesc.ProtoReflect.Descriptor instead.

func (*PrefixTableDesc) GetFieldIds

func (x *PrefixTableDesc) GetFieldIds() []*PacketFieldId

func (*PrefixTableDesc) ProtoMessage

func (*PrefixTableDesc) ProtoMessage()

func (*PrefixTableDesc) ProtoReflect

func (x *PrefixTableDesc) ProtoReflect() protoreflect.Message

func (*PrefixTableDesc) Reset

func (x *PrefixTableDesc) Reset()

func (*PrefixTableDesc) String

func (x *PrefixTableDesc) String() string

type RateActionDesc

type RateActionDesc struct {
	BurstBytes int32 `protobuf:"varint,1,opt,name=burst_bytes,json=burstBytes,proto3" json:"burst_bytes,omitempty"` // Size of bursts in bytes.
	RateBps    int32 `protobuf:"varint,2,opt,name=rate_bps,json=rateBps,proto3" json:"rate_bps,omitempty"`          // Rate in bytes per second.
	// contains filtered or unexported fields
}

A RateActionDesc describes RATELIMIT_ACTION. The descriptor contains a burst size and a rate that is applied to check if the packet should continue to the next action.

func (*RateActionDesc) Descriptor deprecated

func (*RateActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use RateActionDesc.ProtoReflect.Descriptor instead.

func (*RateActionDesc) GetBurstBytes

func (x *RateActionDesc) GetBurstBytes() int32

func (*RateActionDesc) GetRateBps

func (x *RateActionDesc) GetRateBps() int32

func (*RateActionDesc) ProtoMessage

func (*RateActionDesc) ProtoMessage()

func (*RateActionDesc) ProtoReflect

func (x *RateActionDesc) ProtoReflect() protoreflect.Message

func (*RateActionDesc) Reset

func (x *RateActionDesc) Reset()

func (*RateActionDesc) String

func (x *RateActionDesc) String() string

type ReparseActionDesc

type ReparseActionDesc struct {
	HeaderId PacketHeaderId   `protobuf:"varint,1,opt,name=header_id,json=headerId,proto3,enum=forwarding.PacketHeaderId" json:"header_id,omitempty"` // Header to reparse
	FieldIds []*PacketFieldId `protobuf:"bytes,2,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`                                 // Packet fields to restore
	Prepend  []byte           `protobuf:"bytes,3,opt,name=prepend,proto3" json:"prepend,omitempty"`                                                   // Bytes to be prepended before reparsing
	// contains filtered or unexported fields
}

A ReparseActionDesc describes a REPARSE_ACTION. It reparses the current packet to start from the specified packet header id. Optionally it can also propagate some packet fields from the old packet to the newly formed packet, and prepend bytes to the start of the packet before prepending.

func (*ReparseActionDesc) Descriptor deprecated

func (*ReparseActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use ReparseActionDesc.ProtoReflect.Descriptor instead.

func (*ReparseActionDesc) GetFieldIds

func (x *ReparseActionDesc) GetFieldIds() []*PacketFieldId

func (*ReparseActionDesc) GetHeaderId

func (x *ReparseActionDesc) GetHeaderId() PacketHeaderId

func (*ReparseActionDesc) GetPrepend

func (x *ReparseActionDesc) GetPrepend() []byte

func (*ReparseActionDesc) ProtoMessage

func (*ReparseActionDesc) ProtoMessage()

func (*ReparseActionDesc) ProtoReflect

func (x *ReparseActionDesc) ProtoReflect() protoreflect.Message

func (*ReparseActionDesc) Reset

func (x *ReparseActionDesc) Reset()

func (*ReparseActionDesc) String

func (x *ReparseActionDesc) String() string

type SelectActionListActionDesc

type SelectActionListActionDesc struct {
	SelectAlgorithm SelectActionListActionDesc_SelectAlgorithm `` // Algorithm used to select an action list
	/* 166-byte string literal not displayed */
	FieldIds    []*PacketFieldId `protobuf:"bytes,2,rep,name=field_ids,json=fieldIds,proto3" json:"field_ids,omitempty"`          // List of fields to use for hashing
	ActionLists []*ActionList    `protobuf:"bytes,3,rep,name=action_lists,json=actionLists,proto3" json:"action_lists,omitempty"` // A set of action lists from an an action list is selected
	// contains filtered or unexported fields
}

A SelectActionListActionDesc describes a SELECT_ACTION_LIST_ACTION. It is an action that selects an action list to execute from a set of action lists. The selection is done by using a hash on the specified packet fields.

func (*SelectActionListActionDesc) Descriptor deprecated

func (*SelectActionListActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use SelectActionListActionDesc.ProtoReflect.Descriptor instead.

func (*SelectActionListActionDesc) GetActionLists

func (x *SelectActionListActionDesc) GetActionLists() []*ActionList

func (*SelectActionListActionDesc) GetFieldIds

func (x *SelectActionListActionDesc) GetFieldIds() []*PacketFieldId

func (*SelectActionListActionDesc) GetSelectAlgorithm

func (*SelectActionListActionDesc) ProtoMessage

func (*SelectActionListActionDesc) ProtoMessage()

func (*SelectActionListActionDesc) ProtoReflect

func (*SelectActionListActionDesc) Reset

func (x *SelectActionListActionDesc) Reset()

func (*SelectActionListActionDesc) String

func (x *SelectActionListActionDesc) String() string

type SelectActionListActionDesc_SelectAlgorithm

type SelectActionListActionDesc_SelectAlgorithm int32

SelectAlgorithm enumerates algorithms used to compute the hash.

const (
	SelectActionListActionDesc_SELECT_ALGORITHM_UNSPECIFIED SelectActionListActionDesc_SelectAlgorithm = 0
	SelectActionListActionDesc_SELECT_ALGORITHM_CRC16       SelectActionListActionDesc_SelectAlgorithm = 2 // x16+x15+x2+1
	SelectActionListActionDesc_SELECT_ALGORITHM_CRC32       SelectActionListActionDesc_SelectAlgorithm = 3 // x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1
	SelectActionListActionDesc_SELECT_ALGORITHM_RANDOM      SelectActionListActionDesc_SelectAlgorithm = 5 // Selects a random action list
)

func (SelectActionListActionDesc_SelectAlgorithm) Descriptor

func (SelectActionListActionDesc_SelectAlgorithm) Enum

func (SelectActionListActionDesc_SelectAlgorithm) EnumDescriptor deprecated

func (SelectActionListActionDesc_SelectAlgorithm) EnumDescriptor() ([]byte, []int)

Deprecated: Use SelectActionListActionDesc_SelectAlgorithm.Descriptor instead.

func (SelectActionListActionDesc_SelectAlgorithm) Number

func (SelectActionListActionDesc_SelectAlgorithm) String

func (SelectActionListActionDesc_SelectAlgorithm) Type

type ServiceClient

type ServiceClient interface {
	// ContextCreate creates a forwarding context.
	ContextCreate(ctx context.Context, in *ContextCreateRequest, opts ...grpc.CallOption) (*ContextCreateReply, error)
	// ContextUpdate updates a forwarding context.
	ContextUpdate(ctx context.Context, in *ContextUpdateRequest, opts ...grpc.CallOption) (*ContextUpdateReply, error)
	// ContextDelete deletes a forwarding context.
	ContextDelete(ctx context.Context, in *ContextDeleteRequest, opts ...grpc.CallOption) (*ContextDeleteReply, error)
	// ContextList lists all the forwarding contexts.
	ContextList(ctx context.Context, in *ContextListRequest, opts ...grpc.CallOption) (*ContextListReply, error)
	// SetCreate creates a set.
	// SetCreate creates a set.
	SetCreate(ctx context.Context, in *SetCreateRequest, opts ...grpc.CallOption) (*SetCreateReply, error)
	// SetUpdate updates a set.
	SetUpdate(ctx context.Context, in *SetUpdateRequest, opts ...grpc.CallOption) (*SetUpdateReply, error)
	// AttributeList lists all supported attributes.
	AttributeList(ctx context.Context, in *AttributeListRequest, opts ...grpc.CallOption) (*AttributeListReply, error)
	// AttributeUpdate updates an attribute.
	AttributeUpdate(ctx context.Context, in *AttributeUpdateRequest, opts ...grpc.CallOption) (*AttributeUpdateReply, error)
	// Operations on objects.
	// ObjectDelete deletes an object.
	ObjectDelete(ctx context.Context, in *ObjectDeleteRequest, opts ...grpc.CallOption) (*ObjectDeleteReply, error)
	// ObjectList lists all the objects in the system.
	ObjectList(ctx context.Context, in *ObjectListRequest, opts ...grpc.CallOption) (*ObjectListReply, error)
	// ObjectCounters retrieves all the counters associated on the object.
	// TODO(wenbli): Consider adding a streaming service for counters.
	ObjectCounters(ctx context.Context, in *ObjectCountersRequest, opts ...grpc.CallOption) (*ObjectCountersReply, error)
	// TableCreate creates an empty table.
	TableCreate(ctx context.Context, in *TableCreateRequest, opts ...grpc.CallOption) (*TableCreateReply, error)
	// TableEntryAdd add an entry to a table.
	TableEntryAdd(ctx context.Context, in *TableEntryAddRequest, opts ...grpc.CallOption) (*TableEntryAddReply, error)
	// TableEntryRemove removes an entry from a table.
	TableEntryRemove(ctx context.Context, in *TableEntryRemoveRequest, opts ...grpc.CallOption) (*TableEntryRemoveReply, error)
	// TableList lists all entries of a table.
	TableList(ctx context.Context, in *TableListRequest, opts ...grpc.CallOption) (*TableListReply, error)
	// PortCreate creates a port.
	PortCreate(ctx context.Context, in *PortCreateRequest, opts ...grpc.CallOption) (*PortCreateReply, error)
	// PortUpdate updates a port.
	PortUpdate(ctx context.Context, in *PortUpdateRequest, opts ...grpc.CallOption) (*PortUpdateReply, error)
	// PortState queries the port state.
	PortState(ctx context.Context, in *PortStateRequest, opts ...grpc.CallOption) (*PortStateReply, error)
	// FlowCounterCreate creates a flow counter
	FlowCounterCreate(ctx context.Context, in *FlowCounterCreateRequest, opts ...grpc.CallOption) (*FlowCounterCreateReply, error)
	// FlowCounterQuery requests the values of a bunch of flow counters.
	FlowCounterQuery(ctx context.Context, in *FlowCounterQueryRequest, opts ...grpc.CallOption) (*FlowCounterQueryReply, error)
	// Operation performs a stream of operations.
	Operation(ctx context.Context, opts ...grpc.CallOption) (Service_OperationClient, error)
}

ServiceClient is the client API for Service service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewServiceClient

func NewServiceClient(cc grpc.ClientConnInterface) ServiceClient

type ServiceServer

type ServiceServer interface {
	// ContextCreate creates a forwarding context.
	ContextCreate(context.Context, *ContextCreateRequest) (*ContextCreateReply, error)
	// ContextUpdate updates a forwarding context.
	ContextUpdate(context.Context, *ContextUpdateRequest) (*ContextUpdateReply, error)
	// ContextDelete deletes a forwarding context.
	ContextDelete(context.Context, *ContextDeleteRequest) (*ContextDeleteReply, error)
	// ContextList lists all the forwarding contexts.
	ContextList(context.Context, *ContextListRequest) (*ContextListReply, error)
	// SetCreate creates a set.
	// SetCreate creates a set.
	SetCreate(context.Context, *SetCreateRequest) (*SetCreateReply, error)
	// SetUpdate updates a set.
	SetUpdate(context.Context, *SetUpdateRequest) (*SetUpdateReply, error)
	// AttributeList lists all supported attributes.
	AttributeList(context.Context, *AttributeListRequest) (*AttributeListReply, error)
	// AttributeUpdate updates an attribute.
	AttributeUpdate(context.Context, *AttributeUpdateRequest) (*AttributeUpdateReply, error)
	// Operations on objects.
	// ObjectDelete deletes an object.
	ObjectDelete(context.Context, *ObjectDeleteRequest) (*ObjectDeleteReply, error)
	// ObjectList lists all the objects in the system.
	ObjectList(context.Context, *ObjectListRequest) (*ObjectListReply, error)
	// ObjectCounters retrieves all the counters associated on the object.
	// TODO(wenbli): Consider adding a streaming service for counters.
	ObjectCounters(context.Context, *ObjectCountersRequest) (*ObjectCountersReply, error)
	// TableCreate creates an empty table.
	TableCreate(context.Context, *TableCreateRequest) (*TableCreateReply, error)
	// TableEntryAdd add an entry to a table.
	TableEntryAdd(context.Context, *TableEntryAddRequest) (*TableEntryAddReply, error)
	// TableEntryRemove removes an entry from a table.
	TableEntryRemove(context.Context, *TableEntryRemoveRequest) (*TableEntryRemoveReply, error)
	// TableList lists all entries of a table.
	TableList(context.Context, *TableListRequest) (*TableListReply, error)
	// PortCreate creates a port.
	PortCreate(context.Context, *PortCreateRequest) (*PortCreateReply, error)
	// PortUpdate updates a port.
	PortUpdate(context.Context, *PortUpdateRequest) (*PortUpdateReply, error)
	// PortState queries the port state.
	PortState(context.Context, *PortStateRequest) (*PortStateReply, error)
	// FlowCounterCreate creates a flow counter
	FlowCounterCreate(context.Context, *FlowCounterCreateRequest) (*FlowCounterCreateReply, error)
	// FlowCounterQuery requests the values of a bunch of flow counters.
	FlowCounterQuery(context.Context, *FlowCounterQueryRequest) (*FlowCounterQueryReply, error)
	// Operation performs a stream of operations.
	Operation(Service_OperationServer) error
	// contains filtered or unexported methods
}

ServiceServer is the server API for Service service. All implementations must embed UnimplementedServiceServer for forward compatibility

type Service_OperationClient

type Service_OperationClient interface {
	Send(*OperationRequest) error
	Recv() (*OperationReply, error)
	grpc.ClientStream
}

type Service_OperationServer

type Service_OperationServer interface {
	Send(*OperationReply) error
	Recv() (*OperationRequest, error)
	grpc.ServerStream
}

type SetCreateReply

type SetCreateReply struct {
	ObjectIndex *ObjectIndex `protobuf:"bytes,2,opt,name=object_index,json=objectIndex,proto3" json:"object_index,omitempty"`
	// contains filtered or unexported fields
}

func (*SetCreateReply) Descriptor deprecated

func (*SetCreateReply) Descriptor() ([]byte, []int)

Deprecated: Use SetCreateReply.ProtoReflect.Descriptor instead.

func (*SetCreateReply) GetObjectIndex

func (x *SetCreateReply) GetObjectIndex() *ObjectIndex

func (*SetCreateReply) ProtoMessage

func (*SetCreateReply) ProtoMessage()

func (*SetCreateReply) ProtoReflect

func (x *SetCreateReply) ProtoReflect() protoreflect.Message

func (*SetCreateReply) Reset

func (x *SetCreateReply) Reset()

func (*SetCreateReply) String

func (x *SetCreateReply) String() string

type SetCreateRequest

type SetCreateRequest struct {
	ContextId *ContextId `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	SetId     *SetId     `protobuf:"bytes,3,opt,name=set_id,json=setId,proto3" json:"set_id,omitempty"`
	// contains filtered or unexported fields
}

A SetCreateRequest is a request to create an empty set identified by set_id in the specified forwarding context.

func (*SetCreateRequest) Descriptor deprecated

func (*SetCreateRequest) Descriptor() ([]byte, []int)

Deprecated: Use SetCreateRequest.ProtoReflect.Descriptor instead.

func (*SetCreateRequest) GetContextId

func (x *SetCreateRequest) GetContextId() *ContextId

func (*SetCreateRequest) GetSetId

func (x *SetCreateRequest) GetSetId() *SetId

func (*SetCreateRequest) ProtoMessage

func (*SetCreateRequest) ProtoMessage()

func (*SetCreateRequest) ProtoReflect

func (x *SetCreateRequest) ProtoReflect() protoreflect.Message

func (*SetCreateRequest) Reset

func (x *SetCreateRequest) Reset()

func (*SetCreateRequest) String

func (x *SetCreateRequest) String() string

type SetId

type SetId struct {
	ObjectId *ObjectId `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	// contains filtered or unexported fields
}

A SetId identifies a set.

func (*SetId) Descriptor deprecated

func (*SetId) Descriptor() ([]byte, []int)

Deprecated: Use SetId.ProtoReflect.Descriptor instead.

func (*SetId) GetObjectId

func (x *SetId) GetObjectId() *ObjectId

func (*SetId) ProtoMessage

func (*SetId) ProtoMessage()

func (*SetId) ProtoReflect

func (x *SetId) ProtoReflect() protoreflect.Message

func (*SetId) Reset

func (x *SetId) Reset()

func (*SetId) String

func (x *SetId) String() string

type SetUpdateReply

type SetUpdateReply struct {
	// contains filtered or unexported fields
}

func (*SetUpdateReply) Descriptor deprecated

func (*SetUpdateReply) Descriptor() ([]byte, []int)

Deprecated: Use SetUpdateReply.ProtoReflect.Descriptor instead.

func (*SetUpdateReply) ProtoMessage

func (*SetUpdateReply) ProtoMessage()

func (*SetUpdateReply) ProtoReflect

func (x *SetUpdateReply) ProtoReflect() protoreflect.Message

func (*SetUpdateReply) Reset

func (x *SetUpdateReply) Reset()

func (*SetUpdateReply) String

func (x *SetUpdateReply) String() string

type SetUpdateRequest

type SetUpdateRequest struct {
	ContextId *ContextId `protobuf:"bytes,1,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	SetId     *SetId     `protobuf:"bytes,2,opt,name=set_id,json=setId,proto3" json:"set_id,omitempty"`
	Bytes     [][]byte   `protobuf:"bytes,3,rep,name=bytes,proto3" json:"bytes,omitempty"`
	// contains filtered or unexported fields
}

A SetUpdateRequest is a request to update the set of strings in a set.

func (*SetUpdateRequest) Descriptor deprecated

func (*SetUpdateRequest) Descriptor() ([]byte, []int)

Deprecated: Use SetUpdateRequest.ProtoReflect.Descriptor instead.

func (*SetUpdateRequest) GetBytes

func (x *SetUpdateRequest) GetBytes() [][]byte

func (*SetUpdateRequest) GetContextId

func (x *SetUpdateRequest) GetContextId() *ContextId

func (*SetUpdateRequest) GetSetId

func (x *SetUpdateRequest) GetSetId() *SetId

func (*SetUpdateRequest) ProtoMessage

func (*SetUpdateRequest) ProtoMessage()

func (*SetUpdateRequest) ProtoReflect

func (x *SetUpdateRequest) ProtoReflect() protoreflect.Message

func (*SetUpdateRequest) Reset

func (x *SetUpdateRequest) Reset()

func (*SetUpdateRequest) String

func (x *SetUpdateRequest) String() string

type TAPPortDesc

type TAPPortDesc struct {
	Fd int64 `protobuf:"varint,1,opt,name=fd,proto3" json:"fd,omitempty"`
	// contains filtered or unexported fields
}

func (*TAPPortDesc) Descriptor deprecated

func (*TAPPortDesc) Descriptor() ([]byte, []int)

Deprecated: Use TAPPortDesc.ProtoReflect.Descriptor instead.

func (*TAPPortDesc) GetFd

func (x *TAPPortDesc) GetFd() int64

func (*TAPPortDesc) ProtoMessage

func (*TAPPortDesc) ProtoMessage()

func (*TAPPortDesc) ProtoReflect

func (x *TAPPortDesc) ProtoReflect() protoreflect.Message

func (*TAPPortDesc) Reset

func (x *TAPPortDesc) Reset()

func (*TAPPortDesc) String

func (x *TAPPortDesc) String() string

type TableCreateReply

type TableCreateReply struct {
	ObjectIndex *ObjectIndex `protobuf:"bytes,2,opt,name=object_index,json=objectIndex,proto3" json:"object_index,omitempty"`
	// contains filtered or unexported fields
}

func (*TableCreateReply) Descriptor deprecated

func (*TableCreateReply) Descriptor() ([]byte, []int)

Deprecated: Use TableCreateReply.ProtoReflect.Descriptor instead.

func (*TableCreateReply) GetObjectIndex

func (x *TableCreateReply) GetObjectIndex() *ObjectIndex

func (*TableCreateReply) ProtoMessage

func (*TableCreateReply) ProtoMessage()

func (*TableCreateReply) ProtoReflect

func (x *TableCreateReply) ProtoReflect() protoreflect.Message

func (*TableCreateReply) Reset

func (x *TableCreateReply) Reset()

func (*TableCreateReply) String

func (x *TableCreateReply) String() string

type TableCreateRequest

type TableCreateRequest struct {
	Desc      *TableDesc `protobuf:"bytes,1,opt,name=desc,proto3" json:"desc,omitempty"`
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

A TableCreateRequest is a request to create a table.

Note that all fields are mandatory.

func (*TableCreateRequest) Descriptor deprecated

func (*TableCreateRequest) Descriptor() ([]byte, []int)

Deprecated: Use TableCreateRequest.ProtoReflect.Descriptor instead.

func (*TableCreateRequest) GetContextId

func (x *TableCreateRequest) GetContextId() *ContextId

func (*TableCreateRequest) GetDesc

func (x *TableCreateRequest) GetDesc() *TableDesc

func (*TableCreateRequest) ProtoMessage

func (*TableCreateRequest) ProtoMessage()

func (*TableCreateRequest) ProtoReflect

func (x *TableCreateRequest) ProtoReflect() protoreflect.Message

func (*TableCreateRequest) Reset

func (x *TableCreateRequest) Reset()

func (*TableCreateRequest) String

func (x *TableCreateRequest) String() string

type TableDesc

type TableDesc struct {

	// Required type of the table.
	TableType TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=forwarding.TableType" json:"table_type,omitempty"`
	//  set of default actions. If no actions are specified, the table
	// marks the packet to continue packet processing.
	Actions []*ActionDesc `protobuf:"bytes,2,rep,name=actions,proto3" json:"actions,omitempty"`
	// Required id of the table.
	TableId *TableId `protobuf:"bytes,3,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"`
	// Types that are assignable to Table:
	//	*TableDesc_Exact
	//	*TableDesc_Prefix
	//	*TableDesc_Flow
	//	*TableDesc_Bridge
	Table isTableDesc_Table `protobuf_oneof:"table"`
	// contains filtered or unexported fields
}

A TableDesc descibes a table type and its default actions. Note that an oneof field must always be set.

func (*TableDesc) Descriptor deprecated

func (*TableDesc) Descriptor() ([]byte, []int)

Deprecated: Use TableDesc.ProtoReflect.Descriptor instead.

func (*TableDesc) GetActions

func (x *TableDesc) GetActions() []*ActionDesc

func (*TableDesc) GetBridge

func (x *TableDesc) GetBridge() *BridgeTableDesc

func (*TableDesc) GetExact

func (x *TableDesc) GetExact() *ExactTableDesc

func (*TableDesc) GetFlow

func (x *TableDesc) GetFlow() *FlowTableDesc

func (*TableDesc) GetPrefix

func (x *TableDesc) GetPrefix() *PrefixTableDesc

func (*TableDesc) GetTable

func (m *TableDesc) GetTable() isTableDesc_Table

func (*TableDesc) GetTableId

func (x *TableDesc) GetTableId() *TableId

func (*TableDesc) GetTableType

func (x *TableDesc) GetTableType() TableType

func (*TableDesc) ProtoMessage

func (*TableDesc) ProtoMessage()

func (*TableDesc) ProtoReflect

func (x *TableDesc) ProtoReflect() protoreflect.Message

func (*TableDesc) Reset

func (x *TableDesc) Reset()

func (*TableDesc) String

func (x *TableDesc) String() string

type TableDesc_Bridge

type TableDesc_Bridge struct {
	Bridge *BridgeTableDesc `protobuf:"bytes,7,opt,name=bridge,proto3,oneof"`
}

type TableDesc_Exact

type TableDesc_Exact struct {
	Exact *ExactTableDesc `protobuf:"bytes,4,opt,name=exact,proto3,oneof"`
}

type TableDesc_Flow

type TableDesc_Flow struct {
	Flow *FlowTableDesc `protobuf:"bytes,6,opt,name=flow,proto3,oneof"`
}

type TableDesc_Prefix

type TableDesc_Prefix struct {
	Prefix *PrefixTableDesc `protobuf:"bytes,5,opt,name=prefix,proto3,oneof"`
}

type TableEntryAddReply

type TableEntryAddReply struct {
	// contains filtered or unexported fields
}

func (*TableEntryAddReply) Descriptor deprecated

func (*TableEntryAddReply) Descriptor() ([]byte, []int)

Deprecated: Use TableEntryAddReply.ProtoReflect.Descriptor instead.

func (*TableEntryAddReply) ProtoMessage

func (*TableEntryAddReply) ProtoMessage()

func (*TableEntryAddReply) ProtoReflect

func (x *TableEntryAddReply) ProtoReflect() protoreflect.Message

func (*TableEntryAddReply) Reset

func (x *TableEntryAddReply) Reset()

func (*TableEntryAddReply) String

func (x *TableEntryAddReply) String() string

type TableEntryAddRequest

type TableEntryAddRequest struct {

	// Required id of the table to which the entry is added.
	TableId *TableId `protobuf:"bytes,1,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"`
	// Required id of the forwarding context containing the table.
	ContextId *ContextId `protobuf:"bytes,4,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	//  actions associated with the singleton entry in this request.
	// If nothing is specified, the entry marks the packet to continue packet
	// processing.
	Actions []*ActionDesc `protobuf:"bytes,2,rep,name=actions,proto3" json:"actions,omitempty"`
	//  descriptor of the singleton entry.
	EntryDesc *EntryDesc `protobuf:"bytes,3,opt,name=entry_desc,json=entryDesc,proto3" json:"entry_desc,omitempty"`
	//  list of entries to add.
	Entries []*TableEntryAddRequest_Entry `protobuf:"bytes,5,rep,name=entries,proto3" json:"entries,omitempty"`
	//  request to clear the table *before* processing the add entry
	// requests. This is useful for clearing the table with a single small gRPC
	// call or replacing all entries in a table with the specified entry (or batch
	// of entries).
	ClearBeforeAdd bool `protobuf:"varint,6,opt,name=clear_before_add,json=clearBeforeAdd,proto3" json:"clear_before_add,omitempty"`
	// contains filtered or unexported fields
}

A TableEntryAddRequest is a request to add entries to the table. The entry may be singleton or a list of entries. Note that if the same request contains a singleton entry and an list of entries, all entries are added.

func (*TableEntryAddRequest) Descriptor deprecated

func (*TableEntryAddRequest) Descriptor() ([]byte, []int)

Deprecated: Use TableEntryAddRequest.ProtoReflect.Descriptor instead.

func (*TableEntryAddRequest) GetActions

func (x *TableEntryAddRequest) GetActions() []*ActionDesc

func (*TableEntryAddRequest) GetClearBeforeAdd

func (x *TableEntryAddRequest) GetClearBeforeAdd() bool

func (*TableEntryAddRequest) GetContextId

func (x *TableEntryAddRequest) GetContextId() *ContextId

func (*TableEntryAddRequest) GetEntries

func (*TableEntryAddRequest) GetEntryDesc

func (x *TableEntryAddRequest) GetEntryDesc() *EntryDesc

func (*TableEntryAddRequest) GetTableId

func (x *TableEntryAddRequest) GetTableId() *TableId

func (*TableEntryAddRequest) ProtoMessage

func (*TableEntryAddRequest) ProtoMessage()

func (*TableEntryAddRequest) ProtoReflect

func (x *TableEntryAddRequest) ProtoReflect() protoreflect.Message

func (*TableEntryAddRequest) Reset

func (x *TableEntryAddRequest) Reset()

func (*TableEntryAddRequest) String

func (x *TableEntryAddRequest) String() string

type TableEntryAddRequest_Entry

type TableEntryAddRequest_Entry struct {

	//  actions associated with the entry. If nothing is specified, the
	// entry marks the packet to continue packet processing.
	Actions []*ActionDesc `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty"`
	//  description of an entry in the table.
	EntryDesc *EntryDesc `protobuf:"bytes,2,opt,name=entry_desc,json=entryDesc,proto3" json:"entry_desc,omitempty"`
	// contains filtered or unexported fields
}

func (*TableEntryAddRequest_Entry) Descriptor deprecated

func (*TableEntryAddRequest_Entry) Descriptor() ([]byte, []int)

Deprecated: Use TableEntryAddRequest_Entry.ProtoReflect.Descriptor instead.

func (*TableEntryAddRequest_Entry) GetActions

func (x *TableEntryAddRequest_Entry) GetActions() []*ActionDesc

func (*TableEntryAddRequest_Entry) GetEntryDesc

func (x *TableEntryAddRequest_Entry) GetEntryDesc() *EntryDesc

func (*TableEntryAddRequest_Entry) ProtoMessage

func (*TableEntryAddRequest_Entry) ProtoMessage()

func (*TableEntryAddRequest_Entry) ProtoReflect

func (*TableEntryAddRequest_Entry) Reset

func (x *TableEntryAddRequest_Entry) Reset()

func (*TableEntryAddRequest_Entry) String

func (x *TableEntryAddRequest_Entry) String() string

type TableEntryRemoveReply

type TableEntryRemoveReply struct {
	// contains filtered or unexported fields
}

func (*TableEntryRemoveReply) Descriptor deprecated

func (*TableEntryRemoveReply) Descriptor() ([]byte, []int)

Deprecated: Use TableEntryRemoveReply.ProtoReflect.Descriptor instead.

func (*TableEntryRemoveReply) ProtoMessage

func (*TableEntryRemoveReply) ProtoMessage()

func (*TableEntryRemoveReply) ProtoReflect

func (x *TableEntryRemoveReply) ProtoReflect() protoreflect.Message

func (*TableEntryRemoveReply) Reset

func (x *TableEntryRemoveReply) Reset()

func (*TableEntryRemoveReply) String

func (x *TableEntryRemoveReply) String() string

type TableEntryRemoveRequest

type TableEntryRemoveRequest struct {

	// Required id of the table from which the entry is removed.
	TableId *TableId `protobuf:"bytes,1,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"`
	// Required id of the forwarding context containing the table.
	ContextId *ContextId `protobuf:"bytes,3,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	//  description of an entry in the table.
	EntryDesc *EntryDesc `protobuf:"bytes,2,opt,name=entry_desc,json=entryDesc,proto3" json:"entry_desc,omitempty"`
	//  list of entries to add.
	Entries []*EntryDesc `protobuf:"bytes,4,rep,name=entries,proto3" json:"entries,omitempty"`
	// contains filtered or unexported fields
}

A TableEntryRemoveRequest is a request to remove entries from the table. The entry may be a singleton or a list of entries. Note that if the same request specified a singleton and a list of entries, all entries are removed.

func (*TableEntryRemoveRequest) Descriptor deprecated

func (*TableEntryRemoveRequest) Descriptor() ([]byte, []int)

Deprecated: Use TableEntryRemoveRequest.ProtoReflect.Descriptor instead.

func (*TableEntryRemoveRequest) GetContextId

func (x *TableEntryRemoveRequest) GetContextId() *ContextId

func (*TableEntryRemoveRequest) GetEntries

func (x *TableEntryRemoveRequest) GetEntries() []*EntryDesc

func (*TableEntryRemoveRequest) GetEntryDesc

func (x *TableEntryRemoveRequest) GetEntryDesc() *EntryDesc

func (*TableEntryRemoveRequest) GetTableId

func (x *TableEntryRemoveRequest) GetTableId() *TableId

func (*TableEntryRemoveRequest) ProtoMessage

func (*TableEntryRemoveRequest) ProtoMessage()

func (*TableEntryRemoveRequest) ProtoReflect

func (x *TableEntryRemoveRequest) ProtoReflect() protoreflect.Message

func (*TableEntryRemoveRequest) Reset

func (x *TableEntryRemoveRequest) Reset()

func (*TableEntryRemoveRequest) String

func (x *TableEntryRemoveRequest) String() string

type TableId

type TableId struct {
	ObjectId *ObjectId `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	// contains filtered or unexported fields
}

A TableId identifies a forwarding table.

func (*TableId) Descriptor deprecated

func (*TableId) Descriptor() ([]byte, []int)

Deprecated: Use TableId.ProtoReflect.Descriptor instead.

func (*TableId) GetObjectId

func (x *TableId) GetObjectId() *ObjectId

func (*TableId) ProtoMessage

func (*TableId) ProtoMessage()

func (*TableId) ProtoReflect

func (x *TableId) ProtoReflect() protoreflect.Message

func (*TableId) Reset

func (x *TableId) Reset()

func (*TableId) String

func (x *TableId) String() string

type TableListReply

type TableListReply struct {
	Entries []string `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	// contains filtered or unexported fields
}

func (*TableListReply) Descriptor deprecated

func (*TableListReply) Descriptor() ([]byte, []int)

Deprecated: Use TableListReply.ProtoReflect.Descriptor instead.

func (*TableListReply) GetEntries

func (x *TableListReply) GetEntries() []string

func (*TableListReply) ProtoMessage

func (*TableListReply) ProtoMessage()

func (*TableListReply) ProtoReflect

func (x *TableListReply) ProtoReflect() protoreflect.Message

func (*TableListReply) Reset

func (x *TableListReply) Reset()

func (*TableListReply) String

func (x *TableListReply) String() string

type TableListRequest

type TableListRequest struct {

	// Required id of the table.
	TableId *TableId `protobuf:"bytes,1,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"`
	// Required id of the forwarding context containing the table.
	ContextId *ContextId `protobuf:"bytes,2,opt,name=context_id,json=contextId,proto3" json:"context_id,omitempty"`
	// contains filtered or unexported fields
}

A TableListRequest is a request to list all entries of a table.

func (*TableListRequest) Descriptor deprecated

func (*TableListRequest) Descriptor() ([]byte, []int)

Deprecated: Use TableListRequest.ProtoReflect.Descriptor instead.

func (*TableListRequest) GetContextId

func (x *TableListRequest) GetContextId() *ContextId

func (*TableListRequest) GetTableId

func (x *TableListRequest) GetTableId() *TableId

func (*TableListRequest) ProtoMessage

func (*TableListRequest) ProtoMessage()

func (*TableListRequest) ProtoReflect

func (x *TableListRequest) ProtoReflect() protoreflect.Message

func (*TableListRequest) Reset

func (x *TableListRequest) Reset()

func (*TableListRequest) String

func (x *TableListRequest) String() string

type TableType

type TableType int32

A TableType enumerates the different types of forwarding tables. EXACT_TABLE

  • These tables perform an exact match on all key fields.
  • Table is described by KeyTableDesc.
  • Entries are identified by KeyEntryDesc.
  • Entries in the table can be marked as static or transient.
  • A transient entry cannot update an existing static entry.
  • The table may be configured to remove transient entries that are not used for a configured amount of time.

PREFIX_TABLE

  • These tables perform a longest prefix match using all key fields.
  • Table is described by KeyTableDesc.
  • Entries are identified by KeyEntryDesc.

FLOW_TABLE

  • These tables perform a first match.
  • Table is described by FlowTableDesc.
  • Entries are identified by FlowEntryDesc.

BRIDGE_TABLE

  • This is a specialized table built using EXACT_TABLE.
  • This table processes packets using an exact match lookup on the packet's destination mac.
  • The table contains entries added as ExactEntryDesc.
  • It adds transient entries using the source mac of processed packets.
  • The table may be configured to remove transient entries that are not used for a configured amount of time.
const (
	TableType_TABLE_TYPE_UNSPECIFIED TableType = 0
	TableType_TABLE_TYPE_EXACT       TableType = 1
	TableType_TABLE_TYPE_PREFIX      TableType = 2
	TableType_TABLE_TYPE_FLOW        TableType = 3
	TableType_TABLE_TYPE_BRIDGE      TableType = 4
)

func (TableType) Descriptor

func (TableType) Descriptor() protoreflect.EnumDescriptor

func (TableType) Enum

func (x TableType) Enum() *TableType

func (TableType) EnumDescriptor deprecated

func (TableType) EnumDescriptor() ([]byte, []int)

Deprecated: Use TableType.Descriptor instead.

func (TableType) Number

func (x TableType) Number() protoreflect.EnumNumber

func (TableType) String

func (x TableType) String() string

func (TableType) Type

type TestActionDesc

type TestActionDesc struct {
	Int1   uint32 `protobuf:"varint,1,opt,name=int1,proto3" json:"int1,omitempty"`
	Bytes1 []byte `protobuf:"bytes,2,opt,name=bytes1,proto3" json:"bytes1,omitempty"`
	// contains filtered or unexported fields
}

A TestActionDesc describes a TEST_ACTION.

func (*TestActionDesc) Descriptor deprecated

func (*TestActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use TestActionDesc.ProtoReflect.Descriptor instead.

func (*TestActionDesc) GetBytes1

func (x *TestActionDesc) GetBytes1() []byte

func (*TestActionDesc) GetInt1

func (x *TestActionDesc) GetInt1() uint32

func (*TestActionDesc) ProtoMessage

func (*TestActionDesc) ProtoMessage()

func (*TestActionDesc) ProtoReflect

func (x *TestActionDesc) ProtoReflect() protoreflect.Message

func (*TestActionDesc) Reset

func (x *TestActionDesc) Reset()

func (*TestActionDesc) String

func (x *TestActionDesc) String() string

type TransmitActionDesc

type TransmitActionDesc struct {
	PortId    *PortId `protobuf:"bytes,1,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"` // Port used for transmitting.
	Immediate bool    `protobuf:"varint,2,opt,name=immediate,proto3" json:"immediate,omitempty"`        // True if it is effective immediately..
	// contains filtered or unexported fields
}

A TransmitActionDesc describes TRANSMIT_ACTION. The descriptor contains a port-id that identifies the port used to transmit the packet. The transmit action can be marked to be effective immediately in which case it cannot be overriden.

func (*TransmitActionDesc) Descriptor deprecated

func (*TransmitActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use TransmitActionDesc.ProtoReflect.Descriptor instead.

func (*TransmitActionDesc) GetImmediate

func (x *TransmitActionDesc) GetImmediate() bool

func (*TransmitActionDesc) GetPortId

func (x *TransmitActionDesc) GetPortId() *PortId

func (*TransmitActionDesc) ProtoMessage

func (*TransmitActionDesc) ProtoMessage()

func (*TransmitActionDesc) ProtoReflect

func (x *TransmitActionDesc) ProtoReflect() protoreflect.Message

func (*TransmitActionDesc) Reset

func (x *TransmitActionDesc) Reset()

func (*TransmitActionDesc) String

func (x *TransmitActionDesc) String() string

type UnimplementedInfoServer

type UnimplementedInfoServer struct {
}

UnimplementedInfoServer must be embedded to have forward compatible implementations.

func (UnimplementedInfoServer) InfoElement

func (UnimplementedInfoServer) InfoList

type UnimplementedNotificationServer

type UnimplementedNotificationServer struct {
}

UnimplementedNotificationServer must be embedded to have forward compatible implementations.

func (UnimplementedNotificationServer) Notify

type UnimplementedPacketSinkServer

type UnimplementedPacketSinkServer struct {
}

UnimplementedPacketSinkServer must be embedded to have forward compatible implementations.

func (UnimplementedPacketSinkServer) PacketInject

type UnimplementedServiceServer

type UnimplementedServiceServer struct {
}

UnimplementedServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedServiceServer) AttributeList

func (UnimplementedServiceServer) AttributeUpdate

func (UnimplementedServiceServer) ContextCreate

func (UnimplementedServiceServer) ContextDelete

func (UnimplementedServiceServer) ContextList

func (UnimplementedServiceServer) ContextUpdate

func (UnimplementedServiceServer) FlowCounterCreate

func (UnimplementedServiceServer) FlowCounterQuery

func (UnimplementedServiceServer) ObjectCounters

func (UnimplementedServiceServer) ObjectDelete

func (UnimplementedServiceServer) ObjectList

func (UnimplementedServiceServer) Operation

func (UnimplementedServiceServer) PortCreate

func (UnimplementedServiceServer) PortState

func (UnimplementedServiceServer) PortUpdate

func (UnimplementedServiceServer) SetCreate

func (UnimplementedServiceServer) SetUpdate

func (UnimplementedServiceServer) TableCreate

func (UnimplementedServiceServer) TableEntryAdd

func (UnimplementedServiceServer) TableEntryRemove

func (UnimplementedServiceServer) TableList

type UnsafeInfoServer

type UnsafeInfoServer interface {
	// contains filtered or unexported methods
}

UnsafeInfoServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to InfoServer will result in compilation errors.

type UnsafeNotificationServer

type UnsafeNotificationServer interface {
	// contains filtered or unexported methods
}

UnsafeNotificationServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to NotificationServer will result in compilation errors.

type UnsafePacketSinkServer

type UnsafePacketSinkServer interface {
	// contains filtered or unexported methods
}

UnsafePacketSinkServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to PacketSinkServer will result in compilation errors.

type UnsafeServiceServer

type UnsafeServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ServiceServer will result in compilation errors.

type UpdateActionDesc

type UpdateActionDesc struct {
	FieldId   *PacketFieldId `protobuf:"bytes,1,opt,name=field_id,json=fieldId,proto3" json:"field_id,omitempty"`        // Packet field.
	Type      UpdateType     `protobuf:"varint,2,opt,name=type,proto3,enum=forwarding.UpdateType" json:"type,omitempty"` // Update type.
	Value     []byte         `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`                           // Values used for set, dec, and, or and inc.
	Field     *PacketFieldId `protobuf:"bytes,4,opt,name=field,proto3" json:"field,omitempty"`                           // Value used for copy.
	BitOffset uint32         `protobuf:"varint,5,opt,name=bit_offset,json=bitOffset,proto3" json:"bit_offset,omitempty"` // Offset in bits to update (used for bit update).
	BitCount  uint32         `protobuf:"varint,6,opt,name=bit_count,json=bitCount,proto3" json:"bit_count,omitempty"`    // Number of bits to update (used for bit update).
	// contains filtered or unexported fields
}

A UpdateActionDesc describes UPDATE_ACTION. The descriptor identifies a change to a packet field.

func (*UpdateActionDesc) Descriptor deprecated

func (*UpdateActionDesc) Descriptor() ([]byte, []int)

Deprecated: Use UpdateActionDesc.ProtoReflect.Descriptor instead.

func (*UpdateActionDesc) GetBitCount

func (x *UpdateActionDesc) GetBitCount() uint32

func (*UpdateActionDesc) GetBitOffset

func (x *UpdateActionDesc) GetBitOffset() uint32

func (*UpdateActionDesc) GetField

func (x *UpdateActionDesc) GetField() *PacketFieldId

func (*UpdateActionDesc) GetFieldId

func (x *UpdateActionDesc) GetFieldId() *PacketFieldId

func (*UpdateActionDesc) GetType

func (x *UpdateActionDesc) GetType() UpdateType

func (*UpdateActionDesc) GetValue

func (x *UpdateActionDesc) GetValue() []byte

func (*UpdateActionDesc) ProtoMessage

func (*UpdateActionDesc) ProtoMessage()

func (*UpdateActionDesc) ProtoReflect

func (x *UpdateActionDesc) ProtoReflect() protoreflect.Message

func (*UpdateActionDesc) Reset

func (x *UpdateActionDesc) Reset()

func (*UpdateActionDesc) String

func (x *UpdateActionDesc) String() string

type UpdateType

type UpdateType int32

An UpdateType enumerates all supported forwarding updates.

const (
	UpdateType_UPDATE_TYPE_UNSPECIFIED UpdateType = 0
	UpdateType_UPDATE_TYPE_SET         UpdateType = 1 // Set a packet field.
	UpdateType_UPDATE_TYPE_INC         UpdateType = 2 // Increment a packet field.
	UpdateType_UPDATE_TYPE_DEC         UpdateType = 3 // Decrement a packet field.
	UpdateType_UPDATE_TYPE_COPY        UpdateType = 4 // Copy a field.
	UpdateType_UPDATE_TYPE_BIT_WRITE   UpdateType = 5 // Writes a set of bits in a packet field.
	UpdateType_UPDATE_TYPE_BIT_AND     UpdateType = 6 // Performs a bitwise 'and' operation on a field.
	UpdateType_UPDATE_TYPE_BIT_OR      UpdateType = 7 // Performs a bitwise 'or' operation on a field.
)

func (UpdateType) Descriptor

func (UpdateType) Descriptor() protoreflect.EnumDescriptor

func (UpdateType) Enum

func (x UpdateType) Enum() *UpdateType

func (UpdateType) EnumDescriptor deprecated

func (UpdateType) EnumDescriptor() ([]byte, []int)

Deprecated: Use UpdateType.Descriptor instead.

func (UpdateType) Number

func (x UpdateType) Number() protoreflect.EnumNumber

func (UpdateType) String

func (x UpdateType) String() string

func (UpdateType) Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL