SystemTcpStatistics.cs source code in C# .NET

Source code for the .NET framework in C#



/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / NetworkInformation / SystemTcpStatistics.cs / 1 / SystemTcpStatistics.cs


    ///    Provides support for ip configuation information and statistics.
namespace System.Net.NetworkInformation { 
    using System.Net.Sockets; 
    using System;
    using System.ComponentModel; 

    /// Tcp specific statistics.
    internal class SystemTcpStatistics:TcpStatistics {
        MibTcpStats stats; 

        private SystemTcpStatistics(){} 
        internal SystemTcpStatistics(AddressFamily family){ 
            uint result;
            if (!ComNetOS.IsPostWin2K){
                if (family!= AddressFamily.InterNetwork){
                    throw new PlatformNotSupportedException(SR.GetString(SR.WinXPRequired));
                result = UnsafeNetInfoNativeMethods.GetTcpStatistics(out stats);
                result = UnsafeNetInfoNativeMethods.GetTcpStatisticsEx(out stats, family);
            if (result != IpHelperErrors.Success) {
                throw new NetworkInformationException((int)result);

        public override long MinimumTransmissionTimeout{get {return stats.minimumRetransmissionTimeOut;}} 
        public override long MaximumTransmissionTimeout{get {return stats.maximumRetransmissionTimeOut;}} 
        public override long MaximumConnections{get {return stats.maximumConnections;}}
        public override long ConnectionsInitiated{get {return stats.activeOpens;}} 
        public override long ConnectionsAccepted{get {return stats.passiveOpens;}}//  is this true?  We should check
        public override long FailedConnectionAttempts{get {return stats.failedConnectionAttempts;}}
        public override long ResetConnections{get {return stats.resetConnections;}}
        public override long CurrentConnections{get {return stats.currentConnections;}} 
        public override long SegmentsReceived{get {return stats.segmentsReceived;}}
        public override long SegmentsSent{get {return stats.segmentsSent;}} 
        public override long SegmentsResent{get {return stats.segmentsResent;}} 
        public override long ErrorsReceived{get {return stats.errorsReceived;}}
        public override long ResetsSent{get {return stats.segmentsSentWithReset;}} 
        public override long CumulativeConnections{get {return stats.cumulativeConnections;}}



Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK