progran.proto 1.93 KB
Newer Older
nikaeinn's avatar
nikaeinn committed
1
//'syntax = "proto2";' 
2
3
4
package protocol;

import "stats_messages.proto";
5
import "header.proto";
6
7

message progran_message {
nikaeinn's avatar
nikaeinn committed
8
9
       required progran_direction msg_dir = 100;
	oneof msg {
10
11
12
13
14
15
16
17
              prp_hello hello_msg = 1;
              prp_echo_request echo_request_msg = 2;
	      prp_echo_reply echo_reply_msg = 3;
	      prp_stats_request stats_request_msg = 4;
	      prp_stats_reply stats_reply_msg = 5;
	}
}

nikaeinn's avatar
nikaeinn committed
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
enum progran_direction {
     //option allow_alias = true;
     NOT_SET = 0;
     INITIATING_MESSAGE = 1;
     SUCCESSFUL_OUTCOME=2;
     UNSUCCESSFUL_OUTCOME=3;	
}
	
enum progran_err {
        option allow_alias = true;
	// message errors
	NO_ERR = 0;	
	MSG_DEQUEUING = -1;
	MSG_ENQUEUING = -2;
	MSG_DECODING = -3;
	MSG_ENCODING = -4;
	MSG_BUILD = -5;
	MSG_NOT_SUPPORTED = -6; 
	MSG_NOT_HANDLED = -7;
	MSG_NOT_VALIDATED = -8;
	MSG_OUT_DATED = -9;


	// other erros
	UNEXPECTED = -100;	
}	
44
45
46
47
48
49

//
// Maintenance and discovery messages
//

message prp_hello {
50
	optional prp_header header = 1;
51
52
53
}

message prp_echo_request {
54
	optional prp_header header = 1;
55
56
57
58
59
	extensions 100 to 199;
}


message prp_echo_reply {
60
	optional prp_header header = 1;
61
62
63
64
65
66
67
68
69
	extensions 100 to 199;
}


//
// Statistics request and reply message
//

message prp_stats_request {
70
71
	optional prp_header header = 1;
	optional prp_stats_type type = 2;
72
	oneof body {
73
74
75
	      prp_complete_stats_request complete_stats_request = 3;
	      prp_cell_stats_request cell_stats_request = 4;
	      prp_ue_stats_request ue_stats_request = 5;
76
77
78
79
	}
}

message prp_stats_reply {
80
	optional prp_header header = 1;
81
82
	repeated prp_ue_stats_report ue_report = 2;
	repeated prp_cell_stats_report cell_report = 3;
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
}


// Extensions of the echo request and reply
// messages for carrying a latency value in ms
message prp_echo_request_latency {
	extend prp_echo_request {
	       optional uint32 latency = 100;
	}
}

message prp_echo_reply_latency {
	extend prp_echo_reply {
	       optional uint32 latency = 100;
	}
}