【发布时间】:2012-09-26 04:09:18
【问题描述】:
我正在制作一个 HTML 5 国际象棋游戏。我用一个长度(大小)为 64 的无符号 8 位二进制数组来表示棋盘。因为国际象棋棋盘上有 64 个位置。
var board = Uint8Array(64);
每个棋子在棋盘上通过(显然)8 位无符号整数表示。然后在客户端上,有一个将片段的二进制表示与文本字符串相关联的映射,例如:
var pieceMap = { 01: 'BlackKnight', 112: 'WhitePawn', 6: 'BlackRook' ... }
数据是通过 socket.io 连接发送的(假设我们使用的是 websockets),我认为是 TCP 吗?所以问题是: TCP 是否会发送与我提供给它的数据一样小的数据包(带有 TCP 开销)或者 TCP 是否具有最小数据包大小并将我的 200 字节数据包作为 1024 字节数据包发送?
为什么对尺寸如此着迷?我知道这没关系,但我将其用于学习体验,在未来的游戏中我将使用它来降低延迟......我知道国际象棋不需要低延迟。
【问题讨论】:
-
谢谢,这有助于表达我想要的东西。虽然不是一路。我假设这意味着(不考虑其他层)一个 100 字节 + 20 字节的标头 tcp 数据包将以总共 120 字节发送?并且没有添加额外的填充来构成最小 tcp packt 大小??
标签: javascript html node.js websocket socket.io