如果在 ProbeMatches 訊息中未包含 XAddrs 元素,並且用戶端或主機會傳送 HTTP 訊息(例如 獲取 元數據交換請求或服務訊息),則用戶端或主機必須透過 UDP 多播將 解析 訊息傳送至埠 3702。 如果傳送 解析 訊息,則必須以單播的方式將 ResolveMatches 訊息傳送至發送解析訊息的 UDP 連接埠。 ResolveMatches 訊息必...
serviceHost.AddServiceEndpoint(typeof(ICalculatorService),newWSHttpBinding(),String.Empty); // Make the service discoverable over UDP multicast serviceHost.Description.Behaviors.Add(newServiceDiscoveryBehavior()); serviceHost.AddServiceEndpoint(newUdpDiscoveryEndpoint()); serviceHost.Open(); Console.Write...
由于WS-Discovery中的Ad-Hoc模式采用广播形式的消息交换,为此WCF为我们创建另一个标准的终结点UdpDiscoveryEndpoint。如下面的代码片断所示,UdpDiscoveryEndpoint具有两个基本的属性MulticastAddress和TransportSettings。前者代表采用的广播地址,默认值为“soap.udp://239.255.255.250:3702”,该值也是代表默认IPV4广播地址的静态...
使用通用主机和客户端对 UDP WS-Discovery 进行故障排除 打开命令提示符窗口。 运行以下命令:WSDDebug_host.exe /mode metadata /start 备注 可能会出现Windows 安全警报对话框。 如果是这样,请单击取消阻止以允许 WSD 调试主机运行。 该命令生成的输出如下所示。 记下“设备 ID”。
代表Probe请求的Find方法接受一个FindCriteria类的输入参数作为进行探测可用目标的匹配条件,该类型的主要的属性成员定义如下。其中ContractTypeNames代表探测的目标服务实现的契约类型列表,而Scopes和ScopeMatchBy则分别代表了用于探测目标的的范围和对范围进行匹配的方式。
在此模式下,客户端会通过UDP以多播的形式发送一个Probe(探测)消息,如果服务匹配该探测信息,则以单播方式直接响应客户端一个ProbeMatch(应答)消息。 为了减少客户端多播带来的性能问题,WCF允许服务加入、离开网络的时候发送一个多播消息,任何关注此服务的客户端都可以侦听这个消息。由于Ad hoc 基于UDP协议,所以只能适用...
8:voidEndProbeOperation(IAsyncResult result); 9:voidEndResolveOperation(IAsyncResult result); 10:[OperationContract(Action ="http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Probe", IsOneWay =true)] 11:voidProbeOperation(ProbeMessage11 request); ...
默认情况下,.NET Framework 包含对基于 UDP 协议的临时发现的支持。 例如,如果将服务配置为在启动时发出 Hello 公告,则该服务采用 UDP 协议通过已知多播地址来发出此公告。 客户端必须主动侦听这些公告,并对这些公告进行相应处理。 当客户端针对某一服务发送 Probe 消息时,会通过采用多播协议的网络进行发送。 接收到...
它工作在TCP和UDP端口3702和使用IP组播地址239.255.255.250或者FF02中:C。顾名思义,节点之间的实际通信是使用Web服务标准(尤其是SOAP-over-UDP)完成的。 Microsoft Windows Vista操作系统中的各种组件都...
UdpAnnouncementEndpoint 类是一个标准公告终结点,它预先配置为可通过 UDP 多播绑定进行公告。 默认情况下,UdpAnnouncementEndpoint 设置为使用 WSApril2005 WS_Discovery 版本。UdpDiscoveryEndpointUdpDiscoveryEndpoint 类一个标准发现终结点,它预先配置为可通过 UDP 多播绑定来发现。 默认情况下,DiscoveryEndpoint 设置为...