Gets or sets the largest number of messages that can exist in either the send buffer or the receive buffer.
Assembly: System.ServiceModel (in System.ServiceModel.dll)
The value set is less than or equal to one or greater than 4096.
The value of the property can be set on both the sender and the receiver. This value is included in the binding policy of the WSDL, so if you use the ServiceModel Metadata Utility Tool (Svcutil.exe) to construct your client, it has the same value. Otherwise this value is whatever you set it to be on the client.
When this limit is reached on the sender, additional calls to send are blocked. When this limit is reached on the receiver, new messages that arrive on the underlying channel are not accepted.
A reliable session uses a windowing protocol to help improve network utilization. The amount of buffering required is directly derived from the size of the transmission window. When tuning this value, note that the optimal transmission window is related to the bandwidth and the latency in a straight-forward way. The ideal maximum window size is the bandwidth times the latency. Anything smaller yields less than 100% network utilization; anything larger is just wasted space.