是否有任何协议规范允许使用TCP或UDP?

时间:2011-05-16 15:35:26

标签: networking tcp udp protocols

是否有任何网络协议不是严格的TCP或UDP,但可以与任何一个一起使用?

例如,HTTP,FTP,STMP,RTMP始终是TCP。

DNS,SNMP,DHCP,RIP始终为UDP。

有什么可以是TCP或UDP吗?或者我在上述断言中错了吗?

RTSP是我所知道的一个奇怪的,它使用两者,TCP用于控制端口,UDP用于音频/视频/质量,但它对每个发送的内容有严格的要求。

我问的是标准的,已发布的或至少是常用的协议,而不是自定义协议。

5 个答案:

答案 0 :(得分:4)

DNS可以使用UDP或TCP;响应数据超过512字节时需要TCP。

答案 1 :(得分:2)

如果检查Windows的服务文件,您将看到为TCP和UDP注册的许多协议。路径:C:\Windows\System32\drivers\etc实际上,服务文件中的大多数列表都使用TCP和UDP协议。

对于同时使用两者的知名应用程序,我认为大多数聊天应用程序都使用这两种应用程序。 sms-chat肯定会,但可能是其他大多数人。

修改

从该文件中,可以通过TCP或UDP发送一些协议(正好有100个列出的协议同时使用文件,许多内部MS协议):

  • 回波
  • 丢弃
  • 白天
  • qotd(当天的报价)
  • chargen(角色生成器)
  • 时间

答案 2 :(得分:2)

SIP可以使用UDP,TCP或SCTP。如果您的消息变得非常大(即,远大于用户代理之间的最小MTU),则使用可靠的传输在SIP中变得很重要。一个很好的例子是共享或桥接线外观,它使用XML体的存在形式。共享线路组中的SIP客户端数量越大,数据包可能越大,从而导致碎片和重新传输成为问题。

答案 3 :(得分:1)

SIP可以是UDP或TCP。但是,实际情况是UDP主要用于此协议。

答案 4 :(得分:1)

SNMP 几乎总是在UDP上运行,但它可以并且确实在TCP上运行。 Theory说,通过纠错传输执行SNMP是一个坏主意,因为SNMP打算检测的一些错误被屏蔽了。