summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Toso <victortoso@redhat.com>2015-09-30 11:18:07 +0200
committerVictor Toso <victortoso@redhat.com>2015-10-09 08:24:22 +0200
commitc82085ee8c85fd40af091c2f556aa82cf7408434 (patch)
tree68816e24c362010ff1414961868e22a8abfaac0a
parent95b5617874a17f13c3419f4de87dfd88a8eb832d (diff)
proto: ping-pong from clientclient-side-bandwidth-monitoring
Client may need to measure latency for better performance tweaking at client side.
-rw-r--r--spice.proto12
-rw-r--r--spice/enums.h2
-rw-r--r--spice/protocol.h1
3 files changed, 15 insertions, 0 deletions
diff --git a/spice.proto b/spice.proto
index 3bca900..540bf32 100644
--- a/spice.proto
+++ b/spice.proto
@@ -281,6 +281,12 @@ channel MainChannel : BaseChannel {
Empty migrate_dst_seamless_ack;
Empty migrate_dst_seamless_nack;
+ message {
+ uint32 id;
+ uint64 timestamp;
+ uint8 data[] @ctype(uint8_t) @as_ptr(data_len);
+ } @ctype(SpiceMsgPing) pong;
+
client:
message {
uint64 cache_size;
@@ -313,6 +319,12 @@ channel MainChannel : BaseChannel {
} migrate_dst_do_seamless;
Empty migrate_connected_seamless;
+
+ message {
+ uint32 id;
+ uint64 timestamp;
+ uint8 data[] @ctype(uint8_t) @as_ptr(data_len);
+ } @ctype(SpiceMsgPing) ping;
};
enum8 clip_type {
diff --git a/spice/enums.h b/spice/enums.h
index 16885ac..a7c316a 100644
--- a/spice/enums.h
+++ b/spice/enums.h
@@ -451,6 +451,7 @@ enum {
SPICE_MSG_MAIN_MIGRATE_BEGIN_SEAMLESS,
SPICE_MSG_MAIN_MIGRATE_DST_SEAMLESS_ACK,
SPICE_MSG_MAIN_MIGRATE_DST_SEAMLESS_NACK,
+ SPICE_MSG_MAIN_PONG,
SPICE_MSG_END_MAIN
};
@@ -467,6 +468,7 @@ enum {
SPICE_MSGC_MAIN_MIGRATE_END,
SPICE_MSGC_MAIN_MIGRATE_DST_DO_SEAMLESS,
SPICE_MSGC_MAIN_MIGRATE_CONNECTED_SEAMLESS,
+ SPICE_MSGC_MAIN_PING,
SPICE_MSGC_END_MAIN
};
diff --git a/spice/protocol.h b/spice/protocol.h
index 0c265ee..864b2e9 100644
--- a/spice/protocol.h
+++ b/spice/protocol.h
@@ -126,6 +126,7 @@ enum {
SPICE_MAIN_CAP_NAME_AND_UUID,
SPICE_MAIN_CAP_AGENT_CONNECTED_TOKENS,
SPICE_MAIN_CAP_SEAMLESS_MIGRATE,
+ SPICE_MAIN_CAP_PING,
};
enum {