Работает ли привязка WCF HTTP по TCP?

Я пытаюсь понять разницу между стандартными привязками в WCF. В рамках этого я читаю WCF Bindings в глубине. На рисунке 2 показано, что существуют привязки, транспорт которых является протоколом HTTP, а некоторые - TCP. Я смущен, потому что я думал, что HTTP - это протокол уровня приложения, а не транспортный протокол, и что HTTP работает поверх TCP. Итак, называя это HTTP-связыванием, должны ли мы понимать, что он на самом деле работает по HTTP поверх TCP?


person Trevor    schedule 26.01.2013    source источник
comment
Для других, у кого может быть тот же вопрос, Google следующее: октет, кадр Ethernet, IP-пакет, сегмент TCP, HTTP. См. Также vlsm-calc.net/models.php. Мой вопрос связан с непониманием этих основных концепций.   -  person Trevor    schedule 28.01.2013


Ответы (2)


Итак, называя это HTTP-связыванием, должны ли мы понимать, что он на самом деле работает по HTTP поверх TCP?

Да, точно. Но это подразумевается. Потому что HTTP работает поверх TCP.

Бинарные привязки (например, netTcpBinding) выполняются непосредственно по TCP. Они вообще не используют HTTP.

person Darin Dimitrov    schedule 26.01.2013

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, и приложение является избыточным

person burning_LEGION    schedule 26.01.2013