DSAPI中TCP、UDP、HTTP的选择
在DSAPI中,网络通讯主要有以下几种:
1 [TCP]
TCP服务端
TCP客户端
2 [UDP]
UDP服务端
UDP客户端
UDP指令版服务端
UDP指令版客户端
3 [HTTP]
HTTP服务端
(客户端由浏览器或任何能访问HTTP的函数或软件替代,DSAPI中未提供HTTP客户端)
HTTP指令版服务端
HTTP指令版客户端
对于以上这些,在开发网络通讯程序过程中如何选择呢?先看上述各服务端功能的主要服务对象:
|
TCP服务端 |
|
|
适用范围 |
需要高速通讯,且服务端主动推送信息 |
|
优 点 |
高速通讯、服务端主动传输 |
|
缺 点 |
必须服务端先开才能提供客户端连接、须自行维护一个断开重连机制 |
|
UDP服务端 |
|
|
适用范围 |
高速短数据量通讯(一般数据量不应超过65500字节) |
|
优 点 |
高速通讯、服务端可延迟启动、无需事先建立连接 |
|
缺 点 |
数据量较小、不能确保一定发送成功,建议服务端和客户端双方做应答机制 |
|
UDP指令版服务端 |
|
|
适用范围 |
高速短数据量通讯(一般数据量不应超过65000字节),目前大部分物联网、工业通讯等正在使用DSAPI中的UDP指令版服务端 |
|
优 点 |
高速通讯、服务端可延迟启动、无需事先建立连接、传输过程加密、内置自动重发、通讯失败(或无返回数据)自动触发事件、内置客户端用户名密码数据传递,可允许或拒绝返回给客户端数据 |
|
缺 点 |
数据量较小、服务端不能主动推送数据给客户端 |
|
HTTP服务端 |
|
|
适用范围 |
WebAPI、小型静态网页和数据服务、网站公共数据接口 |
|
优 点 |
无需超高速通讯、服务端可延迟启动、无需事先建立连接、迷你IIS、可在任何支持http通讯的服务端和客户端使用、最大数据量默认200M以内(可更改)、无需架设IIS即可开始静态网页服务 |
|
缺 点 |
服务端不能主动推送数据给客户端 |
|
HTTP指令版服务端 |
|
|
适用范围 |
高速通讯,目前很多物联网、工业通讯、医院医药等正在使用DSAPI中的HTTP指令版服务端 |
|
优 点 |
高速通讯、服务端可延迟启动、无需事先建立连接、传输过程加密、内置自动重发、通讯失败(或无返回数据)自动触发事件、内置客户端用户名密码数据传递,可允许或拒绝返回给客户端数据 |
|
缺 点 |
服务端不能主动推送数据给客户端 |
DSAPI中TCP、UDP、HTTP的选择的更多相关文章
- TCP UDP 协议的选择
行业应用中TCP/IP传输协议和UDP协议的选择! 中国移动.中国联通推行的GPRS网络.CDMA网络已覆盖大量的区域,通过无线网络实现数据传输成为可 能.无线Modem采用GPRS.CDMA模块通过 ...
- 聊聊iOS中TCP / UDP 协议
TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)协议属于 传输层协议. UDP(User Datagram protoco ...
- 网络编程—网络基础概览、socket,TCP/UDP协议
网络基础概览 socket概览 socket模块—TCP/UDP的实现 TCP/UDP总结 网络基础概览 osi七层协议各层主要的协议 # 物理层传输电信号1010101010 # 数据链路层,以太网 ...
- 异常处理与网络基础中的tcp,udp协议
# 异常处理: # 什么是异常?异常和错误的区别 # Error 语法错误 比较明显的错误 在编译代码阶段就能检测出来 # Iteration 异常 在执行代码的过程中引发的异常 # 异常发生之后的效 ...
- Fixed-Length Frames 谈谈网络编程中应用层(基于TCP/UDP)的协议设计
http://blog.sina.com.cn/s/blog_48d4cf2d0101859x.html 谈谈网络编程中应用层(基于TCP/UDP)的协议设计 (2013-04-27 19:11:00 ...
- 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.1
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...
- 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.2
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...
- 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.0.1
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...
- 高性能 TCP & UDP 通信框架 HP-Socket v3.5.3
HP-Socket 是一套通用的高性能 TCP/UDP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP 通信系统,提供 C/C++.C#.Del ...
随机推荐
- 汽车之家店铺商品详情数据抓取 DotnetSpider实战[二]
一.迟到的下期预告 自从上一篇文章发布到现在,大约差不多有3个月的样子,其实一直想把这个实战入门系列的教程写完,一个是为了支持DotnetSpider,二个是为了.Net 社区发展献出一份绵薄之力,这 ...
- TensorFlow源码安装
前言 TensorFlow如果能二进制包安装,我真的不想选择自己编译,但是情况不由人,好不容易找到一台服务器,CPU不支持AVX指令集,安装的release版本运行到import tensorflow ...
- Map集合的便利学习总结
1.Map提供了三种便利方式 1)遍历所有key. Set<K> keySet() 该方法会将当前Map中所有key存入一个Set集合后返回. 2)遍历所有的key-value对 Se ...
- PAT1037:Magic Coupon
1037. Magic Coupon (25) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue The magi ...
- 理解Python中的yield
1.通常的for...in...循环中,in后面是一个数组,这个数组就是一个可迭代对象,类似的还有链表,字符串,文件.它可以是mylist = [1, 2, 3],也可以是mylist = [x*x ...
- redis基础操作~~数据备份与恢复、数据安全、性能测试、客户端连接、分区
数据备份与恢复 数据备份redis save 命令用于创建当前数据库的备份. redis 127.0.0.1:6379> SAVE OK 该命令将在 redis 安装目录中创建dump.rdb文 ...
- Guava新增集合类型-Bimap
Guava新增集合类型-Bimap BiMap提供了一种新的集合类型,它提供了key和value的双向关联的数据结构. 通常情况下,我们在使用Java的Map时,往往是通过key来查找value的,但 ...
- BZOJ_1070_[SCOI2007]修车_费用流
BZOJ_1070_[SCOI2007]修车_费用流 Description 同一时刻有N位车主带着他们的爱车来到了汽车维修中心.维修中心共有M位技术人员,不同的技术人员对不同 的车进行维修所用的时间 ...
- LCA 各种神奇的LCA优化方法
LCA(Least Common Ancestors) 树上问题的一种. 朴素lca很简单啦,我就不多说了,时间复杂度n^2 1.倍增LCA 时间复杂度 nlongn+klogn 其实是一种基于朴素l ...
- Tomcat启动失败的几种解决办法
1.重复映射 用Eclipse开发,新建了的servlet会有一个url-pattern声明: 这样就不需要在web.xml中添加映射,如果在web.xml中添加了这样一段: <servlet& ...