是否有任何网络协议不是严格的TCP或UDP,但可以与任何一个一起使用?是否有任何协议规范允许使用TCP或UDP?
例如,HTTP,FTP,STMP,RTMP始终是TCP。
DNS,SNMP,DHCP,RIP始终是UDP。
有什么可以是TCP或UDP?或者我在上述断言中错了吗?
RTSP是一个奇怪的,我知道它同时使用TCP,控制端口为TCP,但音频/视频/质量为UDP,但它对每个端口发送的内容有严格的要求。
我在问关于标准,已发布或至少常用的协议,而不是自定义协议。
是否有任何网络协议不是严格的TCP或UDP,但可以与任何一个一起使用?是否有任何协议规范允许使用TCP或UDP?
例如,HTTP,FTP,STMP,RTMP始终是TCP。
DNS,SNMP,DHCP,RIP始终是UDP。
有什么可以是TCP或UDP?或者我在上述断言中错了吗?
RTSP是一个奇怪的,我知道它同时使用TCP,控制端口为TCP,但音频/视频/质量为UDP,但它对每个端口发送的内容有严格的要求。
我在问关于标准,已发布或至少常用的协议,而不是自定义协议。
如果您检查一个Windows的服务文件,您将看到许多为TCP和UDP注册的协议。路径:C:\Windows\System32\drivers\etc
实际上,services文件中的大部分列表都使用TCP和UDP协议。
至于众所周知的使用两者的应用程序,我会认为大多数聊天应用程序都使用两者。短信聊天确实可以,但可能是其他人。
编辑:
从该文件中,这里有几个是可以通过TCP或UDP发送的协议(有该文件中同时使用完全相同的100个上市协议,许多内部MS协议) :
DNS可以使用UDP或TCP;响应数据超过512字节时需要TCP。
SIP可以是UDP或TCP。但实际情况是,UDP主要用于此协议。
SIP可以使用UDP,TCP或SCTP。如果你的消息变得非常大(即,比用户代理之间的最小MTU大得多),那么在SIP中使用可靠的传输就变得很重要。一个很好的例子是共享或桥接外观,它们使用XML主体的存在形式。共享线路组中的SIP客户端数量越大,数据包可能越大,导致分段和重新传输成为问题。
SNMP 差不多总是运行在UDP上,但它可以运行在TCP上。理论上说,在纠错传输中使用SNMP是一个坏主意,因为一些SNMP想要检测的错误被掩盖了。
您的前提是有缺陷的。 DNS不*总是UDP。 DNS RFC表示,DNS在TCP和UDP上运行得很好。适用于TCP或UDP的另一种协议是NFS。 – 2011-05-16 19:39:08
@Rob,这正是我所要求的。 – 2011-05-16 20:53:54