WCF Diversity Paper

  • Upload
    edo

  • View
    226

  • Download
    0

Embed Size (px)

Citation preview

  • 8/12/2019 WCF Diversity Paper

    1/23

    DEALING WITH DIVERSITY:UNDERSTANDING WCFCOMMUNICATION OPTIONS INTHE .NET FRAMEWORK 3.5

    DAVID CHAPPELL

    SEPTEMBER 2007

    SPONSORED BY MICROSOFT CORPORATION

  • 8/12/2019 WCF Diversity Paper

    2/23

    CONTENTS

    Contents ..................................................................................................................................2

    Distributed Applications in a Diverse World............................................................................3

    Th Ch!"" #$ : U%$ O# P"!'()*+ ()* M!#, K-% )( C)++ #&/!'&)# ..................................3

    A--* %%$ 'h Ch!"" #$ : WCF % D %&$# ()* D&1 *%&',............................................................ 3

    WCF Communication Options in the .NET Frame or! 3.".....................................................#

    I#' *) *! " C)++ #&/!'&)# %$ SOAP !#- WS4 ..............................................................6

    B!*, C)++ #&/!'&)# B ' # WCF A "&/!'&)#%.......................................................... .......8

    REST( " C)++ #&/!'&)#.........................................................................................................90

    C)++ #&/!'&)# %$ PO ; RSS; !#- ATOM........................................................................93

    C)++ #&/!'&)# &'h L 4)(4B % %% A "&/!'&)#% %$ A-! ' *%.......................................9 &"" %'*!' %W H'' B-$; h&/h -) % !/'", 'h&%.

    Fi+ure 6- $llustratin+ Web0ttp&indin+

    A% 'h (&$ * %h) %; W H'' B-$ * "& % )# 'h %'!#-!*- HTTPT*!#% )*' /h!## ". U#"&? 'hHTTP4 !% - -$% - %/*& - %) (!*; h) 1 *; 'h&% )# % % !# #/)-$ ) '&)# 'h!' % # 'h .NET F*!+ )*? 3.5 * " !% )( WCF: W M %%!$ E#/)-$. Th&% ) '&)# -) %# ' !-- )** +)1 SOAP h !- *%. I#%' !-; &' &+ " + #'% 'h* -&(( * #' ) '&)#% ()* * * % #'$ /)#' #':' '4 !% - ML #/)-$; SON #/)-$; !#- ) ! !*, #/)-$; h&/h &% % ( " ()*'h$% % /h !% /)#1 ,$ PEG (&" %. A#- "&? &'% ( "") HTTP -$%; W H'' B-$ /!# !"%) /)#(&$ * - ') % HTTPS ()* $* !' * % / *&',.

    A WCF ! "&/!'&)# 'h!' % % W H'' B-$ /h!#$ % ()*+!'&)# %$ *! HTTP; %' !% !REST( " ! *)!/h * &* %. HTTP h!% % 1 *!" -&(( * #' 1 * %; h) 1 * h) /!# 'h ! "&/!'&)#

    -&/!' h&/h )# ! !*'&/ "!* ) *!'&)# %h) "- % Th !#% * &% *)1&- - , ' ) WCF!''*& ' % 'h!' !* # 'h .NET F*!+ )*? 3.5: W G ' !#- W I#1)? . H * % h) 'h%&+ " !//) #' % *1&/ ' *(!/ %h) # !*"& * +&$h' "))? &( 'h % ' ) !''*& ' % !* % -:

    ! ervice#ontract$inter%ace IAccount& !'peration#ontract$ !2eb(et$

    12

  • 8/12/2019 WCF Diversity Paper

    13/23

    int (etBa)ance*string account+,

    !'peration#ontract$ !2ebInvoke$ int -pdateBa)ance*string account int amount+,

    %' !% ()* ; 'h&% ' *(!/ - ( % ! G 'B!"!#/ + 'h)- 'h!' * ' *#% 'h !"!#/ (*)+ !% /&(& - !//) #'. B /! % 'h&% + 'h)- &% +!*? - &'h 'h W G ' !''*& ' ; 'h&% * %' &"" /)#1 , - -&* /'", )# !# HTTP GET; !% %h) # F&$ * 7. A#- %/ REST( " /)++ #&/!'&)#&- #'&(& % 1 *,'h$ &'h ! URI; 'h !//) #' ') !// %% - &% #) &- #'&(& - &'h ! %'*$ ') /!**,'h&% URI %' !- )( !# ' $ *.

    M! $ ) *!'&)#% 'h!' * !- -!'! ') !# HTTP GET &% %'*!&$h'()* !*- 'h % +!#'&/% )( GET !*/" !*. I' % " %% /" !* h) )'h * ?-% )( ) *!'&)#% %h) "- +! - ') HTTP 1 * %. H) 'h)%1 * % h!1 POST; PUT; DELETE; !#- )'h *% /!# 1!*, !/*)%% ! "&/!'&)#%. Wh&" WCF!"") % !# ) *!'&)# ') +! - ') !#, HTTP 1 * ; &' % % 'h W I#1)? !''*& ' ()* !""/ ' GET. B, - (! "'; !# ) *!'&)# +!*? - &'h W I#1)? ; % /h !% U -!' B!"!#/ 'h!+ " ! )1 ; &% +! - ') !# HTTP POST. T) /h!#$ 'h&% - (! "'; 'h !''*& ' /!# /" - !

    M 'h)- !*!+ ' * 'h!' % /&(& % 'h +! $. T) +! !# ) *!'&)# ') PUT *!'h * 'h!# POST; ()*%'!#/ ; 'h W I#1)? !''*& ' ) "- "))? "&? 'h&%:

    !2ebInvoke*3ethod=45-10+$

    B, - (! "'; ()*+!'&)# % #' HTTP + 'h)-% )'h * 'h!# GET; h&/h h!% #) )-, &% #/)- -%$ ML. SON !#- !*, #/)-$% /!# % /&(& - %' !- 1&! 'h R % )#% F)*+!'!*!+ ' * )# 'h W G ' !#- W I#1)? !''*& ' %.

    T!?$ ! REST( " ! *)!/h ') /)++ #&/!'&)# # / %%!*&", + !#% )*?$ &'h URI%. S/ 1 *,&' + )( -!'! h!% &'% ) # URI; REST( " ! "&/!'&)#% &"" /)++)#", # - ') )*? &'h "!*$# + *% )( 'h % %'*$%. URI% % !"", !* # ' *!#-)+; h) 1 *. F)* !+ " ; !# ! "&/!'&)#

    )*?$ &'h !#? !//) #'% +&$h' % URI% )( 'h ()*+ A//) #'%J # + * ; !% F&$ * 7. T)+!? &' !%& * ') )*? &'h "!*$ # + *% )( %&+&"!* URI%; WCF 'h .NET F*!+ )*? 3.5*)1&- % URI ' + "!' %. Th $)!" )( 'h % ' + "!' % &% ') +!? &' !%& * ()* - 1 ") *% ')* %% URI !'' *#% !#- )*? &'h URI% 'h!' +!'/h 'h)% !'' *#%.

    REST( " /)++ #&/!'&)# &% /" !*", 'h *&$h' /h)&/ ()* +!#, ! "&/!'&)#%. Wh&" &' -) % * % #'%)+ /h!"" #$ % ') - 1 ") *% 'h * % #) %'!#-!*- !, ') - %/*& ! REST( " ' *(!/ ; ()*!+ " ; %) - 1 ") *% ', &/!"", * ", )# %)+ ?- )( h +!#4* !-! " -)/ + #'!'&)# *!'h * 'h!#

    ! WSDL - (&'&)# &' /!# %&+ " * 'h!# SOAP4 !% - /)++ #&/!'&)#. B)'h ! *)!/h % h!11!" ; !#- $)$ ()* !*-; )'h !* "&? ", ') &- ", % -.

    COMMUNICATION USING PO ; RSS; AND ATOM

    REST - ( % ! %',"&@ - !, ') % #- ()*+!'&)# )1 * HTTP. A " %% ()*+!"&@ - ! *)!/h ') -)$'h&% &% %)+ '&+ % * ( ** - ') !% Plain Old XML (POX) . Wh&" REST +!#-!' % % /&(&/ h!1&)*%;% /h !% %$ HTTP 1 * % ()* ) *!'&)#% !#- #!+$ 1 *,'h$ &'h URI%; PO % !"", * ( *% ')'*!#%+&''$ ML -!'! )1 * HTTP !#, !, )* !' " !%' !#, !, / ' %$ SOAP . A#)'h */)++)# % )( ML4)1 *4HTTP /)++ #&/!'&)# &% %,#-&/!'&)#. M)%' )(' # % - &'h ")$%; 'h&%! *)!/h ', &/!"", * "& % )# RSS )* ATOM; ' ) ML4 !% - !,% ') - %/*& ()*+!'&)#.

    13

  • 8/12/2019 WCF Diversity Paper

    14/23

    PO ; RSS; !#- ATOM !* !"" ()*+!'% 'h , * #)' *)')/)"%. B /! % )( 'h&%; #) % /&!" WCF-$ &% * &* - ') % 'h +. A"" !* % !"", % #' -&* /'", )1 * HTTP; &'h #) SOAP h !- *;!#- %) 'h %' -$ /h)&/ &% ', &/!"", W H'' B-$. WCF % (&*%' * " !% !"%) !"") -% #-$ ML -&* /'", )1 * HTTP , % ''$ ! !*!+ ' * )# &'h * B!%&/H'' B-$ )*WSH'' B-$ 'h!' /! % - 'h + #)' ') % SOAP + %%!$ %; !# ) '&)# 'h!' % #) - * /!' - .

    T) )% ! %,#-&/!'&)# ( -; ()* !+ " ; ! WCF ! "&/!'&)# +&$h' &+ " + #' ! + 'h)- +!*? - &'h 'h W G ' !''*& ' 'h!' * ' *#% &'h * RSS )* ATOM -!'!. Wh&" 'h RSS !#- ATOM()*+!'% "))? ! &' -&(( * #' )# 'h &* ; )'h % /&(, 'h!' ! ( - /)#'!% %)+ # + * )( &' +%.T) h " /* !' ()*+!'&)# &'h * ()*+!'; WCF 'h .NET F*!+ )*? 3.5 /" - % 'h ', %S,#-&/!'&)#F - !#- S,#-&/!'&)#I' +. U%$ 'h % ; !# ! "&/!'&)# /!# /)#%'* /' ! ( -/)#'!$ )# )* +)* &' +%; 'h # * #- * &' 'h * &* - * * % #'!'&)#. WCF *)1&- %% !*!' ()*+!'' *% ()* RSS !#- ATOM; !"") $ 'h&% -!'! %'* /' * ') ) ' ' %$ &'h *) '&)#.

    COMMUNICATION WITH LINE4OF4BUSINESS APPLICATIONS USINGADAPTERS

    C)## /'$ )# WCF ! "&/!'&)# &'h !#)'h * WCF ! "&/!'&)# &% /)++)#; !% &% /)## /'$ !WCF ! "&/!'&)# &'h ! #)#4WCF ! "&/!'&)# %$ SOAP. B ' h!' ! ) ' %$ WCF ') '!"? &'h! #)#4WCF ! "&/!'&)# 'h!' ?#) % #)'h$ ! ) ' W % *1&/ % O# &+ )*'!#' !+ " )( 'h&% &%/)++ #&/!'$ &'h ! " 4)(4 % %% LOB ! "&/!'&)#; % /h !% SAP. Th % ! "&/!'&)#%/)++)#", )% ( #/'&)#!"&', 'h!' )'h * %)(' !* /!# % ; , ' !/h -) % &' &'% ) #&-&)%,#/*!'&/ !,. D 1 ") *% "&1 % ) "- %&+ " * &( !#, LOB ! "&/!'&)# /) "- !// %% - 'h %!+ !, %$ WCF % %'!#-!*- *)$*!++$ +)- ".

    A"") $ 'h&% &% 'h $)!" )( 'h WCF L 4)(4B % %% LOB A-! ' * SDK. A% 'h SDK &'%#!+ % $$ %'%; 'h&% ' /h#)")$, -) %# ' &'% "( /" - !#, !-! ' *%. I#%' !-; &' *)1&- % '))"% !#-! * #'&+ #1&*)#+ #' ') h " /* !' !-! ' *% ') LOB ! "&/!'&)#%. Th % !-! ' *% /!# 'h # % - , ! "&/!'&)# - 1 ") *% ') /* !' WCF /"& #'% 'h!' % 'h % *1&/ % )( !# LOB ! "&/!'&)#

    %' !% &( 'h!' ! "&/!'&)# * !# )*-!*, WCF % *1&/ .

    T) #- *%'!#- h) 'h&% )*?%; * !"&@ (&*%' 'h!' 'h * !* ' ) -&%'/' *)" % - 1 ") *% "!, 'h&%*)/ %%. A# adapter developer /* !' % ! $ # *&/ !-! ' * ') ! !*'&/ "!* LOB ! "&/!'&)#; )#/! ! " )( !// %%$ !#, )( 'h % *1&/ % 'h&% ! "&/!'&)# )% %. O#/ 'h&% &% -)# ; !# adaptercons !er &"-% ! WCF /"& #' 'h!' % % 'h&% !-! ' * ') !// %% h!' 1 * % % ' %h /h))% % )('h LOB ! "&/!'&)# % % *1&/ %. Th WCF LOB A-! ' * SDK *)1&- % '))"% ()* - 1 ") *% )'h*)" %.

    B ' h!' 1!" -) % !# !-! ' * *)1&- A#% *$ 'h&% %'&)# * &* % #- *%'!#-$ h)LOB ! "&/!'&)#% )% 'h &* % *1&/ %. A ', &/!" LOB ! "&/!'&)# )(( *% ")'% )( ( #/'&)#!"&',; !#-%) &' *)1&- % ! "!*$ # + * )( % *1&/ %. F)* !+ " ; SAP )% % +!#, 'h) %!#-% )( * +)'( #/'&)# /!""% RFC% ; h&" ! -!'! !% +&$h' /)#'! !#, # + * )( %')* - *)/ - * %&+ " + #'$ % %% ")$&/. A")#$%&- 'h % % *1&/ %; LOB ! "&/!'&)#% ', &/!"", *)1&-+ '!-!'! 'h!' - %/*& % 'h % *1&/ %. A -!'! !% ; ()* !+ " ; +&$h' *)1&- ! + /h!#&%+ ()*" !*#$ ! ) ' 'h %')* - *)/ - * % &' /)#'!%; h&" SAP *)1&- % - %/*& '&)#% )( RFC% !SAP4% /&(&/ !,.

    A ', &/!" ! "&/!'&)# % % )#", ! % % ' )( 'h ( #/'&)#!"&', !# LOB ! "&/!'&)# *)1&- %. Th $)!")( !# LOB !-! ' * &% ') h " 'h !-! ' * /)#% + * (- 'h !/' % *1&/ % %h # -% (*)+ 'h

    14

  • 8/12/2019 WCF Diversity Paper

    15/23

    "!*$ % ' 'h&% ! "&/!'&)# *)1&- %; 'h # +!? 'h + !// %%& " 1&! ! WCF ' *(!/ . T) -) 'h&%;'h !-! ' * )% % 'h ! "&/!'&)# % + '!-!'! ') 'h !-! ' * /)#% + *; !"") $ h * ') /h))%)#", 'h % *1&/ % %h # -%. I' 'h # /* !' % ! %'!#-!*- WSDL ' *(!/ /)#'!$ %' 'h %% *1&/ %. T) 'h !-! ' * /)#% + *; 'h&% ' *(!/ "))?% "&? !#, )'h * WCF ' *(!/ ; !"") $ h *') *)$*!+ !$!%' 'h LOB ! "&/!'&)# !% &( &' * !# )*-!*, % *1&/ . Th !-! ' * '!? % /!*)( !"" * &* - '*!#%"!'&)#% ') * % *1 'h&% &"" %&)#.

    T) h " 'h !-! ' * - 1 ") * /* !' 'h % !-! ' *%; 'h WCF LOB A-! ' * SDK /" - % !# "dapter S#$ R nti!e 'h!' *)1&- % !%&/ % *1&/ % ()* 1 *, LOB !-! ' * ') % . Th SDK !"%)/" - % ! V&% !" S' -&)4h)%' - %&' LO "dapter #evelop!ent %i ard ; !% F&$ * 8 %h) %. A#!-! ' * - 1 ") * /!# % 'h&% ') /* !' !# !-! ' * ()* ! !*'&/ "!* LOB ! "&/!'&)#.

    Fi+ure 7- An adapter developer uses a i8ard to create an )O& adapter

    Th&% &@!*- !"?% 'h !-! ' * - 1 ") * 'h*) $h 'h *)/ %% )( /* !'$ ! WCF4 !% - !-! ' * ')! % /&(&/ LOB ! "&/!'&)# %' 9 . A# &+ )*'!#' !*' )( 'h&% &% !+$ 'h LOB ! "&/!'&)# %+ '!-!'! !#- - ' *+$ h) &' %h) "- )% - ') 'h !-! ' * /)#% + *. O#/ 'h !-! ' *h!% # /* !' -; 'h&% /)#% + * /!# % &' ') /* !' WCF ! "&/!'&)#% 'h!' !// %% 'h LOB! "&/!'&)#. F&$ * 90 %h) % h) 'h&% "))?%.

    15

  • 8/12/2019 WCF Diversity Paper

    16/23

    Fi+ure ,9- An adapter consumer de ines an inter ace containin+ the services she needs

    rom the )O& application

    T) $ 'h !-! ' * /)#% + * *) % % 'h LOB ! "&/!'&)# % + '!-!'! ') /h))% 'h % *1&/ %h * ! "&/!'&)# # -% %' 2 . Th WCF LOB A-! ' * SDK *)1&- % ' ) -&(( * #' '))"% ()* -)$'h&%. F)* .NET ! "&/!'&)#%; 'h !-! ' * /)#% + * % % 'h "dd "dapter Service Reference*is al St dio Pl g+,n . F)* B&@T!"? ! "&/!'&)#%; 'h !-! ' * /)#% + * % % 'h &' %&+&"!*&ons !e "dapter Service i Talk Pro-ect "dd+,n h&/h )*?% )#", &'h B&@T!"? S *1 * 2006R2 . I# &'h * /!% ; 'h !-! ' * !// %% % 'h LOB ! "&/!'&)# + '!-!'! ') *)1&- ! / ** #' 1&)( 'h % *1&/ % 'h&% ! "&/!'&)# )(( *%.

    O#/ 'h !-! ' * /)#% + * h!% /h)% # 'h % *1&/ % h * ! "&/!'&)# &"" # -; 'h LOB !-! ' */* !' % ! WSDL ' *(!/ 'h!' )% % 'h % % *1&/ % %' 3 . I# 'h !+ " %h) # h * ; ()*

    %'!#/ ; 'h * - /&*/" % * * % #' 'h ( #/'&)#% )( 'h LOB ! "&/!'&)# 'h!' 'h&% !-! ' * /)#% + *h!% !%? - 'h !-! ' * ') +!? !1!&"! " . A% %h) # F&$ * 99; 'h !-! ' * /)#% + * /!# #)/* !' ! WCF /"& #' ! "&/!'&)# %$ 'h % % *1&/ % %' < .

    16

  • 8/12/2019 WCF Diversity Paper

    17/23

    Fi+ure ,,- The adapter e:poses the selected )O& application services as ordinar; WCFservices

    T) 'h WCF /"& #'; 'h LOB ! "&/!'&)# "))?% "&? !#, )'h * WCF % *1&/ &' % %' !# ' *(!/ &'h ) *!'&)#% !#- %) &'% % *1&/ % /!# )? - 'h % !" !,. Th !-! ' * +! % 'h#!'&1 ( #/'&)#% !#- -!'! ', % )( 'h LOB ! "&/!'&)# ') %'!#-!*- WCF4!// %%& " ) *!'&)#%.Wh # 'h WCF /"& #' / ' %; &' )? % 'h % % *1&/ % !% * &* - %' 5 .

    T) /)++ #&/!' &'h 'h LOB ! "&/!'&)#; 'h !-! ' * % % h!' 1 * /)++ #&/!'&)# + /h!#&%+

    'h&% ! "&/!'&)# # -%; ', &/!"", 1&! ! /"& #' "& *!*, *)1&- - , 'h ! "&/!'&)#. A% 'h (&$ *% $$ %'%; !# LOB !-! ' * !/'% !% ! WCF '*!#% )*' /h!## "; /)#1 *'$ ' # WCF + %%!$ %!#- LOB ! "&/!'&)#4% /&(&/ + %%!$ %. T) +!? 'h&% /)++ #&/!'&)# +)* ((&/& #'; 'h A-! ' *SDK R #'&+ /!# ))" !#- * % ) # /)## /'&)#% ') 'h ! "&/!'&)#.

    E1 *, !-! ' * /* !' - %$ 'h WCF LOB A-! ' * F*!+ )*? SDK &% &+ " + #' - !% ! WCF/h!## "; !#- %) !/h )# &% &- #'&(& - &'h ! -$. F)* !+ " ; M&/*)%)(' &% %/h - " - ') %h&! B&@T!"? A-! ' * P!/? !*", 200> /)#'!$ !-! ' *% /* !' - %$ 'h&% ! *)!/h ()* SAP;S& "; !#- 'h O*!/" -!'! !% . T) % 'h SAP !-! ' *; ! WCF /"& #' % /&(& % S! B-$;

    h&" 'h )'h * !-! ' *% !* % /&(& - %$ S& "B-$ !#- O*!/" DBB-$; * % /'&1 ",.N)' 'h!' !#, WCF ! "&/!'&)# /!# % !-! ' *% &"' 'h&% !,. R!'h * 'h!# * &*$ !% /&!"&@ - ' $*!'&)# *)- /' % /h !% B&@T!"? S *1 *; !-! ' *% #) (&' ') 'h %'!#-!*-

    /)++ #&/!'&)# +)- " *)1&- - , WCF.

    B&@T!"? S *1 * / *'!", /!# % 'h % !-! ' *%; h) 1 *; !% 'h #!+ )( 'h !-! ' * !/?% $$ %'%. B&@T!"? S *1 * 2006 R2 /" - % ! WCF A-! ' * ()* B&@T!"?; ! /)+ )# #' 'h!' !"") %B&@T!"? ! "&/!'&)#% ') % WCF4 !% - /)++ #&/!'&)#. V&! 'h&% /)+ )# #'; 'h&% "!' %' -&'&)# )(B&@T!"? S *1 * /!# !"%) % !#, !-! ' * /* !' - %$ 'h WCF LOB A-! ' * SDK.

    I( !# LOB ! "&/!'&)# )% % ! "!*$ # + * )( % *1&/ % !#- *)1&- % + '!-!'! - %/*& $'h)% % *1&/ %; &"-$ ! WCF4 !% - LOB !-! ' * &% "&? ", ') )*'h 'h (()*'. B, !"") $

    17

  • 8/12/2019 WCF Diversity Paper

    18/23

    !-! ' * /)#% + *% ') /h))% )#", 'h % *1&/ % 'h , # -; 'h # * % #'$ 'h + 'h*) $h !%'!#-!*- ' *(!/ ; !# LOB !-! ' * /!# +!? "&( %&+ " * ()* - 1 ") *% h) # - ') !// %%'h % % *1&/ %. Th&% &% % /&!"", '* ()* ! "&/!'&)#% h)% % *1&/ % !#- + '!-!'! /h!#$)(' #. Wh&" /* !'$ !# LOB !-! ' * &%# ' !" !,% 'h *&$h' ! *)!/h; &' /!# +!? ! - 1 ") * %"&( %&$#&(&/!#'", %&+ " * &' ! ( /!% %.

    COMMUNICATION VIA MESSAGE =UEUES

    U%$ WCF ()* RPC4%'," /)++ #&/!'&)# &% /)++)#. Y ' 'h * !* " #', )( /!% % h * RPC&%# ' ! $))- (&'. S )% 'h % #- * !#- * / &1 * !* # ' )'h !1!&"! " !' 'h %!+ '&+ +!,)# )( 'h + &% ! "! ') /)+ ' *; ()* !+ " )* *h! % 'h % #- * &%h % ') /)++ #&/!'

    &'h !#, )( % 1 *!" )%%& " * / &1 *%. S&' !'&)#% "&? 'h&% /!"" ()* /)++ #&/!'&)# 'h!' * "& % )#+ %%!$ %.

    T) % )*' 'h % %&' !'&)#%; WCF *)1&- % !# MSM= '*!#% )*' /h!## ". T) % -/)++ #&/!'&)#; ! - 1 ") * /* !' % ! %'!#-!*- WCF % *1&/ ; +!*?$ &'% ' *(!/ !#- + 'h)-%

    &'h 'h S *1&/ C)#'*!/' !#- O *!'&)#C)#'*!/' !''*& ' % !% % !". E!/h ) *!'&)# 'h&%' *(!/ + %' !"%) +!*? - &'h 'h I%O# W!, *) *', )# 'h O *!'&)#C)#'*!/' !''*& ' ;

    "&? 'h&%:

    !'peration#ontract*Is'ne2a6=true+$

    S ''$ 'h&% *) *', ') '* ' ""% WCF 'h!' #) * % )#% &"" * ' *# -. Th&% &%# ' % * *&%$;%/ )?$ ! - ) *!'&)# % #-% ! + %%!$ ') ! *!'h * 'h!# ') &'% "'&+!'* / &1 *. W!&'$ ()* !# &++ -&!' * % )#% ) "-# ' +!? + /h % #% . A"%); ) *!'&)#%+!*? - !% )# !, /!# h!1 )#", ' !*!+ ' *% 'h , !* # ' !"") - ') * ' *# !#,'h$ ')'h &* /!"" *. Th&% !"%) +!? % % #% ; %/ !"" 'h!' % h! #$ h * &% 'h!' ! + %%!$ &% $% #'.

    Fi+ure ,2- $llustratin+ Net/sm &indin+

    A% !" !,%; %$ ! !*'&/ "!* ?- )( /)++ #&/!'&)# + !#% % /&(,$ 'h ! *) *&!' -$.WCF *)1&- % ' ) -&(( * #' -$% ()* /)++ #&/!'&)# 1&! MSM=:

    18

  • 8/12/2019 WCF Diversity Paper

    19/23

    N 'M%+ B-$: Sh) # F&$ * 92; 'h&% -$ % #-% !*,4 #/)- - SOAP + %%!$ % )1 *MSM=. A /)++ #&/!'&)# !*'# * + %' % /&(, 'h&% %!+ -$; !#- %) 'h&% ) '&)# &% %! ")#", ()* WCF4')4WCF /)++ #&/!'&)#.

    M%+ I#' $*!'&)#B-$: S #-% !*, + %%!$ % )1 * MSM=; ' &'h) ' %$ ! SOAP#1 ") . Th&% ) '&)# " '% ! WCF4 !% - ! "&/!'&)# ' *) *!' &'h ! %'!#-!*- MSM=

    ! "&/!'&)# 'h!' -) %# ' % WCF.

    = $ &% 'h *&$h' ! *)!/h ()* !# &+ )*'!#' % ' )( -&%'*& ' - ! "&/!'&)#%. WCF % % )*' ()*'h&% /)++ #&/!'&)# %'," !"") % - 1 ") *% ') &"- - ! "&/!'&)#% &'h) ' # -$ ') " !*#!# #'&* ", % !*!' *)$*!++$ +)- ".

    COMMUNICATION VIA WINDOWS PEER4TO4PEER NETWORKING

    I' % ")#$ # /)++)# ') /!' $)*&@ /)++ #&/!'$ %,%' +% !% &'h * /"& #'% )* % *1 *%. Th&%!%,++ '*, &% *))' - h&%')*,; "))?$ !/? ') !# *! h # /"& #' +!/h % * # ' 1 *, ) *( "!#- % *1 *% * . Th&% %&+ " % "&' +!? % " %% % #% ')-!,; h # (!%' +!/h % &'h " #', )(%')*!$ !* /h ! !#- " #'&( ". V& $ !"" )( 'h + !% *% )(' # +!? % +)* % #% .

    R (" /'$ 'h&% * !"&',; W-) % ')-!, /" - % % )*' ()* *4')4 * # ' )*?$. R!'h * 'h!#% )*'$ /)++ #&/!'&)# ' # ! %$" /"& #' !#- ! %$" % *1 *; 'h&% ! *)!/h !"") %/* !'$ /)## /' - $*! h% )( * %,%' +%. A#,'h$ % #' ') 'h&% $*! h &"" * / &1 - , !"" )('h % /)## /' - *%. Th&% %'," )( /)++ #&/!'&)# /!# % ( " ()* ! 1!*& ', )( %/ #!*&)%;/" -$ %h!*$ * !"4'&+ /)#' #' % /h !% %')/? *&/ % )* 1&- ) ; $*&-4%'," -&%'*& '&)# )(*)/ %%$ !/*)%% + "'& " %,%' +%; + "'&4 "!, * $!+ %; !#- +)* .

    Fi+ure ,3- $llustratin+ Net(eerTcp&indin+

    A% % !"; WCF ! "&/!'&)#% /!# % W-) % *4')4 * # ' )*?$ , % /&(,$ 'h /)** /'-$. Th N 'P *T/ B-$; &"" %'*!' - F&$ * 93; * "& % )# ! '*!#% )*' /h!## " 'h!' %% /&(&/ ') * /)++ #&/!'&)#. Th&% -$ !"%) '% "!/ ! P#* P *R %)"1 * /h!## " 'h!'h!#-" % !--* %%$ ()* + %%!$ % % #' ') ! !*'&/ "!* $*! h )( * %,%' +%. Wh&"

    19

  • 8/12/2019 WCF Diversity Paper

    20/23

    N 'P *T/ B-$ &%# ' !+)#$ 'h +)%' /)++)#", % - /h)&/ % ()* WCF ! "&/!'&)#% ')-!,; &' %%% #'&!" ()* %)"1$ %)+ ?-% )( /)+ '$ *) " +%.

    COMMUNICATION BETWEEN PROCESSES ON THE SAME MACHINE

    C)++ #&/!'&)# ' # %)(' !* * ##$ )# -&(( * #' +!/h % &% 'h - ($ /h!*!/' *&%'&/ )(

    -&%'*& ' - /)+ '$. Y ' /)## /'$ %)(' !* * ##$ -&(( * #' *)/ %% % )# 'h %!++!/h &% !"%) &+ )*'!#'. G&1 # WCF % *)!- 1& )( /)++ #&/!'&)#; h, #)' !"")' * *)/ %% /)++ #&/!'&)# !% ""

    Fi+ure ,4- $llustratin+ NetNamed(ipe&indin+

    WCF % )*'% 'h&% ?- )( ' *!/'&)# %$ 'h N 'N!+ -P& B-$; %h) # F&$ * 9

  • 8/12/2019 WCF Diversity Paper

    21/23

  • 8/12/2019 WCF Diversity Paper

    22/23

  • 8/12/2019 WCF Diversity Paper

    23/23

    P*)1&- *; 'h % /h!## "% ! ')+!'&/!"", !// %% 'h&% *)1&- * !#- $ ' ! SAML ')? #. A#- !%!" !,%; 'h - 1 ") *% )( ! "&/!'&)#% 'h!' % 'h C)## /'&1&', % *1&/ % /&(, 'h % /h!## "%%$ ! -$; h&/h 'h&% /!% &% /!"" - R "!,B-$

    M&/*)%)(' - %/*& % )'h 'h B&@T!"? S *1&/ % I- #'&', P*)1&- * !#- B&@T!"? C)## /'&1&', S *1&/ %!% !*' )( !# ,nternet Service s . R!'h * 'h!# * ",$ )# %)(' !* * ##$ %&- !# )*$!#&@!'&)#

    ') ' $*!' ! "&/!'&)#%; !# I#' *# ' S *1&/ B % *)1&- % 'h&% ( #/'&)# 1&! "&/", !// %%& "% *1&/ %. A")#$ &'h 'h % (&*%' ' ) % *1&/ %; M&/*)%)(' h!% !##) #/ - &'% ' #'&)# ') !-- )'h *%;/" -$ ! h)%' - )*?(") % *1&/ !% - )# W-) % W)*?(") F) #-!'&)#. %' !% 'h% *1&/ % *)1&- - , ! "&/!'&)#% /!# +)1 - ') 'h /") - )( 'h I#' *# '; %) ')) /!#' $*!'&)# % *1&/ %. Wh&" &' % %'&"" !*", -!,% 'h % % *1&/ % !* # ' , ' ( ""4(" -$ - *)- /'%WCF % $ # *!"&@ - ! *)!/h ') /)++ #&/!'&)# "!,% ! "!*$ !*' +!?$ 'h + )%%& " .

    CONC)'S$ON

    B &"-$ ! $ # *!"4 * )% "!'()*+ ()* /)++ #&/!'&)# +!? % $))- % #% . R!'h * 'h!# * &*$- 1 ") *% ') " !*# -&(( * #' ' /h#)")$& % &'h -&(( * #' *)$*!++$ +)- "%; h, #)' *)1&- !%$" !#-! " %)" '&)# WCF -) % !/'", 'h&%; % )*'$ ! -&1 *%&', )( /)++ #&/!'&)#

    %'," % &'h ! /)++)# (*!+ )*?.

    Th /)++ #&/!'&)# ! *)!/h % - %/*& - 'h&% )1 *1& !* # ' 'h #- )( 'h %')*,; )( /) *% .N ' /h#)")$& % &"" ! !* ') + ' # * &* + #'%. Wh # 'h , -); /' M&/*)%)(' ')% )*' 'h + %$ WCF. Th $)!" )( &'% /* !')*% &% /" !*: Wh!' 1 * ,) * /)++ #&/!'&)#

    %'&)#; 'h !#% * &% WCF.

    A&O'T T0E A'T0O%

    D!1&- Ch! "" &% P*/& !" )( Ch! "" A%%)/&!' % .-!1&-/h! ""./)+ S!# F*!#/&%/);C!"&()*#&!. Th*) $h h&% % !?$; *&'$; !#- /)#% "'$; h h " % ()*+!'&)# ' /h#)")$,*)( %%&)#!"% !*) #- 'h )*"- #- *%'!#-; % ; !#- +!? '' * - /&%&)#% ! ) ' #' * *&%

    %)(' !* .