草庐IT

java - Android Wifi 响应太慢

我目前正在开发一个Android应用程序,其中数据通过http从服务器传输到客户端(全部在本地网络中)。我的Intent是这应该实时发生,但实际上(在某些情况下)Android不会立即接受响应。这导致延迟高达200-3000(!)ms(从在服务器上启动包到android收到它的时间!)这是一个绝对不能令人信服的行为。Wireshark告诉我,有时会有几次tcp重传(零到五次)——这意味着,包没有以适合tcp的速度到达。为了证实这一点,通过wifi从笔记本电脑/其他android设备进行简单的Ping显示平均延迟为150(!每个设备的连接性都足够好!)。在本地网络中,我预计在糟糕的情况下

tcp - ns-3 wlan grid TCP 在 UDP 运行时不工作

我正在尝试在ns-3中设置多跳AdHoc802.11g网络。首先,我使用了示例“wifi-simple-adhoc-grid.cc”。示例使用UDP,但我想使用TCP。所以我换了TypeIdtid=ns3::UdpSocketFactory::GetTypeId();PtrrecvSink=Socket::CreateSocket(c.Get(sinkNode),tid);InetSocketAddresslocal=InetSocketAddress(Ipv4Address::GetAny(),80);recvSink->Bind(local);recvSink->SetRecvCa

android - 使用android手机作为 "3G to wifi"转发设备,可行吗?请提示

我想让我的“电脑A”(互联网)通过3G网络(TCP,互联网)连接到android手机,当android手机连接到本地wifi(无互联网)时。我有“另一台计算机B”也连接到本地wifi(没有互联网)。如何让电脑A和电脑B直接通信?给我一​​些提示..谢谢!!更新信息1:计算机B必须连接到本地wifi网络更新信息2:我想到的一个解决方案是开发一个小型实用程序应用程序,只需将所有传入的数据包(来自3G)转发到本地wifi中的专用ip。可行吗? 最佳答案 我的猜测是安装一个网络共享应用程序,将您的android设备变成计算机B可以连接到的热

blackberry - 如何在连接到 BlackBerry 上的 Wifi 时获取 IP?

我正在尝试让我的应用程序在连接到Wifi网络时检索IP地址,但我不太确定如何完成这项工作。我查看了RadioInfo,发现有一个函数getIPAddress(intapnId)。这是正确的吗?我也看过WLANInfo,但那个似乎没有任何与IP相关的功能。谁能帮我解决这个问题? 最佳答案 klyubinwrote:[...]thebestsolution(asitreliesondocumentedbehavior)istoopenaudpsocket(orTCPserversocket)overWiFiandqueryitsIPad

c++ - iPhone/iPad wifi tcpip 连接到 wifi 上的其他计算机

我在Wifi路由器上连接了多台计算机。对于iPhone/iPad在objective-c中,我如何确定什么计算机位于什么tcpip套接字地址上,以便我可以选择并连接到该计算机?(每台计算机都是一个用C++编写的套接字服务器,我需要能够轻松检查输出的状态) 最佳答案 如果您的计算机都是Mac,那很容易。只需使用NSNetservice类来公布您已有的服务和套接字端口。然后,在iOS设备上,只需使用NSNetServiceBrowser对象按名称查找您的特定服务,并根据需要连接到其中一个或所有服务。如果您的计算机不是Mac,您可以查看B

tcp - 在连接到 wifi 之前,最初是如何发现 chromecast 的?

chromecast最初是如何在连接到wifi之前被发现的?底层技术是什么?如果设备在提供wifi密码发送多播之前获得ip,是否使用多播完成 最佳答案 https://superuser.com/questions/626199/how-does-google-chromecast-connect-to-secured-wifiChromecast在首次打开时充当接入点。您在andriod、windows或mac设备上安装软件的软件会找到它并直接连接到chromecast的AP。然后chromecast扫描访问点,让您选择一个并输入

android - 在没有服务器的情况下在 2 部安卓手机之间传输数据?

我有一个关于应用程序的想法,但没有Android开发或网络方面的经验,所以无论是否可行,我都想得到一些原始反馈。我想在不使用服务器的情况下使用WiFi/移动网络在两部或多部Android手机之间传输文件、文本等。也许一个设备所有者可以发送一个特定的字符串来唯一标识该设备,即IP地址,到它想与之共享数据的其他设备。例如,A要发送一些文件给B,他告诉B他的标识字符串是“192.168.1.1:4321”。B现在在其设备上的应用程序中输入此字符串。也许可以通过这种方式在两个设备之间建立连接。有两种可能的情况:A和B彼此靠近,因此他们可以访问同一个WiFi网络。A和B位于不同的地理位置,因此都

android - 向 wifi 连接的设备发送一个字符串,在 android 中返回 EHOSTUNREACH(没有到主机的路由)

所以,应用程序的流程是,首先,我使用我的android手机通过wifi连接一个设备(这是一个服务器),然后,我想向该设备发送一个字符串,仅此而已。问题是,当我尝试这样发送时newThread(newRunnable(){@Overridepublicvoidrun(){try{Socketsocket=newSocket("192.168.8.101",2001);DataOutputStreamDOS=newDataOutputStream(socket.getOutputStream());DOS.writeUTF("61");socket.close();}catch(Excep

android - 在 android studio 中通过 Wifi 坚持 ADB?

您好,我正在使用更新到AndroidLolliop的MotoG2ndGeneration,在google'sguide的AndroidadbSection下,它说$亚行USB以USB模式重启$adbdevicesListofdevicesattached########device$adbtcpip5555restartinginTCPmodeport:5555$adbconnect#.#.#.#connectedto#.#.#.#:5555$adbdevicesListofdevicesattached#.#.#.#:5555device我遵循了这些步骤,通过WiFi的ADB工作得很

tcp - 通过以太网发送的纯 TCP Ack 的总长度是多少?

我使用Microsoft网络监视器捕获了一个纯TCPack。它显示捕获的帧长度为54字节。IPheader(20字节)+TCPheader(20字节)+SrcMAC(6字节)+DstMAC(6字节)+帧类型(2字节)。我没有看到CRC(4字节)字段。我知道以太网的最小帧长度为64字节(46+18),最大为1518。为什么我在网络监视器中看不到它?以太网帧的数据字段值为46-1500。IP数据帧是否在6个八位字节中用零填充以使总帧长度为46?找到答案:通过网络发送的数据包的数据字段的最小长度以太网是46个八位字节。如有必要,应填充数据字段(八位字节为零)以满足以太网最小帧大小。这个填充不