Keepalive是什么意思?keepalived工作原理

發(fā)布時(shí)間:2023-07-05 16:42:50
編輯:
來(lái)源:驅(qū)動(dòng)中國(guó)網(wǎng)
字體:

Keepalive是什么意思:

keepalive是在TCP中一個(gè)可以檢測(cè)死連接的機(jī)制,根據(jù)你的需要設(shè)置就行。

keepalived工作原理:

1.如果主機(jī)可達(dá),對(duì)方就會(huì)響應(yīng)ACK應(yīng)答,就認(rèn)為是存活的。

2.如果可達(dá),但應(yīng)用程序退出,對(duì)方就發(fā)FIN應(yīng)答,發(fā)送TCP撤消連接。

3.如果可達(dá),但應(yīng)用程序崩潰,對(duì)方就發(fā)RST消息。

4.如果對(duì)方主機(jī)不響應(yīng)ack,rst,繼續(xù)發(fā)送直到超時(shí),就撤消連接。這個(gè)時(shí)間就是默認(rèn)的二個(gè)小時(shí)。

uses WinSock2;

procedure TForm1.IdTCPServer1Connect(AThread: TIdPeerThread);

type

TCP_KeepAlive =record

OnOff: Cardinal;

KeepAliveTime: Cardinal;

KeepAliveInterval: Cardinal

end;

var

Val: TCP_KeepAlive;

Ret: DWord;

begin

Val.OnOff:=1;

Val.KeepAliveTime:=6000; //6s

Val.KeepAliveInterval:=6000; //6s

WSAIoctl(AThread.Connection.Socket.Binding.Handle, IOC_IN or IOC_VENDOR or 4,

@Val, SizeOf(Val), nil, 0, @Ret, nil, nil)

end;

標(biāo)簽: 檢測(cè)死連接機(jī)制 電腦設(shè)置功能 電腦主

   原標(biāo)題:Keepalive是什么意思?keepalived工作原理

>更多相關(guān)文章
最近更新