我试图理解WCF中标准绑定之间的区别。作为其中的一部分,我正在阅读WCF Bindings in Depth。图2显示存在绑定,其传输是HTTP,一些是TCP。我很困惑b / c我认为HTTP是一个应用程序级协议,而不是传输协议 - 而且HTTP运行在TCP之上。因此,通过将其称为HTTP绑定,我们是否可以理解它实际上是在TCP上运行在HTTP上?
答案 0 :(得分:2)
因此,通过将其称为HTTP绑定,我们是否应该理解它 实际上在TCP上运行HTTP?
是的,确切地说。但这是隐含的。因为HTTP运行在TCP之上。
二进制绑定(例如netTcpBinding
)直接在TCP上运行。他们根本不使用HTTP。
答案 1 :(得分:0)
tcp / ip包含4层:
application
transport
network
data link
你可以使用任何图层,但是wcf具有使用传输和应用程序层的绑定,例如。 netTcpBinding
和wsHttpBinding
tpc / ip与tcp层不相同
application layer protocols f.e.: HTTP, RTP, FTP, DNS
transport layer protocols f.e.: TCP, UDP, SCTP, DCCP
所以http可以基于UDP协议,它将是wsHttpBinding
或者如果你选择tcp它将是netTcpBinding
,这个层在下面而不是http,并且应用程序是多余的