IPGlobalProperties.GetUdpIPv4Statistics Method

Definition

Provides User Datagram Protocol/Internet Protocol version 4 (UDP/IPv4) statistical data for the local computer.

public:
 abstract System::Net::NetworkInformation::UdpStatistics ^ GetUdpIPv4Statistics();
public abstract System.Net.NetworkInformation.UdpStatistics GetUdpIPv4Statistics ();
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
public abstract System.Net.NetworkInformation.UdpStatistics GetUdpIPv4Statistics ();
abstract member GetUdpIPv4Statistics : unit -> System.Net.NetworkInformation.UdpStatistics
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
abstract member GetUdpIPv4Statistics : unit -> System.Net.NetworkInformation.UdpStatistics
Public MustOverride Function GetUdpIPv4Statistics () As UdpStatistics

Returns

A UdpStatistics object that provides UDP/IPv4 traffic statistics for the local computer.

Attributes

Exceptions

The call to the Win32 function GetUdpStatistics failed.

Examples

The following example displays the UDP/IP statistics for the local computer.

void ShowUdpStatistics( NetworkInterfaceComponent version )
{
   IPGlobalProperties ^ properties = IPGlobalProperties::GetIPGlobalProperties();
   UdpStatistics ^ udpStat = nullptr;
   switch ( version )
   {
      case NetworkInterfaceComponent::IPv4:
         udpStat = properties->GetUdpIPv4Statistics();
         Console::WriteLine( "UDP IPv4 Statistics" );
         break;

      case NetworkInterfaceComponent::IPv6:
         udpStat = properties->GetUdpIPv6Statistics();
         Console::WriteLine( "UDP IPv6 Statistics" );
         break;

      default:
         throw gcnew ArgumentException( "version" );
         break;
   }
   Console::WriteLine( "  Datagrams Received ...................... : {0}", udpStat->DatagramsReceived );
   Console::WriteLine( "  Datagrams Sent .......................... : {0}", udpStat->DatagramsSent );
   Console::WriteLine( "  Incoming Datagrams Discarded ............ : {0}", udpStat->IncomingDatagramsDiscarded );
   Console::WriteLine( "  Incoming Datagrams With Errors .......... : {0}", udpStat->IncomingDatagramsWithErrors );
   Console::WriteLine( "  UDP Listeners ........................... : {0}", udpStat->UdpListeners );
   Console::WriteLine( "" );
}
public static void ShowUdpStatistics(NetworkInterfaceComponent version)
{
    IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
    UdpStatistics udpStat = null;

    switch (version)
    {
        case NetworkInterfaceComponent.IPv4:
            udpStat = properties.GetUdpIPv4Statistics();
            Console.WriteLine("UDP IPv4 Statistics");
            break;
        case NetworkInterfaceComponent.IPv6:
            udpStat = properties.GetUdpIPv6Statistics();
            Console.WriteLine("UDP IPv6 Statistics");
            break;
        default:
            throw new ArgumentException("version");
        //    break;
    }
    Console.WriteLine("  Datagrams Received ...................... : {0}",
        udpStat.DatagramsReceived);
    Console.WriteLine("  Datagrams Sent .......................... : {0}",
        udpStat.DatagramsSent);
    Console.WriteLine("  Incoming Datagrams Discarded ............ : {0}",
        udpStat.IncomingDatagramsDiscarded);
    Console.WriteLine("  Incoming Datagrams With Errors .......... : {0}",
        udpStat.IncomingDatagramsWithErrors);
    Console.WriteLine("  UDP Listeners ........................... : {0}",
        udpStat.UdpListeners);
    Console.WriteLine("");
}

Remarks

UDP is a connectionless transport layer protocol that is responsible for sending and receiving datagrams. It is defined in IETF RFC 768.

For details on the UDP traffic statistics that are available to applications, see the UdpStatistics class documentation. Note that the object returned by this method reflects the statistics as of the time the UdpStatistics object is created. This information is not updated dynamically.

Applies to