Welcome to MSDN Blogs Sign in | Join | Help

May 2006 - Posts

WCF Webcasts in June

During the next month we'll be unleashing a slew of webcasts covering architecture and application development for Windows Vista. I've pulled out the sessions of interest for WCF developers. Each session lasts one hour. You can click on the title links
Posted by Nicholas Allen | 2 Comments
Filed under: ,

Versioning for Addresses, Envelopes, and Messages

The versioning of a message in WCF is a combination of the versioning of the envelope format and the addressing format. In Beta 2, the versioning story is a little out-of-date from where it's going to be for the final release. That's simply due to the
Posted by Nicholas Allen | 2 Comments
Filed under: , ,

What Data Looks Like on an Ethernet Network

There are two ways to think about the representation of data on a standard Ethernet network. The first way is to think about the actual encoded electronic pulses that go across the wire. This turns out to be very complicated because the signaling not
Posted by Nicholas Allen | 3 Comments
Filed under:

Creating Custom Bindings

A CustomBinding defines a binding by providing a thin wrapper around a collection of binding elements . Custom bindings don't have any of the niceities of a handcrafted binding, such as properties that provide direct control over the binding elements
Posted by Nicholas Allen | 2 Comments
Filed under: ,

Choosing a Transport

This is the last planned article in a documentation series covering various aspects of Windows Communication Foundation transports. Today's topic covers how to choose a transport and associated encoder. Choosing a Transport The Windows Communication Foundation

Today's Real News: Beta 2 Released

Unless you've somehow been avoiding all of the announcements that have come out today, then you know that today Windows Vista, WinFX, and Office 2007 all had their Beta 2 release today. The Beta 2 version for WCF was snapped not too long after the February
Posted by Nicholas Allen | 0 Comments
Filed under: ,

Introducing IDefaultCommunicationTimeouts

Today's post is a light entrée covering the IDefaultCommunicationTimeouts interface. This interface bundles up the standard group of timeouts- open, close, receive, and send- into one convenient package. A surprising number of classes implement or consume
Posted by Nicholas Allen | 2 Comments
Filed under: ,

Using the BufferManager

A BufferManager recycles the byte buffers used when reading and writing buffered messages . There's some allocation overhead creating these frequently used buffers, making buffer recycling a net win in high-throughput scenarios. As you move to larger

Math Behind the Hashing Birthday Attack

Last time I was looking at hashing algorithms when I pointed out that finding collisions was easier than reversing a message digest. For a good hashing algorithm, finding a message with a particular digest generally requires looking at as many messages

Basics of Encryption and Hashing

In the Basics of Transport Security article I wrote a few weeks ago, I introduced three different kinds of security that people care about for their messages. Let's look at the concepts behind implementing two of those types of security. Confidentiality

Resources for Channel Authors

Here's a quick rundown of what you need to get started writing a custom channel for WCF. It doesn't matter whether you're writing a layered channel or transport, everything here is good to know about. Tools You Need Everyone needs the WinFX runtime for

Building a Custom Message Encoder to Record Throughput, Part 4

One of the advantages of using WCF is that you can change the network protocol without changing how your application works. Let's show that off a bit while also looking at what the counting message encoder stats look like for some common scenarios. Last

Building A Custom Message Encoder to Record Throughput, Part 3

After a short break we're back to working on the custom message encoder. The complete source code for the encoder is available in Part 1 and Part 2 of this series. Today and tomorrow I'll be performing some runs using the encoder to show how it works.
Posted by Nicholas Allen | 8 Comments
Filed under: , ,

Understanding HTTP Authentication

Authentication is the process of identifying whether a client is eligible to access a resource. The HTTP protocol supports authentication as a means of negotiating access to a secure resource. The initial request from a client is typically an anonymous

One Month Until TechEd 2006

The clock continues to count down for the start of TechEd 2006 in Boston. We're now exactly one month away from the kickoff on June 11th. I wouldn't actually recommend showing up at the convention center exactly one month from now. Even though the registration
Posted by Nicholas Allen | 3 Comments
Filed under:

Building A Custom Message Encoder to Record Throughput, Part 2

Last time we looked at building a custom message encoder that counted the number of bytes that the transport was reading and writing from the message. We're building it inside out so I started off by making the encoder itself. An encoder comes from a
Posted by Nicholas Allen | 4 Comments
Filed under: , ,

Building A Custom Message Encoder to Record Throughput, Part 1

Now that we've seen how to write a custom transport, I thought I'd tackle another common request, which is to write a custom message encoder. A message encoder serializes an instance of the Message class into bytes. This is generally a much simpler operation
Posted by Nicholas Allen | 5 Comments
Filed under: , ,

Building a Custom File Transport, Part 11: Putting it Together

Today's article is just a summary of what we've put together with the file transport and a demonstration of how it works. There's no new code left to show, although I'll go over a number of improvements we could make to the transport in the future. Here

Using Impersonation with Transport Security

Impersonation and delegation are remote security concepts that really seem to throw people for a loop. That may be because every single networking implementation seems to treat them differently. Transport security is no exception, and this article covers

Building a Custom File Transport, Part 10: Request Context

Today is the final day of coding for the file transport. The last piece is the request context for the server. A request context forces the correlation between client and server messages in the request-reply message pattern. One thing that differentiates

Building a Custom File Transport, Part 9: Reply Channel

The second part of the server code to fill in is the reply channel. After today, we'll just have one more piece left to go. That means tomorrow, the code for this sample will be done. An eleventh and final chapter of this series will appear next week

Building a Custom File Transport, Part 8: Channel Listener

The client is actually done at this point. I don't know how many people have actually tried running the code or if you're all just following along. If you did try running the client, you would see a file appear on your hard drive, probably at c:\x\request.

Configuring WCF for NATs and Firewalls

I've been providing the contents for this article in bits and pieces but now the whole thing is assembled together. If you've been wondering how to make your WCF application safer for NATs and firewalls, this should help you out. Working with NATs and
 
Page view tracker