What happens to a TCP connection when the network is abruptly terminated
up vote
1
down vote
favorite
Say a user space application has a TCP connection with some non local endpoint. At some point, network gets abruptly broken (i.e. connection deleted in network manager, unplug the wifi dongle, cut the Ethernet cable)
What is conceptually happening inside the kernel to cope with the situation and how does it manifest itself to the userspace application?
Guideline sub-questions:
- what are the timeouts involved?
- will the kernel try to hide from userspace the connection is lost while attempting to reconnect?
- can waiting for a response cause the userspace app to not want to quit gracefully?
linux networking linux-kernel tcp
add a comment |
up vote
1
down vote
favorite
Say a user space application has a TCP connection with some non local endpoint. At some point, network gets abruptly broken (i.e. connection deleted in network manager, unplug the wifi dongle, cut the Ethernet cable)
What is conceptually happening inside the kernel to cope with the situation and how does it manifest itself to the userspace application?
Guideline sub-questions:
- what are the timeouts involved?
- will the kernel try to hide from userspace the connection is lost while attempting to reconnect?
- can waiting for a response cause the userspace app to not want to quit gracefully?
linux networking linux-kernel tcp
There has been a close vote for the question being off topic without a comment what particularity. As I see it the question addressed two topic points.Using or administering a *nix desktop or server
andUNIX C API and System Interfaces
. Would therefore ask for a comment on the closed vote please.
– TheMeaningfulEngineer
Dec 5 at 13:38
I personally voted to leave this open; one vote currently says "too broad" while the other thinks it's a request for learning materials. Since I didn't cast those votes, I can't speak to them.
– Jeff Schaller
Dec 5 at 15:50
The network interface or other infrastructure going down does not mean the “connection is lost”. TCP will keep trying to retransmit for a long time before killing the connection (9 minutes?). It’s not up to the kernel it is the TCP protocol and the “userspace app” could very well wait until the connection is dropped before exiting.
– Murray Jensen
Dec 8 at 5:23
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
Say a user space application has a TCP connection with some non local endpoint. At some point, network gets abruptly broken (i.e. connection deleted in network manager, unplug the wifi dongle, cut the Ethernet cable)
What is conceptually happening inside the kernel to cope with the situation and how does it manifest itself to the userspace application?
Guideline sub-questions:
- what are the timeouts involved?
- will the kernel try to hide from userspace the connection is lost while attempting to reconnect?
- can waiting for a response cause the userspace app to not want to quit gracefully?
linux networking linux-kernel tcp
Say a user space application has a TCP connection with some non local endpoint. At some point, network gets abruptly broken (i.e. connection deleted in network manager, unplug the wifi dongle, cut the Ethernet cable)
What is conceptually happening inside the kernel to cope with the situation and how does it manifest itself to the userspace application?
Guideline sub-questions:
- what are the timeouts involved?
- will the kernel try to hide from userspace the connection is lost while attempting to reconnect?
- can waiting for a response cause the userspace app to not want to quit gracefully?
linux networking linux-kernel tcp
linux networking linux-kernel tcp
asked Dec 5 at 10:10
TheMeaningfulEngineer
1,63863569
1,63863569
There has been a close vote for the question being off topic without a comment what particularity. As I see it the question addressed two topic points.Using or administering a *nix desktop or server
andUNIX C API and System Interfaces
. Would therefore ask for a comment on the closed vote please.
– TheMeaningfulEngineer
Dec 5 at 13:38
I personally voted to leave this open; one vote currently says "too broad" while the other thinks it's a request for learning materials. Since I didn't cast those votes, I can't speak to them.
– Jeff Schaller
Dec 5 at 15:50
The network interface or other infrastructure going down does not mean the “connection is lost”. TCP will keep trying to retransmit for a long time before killing the connection (9 minutes?). It’s not up to the kernel it is the TCP protocol and the “userspace app” could very well wait until the connection is dropped before exiting.
– Murray Jensen
Dec 8 at 5:23
add a comment |
There has been a close vote for the question being off topic without a comment what particularity. As I see it the question addressed two topic points.Using or administering a *nix desktop or server
andUNIX C API and System Interfaces
. Would therefore ask for a comment on the closed vote please.
– TheMeaningfulEngineer
Dec 5 at 13:38
I personally voted to leave this open; one vote currently says "too broad" while the other thinks it's a request for learning materials. Since I didn't cast those votes, I can't speak to them.
– Jeff Schaller
Dec 5 at 15:50
The network interface or other infrastructure going down does not mean the “connection is lost”. TCP will keep trying to retransmit for a long time before killing the connection (9 minutes?). It’s not up to the kernel it is the TCP protocol and the “userspace app” could very well wait until the connection is dropped before exiting.
– Murray Jensen
Dec 8 at 5:23
There has been a close vote for the question being off topic without a comment what particularity. As I see it the question addressed two topic points.
Using or administering a *nix desktop or server
and UNIX C API and System Interfaces
. Would therefore ask for a comment on the closed vote please.– TheMeaningfulEngineer
Dec 5 at 13:38
There has been a close vote for the question being off topic without a comment what particularity. As I see it the question addressed two topic points.
Using or administering a *nix desktop or server
and UNIX C API and System Interfaces
. Would therefore ask for a comment on the closed vote please.– TheMeaningfulEngineer
Dec 5 at 13:38
I personally voted to leave this open; one vote currently says "too broad" while the other thinks it's a request for learning materials. Since I didn't cast those votes, I can't speak to them.
– Jeff Schaller
Dec 5 at 15:50
I personally voted to leave this open; one vote currently says "too broad" while the other thinks it's a request for learning materials. Since I didn't cast those votes, I can't speak to them.
– Jeff Schaller
Dec 5 at 15:50
The network interface or other infrastructure going down does not mean the “connection is lost”. TCP will keep trying to retransmit for a long time before killing the connection (9 minutes?). It’s not up to the kernel it is the TCP protocol and the “userspace app” could very well wait until the connection is dropped before exiting.
– Murray Jensen
Dec 8 at 5:23
The network interface or other infrastructure going down does not mean the “connection is lost”. TCP will keep trying to retransmit for a long time before killing the connection (9 minutes?). It’s not up to the kernel it is the TCP protocol and the “userspace app” could very well wait until the connection is dropped before exiting.
– Murray Jensen
Dec 8 at 5:23
add a comment |
active
oldest
votes
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f486117%2fwhat-happens-to-a-tcp-connection-when-the-network-is-abruptly-terminated%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f486117%2fwhat-happens-to-a-tcp-connection-when-the-network-is-abruptly-terminated%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
There has been a close vote for the question being off topic without a comment what particularity. As I see it the question addressed two topic points.
Using or administering a *nix desktop or server
andUNIX C API and System Interfaces
. Would therefore ask for a comment on the closed vote please.– TheMeaningfulEngineer
Dec 5 at 13:38
I personally voted to leave this open; one vote currently says "too broad" while the other thinks it's a request for learning materials. Since I didn't cast those votes, I can't speak to them.
– Jeff Schaller
Dec 5 at 15:50
The network interface or other infrastructure going down does not mean the “connection is lost”. TCP will keep trying to retransmit for a long time before killing the connection (9 minutes?). It’s not up to the kernel it is the TCP protocol and the “userspace app” could very well wait until the connection is dropped before exiting.
– Murray Jensen
Dec 8 at 5:23