CS144 Checkpoint 4: interoperating in the world(2024)

分析網絡路徑和性能:

mtr命令

mtr 輸出的詳細分析:

mtr 162.105.253.58 命令用于結合 tracerouteping 的功能,實時監測并分析從你的計算機到目標主機(IP 地址 162.105.253.58,北京大學計算中心)之間的網絡路徑和性能。其主要作用如下:

  1. 路徑追蹤:識別數據包從源到目標經過的所有中間節點。
  2. 延遲測量:測量每個中間節點的響應時間(RTT),包括平均延遲、最小延遲和最大延遲。
  3. 丟包率監測:計算每個中間節點的數據包丟失百分比,以識別網絡中的潛在瓶頸或問題節點。
  4. 實時更新:提供實時的網絡性能數據,便于持續監控和診斷。
mtr 162.105.253.58

參數解釋

  • Host: 數據包傳輸路徑中的各個中間節點或主機地址。
  • Loss%: 丟包率,表示在傳輸過程中數據包丟失的百分比。
  • Snt: 發送的數據包總數。
  • Last: 最后一次響應時間(RTT,單位為毫秒)。
  • Avg: 平均響應時間(單位為毫秒)。
  • Best: 最快響應時間(單位為毫秒)。
  • Wrst: 最慢響應時間(單位為毫秒)。
  • StDev: 響應時間的標準差,表示響應時間的波動程度。

ping 命令

ping 命令輸出詳細信息

顯示了從你的計算機發送的 ICMP 回顯請求的數據包從目標主機(IP 地址 162.105.253.58,北京大學計算中心)返回的詳細信息:

[1715675570.594846] 64 bytes from 162.105.253.58: icmp_seq=19 ttl=240 time=4.25 ms
[1715675570.796353] 64 bytes from 162.105.253.58: icmp_seq=20 ttl=240 time=5.42 ms

每一行的格式:?

[時間戳] 字節數 來自 目標IP地址: ICMP序列號 TTL 響應時間

參數解釋

  1. [時間戳]

    • [1715675569.979467]:這是一個時間戳,表示數據包返回時的精確時間,以秒為單位。這個時間戳通常從系統啟動時間算起(例如,上述時間戳是從系統啟動以來經過的秒數和微秒數)。
  2. 字節數

    • 64 bytes:表示從目標主機返回的數據包大小為64字節,這是標準的ICMP數據包大小。
  3. 來自

    • from 162.105.253.58:表示數據包的來源,即目標主機的IP地址。
  4. ICMP序列號

    • icmp_seq=16:表示這是第16個ICMP回顯請求。序列號幫助跟蹤每個發送的請求及其響應。
  5. TTL(Time To Live)

    • ttl=240:表示數據包的生存時間。TTL字段在每經過一個路由器時減一,當TTL值變為零時,數據包被丟棄。初始TTL值通常為64、128或255,這取決于操作系統的默認設置。這里的TTL=240表示數據包在返回時經過了較少的路由器跳數。
  6. 響應時間

    • time=7.29 ms:表示從發送ICMP請求到收到響應所花費的時間,單位為毫秒(ms)。這個時間反映了往返時延(RTT)。

網絡協議

ICMP(Internet Control Message Protocol)

  • 用途:ICMP 是一種用于在網絡設備之間發送控制消息的網絡層協議。它主要用于診斷和錯誤報告。
  • 常見應用
    • ping 命令:用于測試目標主機的可達性并測量往返時間(RTT)。
    • traceroute 命令:用于確定數據包從源到目標的路徑以及路徑上每個跳的延遲。

數據分析

  1. 總體交付率

    • 作用:評估在整個測量期間內,發送的echo請求中有多少收到了回復,反映了網絡路徑的穩定性和可靠性。
    • 計算方法:讀取data.txt文件,計算發送的echo請求總數和接收到的回復總數。通過檢查丟失的序列號來確定丟失的包,并計算交付率。
  2. 最長連續成功ping的字符串

    • 作用:找出連續成功回復的最大序列長度,顯示網絡路徑在一段時間內的穩定性。
    • 計算方法:遍歷data.txt文件,記錄連續回復的最長序列長度。
  3. 最長的丟包突發

    • 作用:確定連續丟包的最大序列長度,顯示網絡路徑在一段時間內的脆弱性或不穩定性。
    • 計算方法:遍歷data.txt文件,記錄連續丟包的最長序列長度。
  4. 丟包的相關性

    • 作用:分析丟包事件之間的相關性,判斷丟包事件是否獨立或具有連鎖效應。
    • 計算方法
      • 計算echo請求#N收到回復時,echo請求#(N+1)也收到回復的概率。
      • 計算echo請求#N未收到回復時,echo請求#(N+1)收到回復的概率。
      • 將這些條件概率與總體交付率進行比較,分析丟包的獨立性或相關性。
  5. 最小RTT

    • 作用:確定測量期間內最小的往返時間(RTT),反映最理想情況下的網絡延遲。
    • 計算方法:從data.txt文件中找出最小的RTT值。
  6. 最大RTT

    • 作用:確定測量期間內最大的往返時間(RTT),反映網絡路徑在最不理想情況下的延遲。
    • 計算方法:從data.txt文件中找出最大的RTT值。
  7. RTT隨時間變化的圖

    • 作用:展示RTT值在兩個小時期間內的變化趨勢,反映網絡延遲的波動情況。
    • 繪制方法:繪制RTT值隨時間變化的圖,x軸為實際時間,y軸為RTT(以毫秒為單位)。
  8. RTT分布的直方圖或累積分布函數(CDF)

    • 作用:展示RTT值的分布情況,反映RTT值的頻率分布和累積概率。
    • 繪制方法:創建RTT值的直方圖或CDF。
  9. 連續ping的RTT相關性圖

    • 作用:分析連續ping之間RTT值的相關性,判斷RTT值在時間上的一致性或變化趨勢。
    • 繪制方法:繪制ping#N的RTT和ping#N+1的RTT之間的相關性圖,x軸為第一個RTT的毫秒數,y軸為第二個RTT的毫秒數。
  10. 從數據中得出的結論

    • 作用:通過分析數據、圖表和摘要統計,得出網絡路徑行為的總體結論,評估網絡性能的好壞。
    • 結論內容:包括網絡路徑的穩定性、可靠性、延遲波動等方面的分析,任何出乎意料的發現和網絡行為特征的總結。

結論:
1. 總體交付率為: 100.00%
2. 最長連續成功ping的字符串為: 9776
3. 最長的丟包突發為: 0
4. 收到回復后下一次收到回復的概率為: 99.99%
5. 未收到回復后下一次收到回復的概率為: 0.00%
6. 最小RTT為: 3.06 ms
7. 最大RTT為: 105.0 ms
通過這些分析,我們可以看到網絡路徑的穩定性和可靠性。網絡延遲在時間上有波動,但整體交付率較高。

DAI

倉庫(已經更新Lab4):

lms2004/minnow: CS 144 networking lab (github.com)?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/12347.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/12347.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/12347.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Nginx配置Referer防盜鏈

系列文章目錄 文章目錄 系列文章目錄前言 前言 前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到網站,這篇文章男女通用,看懂了就去分享給你的碼吧。 HTTP Referer是Hea…

PBOOTCMS|URL靜態制作教程(已解答)

0、先解壓源碼文件,在覆蓋靜態文件,全部點是。 打開程序后臺登錄地址www.xxx.com(你的域名)/admin.php/Menu/index 打開程序后臺--系統菜單--菜單新增(清理緩存后重新登錄賬號) (選擇父菜單,菜單名稱&#…

ROS2+TurtleBot3+Cartographer+Nav2實現slam建圖和導航

0 引言 入門機器人最常見的應用就是slam建圖和導航,本文將詳細介紹這一流程, 便于初學這快速上手。 首先對需要用到的軟件包就行簡單介紹。 turtlebot3: 是一個小型的,基于ros的移動機器人。 學習機器人的很多示例程序都是基于turtlebot3。 …

【Java基礎】枚舉類的方法及應用

如何實現讓一個類有固定個數的對象 手動封裝構造方法(private) → 創建靜態對象 → final修飾靜態對象,使其成為常量 class Season { //枚舉類public final static Season SPRING new Season();public final static Season SUMMER new Se…

MySQL數據庫備份全攻略:從基礎到高級,一文掌握所有備份技巧

在數據為王的時代,數據庫的備份無疑是每一位數據庫管理員(DBA)和開發者必須掌握的核心技能。MySQL作為世界上最流行的開源關系型數據庫管理系統,其備份策略的多樣性和靈活性更是值得我們深入探討。今天,我們將從基礎的…

廢品回收微信小程序基于FastAdmin+ThinkPHP+UniApp(源碼搭建/上線/運營/售后/更新)

一款基于FastAdminThinkPHPUniApp開發的廢品回收系統,適用廢品回收站、再生資源回收公司上門回收使用的小程序。 一、FastAdmin框架特色功能及優勢 模塊化開發:控制器、模型、視圖、JS一一對應,使用RequireJS進行插件機制,支持插…

Java面試題:線程池的核心參數和工作原理

線程池的核心參數 ThreadPoolExecutor(int corePoolSize,//核心線程數目int MaximumPoolSize,//最大線程數核心線程臨時線程long keepAliveTime,//臨時線程的存活時間,在存活時間內如果沒有新任務,線程資源會被釋放TimeUnit unit,//存活時間的時間單位,一個枚舉類型BlockingQu…

sql操作、發送http請求和郵件發送 全棧開發之路——后端篇(2)

全棧開發一條龍——前端篇 第一篇:框架確定、ide設置與項目創建 第二篇:介紹項目文件意義、組件結構與導入以及setup的引入。 第三篇:setup語法,設置響應式數據。 第四篇:數據綁定、計算屬性和watch監視 第五篇 : 組件…

STL介紹及使用場景分析

一.總體介紹 STL(Standard Template Library)是C標準模板庫,提供了一系列的通用模板類和函數,用于實現常見的數據結構和算法,方便開發者快速地實現各種功能。STL包括了容器(Containers)、算法&a…

[BJDCTF 2020]easy_md5、[HNCTF 2022 Week1]Interesting_include、[GDOUCTF 2023]泄露的偽裝

目錄 [BJDCTF 2020]easy_md5 ffifdyop [SWPUCTF 2021 新生賽]crypto8 [HNCTF 2022 Week1]Interesting_include php://filter協議 [GDOUCTF 2023]泄露的偽裝 [BJDCTF 2020]easy_md5 嘗試輸入一個1,發現輸入的內容會通過get傳遞但是沒有其他回顯 觀察一下響應…

文本協議中嵌入二進制數據

在文本協議中嵌入二進制數據時,通常不推薦使用new String(byte[], Charset),除非你確定這些字節實際上是以指定的字符集編碼的文本。這是因為如果字節不是有效的文本編碼,那么使用new String(byte[], Charset)可能會產生不可預測的結果&#…

VictoriaMetrics

概念 介紹 VictoriaMetrics,是一個快速高效、經濟并且可擴展的監控解決方案和時序數據庫 本文均用VM簡稱VictoriaMetric 作用 用于作為prometheus的長期儲存方案,代替prometheus存儲監控采集的數據 優點 遠程存儲:可作為單一或多個Pro…

【算法】二分查找——二分查找

本節博客詳述“二分查找”并且以例子來進行討論,有需要借鑒即可。 目錄 1.二分查找1.1使用前提1.2模板 2.題目3.題解代碼示例4.二分查找的一般模板5.總結 1.二分查找 1.1使用前提 使用的條件:數組具有“二段性”,二段性指的是數組可以根據某…

110份財務常用excel模板(個稅、采購、報銷、預算),超實用!

如果你還在為報表頭疼,那你一定不能錯過這篇干貨滿滿的分享! 個稅報表 個人所得稅,聽起來就頭大?別擔心,掌握這些技巧,輕松搞定! - 記錄員工收入,確保數據準確無誤 - 計算應納稅…

【Unity Shader入門精要 第7章】基礎紋理(一)

1. 紋理映射 每一張紋理可以看作擁有一個屬于自己的2D坐標空間,其橫軸用U表示,縱軸用V表示,因此也稱為UV坐標空間。 UV空間的坐標范圍為[0,0]到[1,1],在Unity中,UV空間也是從左下到右上&#…

測試萌新Python學習(五)接口自動化測試requests

requests 接口自動化測試requests庫基本實現請求-GET基本實現請求-POST基本實現請求-補充 sessionCookie和Session案例params 接口自動化測試 概念程序驅動代替人工驅動去實現接口測試 實現方式 測試工具(jmeter, postman, …)編碼工具(python, java, …) 比較 工具 優點:…

Network Compression

聽課(李宏毅老師的)筆記,方便梳理框架,以作復習之用。本節課主要講了Network Compression,包括為什么要壓縮,壓縮的主要手段(pruning,knowledge distillation,parameter quantization,architect…

Elasticsearch_sql插件安裝+使用

一、安裝 前提是你先安裝好了elasticseach,安裝過程在我上一篇博客有說,可以看一下。 在elasticsearch容器啟動的情況下,進入到elasticsearch容器,Elasticsearch_sql倉庫,比如我的版本是8.11.2,那么我就選…

[藍橋杯]真題講解:抓娃娃(思維+二分)

[藍橋杯]真題講解&#xff1a;抓娃娃&#xff08;思維二分&#xff09; 一、視頻講解二、正解代碼1、C2、python33、Java 一、視頻講解 [藍橋杯]真題講解&#xff1a;抓娃娃&#xff08;思維二分&#xff09;&#xff09; 二、正解代碼 1、C #include<bits/stdc.h> #d…

fastapi+vue實現導入Excel表格的功能

1.前端部分 1.1 api設置 // 導入用戶 export function uploadUser(data) {const formData new FormData();formData.append(file, data); // data 是從文件上傳事件中獲取的文件對象return request({url: /users/upload,method: post,headers: {Content-Type: multipart/fo…