Re: [問題] 請問socket封包到本機網卡要如何測量時間

看板C_Sharp (C#)作者 (irene)時間1年前 (2023/10/31 10:24), 編輯推噓1(101)
留言2則, 1人參與, 1年前最新討論串2/2 (看更多)
※ 引述《sam319 (Sam)》之銘言: : 從socket.Send(data)一刻起 : 到本機網卡收到data但還沒傳到遠端之前 : 請問C#有辦法測量這段時間嗎? using System; using System.Diagnostics; using System.Net; using System.Net.Sockets; class Program { static void Main() { // 設定目標 IP 和 Port,這個例子中使用本機 IP 和一個特定 Port IPAddress localIpAddress = IPAddress.Parse("127.0.0.1"); int port = 12345; // 創建一個 UdpClient 來發送封包 using (UdpClient udpClient = new UdpClient()) { // 要發送的資料 byte[] data = new byte[1024]; // 假設封包大小為 1024 位元組 // 開始計時 Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // 發送封包 udpClient.Send(data, data.Length, new IPEndPoint(localIpAddress, port)); // 停止計時 stopwatch.Stop(); // 顯示所需時間 Console.WriteLine($"傳送封包所需時間: {stopwatch.ElapsedMilliseconds} 毫秒"); } } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.231.183 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1698719068.A.52D.html

12/31 14:28, 1年前 , 1F
這StopWatch可量測Send指令時間,如果原Po 想更精確,需
12/31 14:28, 1F

12/31 14:28, 1年前 , 2F
從WireShark去看127.0.0.1的反應紀錄
12/31 14:28, 2F
文章代碼(AID): #1bG6LSKj (C_Sharp)
文章代碼(AID): #1bG6LSKj (C_Sharp)