标签: packet

带有UDP的JavaScript WebSockets?

我正在编写一个JavaScript应用程序,它必须从其他用户那里接收大量数据.如果某些数据丢失并不重要.有没有办法使用带有UDP而不是TCP的JavaScript WebSockets?

javascript udp tcp packet websocket

69
推荐指数
4
解决办法
6万
查看次数

iPhone和WireShark

如何从网络上的iPhone上嗅探数据包?有人可以给我一些指示吗?我试过谷歌搜索,但没有教导如何嗅闻iPhone数据包,

我在窗户上.

iphone packet-capture sniffing packet packet-sniffers

67
推荐指数
5
解决办法
12万
查看次数

WebSocket框架中的掩码是什么?

我正在研究websocket实现,并且不知道框架中的掩模是什么意思.

有人可以解释一下它的作用以及推荐的原因吗?

  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-------+-+-------------+-------------------------------+
 |F|R|R|R| opcode|M| Payload len |    Extended payload length    |
 |I|S|S|S|  (4)  |A|     (7)     |             (16/64)           |
 |N|V|V|V|       |S|             |   (if payload len==126/127)   |
 | |1|2|3|       |K|             |                               |
 +-+-+-+-+-------+-+-------------+ - - - - - - - - - - - - …
Run Code Online (Sandbox Code Playgroud)

tcp stream frame packet websocket

51
推荐指数
3
解决办法
2万
查看次数

TCP是在每个数据包上发送SYN/ACK还是仅在第一个连接上发送?

我有一个TCP服务器,它侦听传入的客户端,然后每秒向它发送一个数据包.我想知道,SYN/ACK数据包是否仅在初始连接时发送,所以它看起来像这样:

<client connect>
SYN
ACK
DATA
DATA
DATA
<client disconnect>
Run Code Online (Sandbox Code Playgroud)

或者它是否与每个数据包一起发送,像这样?

<client connect>
SYN
ACK
DATA

SYN
ACK
DATA

SYN
ACK
DATA
<client disconnect>
Run Code Online (Sandbox Code Playgroud)

此外,如果是第一种情况,如果您只是长时间保持连接打开,那么UDP over TCP是否有任何好处?

networking udp tcp client-server packet

41
推荐指数
2
解决办法
4万
查看次数

什么时候TCP网络数据包在应用层被分段?

什么时候TCP数据包会在应用层被分段?从应用程序发送TCP数据包时,应用程序层的收件人是否会以两个或多个数据包接收数据包?如果是,那么什么条件会导致数据包被分割.似乎数据包在到达以太网(网络层)限制为1500字节之前不会被分段.但是,这个碎片对应用层的接收者是透明的,因为网络层会在将数据包发送到下一层之前重新组合碎片,对吧?

network-programming tcp packet

34
推荐指数
4
解决办法
6万
查看次数

Android VpnService捕获数据包不会捕获数据包

我现在一直在寻找我的答案几个小时,我无法弄明白.请帮忙.

我想要做的是使用Android中的VpnService来获取网络数据包,如应用程序tPacketCapture

我开始使用谷歌的ToyVpn示例代码并对其进行修改,因此我不会将数据发送到服务器.但是,我不确定这是否正确.

我的configure方法在调用establish()之前使用binder.addAddress()的wlan ip地址.我正在使用nexus 7并使用"adb shell netcfg | grep wlan0"来获取地址:

wlan0 UP 192.168.0.6/24 0x00001043 10:bf:48:bf:5f:9d

并在我的方法中添加它:

    private void configure() throws Exception {
    // If the old interface has exactly the same parameters, use it!
    if (mInterface != null) {
        Log.i(TAG, "Using the previous interface");
        return;
    }

    // Configure a builder while parsing the parameters.
    Builder builder = new Builder();
    builder.setMtu(1500);
    builder.addAddress("192.168.0.6", 24);

    try {
        mInterface.close();
    } catch (Exception e) {
        // ignore
    }

    mInterface = builder.establish();
}
Run Code Online (Sandbox Code Playgroud)

在调用之后,我调用我修改的run方法来传递String而不是InetSocketAddress,这并不重要,因为我没有在任何地方使用它: …

android capture packet

32
推荐指数
1
解决办法
2万
查看次数

捕获tcpdump中的传入流量

在tcpdump中,如何捕获发往我机器的所有传入IP流量?我不关心我的本地交通.

我应该说:

tcpdump ip dst $MyIpAddress and not src net $myIpAddress/$myNetworkBytes
Run Code Online (Sandbox Code Playgroud)

......或者我错过了什么?

packet-capture traffic tcpdump capture packet

25
推荐指数
3
解决办法
6万
查看次数

在C#中发送UDP数据包

我有一个游戏服务器(WoW).我希望我的玩家能够将自定义补丁下载到游戏中.我做了一个程序来检查更新/下载的东西.如果玩家拥有我的所有补丁,我希望我的程序将数据包发送到我的游戏服务器.我不需要服务器的任何响应,它会处理它,但它的另一个故事.

所以我想知道如何将数据包发送到服务器.

谢谢!

c# networking udp send packet

24
推荐指数
2
解决办法
6万
查看次数

蓝牙低功耗 - 重复更新特征值

关于电气工程Stackexchange的后续问题

我想在很短的时间内反复写入蓝牙低功耗特性的值(作为一个可能的用例,想象一下鼠标).

  • 128位UUID的特性是20字节长.因此,它可以在单个低能量交易中编写.
  • 写入以50Hz的速率发生,等于每20ms写入一次.
  • 因此,写入20*50*8 = 8 kbit/s.
  • 我使用Command/Write without response模式来编写特性.因此,属性层上不会发生确认.
  • 没有连接其他蓝牙或蓝牙低功耗设备.没有通过WLAN执行任何操作.在测试期间不会读取或写入任何其他特征.

我通过从iPhone 4S发送包含序列号的数据包来测试程序.在每个发送的数据包之后,序列号加1.

在接收端,使用包含CSR1000 BLE芯片的可编程开发板接收数据包并将接收到的序列号打印到串行连接.

我的问题如下:

  • 一段时间后,数据包开始掉线.前100个数据包在50 Hz时工作正常.从那时起,数据包开始被丢弃.

               0x00 - 0x46   received
                0x47, 0x48   missing
    0x49, 0x4a, 0x4b, 0x4c   received
                      0x4d   missing
    0x4e, 0x4f, 0x50, 0x51   received
                      0x52   missing
    0x53, 0x54, 0x55, 0x56   received
                      0x57   missing
    ...
    
    Run Code Online (Sandbox Code Playgroud)

    大多数情况下,一包四个数据包被很好地传输(很少,只有2个数据包).然后,丢失了1-7个数据包.

    当我减小特征值大小时,问题仍然存在.

    当我以100Hz而不是50Hz写入时,图像是相同的 - 只有在大约35个数据包之后开始出现丢弃,并且在成功传输四个数据包之间丢弃了5-7个数据包.

    对于丢失的数据包,无论写入的频率如何,所得到的传输速率都约为5 kbit/s.这显然低于~305 kbit/s,这在技术上可能超过蓝牙低功耗.

  • 当我从开发板向iPhone 4S发送数据包时,问题也发生在相反的方向.同样,5 kbit/s是我得到的最大值.通知机制用于此方案.同样,属性层上不会发生确认.

  • 当我尝试同时向两个方向发送时,事情开始爆发,我必须重置开发板和iPhone 4S.

问题:

  • 这可能是开发板上使用的蓝牙低功耗芯片的问题吗?

    如果是的话,为什么问题也会发生在相反的方向,即iPhone作为接收器?

    市场上是否有支持高频特性的开发板?

  • 问题的根源可能是什么? …

performance bluetooth packet ios bluetooth-lowenergy

21
推荐指数
1
解决办法
1万
查看次数

我该如何标记TCP数据包的结尾?

在客户端/服务器应用程序中,不同长度的文本数据将在客户端和服务器之间来回发送,我应该如何标记正在发送的数据包的结尾?例如,当服务器从客户端接收分组数据时,服务器如何知道客户端分组已完全被接收?

是否更常见的是告诉服务器它将在数据之前接收的数据包的全长或是否有标记数据包末尾的内容?

发送的一些数据只有几个字符长,有些可能是数千个字符.

tcp packet

18
推荐指数
3
解决办法
2万
查看次数