【问题标题】:netTCPBinding, wsHttpBinding behind the scenesnetTCPBinding、wsHttpBinding 幕后
【发布时间】:2013-02-22 23:27:45
【问题描述】:

我是网络世界的新手,因此对幕后的工作方式有些困惑。这对我决定为我的服务选择哪个绑定很重要。我的印象是网络上的通信主要通过 TCP/IP 协议进行。我通过了 TCP/IP 协议,根据我的理解,HTTP 是一个应用层协议。在幕后,应用层与传输层通信,传输层使用 TCP 或 UDP 协议在网络上传递信息。如果是这种情况,那么 HTTP 协议的用途是什么?我确定拼图中缺少某些东西,但我无法找出它是什么?

【问题讨论】:

    标签: .net wcf networking


    【解决方案1】:

    WCF 支持 4 种传输协议 - HTTP、TCP、MSMQ 和命名管道。

    建议阅读this MSDN Magazine 文章和此MSDN 帖子以进一步了解。

    【讨论】:

      【解决方案2】:

      首先,W3C 早在 1991 年就回复了Why a new protocol?。虽然他们基本上说这不是邮件、文件传输、新闻或搜索。

      不过,我感觉您的问题是为什么要使用 wsHttpBinding,因为无论如何,它下面都是 TCP。 Microsoft 的 netTCPBinding 是 Microsoft 专有协议。它旨在在 C# 位于管道两端时使用,此外,它主要针对两端的开发将由单个实体管理时,无论是单个开发人员、团队还是企业集团。因为获得正确的数据类型可能很棘手。在NetTcpBinding Class备注中,我们发现:

      此绑定是适当的 Windows Communication Foundation (WCF) 系统提供的通过 Intranet 进行通信的选择。

      NetTcpBinding 的默认配置比 WSHttpBinding 提供的配置,但仅用于 用于 WCF 到 WCF 的通信。

      相比之下,wsHttpBinding 的设计考虑了互操作性。它至少在某种程度上符合现有的 Web 服务标准。来自WSHttpBinding Class上的备注

      WSHttpBinding 与 BasicHttpBinding 类似,但提供了更多 网络服务功能。它使用 HTTP 传输并提供消息 安全性,BasicHttpBinding 也是如此,但它也提供事务, 可靠的消息传递和 WS-Addressing,默认启用或 可通过单一控制设置获得。

      列出的大多数附加功能都是现代SOAP 堆栈的一部分。

      最后,对于那些想发明他们的协议的人,本文将回答 Why [you should use] HTTP?

      【讨论】:

        猜你喜欢
        • 2010-12-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-08
        • 1970-01-01
        相关资源
        最近更新 更多