[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [virt-tools-list] VirtViewer and TCP Keepalives



OK, I'm confused.  Why don't I see the keep alives in the wireshark dump?  I'm happy to upload my pcap file to dropbox.redhat.com for analysis

Apologies for harping on about this but the users are getting annoyed with their sessions freezing or terminating.  Also, we've confirmed that the exact timing is 30 minutes not 15 minutes

I had a fairly long and productive chat with one of the guys that manage the other firewall cluster.  I gave him the src and dst addresses and dst port and he was able to advise on the session state on the firewall.  If I opened a spice session to a RHEL server (no X) and minimised it, all 4 sessions on the 'odd' port started counting down from 1800.  If we leave the session minimised for then we get the "Could not connect to graphic server" or similar, can't remember exact wording.  However, if I start a spice session to a RHEL server (no X) and minimise/un-minimise it every few minutes (but no keyboard interaction) only 3 of the 4 sessions on the odd port continue counting down from 1800.  Once they hit zero, the screen is still visible but nothing I type appears on the screen and sending a keystroke with 'Send Key' does noting.

While I've been writing this, I've had an strace running on a remote-viewer session.
---
[colin fedora18 ~]$ strace -e trace=setsockopt -p 15504
Process 15504 attached
---
From another terminal session,
---
[colin fedora18 ~]$ ps -ef | grep strace
colin     15534  7107  0 06:00 pts/11   00:00:00 strace -e trace=setsockopt -p 15504
colin     16799 19435  0 06:34 pts/5    00:00:00 grep --color=auto strace
[colin fedora18 ~]$
---
So the strace has been running for about 35 minutes now, and strace has not shown a single 'setsockopt'. 

Thanks

CC

PS: Just killed the remote-viewer session and got
---
[colin fedora18 ~]$ strace -e trace=setsockopt -p 15504
Process 15504 attached
setsockopt(30, SOL_SOCKET, SO_ATTACH_FILTER, "\10\0\0\0\0\0\0\0\360\354\310\r\377\177\0\0", 16) = 0
setsockopt(30, SOL_SOCKET, SO_PASSCRED, [1], 4) = 0
+++ exited with 0 +++
[colin fedora18 ~]$
---



On Tue, Sep 17, 2013 at 8:43 PM, Marc-André Lureau <mlureau redhat com> wrote:


----- Original Message -----
> Just downloaded spice-gtk3 source. When I grep 'setsockopt', the only
> instance I see is setting TCP_NODELAY. It seems that while spice-gtk may [1]
> set SO_KEEPALIVE, spice-gtk3 does not.

spice-gtk uses glib, g_socket_set_keepalive(), it was added in 0.10:
http://cgit.freedesktop.org/spice/spice-gtk/commit/?id=8fe6547b6181fb7acbabedcd6ed95caf263dd8cc

This can be verified with strace:

elmarco anakao:~$ strace -e trace=setsockopt -- spicy -p 5900
setsockopt(7, SOL_SOCKET, SO_ATTACH_FILTER, "\10\0\0\0\0\0\0\0\240\202J\5\377\177\0\0", 16) = 0
setsockopt(7, SOL_SOCKET, SO_PASSCRED, [1], 4) = 0
setsockopt(15, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(15, SOL_TCP, TCP_NODELAY, [1], 4) = 0
setsockopt(18, SOL_SOCKET, SO_PRIORITY, [6], 4) = 0
setsockopt(18, SOL_SOCKET, SO_RCVBUF, [65472], 4) = 0
setsockopt(18, SOL_SOCKET, SO_SNDBUF, [65472], 4) = 0
setsockopt(18, SOL_SOCKET, SO_PASSCRED, [1], 4) = 0
setsockopt(19, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(19, SOL_TCP, TCP_NODELAY, [1], 4) = 0
setsockopt(20, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(20, SOL_TCP, TCP_NODELAY, [1], 4) = 0
setsockopt(21, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(21, SOL_TCP, TCP_NODELAY, [1], 4) = 0
setsockopt(22, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(22, SOL_TCP, TCP_NODELAY, [1], 4) = 0
setsockopt(23, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(23, SOL_TCP, TCP_NODELAY, [1], 4) = 0




--
RHCE#805007969328369

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]