All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/6] *** Add Multifd support for TLS migration ***
@ 2020-09-13  2:47 Chuan Zheng
  2020-09-13  2:47 ` [PATCH v3 1/6] migration/tls: save hostname into MigrationState Chuan Zheng
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Chuan Zheng @ 2020-09-13  2:47 UTC (permalink / raw)
  To: quintela, eblake, dgilbert, berrange
  Cc: zhengchuan, zhang.zhanghailiang, yuxiating, qemu-devel,
	xiexiangyou, alex.chen, jinyan12

v2 -> v3:
    rebase patches on master

v1 -> v2:
    fix memoryleak of MigrationState hostname
    add tls_hostname into MultiFDSendParams for handshake use
    fix function alignment
    squash Patch005 and Patch006
    add ioc into trace-events

TLS migration could easily reach bottleneck of cpu because of encryption
and decryption in migration thread.
In our test, the tls migration could only reach 300MB/s under bandwidth
of 500MB/s.

Inspired by multifd, we add multifd support for tls migration to make fully
use of given net bandwidth at the cost of multi-cpus and could reduce
at most of 100% migration time with 4U16G test vm.

Evaluate migration time of migration vm.
The VM specifications for migration are as follows:
- VM use 4-K page;
- the number of VCPU is 4;
- the total memory is 16Gigabit;
- use 'mempress' tool to pressurize VM(mempress 4096 100);
- migration flag is 73755 (8219 + 65536 (TLS)) vs 204827 (8219 + 65536 (TLS) + 131072(Multifd))

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|                      |         TLS           |      MultiFD + TLS (2 channel)    |
--------------------------------------------------------t---------------------------
| mempress 1024 120    |       25.035s         |           15.067s                 |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
| mempress 1024 200    |       48.798s         |           25.334s                 |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Chuan Zheng (6):
  migration/tls: save hostname into MigrationState
  migration/tls: extract migration_tls_client_create for common-use
  migration/tls: add MigrationState and tls_hostname into
    MultiFDSendParams
  migration/tls: extract cleanup function for common-use
  migration/tls: add support for multifd tls-handshake
  migration/tls: add trace points for multifd-tls

 migration/channel.c    |   6 +++
 migration/migration.c  |   1 +
 migration/migration.h  |   5 ++
 migration/multifd.c    | 124 +++++++++++++++++++++++++++++++++++++++++++------
 migration/multifd.h    |   4 ++
 migration/tls.c        |  26 +++++++----
 migration/tls.h        |   6 +++
 migration/trace-events |   4 ++
 8 files changed, 154 insertions(+), 22 deletions(-)

-- 
1.8.3.1



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-09-14 11:24 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-13  2:47 [PATCH v3 0/6] *** Add Multifd support for TLS migration *** Chuan Zheng
2020-09-13  2:47 ` [PATCH v3 1/6] migration/tls: save hostname into MigrationState Chuan Zheng
2020-09-14  9:00   ` Daniel P. Berrangé
2020-09-14 11:22     ` Zheng Chuan
2020-09-13  2:47 ` [PATCH v3 2/6] migration/tls: extract migration_tls_client_create for common-use Chuan Zheng
2020-09-13  2:47 ` [PATCH v3 3/6] migration/tls: add MigrationState and tls_hostname into MultiFDSendParams Chuan Zheng
2020-09-14  9:02   ` Daniel P. Berrangé
2020-09-14  9:20     ` Zheng Chuan
2020-09-14  9:26       ` Daniel P. Berrangé
2020-09-14  9:36         ` Zheng Chuan
2020-09-13  2:47 ` [PATCH v3 4/6] migration/tls: extract cleanup function for common-use Chuan Zheng
2020-09-13  2:47 ` [PATCH v3 5/6] migration/tls: add support for multifd tls-handshake Chuan Zheng
2020-09-13  2:47 ` [PATCH v3 6/6] migration/tls: add trace points for multifd-tls Chuan Zheng
2020-09-14  8:55   ` Daniel P. Berrangé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.