...
1syntax = "proto3";
2package nodenetsvc.v1;
3option go_package = "github.com/Microsoft/hcsshim/pkg/ncproxy/nodenetsvc/v1";
4
5service NodeNetworkService {
6 rpc ConfigureNetworking(ConfigureNetworkingRequest) returns (ConfigureNetworkingResponse);
7 rpc ConfigureContainerNetworking(ConfigureContainerNetworkingRequest) returns (ConfigureContainerNetworkingResponse);
8 rpc PingNodeNetworkService(PingNodeNetworkServiceRequest) returns (PingNodeNetworkServiceResponse);
9 rpc GetHostLocalIpAddress(GetHostLocalIpAddressRequest) returns (GetHostLocalIpAddressResponse);
10}
11
12message ConfigureNetworkingRequest {
13 string container_id = 1;
14 RequestType request_type = 2;
15}
16
17message ConfigureNetworkingResponse {}
18
19message PingNodeNetworkServiceRequest {
20 string ping_request_message = 1;
21}
22
23message PingNodeNetworkServiceResponse {
24 string ping_response_message = 1;
25}
26
27enum RequestType {
28 Setup = 0;
29 Teardown = 1;
30}
31
32message ConfigureContainerNetworkingRequest {
33 RequestType request_type = 1;
34 string container_id = 2;
35 string network_namespace_id = 3;
36}
37
38message ConfigureContainerNetworkingResponse {
39 repeated ContainerNetworkInterface interfaces = 1;
40}
41
42message ContainerIPAddress {
43 string version = 1;
44 string ip = 3;
45 string prefix_length = 4;
46 string default_gateway = 5;
47}
48
49message ContainerNetworkInterface {
50 string name = 1;
51 string mac_address = 2;
52 string network_namespace_id = 3;
53 repeated ContainerIPAddress ipaddresses = 4;
54}
55
56message GetHostLocalIpAddressRequest {
57 string container_id = 1;
58}
59
60message GetHostLocalIpAddressResponse {
61 string ip_addr = 1;
62}
View as plain text