PingReply.Buffer Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает буфер данных, полученных в ответном сообщении протокола ICMP.
public:
property cli::array <System::Byte> ^ Buffer { cli::array <System::Byte> ^ get(); };
public byte[] Buffer { get; }
member this.Buffer : byte[]
Public ReadOnly Property Buffer As Byte()
Значение свойства
Byte Массив, содержащий данные, полученные в ответном сообщении ICMP, или пустой массив, если ответ не получен.
Примеры
В следующем примере кода выполняется синхронный запрос на эхо-запрос ICMP и отображается размер буфера, возвращаемого этим свойством.
public static void ComplexPing ()
{
Ping pingSender = new Ping ();
// Create a buffer of 32 bytes of data to be transmitted.
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes (data);
// Wait 10 seconds for a reply.
int timeout = 10000;
// Set options for transmission:
// The data can go through 64 gateways or routers
// before it is destroyed, and the data packet
// cannot be fragmented.
PingOptions options = new PingOptions (64, true);
// Send the request.
PingReply reply = pingSender.Send ("www.contoso.com", timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
Console.WriteLine ("Address: {0}", reply.Address.ToString ());
Console.WriteLine ("RoundTrip time: {0}", reply.RoundtripTime);
Console.WriteLine ("Time to live: {0}", reply.Options.Ttl);
Console.WriteLine ("Don't fragment: {0}", reply.Options.DontFragment);
Console.WriteLine ("Buffer size: {0}", reply.Buffer.Length);
}
else
{
Console.WriteLine (reply.Status);
}
}
Комментарии
Буфер данных, отправляемый с запросом на эхо ICMP, возвращается отправителю в ответе на эхо, чтобы можно было вычислить время обхода пакета известного размера. Буфер данных в сочетании с DontFragment параметром можно использовать для обнаружения максимальной единицы передачи для сетевого пути между исходными и конечными компьютерами. Дополнительные сведения см. в разделе "Traceroute" в RFC 1574, разделе 3.2, доступном по адресу https://www.ietf.org.
Буфер по умолчанию, используемый и SendSendAsync содержащий 32 байта данных.