Reputation: 4860
I'm trying to understand the difference between the standard bindings in WCF. As part of this, I'm reading WCF Bindings in Depth. Figure 2 shows that there are bindings whose transport is HTTP and some which are TCP. I'm confused b/c I thought HTTP was an application-level protocol, not a transport protocol -- and that HTTP ran on top of TCP. So by calling it an HTTP binding, are we to understand that it's actually running on HTTP on top of TCP?
Upvotes: 3
Views: 588
Reputation: 13450
tcp/ip contains 4 layers:
application
transport
network
data link
you can use any layer, but wcf has binding which use transport and application layers, f.e. netTcpBinding
and wsHttpBinding
tpc/ip does not same tcp layer
application layer protocols f.e.: HTTP, RTP, FTP, DNS
transport layer protocols f.e.: TCP, UDP, SCTP, DCCP
so http can be based at UDP protocol and it will be wsHttpBinding
or if you choise tcp it will be netTcpBinding
, this layer in below than http, and application is redundant
Upvotes: 0
Reputation: 1039298
So by calling it an HTTP binding, are we to understand that it's actually running on HTTP on top of TCP?
Yes, exactly. But that's implicit. Because HTTP runs on top of TCP.
The binary bindings (such as netTcpBinding
) run directly on TCP. They do not use HTTP at all.
Upvotes: 3