blob: fc1e735124a577694c2027e03b4a5913bc25a24f [file] [log] [blame]
Jian Lia1186772018-07-27 18:06:41 +09001/*
2 * Copyright 2018-present Open Networking Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.openstacktroubleshoot.api;
17
Jian Lie189c1c2018-08-08 15:55:08 +090018import org.onosproject.openstacknetworking.api.InstancePort;
Jian Li0b93b002018-07-31 13:41:08 +090019
Jian Lia1186772018-07-27 18:06:41 +090020/**
21 * Openstack troubleshoot interface.
22 */
23public interface OpenstackTroubleshootService {
24
25 /**
Jian Lic38e9032018-08-09 17:08:38 +090026 * Troubleshoot traffic direction.
Jian Lia1186772018-07-27 18:06:41 +090027 */
Jian Lic38e9032018-08-09 17:08:38 +090028 enum Direction {
29
30 /**
31 * Signifies that EAST_WEST troubleshoot case.
32 */
33 EAST_WEST,
34
35 /**
36 * Signifies that NORTH_SOUTH troubleshoot case.
37 */
38 NORTH_SOUTH,
39 }
Jian Li0b93b002018-07-31 13:41:08 +090040
41 /**
42 * Checks a single VM-to-Vm connectivity.
43 *
Jian Lie189c1c2018-08-08 15:55:08 +090044 * @param srcInstancePort source instance port
45 * @param dstInstancePort destination instance port
Jian Li0b93b002018-07-31 13:41:08 +090046 * @return reachability
47 */
Jian Lie189c1c2018-08-08 15:55:08 +090048 Reachability probeEastWest(InstancePort srcInstancePort,
49 InstancePort dstInstancePort);
Jian Li0b93b002018-07-31 13:41:08 +090050
51 /**
Jian Li0b93b002018-07-31 13:41:08 +090052 * Checks a single router-to-VM connectivity.
53 *
Jian Lic38e9032018-08-09 17:08:38 +090054 * @param dstInstancePort destination instance port
Jian Li0b93b002018-07-31 13:41:08 +090055 * @return reachability
56 */
Jian Lic38e9032018-08-09 17:08:38 +090057 Reachability probeNorthSouth(InstancePort dstInstancePort);
Jian Lia1186772018-07-27 18:06:41 +090058}