Skip to content

Commit fcff79f

Browse files
staryxchenAsher-XunZhang
authored andcommitted
[TE] fix(tcp): add handshake daemon initialization (kvcache-ai#846)
- Implement startHandshakeDaemon method in TcpTransport class - Call handshake daemon during transport installation process Signed-off-by: staryxchen <staryxchen@tencent.com>
1 parent d2632c4 commit fcff79f

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

mooncake-transfer-engine/include/transport/tcp_transport/tcp_transport.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ class TcpTransport : public Transport {
6060
std::shared_ptr<TransferMetadata> meta,
6161
std::shared_ptr<Topology> topo);
6262

63+
int startHandshakeDaemon();
64+
6365
int allocateLocalSegmentID(int tcp_data_port);
6466

6567
int registerLocalMemory(void *addr, size_t length,

mooncake-transfer-engine/src/transport/tcp_transport/tcp_transport.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,12 @@ TcpTransport::~TcpTransport() {
269269
metadata_->removeSegmentDesc(local_server_name_);
270270
}
271271

272+
int TcpTransport::startHandshakeDaemon() {
273+
return metadata_->startHandshakeDaemon(nullptr,
274+
metadata_->localRpcMeta().rpc_port,
275+
metadata_->localRpcMeta().sockfd);
276+
}
277+
272278
int TcpTransport::install(std::string &local_server_name,
273279
std::shared_ptr<TransferMetadata> meta,
274280
std::shared_ptr<Topology> topo) {
@@ -288,6 +294,12 @@ int TcpTransport::install(std::string &local_server_name,
288294
return -1;
289295
}
290296

297+
ret = startHandshakeDaemon();
298+
if (ret) {
299+
LOG(ERROR) << "TcpTransport: cannot start handshake daemon";
300+
return -1;
301+
}
302+
291303
ret = metadata_->updateLocalSegmentDesc();
292304
if (ret) {
293305
LOG(ERROR) << "TcpTransport: cannot publish segments, "

0 commit comments

Comments
 (0)