社区
通信技术
帖子详情
数据传输如何打包?
王释之
2000-03-16 06:12:00
在编写程序时,想把一堆数据进行打包,然后再传输?
一般实时传输容易出错,能否自动判断数据的大小,
按时进行传输?
希望各高手不吝赐教!
谢谢!
...全文
662
9
打赏
收藏
数据传输如何打包?
在编写程序时,想把一堆数据进行打包,然后再传输? 一般实时传输容易出错,能否自动判断数据的大小, 按时进行传输? 希望各高手不吝赐教! 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
darksky
2000-05-05
打赏
举报
回复
我还是没看明白!能给我介绍一下吗?
xzw
2000-03-19
打赏
举报
回复
抱歉这么晚才来回复,最近太忙了.
有关TCP的实现细节,有很多算法,可以参见坦尼拨母的Computer Network一书.
下面我简单地讲一下,NACK是对一个网络包没有接收到而作出的响应.通常NACK包会带一个序列号表明是哪一个包丢失了.发送方接收到NACK后,就根据包序列号进行重发.流量控制算法则通常是用一个滑动窗口表示当前接收方还能接收多少数据包,如果窗口满了就停止发.
如果自己编程序写,我想不用这么复杂和底层,大概估算一下每秒的数据流量,作出增加或较少数据量的决定就可以了.
客户端快速移动鼠标,可以每隔N点发送一次坐标,但是应该引入静止检测,当鼠标静止一段时间后,应该把当前坐标发送,防止出现双方不一致的情况.采用TCP传输,就可以保证正确性了.UDP包只要接到了,数据应该就是对的.
把坐标打包很简单啊!放在TCP包里,X和Y各2个字节,注意网络字节顺序就是了.
为什么要用数值/数据库或链表?????
王释之
2000-03-19
打赏
举报
回复
谢谢!
能给我发个E-mail
详细介绍
万分感谢!
befresh@263.net
sess
2000-03-17
打赏
举报
回复
xzw说的精辟
王释之
2000-03-17
打赏
举报
回复
各位好!
如何限定数据的流量?
如:客户端(快速)连续移动mouse,而在服务器端却接受到一大批点
如何限定点的数量,又能保证正确性!
再者:
如何把坐标进行打包,用数组,数据库,链表或其它?
谢谢!
王释之
2000-03-16
打赏
举报
回复
xzw:好!
看了您的回答,我似乎懂了点.......
您能给我介绍实现的NACK,流量控制等算法吗?
比如:我在本机连续画点,本来只能接受一个点的坐标,而实际
收到的是一系列点的坐标,为了保证正确性,不能判断哪一点是
正确的,能给我一个解决办法吗?
谢谢!
xzw
2000-03-16
打赏
举报
回复
通常这种实时传输,并不采用TCP来完成,像音频/视频数据都是采用UDP上的RTP来完成的。但它们都有一个特点:实时性比数据正确性更重要。如果实时传输的是坐标,而mouse移动很快,我们可以认为,实时性比正确性更重要,只要后面以最快的速度传来了现在的坐标,mouse中间移动的轨迹我们可以不要。所以我建议你采用UDP来传输数据包,如果你要求实时性的话。
另外,澄清一个问题,即使mouse移动很快,使用TCP传输,数据也不会出错,只是数据实时性较差而已。 那你可能会问,如果要实现UDP上的可靠传输怎么办?那就要实现TCP所实现的NACK,流量控制等算法了。通常所说的SRM(Scalable Reliable Multicast)可靠的多播协议就是完成这个任务的。希望能解决你的问题。
王释之
2000-03-16
打赏
举报
回复
xzw:好!
实时传输的如果是坐标,而mouse移动很快,那数据就会出错!
谢谢!
xzw
2000-03-16
打赏
举报
回复
为什么说实时传输容易出错?按时传输又是什么意思?请把问题说清楚一些。
你的意思是不是说怕数据包太大,传输出错?
如果是这样,可以单起一个线程,分配一个缓冲区,要发送的时候,往缓冲区里添数据块,而发送线程则定时从缓冲区中取数据发送。缓冲区的访问必须使用信号量进行同步。
Scrapy 爬虫框架实战和项目管理
通过业务计算逻辑把
数据传输
到生产 ES 环境中。 2.几千、几万个爬虫脚本应该怎么管理? 很多刚入行的人都觉得爬虫脚本难写,其实并不是这样。最难的是如何管理密密麻麻数不清的爬虫脚本,这里介绍Python如何处理这个...
什么是可靠
数据传输
服务?什么是可靠
数据传输
协议?
要想理解可靠
数据传输
(Reliable Data Transfer),那么不妨结合与其相对的概念——不可靠
数据传输
进行理解。 UDP可靠性设计、TCP/UDP应用场景分析 1.什么是可靠
数据传输
服务?什么是可靠
数据传输
协议? 比如我们要...
简单了解计算机网络中
数据传输
的三种方式
计算机网络中
数据传输
的三种方式
网络是干什么的?网络是如何传输的?底层原理是什么?
UDP协议提供不可靠的、无连接的
数据传输
服务,适合对
数据传输
速度有要求的应用。网络传输的基本方式是将数据按照一定的格式和规则
打包
成数据包,通过通信线路传输到目标地址。应用层:应用层主要负责应用程序之间的...
简而言之:局域网中数据是如何传输的?
串行
数据传输
意味着一次传输一位——单个位流(bit stream)。这是从一个网络适配器(network adapter)向另一个网络适配器发送信息的格式。 下面让我们通过一个案例解析一下。现在一个用户想要向局域网络上的另一个...
通信技术
4,358
社区成员
28,927
社区内容
发帖
与我相关
我的任务
通信技术
通信技术相关讨论
复制链接
扫一扫
分享
社区描述
通信技术相关讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章