blob: f74048abac11c74d663e6ae8cb908d3240d30004 [file] [log] [blame]
syntax = "proto3";
option java_package = "org.onosproject.grpc.net.mcast";
package Multicast;
// TODO move model objects to common protobuf package
message ConnectPoint {
string deviceId = 1;
uint64 portNumber = 2;
}
enum MulticastRouteType {
PIM = 0;
IGMP = 1;
STATIC = 2;
}
enum MulticastOperationResult {
SUCCESS = 0;
FAIL = 1;
}
enum MulticastOperation {
ADD_ROUTE = 0;
ADD_SOURCE = 1;
ADD_SINK = 2;
REMOVE_ROUTE = 3;
REMOVE_SOURCE = 4;
REMOVE_SINK = 5;
}
message MulticastRoute {
fixed32 source = 1; // TODO assumes ipv4
fixed32 group = 2;
MulticastRouteType type = 3;
}
message MulticastReply {
MulticastOperationResult result = 1;
}
message MulticastRequest {
MulticastOperation operation = 1;
MulticastRoute route = 2;
ConnectPoint connectPoint = 3;
}
service MulticastRouteService {
rpc operation(stream MulticastRequest) returns (stream MulticastReply) {}
}