testPdfZipFileTosendTarget.zip (3.7 KB)
Hi @John_Carter4 ,
Attaching the service that is calling pub.client:http… this service created by me to reproduce the scenario we were facing. Note: The issue is not with all the target system.
What we observed from TCP dump is when the target system is idle for say 30 seconds, it will request to close connection (FIN,ACK) and IS will acknowledge with ACK. But before IS issue close connection (FIN,ACK), there is a HTTP request to target System where there will be connection reset from target system and IS issue the same HTTP request again to target. I guess this is expected behavior from TCP protocol. Want to understand who initiate the new connection, is it pub.client.http or the TCP protocol ?
Also, wanted to understand more on how keepAliveTimeout is used and in what scenarios.
Below is the IS server log with trace level:
Invoking service pub.client:http :-
2022-06-15 11:22:35 IST [ISS.0015.0005D] Invoking service pub.client:http.
2022-06-15 11:22:35 IST [ISS.0014.0016T] Invoking service pub.client:http
**2022-06-15 11:22:35 IST [ISC.0064.0002T] HTTP Get http://localhost:5554/rest/flow/restt/writePdfZipFile?json=NZ+7** ---> **[u]this is the http request after target system request TCP close connection and before IS close connection[/u]**
2022-06-15 11:22:35 IST [ISC.0064.0015T] **Opening Socket http://localhost:5554/rest/flow/restt/writePdfZipFile?json=NZ+7** ---> **[u]opening the socket[/u]**
2022-06-15 11:22:35 IST [ISC.0064.0021T] Successfully connected to host: localhost port: 5554
2022-06-15 11:22:35 IST [ISS.0142.0001D] Registered Lifecycle Listener Socket[addr=localhost/127.0.0.1,port=5554,localport=59533]
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> GET /rest/flow/restt/writePdfZipFile?json=NZ+7 HTTP/1.1
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> User-Agent: Mozilla/4.0 [en] (WinNT; I)
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> Accept: image/gif, */*
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> Host: localhost:5554
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> Content-Type: application/x-www-form-urlencoded
2022-06-15 11:22:35 IST [ISS.0142.0002D] Unregistered Lifecycle Listener Socket[addr=localhost/127.0.0.1,port=5554,localport=59533] is true
2022-06-15 11:22:35 IST [ISC.0064.0015T] **Opening Socket http://localhost:5554/rest/flow/restt/writePdfZipFile?json=NZ+7** --> **[u]Again opening new socket[/u]**
2022-06-15 11:22:35 IST [ISC.0064.0021T] Successfully connected to host: localhost port: 5554
2022-06-15 11:22:35 IST [ISS.0142.0001D] Registered Lifecycle Listener Socket[addr=localhost/127.0.0.1,port=5554,localport=59590]
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> GET /rest/flow/restt/writePdfZipFile?json=NZ+7 HTTP/1.1
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> User-Agent: Mozilla/4.0 [en] (WinNT; I)
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> Accept: image/gif, */*
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> Host: localhost:5554
2022-06-15 11:22:35 IST [ISC.0038.0002D] --> Content-Type: application/x-www-form-urlencoded
2022-06-15 11:22:35 IST [ISC.0040.0001D] HTTP/1.1 200
2022-06-15 11:22:35 IST [ISC.0038.0002D] <-- Content-Type: text/html; charset=UTF-8
2022-06-15 11:22:35 IST [ISC.0038.0002D] <-- Content-Length: 75
2022-06-15 11:22:35 IST [ISS.0142.0002D] Unregistered Lifecycle Listener Socket[addr=localhost/127.0.0.1,port=5554,localport=59590] is true
2022-06-15 11:22:35 IST [ISC.0049.0008D] Sequence : index=2 depth=2
2022-06-15 11:22:35 IST [ISC.0049.0008D] Sequence MAIN: index=2 depth=1
2022-06-15 11:22:35 IST [ISC.0049.0005D] Invoke : index=1 depth=1
TCP DUMP:
Target system issue close connection after its idle for 30 seconds
|836|11:22:31.778008|127.0.0.1|127.0.0.1|TCP|44|5554 → 59533 [FIN, ACK] Seq=155 Ack=203 Win=2619648 Len=0|
|---|---|---|---|---|---|---|
|837|11:22:31.778026|127.0.0.1|127.0.0.1|TCP|44|59533 → 5554 [ACK] Seq=203 Ack=156 Win=2619392 Len=0|
IS send http request to target system before IS close connection (there will be connection RST,ACK from target) :
|887|11:22:35.202978|127.0.0.1|127.0.0.1|HTTP|239|GET /rest/flow/restt/writePdfZipFile?json=NZ+7 HTTP/1.1 |
|---|---|---|---|---|---|---|
|888|11:22:35.203017|127.0.0.1|127.0.0.1|TCP|44|5554 → 59533 [RST, ACK] Seq=156 Ack=398 Win=0 Len=0|
|889|11:22:35.224904|127.0.0.1|127.0.0.1|TCP|56|[TCP Retransmission] [TCP Port numbers reused] 59581 → 6849 [SYN] Seq=0 Win=65535 Len=0 MSS=65495 WS=256 SACK_PERM=1|
|890|11:22:35.224933|127.0.0.1|127.0.0.1|TCP|44|6849 → 59581 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0|
|891|11:22:35.315526|127.0.0.1|127.0.0.1|TCP|56|59590 → 5554 [SYN] Seq=0 Win=65535 Len=0 MSS=65495 WS=256 SACK_PERM=1|
|892|11:22:35.315574|127.0.0.1|127.0.0.1|TCP|56|5554 → 59590 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=65495 WS=256 SACK_PERM=1|
|893|11:22:35.315598|127.0.0.1|127.0.0.1|TCP|44|59590 → 5554 [ACK] Seq=1 Ack=1 Win=2619648 Len=0|
|894|11:22:35.315703|127.0.0.1|127.0.0.1|HTTP|239|GET /rest/flow/restt/writePdfZipFile?json=NZ+7 HTTP/1.1 |
|895|11:22:35.315717|127.0.0.1|127.0.0.1|TCP|44|5554 → 59590 [ACK] Seq=1 Ack=196 Win=2619648 Len=0|
|896|11:22:35.317187|127.0.0.1|127.0.0.1|HTTP|198|HTTP/1.1 200 OK (text/html)|
|897|11:22:35.317211|127.0.0.1|127.0.0.1|TCP|44|59590 → 5554 [ACK] Seq=196 Ack=155 Win=2619392 Len=0|