Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.6.0.3
openapi_sflow.h
Go to the documentation of this file.
1 
9 /*********************************************************************
10 *
11 * Copyright 2016-2018 Broadcom.
12 *
13 * Licensed under the Apache License, Version 2.0 (the "License");
14 * you may not use this file except in compliance with the License.
15 * You may obtain a copy of the License at
16 *
17 * http://www.apache.org/licenses/LICENSE-2.0
18 *
19 * Unless required by applicable law or agreed to in writing, software
20 * distributed under the License is distributed on an "AS IS" BASIS,
21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 * See the License for the specific language governing permissions and
23 * limitations under the License.
24 *
25 **********************************************************************
26 *
27 * @filename openapi_sflow.h
28 *
29 * @purpose sFlow Configuration and Status
30 *
31 * @component OpEN
32 *
33 * @create 09/14/2016
34 *
35 * @end
36 *
37 *********************************************************************/
38 #ifndef OPENAPI_SFLOW_H_INCLUDED
39 #define OPENAPI_SFLOW_H_INCLUDED
40 
41 #include "openapi_common.h"
42 
43 #define OPEN_SFLOW_RCVR_NO_TIMEOUT (-1)
44 
45 typedef enum
46 {
47  OPEN_SFLOW_SAMPLING_TYPE_INGRESS = 0,
48  OPEN_SFLOW_SAMPLING_TYPE_FLOW_BASED = 1,
49  OPEN_SFLOW_SAMPLING_TYPE_EGRESS = 2,
50 } OPEN_SFLOW_SAMPLING_TYPE_t;
51 
52 /*****************************************************************/
65  uint32_t *ifNum);
66 
67 /*****************************************************************/
80  uint32_t ifNum);
81 
82 /*****************************************************************/
97  uint32_t *ifNum);
98 
99 /*****************************************************************/
114  uint32_t ifNum);
115 
116 /*****************************************************************/
129  uint32_t *ipAddr);
130 
131 /*****************************************************************/
144  open_in6_addr_t *ipv6Addr);
145 
146 /*****************************************************************/
159  uint32_t *ipAddr);
160 
161 /*****************************************************************/
174  open_in6_addr_t *ipv6Addr);
175 
176 /*****************************************************************/
190 uint32_t openapiSflowRcvrCountGet(openapiClientHandle_t *client_handle);
191 
192 /*****************************************************************/
203 
204 /*****************************************************************/
222  uint32_t index,
223  open_buffdesc *owner);
224 
225 /*****************************************************************/
252  uint32_t index,
253  open_buffdesc *owner,
254  int32_t timeout);
255 
256 /*****************************************************************/
275  uint32_t index,
276  int32_t *timeRemaining);
277 
278 /*****************************************************************/
293  uint32_t index,
294  open_inet_addr_t *ipAddr);
295 
296 /*****************************************************************/
313  uint32_t index,
314  open_inet_addr_t *ipAddr);
315 
316 /*****************************************************************/
331  uint32_t index,
332  uint32_t *port);
333 
334 /*****************************************************************/
352  uint32_t index,
353  uint32_t port);
354 
355 /*****************************************************************/
372  uint32_t *minSize, uint32_t *maxSize);
373 
374 /*****************************************************************/
389  uint32_t index,
390  uint32_t *size);
391 
392 /*****************************************************************/
411  uint32_t index,
412  uint32_t size);
413 
414 /*****************************************************************/
428  uint32_t *minInstance,
429  uint32_t *maxInstance);
430 
431 /*****************************************************************/
447  uint32_t ifNum,
448  uint32_t instance,
449  uint32_t *rcvrIndex);
450 
451 /*****************************************************************/
470  uint32_t ifNum,
471  uint32_t instance,
472  uint32_t rcvrIndex);
473 
474 /*****************************************************************/
489  uint32_t *minRate,
490  uint32_t *maxRate);
491 
492 /*****************************************************************/
509  uint32_t ifNum,
510  uint32_t instance,
511  OPEN_SFLOW_SAMPLING_TYPE_t type,
512  uint32_t *rate);
513 
514 /*****************************************************************/
533  uint32_t ifNum,
534  uint32_t instance,
535  OPEN_SFLOW_SAMPLING_TYPE_t type,
536  uint32_t rate);
537 
538 /*****************************************************************/
552  uint32_t *minHeaderSize,
553  uint32_t *maxHeaderSize);
554 
555 /*****************************************************************/
571  uint32_t ifNum,
572  uint32_t instance,
573  uint32_t *size);
574 
575 /*****************************************************************/
593  uint32_t ifNum,
594  uint32_t instance,
595  uint32_t size);
596 
597 /*****************************************************************/
615  uint32_t ifNum,
616  uint32_t *aclNum);
617 
618 /*****************************************************************/
638  uint32_t index,
639  uint32_t ifNum,
640  uint32_t aclNum,
641  OPEN_CONTROL_t action);
642 
643 /*****************************************************************/
661  uint32_t ifNum,
662  uint32_t *aclNum);
663 
664 /*****************************************************************/
684  uint32_t index,
685  uint32_t ifNum,
686  uint32_t aclNum,
687  OPEN_CONTROL_t action);
688 
689 /*****************************************************************/
706  uint32_t ifNum,
707  uint32_t instance,
708  uint32_t *rcvrIndex);
709 
710 /*****************************************************************/
727  uint32_t ifNum,
728  uint32_t instance,
729  uint32_t rcvrIndex);
730 
731 /*****************************************************************/
745  uint32_t *minInterval, uint32_t *maxInterval);
746 
747 /*****************************************************************/
763  uint32_t ifNum,
764  uint32_t instance,
765  uint32_t *interval);
766 
767 /*****************************************************************/
784  uint32_t ifNum,
785  uint32_t instance,
786  uint32_t interval);
787 
788 /*****************************************************************/
799 
800 /*****************************************************************/
817  uint32_t ifNum,
818  uint32_t instance,
819  uint32_t *index);
820 
821 /*****************************************************************/
840  uint32_t ifNum,
841  uint32_t instance,
842  uint32_t index);
843 
844 /*****************************************************************/
855 
856 /*****************************************************************/
872  uint32_t index,
873  uint32_t *monitorSessionId);
874 
875 /*****************************************************************/
891  uint32_t index,
892  uint32_t monitorSessionId);
893 
894 /*****************************************************************/
909  uint32_t index,
910  open_inet_addr_t *ipAddr);
911 
912 /*****************************************************************/
929  uint32_t index,
930  open_inet_addr_t *ipAddr);
931 
932 /*****************************************************************/
947  uint32_t index,
948  uint32_t *port);
949 
950 /*****************************************************************/
967  uint32_t index,
968  uint32_t port);
969 
970 /*****************************************************************/
986  uint32_t index,
987  uint32_t *ifNum);
988 
989 /*****************************************************************/
1007  uint32_t index,
1008  uint32_t ifNum);
1009 
1010 #endif /* OPENAPI_SFLOW_H_INCLUDED */
1011 
open_error_t openapiSflowInstanceRangeGet(openapiClientHandle_t *client_handle, uint32_t *minInstance, uint32_t *maxInstance)
Get the supported range of sFlow instance ID values.
open_error_t openapiSflowFsPacketSamplingRateGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, OPEN_SFLOW_SAMPLING_TYPE_t type, uint32_t *rate)
Get the sFlow sampler packet sampling rate.
open_error_t openapiSflowRcvrPortGet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t *port)
Get the sFlow receiver port.
open_error_t openapiSflowFsRcvrIndexGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t *rcvrIndex)
Get the sFlow sampler receiver index.
open_error_t openapiSflowFsMaximumHeaderSizeRangeGet(openapiClientHandle_t *client_handle, uint32_t *minHeaderSize, uint32_t *maxHeaderSize)
Get the supported range of sFlow maximum header size ID values.
open_error_t openapiSflowRemoteAgentSourceIpv6AddrGet(openapiClientHandle_t *client_handle, open_in6_addr_t *ipv6Addr)
Get the source IPv6 address of the sFlow Remote agents client.
open_error_t openapiSflowRemoteAgentMonitorSessionDestIfaceGet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t *ifNum)
Get the sFlow remote agent monitor session destination interface.
uint32_t openapiSflowRcvrOwnerStringLenGet(openapiClientHandle_t *client_handle)
Get the maximum length string for the sFlow receiver owner.
open_error_t openapiSflowSourceInterfaceSet(openapiClientHandle_t *client_handle, uint32_t ifNum)
Set the source interface number of the sFlow client.
open_error_t openapiSflowCpIntervalGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t *interval)
Get the counter polling interval.
open_error_t openapiSflowFsMaximumHeaderSizeGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t *size)
Get the sFlow sampler maximum header size.
open_error_t openapiSflowRemoteAgentAddressGet(openapiClientHandle_t *client_handle, uint32_t index, open_inet_addr_t *ipAddr)
Get the sFlow remote agent IP address.
open_error_t openapiSflowSamplerIpAclSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t ifNum, uint32_t aclNum, OPEN_CONTROL_t action)
Set the flow-based sFlow sampler IP ACL action.
open_error_t openapiSflowFsRemoteAgentIndexGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t *index)
Get the sFlow sampler remote agent index.
open_error_t openapiSflowFsMaximumHeaderSizeSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t size)
Set the sFlow sampler maximum header size.
open_error_t openapiSflowFsPacketSamplingRateRangeGet(openapiClientHandle_t *client_handle, uint32_t *minRate, uint32_t *maxRate)
Get the supported range of sFlow flow sampler packet sampling rate parameter values.
uint32_t openapiSflowFsRemoteAgentMaxIndexGet(openapiClientHandle_t *client_handle)
Get the sFlow sampler remote agent index maximum value supported.
open_error_t openapiSflowRemoteAgentUdpDestPortGet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t *port)
Get the sFlow remote agent destination UDP port.
open_error_t
OPEN uses these enumerators to indicate the error codes.
open_error_t openapiSflowFsPacketSamplingRateSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, OPEN_SFLOW_SAMPLING_TYPE_t type, uint32_t rate)
Set the sFlow sampler packet sampling rate.
open_error_t openapiSflowFsRemoteAgentIndexSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t index)
Set the sFlow sampler remote agent index.
open_error_t openapiSflowFsRcvrIndexSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t rcvrIndex)
Set the sFlow sampler receiver index.
uint32_t openapiSflowRcvrCountGet(openapiClientHandle_t *client_handle)
Get the number of sFlow receivers the switch supports.
open_error_t openapiSflowRcvrTimeRemainingGet(openapiClientHandle_t *client_handle, uint32_t index, int32_t *timeRemaining)
Get the time remaining before the sFlow receiver entry expires.
open_error_t openapiSflowRemoteAgentSourceInterfaceSet(openapiClientHandle_t *client_handle, uint32_t ifNum)
Set the sFlow remote agent client source interface number.
open_error_t openapiSflowRemoteAgentSourceIpv4AddrGet(openapiClientHandle_t *client_handle, uint32_t *ipAddr)
Get the source IPv4 address of the sFlow Remote agents client.
open_error_t openapiSflowRcvrAddressSet(openapiClientHandle_t *client_handle, uint32_t index, open_inet_addr_t *ipAddr)
Set the sFlow receiver IP address.
open_error_t openapiSflowCpRcvrIndexSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t rcvrIndex)
Set the receiver index associated with a counter poller.
open_error_t openapiSflowRcvrMaxDatagramSizeGet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t *size)
Get the sFlow receiver maximum datagram size.
open_error_t openapiSflowCpIntervalSet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t interval)
Set the counter polling interval.
open_error_t openapiSflowRcvrPortSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t port)
Set the sFlow receiver port.
open_error_t openapiSflowRcvrOwnerSet(openapiClientHandle_t *client_handle, uint32_t index, open_buffdesc *owner, int32_t timeout)
Set the sFlow receiver owner string and timeout.
open_error_t openapiSflowRcvrOwnerGet(openapiClientHandle_t *client_handle, uint32_t index, open_buffdesc *owner)
Get the sFlow receiver owner string.
open_error_t openapiSflowRcvrMaxDatagramSizeRangeGet(openapiClientHandle_t *client_handle, uint32_t *minSize, uint32_t *maxSize)
Get the sFlow receiver maximum datagram size parameter minimum and maximum values supported by the sw...
OPEN_CONTROL_t
OPEN uses these enumerators to indicate enable or disable for a given config or status parameter...
open_error_t openapiSflowSourceIpv4AddrGet(openapiClientHandle_t *client_handle, uint32_t *ipAddr)
Get the source IPv4 address of the sFlow client.
open_error_t openapiSflowSourceInterfaceGet(openapiClientHandle_t *client_handle, uint32_t *ifNum)
Get the source interface number of the sFlow client.
open_error_t openapiSflowRemoteAgentMonitorSessionGet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t *monitorSessionId)
Get the sFlow sampler remote agent index.
open_error_t openapiSflowRcvrAddressGet(openapiClientHandle_t *client_handle, uint32_t index, open_inet_addr_t *ipAddr)
Get the sFlow receiver IP address.
uint32_t openapiSflowFsRemoteAgentMaxMonitorSessionIdGet(openapiClientHandle_t *client_handle)
Get the sFlow sampler remote agent session ID maximum value supported.
open_error_t openapiSflowCpIntervalRangeGet(openapiClientHandle_t *client_handle, uint32_t *minInterval, uint32_t *maxInterval)
Get the supported range of sFlow counter polling interval values.
open_error_t openapiSflowRemoteAgentSourceInterfaceGet(openapiClientHandle_t *client_handle, uint32_t *ifNum)
Get the sFlow remote agent client source interface number.
open_error_t openapiSflowRemoteAgentMonitorSessionDestIfaceSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t ifNum)
Set the sFlow remote agent monitor session destination interface.
open_error_t openapiSflowSamplerMacAclGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t *aclNum)
Get the flow-based sFlow sampler attached MAC ACL.
open_error_t openapiSflowSamplerMacAclSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t ifNum, uint32_t aclNum, OPEN_CONTROL_t action)
Set the flow-based sFlow sampler MAC ACL action.
open_error_t openapiSflowCpRcvrIndexGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t instance, uint32_t *rcvrIndex)
Get the receiver index associated with a counter poller.
open_error_t openapiSflowSamplerIpAclGet(openapiClientHandle_t *client_handle, uint32_t ifNum, uint32_t *aclNum)
Get the flow-based sFlow sampler attached IP ACL.
open_error_t openapiSflowSourceIpv6AddrGet(openapiClientHandle_t *client_handle, open_in6_addr_t *ipv6Addr)
Get the source IPv6 address of the sFlow client.
open_error_t openapiSflowRcvrMaxDatagramSizeSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t size)
Set the sFlow receiver maximum datagram size.
open_error_t openapiSflowRemoteAgentAddressSet(openapiClientHandle_t *client_handle, uint32_t index, open_inet_addr_t *ipAddr)
Set the sFlow remote agent IP address.
open_error_t openapiSflowRemoteAgentUdpDestPortSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t port)
Set the sFlow remote agent destination UDP port.
Hash Mode names.
open_error_t openapiSflowRemoteAgentMonitorSessionSet(openapiClientHandle_t *client_handle, uint32_t index, uint32_t monitorSessionId)
Set the sFlow sampler remote agent index.