[紀錄]透過網路線傳送檔案與頻寬測試
Author:LauDai
Date:2020/04/01
先前有看過別人分享,不用接上數據機、路由器等方式,使兩台電腦可以傳輸,因此本次紀錄將記錄此實驗過程,以證實該方法可行。
該實驗主要有兩項測試:
- 可以透過網路線,找到對方主機(網路芳鄰與ICMP封包)
- 進行頻寬測試
硬體設備
- 主機(DTE):兩台
- 主機板:皆為 z97a
- 網路卡(NIC):皆為Intel r ethernet connection(2)I218-V
- 作業系統:Win10 企業版
頻寬測試軟體
Iperf 3.1.3 win64
iPerf3 is a tool for active measurements of the maximum achievable bandwidth on IP networks
網路線材
- 跳線(Crossover)
- 普通網路線(Straight or Parallel)
測試方式
Ping (ICMP Packets)
首先,先將兩台電腦透過跳線連接,並設定IP設定為
192.168.0.1~0.2 , Mask:255.255.255.0 , Gateway:192.168.0.254
結果發現無論如何都無法成功ping到對方,這時猜測可能是網路防火牆擋住了,因此直接去新增ICMP的rule,結果發現真的可以Ping到對方了,在此證實了兩件事:
- 確實可以使用跳線傳輸資料
- Windows10預設會將關閉接收ICMP封包(Win7預設是開啟的)
後續測試使用一般網路線,發現也可以找到另外一台主機,猜測是因為晶片可以自動分辨出跳線與網路線,要不然一般而言需要使用跳線材可以。
而另外一個測試則是將IP使用自動分配,在這情況下你會因為沒有拿到正確的IP資訊而拿到169.254.0.0/16的IP,經測試後發現在這種情況下依然可以找到對方,因此後續的測試將透過使用自動分配IP、一般網路線來完成實驗。
※附註:可使用有管理權限的CMD等,透過下指令,快速開啟ICMP防火牆
netsh advfirewall firewall add rule name="ICMP Allow incoming v4 echo request" protocol=icmpv4:8,any dir=in action=allow
Iperf3 跳線
先前提到將使用系統預設的IP進行測試,在後續中IP設定如下:
Client端IP:169.254.140.56
Server端IP:169.254.200.12
經過10個封包,每秒一個的測試後,此跳線的頻寬可以正常地來到Gigabit
Iperf3 網路線
在使用一般的網路線(平行線)做測試,頻寬也可以正常的接近Gigabit,主要與跳線之間的些微差異,我猜可能是不同廠商之間的關係。
在此測試四種不同的情境:
- 一般網路線
- 封包使用UDP測試
- 伺服器(server)端反打客戶(client)端
- 使用封包使用UDP測試,並且同時server端反打client端
一樣也是每秒一個,共10個
第一種情境
透過iperf,測試一般的網路線
Client端IP:169.254.140.56
Server端IP:169.254.200.12
第二種情境
使用UDP封包的方式,測試頻寬
Client端IP:169.254.140.56
Server端IP:169.254.200.12
第三種情境
透過Server反打的方式,測試之間的頻寬
Client端IP:169.254.140.56
Server端IP:169.254.200.12
第四種情境
透過UDP封包,並且從Server反打
Client端IP:169.254.140.56
Server端IP:169.254.200.12
結論
在這次實驗中,得到幾項驗證:
- 現在的晶片在電腦(DTE)設備之間,可以直接使用網路線即可傳遞資料
- 理論上可以傳輸到Giga的速率
- 169.254.0.0/16這IP組還需要更加多的研究