2import "goby/protobuf/option_extensions.proto";
3import "goby/middleware/protobuf/app_config.proto";
4import "goby/zeromq/protobuf/interprocess_config.proto";
6import "goby/acomms/protobuf/amac_config.proto";
7import "goby/acomms/protobuf/modem_message.proto";
9package goby.apps.zeromq.acomms.protobuf;
11message IPGatewayConfig
13 optional goby.middleware.protobuf.AppConfig app = 1;
14 optional goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2
15 [(goby.field) = { cfg { env: "GOBY_INTERPROCESS" } }];
17 required string local_ipv4_address = 3;
18 required uint32 cidr_netmask_prefix = 4;
19 optional int32 tun_number = 5;
21 optional bool enable_broadcast_address = 10 [
23 ]; // use all ones address as broadcast (e.g. 192.168.1.255 in /24 subnet
24 optional uint32 dynamic_address_count = 11
26 0]; // number of dynamic addresses for use as reverse-NAT
27 // (starting at one less than broadcast and counting down).
32 AUTONOMY_COLLABORATION = 2;
35 optional ModelType model_type = 12 [default = UNIFORM];
37 optional double gamma_autonomy = 13 [default = 0.75];
38 optional double gamma_collaboration = 14 [default = 0.25];
39 optional int32 gateway_id = 15 [default = 1];
41 optional int32 total_ports = 20 [default = 1];
42 repeated uint32 static_udp_port = 21;
44 optional goby.acomms.protobuf.MACConfig mac_cfg = 30;
45 required uint32 mtu = 31;
46 optional bool bypass_mac = 32 [default = false];
47 optional goby.acomms.protobuf.ModemTransmission bypass_mac_slot = 33;
49 optional int32 queue_size = 40 [default = 100];
51 optional int32 only_rate = 50;