在linux c api中有没有一种方法可以获得tcp套接字的传入窗口大小? 需要明确的是,我所说的传入是指从我的linux服务器的角度来看。在我接受的套接字中,linux中的SND和RCV值似乎发生了翻转,即RCV意味着从服务器到客户端。在这种情况下,我需要客户端到服务器端,即SND。 SND_BUF和RCV_BUF似乎与发送的实际值无关,而且TCP_WINDOW_CLAMP也不准确。
我有一个linux盒作为许多客户端和互联网之间的路由器,我需要获取一些关于使用情况的统计数据:我需要记录哪些内部IP访问外部地址。
我使用它来检查哪些内部IP访问哪个外部IP:
tcpdump -n -i any port 80 or port 443 and src net 192.168.101.0/24
(我使用-n,稍后进行查找)
然而,这也向我展示了许多与TCP握手和窗口有关的附加内容。是否可以只显示实际的HTTP请求?
我已经找到了一些方法,其中大多数涉及到grepping for GET\|POST,但是去掉了is,这是我关心的主要问题。
编辑:
除了使用tcp +标准linux
我的iPhone建立到linux服务器的TCP连接:
iOS -tcp> linux
iOS -tcp> linux
linux
linux
iOS快速地重新发送TCP,从而导致具有不同服务器seq的两个TCP。iOS使用第一个seq,linux使用第二个seq。所以这个连接不能传输数据。
iOS这么快地重新发送syn是一个错误,但是linux服务器做的是对的吗?我该怎么解决呢?