步驟1:收集零件
為此,我正在使用:
Raspberry Pi 2 Model B運(yùn)行Raspbian
帶WiFi分析器應(yīng)用程序的智能手機(jī)
U-verse 2線網(wǎng)關(guān)
Linksys WAP300N無線接入點(diǎn)
注意:
用黑桃括起來的文本(例如?replace-this?)應(yīng)替換為實際值。當(dāng)然,除去黑桃。
測量內(nèi)容始終包含在附錄中。
步驟2:設(shè)置無線訪問點(diǎn)
圖像:在智能手機(jī)上運(yùn)行的應(yīng)用WiFi Analyzer的屏幕截圖。
WiFi Analyzer
確保您的無線訪問點(diǎn)(AP)受到鄰居的干擾最小。
在智能手機(jī)上加載Wi-Fi分析器應(yīng)用程序。
確保您的Wi-Fi頻道與鄰居的Wi-Fi頻道不同。
默認(rèn)情況下,大多數(shù)ISP在通道1上設(shè)置其用戶。
如果可能,請將您的AP置于不同于鄰居的通道上。
使用奇數(shù)編號的信道。
設(shè)置無線接入點(diǎn)
確保正確設(shè)置了AP。我的ISP提供商的網(wǎng)關(guān)具有內(nèi)置的802.11b/g AP,我為18Mbps的連接付費(fèi)。我禁用了網(wǎng)關(guān)的AP,并向我的網(wǎng)絡(luò)添加了802.11n AP。 802.11n AP具有以下設(shè)置:
2.4 GHz(禁用5GHz)
網(wǎng)絡(luò)模式=混合
網(wǎng)絡(luò)名稱(SSID)=:
通道寬度=自動(20MHz或40MHz)
通道= 1
SSID廣播=啟用
安全模式= WPA2(不‘
第3步:這全與功耗有關(guān)
2.4GHz與Raspberry Pi配合使用效果最好。
h2》
圖片:電源適配器和Raspberry Pi引腳
電源適配器
高質(zhì)量的電源適配器是RPi正常運(yùn)行的基礎(chǔ)。
我有5個電源適配器,這些電源適配器包含在Raspberry Pi入門套件中。 5個適配器中的2個提供一致的5V。
添加到Raspberry Pi的任何設(shè)備都使用電源。因此,USB設(shè)備或HDMI監(jiān)視器可以使Raspberry Pi達(dá)到次佳的性能。
根據(jù)http://nordicgroup.us/rpi/power/:
“ Raspberry Pi在4.75V以下開始不穩(wěn)定運(yùn)行”
[您必須有一個電源,在5.2V(12瓦)下輸出]“ 2.4A”。額外的0.2V減輕了電纜和Raspberry Pi板上電壓降的影響?!?/p>
根據(jù)http://elinux.org/RPi_Hardware來測量電壓:
使用萬用表設(shè)置為20伏直流電(或20v =)
測量從Pin#02直流電源5V到Pin#06接地的電壓
電壓應(yīng)介于4.75和5.25伏特。
推薦的電源適配器和電纜:
5.2V 2.1A USB電源適配器,來自亞馬遜$ 5.99
Micro來自亞馬遜的USB至USB電纜3英尺$ 4.69
測量:
適配器的傳輸帶寬,可提供正確的電壓
12.2 Mbps
提供4.75V或更低電壓的適配器的傳輸帶寬:
7.66 Mbps
第4步:選擇適配器
圖片:iperf3,每個適配器上的間隔為1000。 x軸為Mbps,y軸為該帶寬內(nèi)的測量計數(shù)。
選擇適配器
設(shè)備可以宣傳為802.11n,但不能在Raspberry Pi上達(dá)到11n的帶寬速率。列出設(shè)備的傳輸速率會產(chǎn)生誤導(dǎo)。而是測量實際帶寬。
Wi-Fi芯片組的多個方面都會對帶寬產(chǎn)生負(fù)面影響。
Realtek率先開發(fā)了軟調(diào)制解調(diào)器;降低了以太網(wǎng)的成本,同時將處理從以太網(wǎng)芯片組轉(zhuǎn)移到主機(jī)處理器。在PC或MacBook上,CPU經(jīng)常處于空閑狀態(tài),這是一個很棒的功能,并且可以節(jié)省金錢。但是,在Raspberry Pi上,將處理任務(wù)轉(zhuǎn)移到ARM會對WiFi帶寬和應(yīng)用程序性能產(chǎn)生負(fù)面影響。
我的大多數(shù)應(yīng)用程序不需要高WiFi帶寬。某些需要高WiFi帶寬的應(yīng)用程序是Media Server,NAS和基于Raspberry Pi的PC。
一些通用規(guī)則:
當(dāng)前的適配器必須本地支持版本的Raspbian。
檢查是否有人使適配器能夠工作,或者已知適配器有問題。
首先查看以下鏈接:http://elinux.org/RPi_USB_Wi-Fi_Adapters。
必須由Raspberry Pi模型支持適配器二手(Raspberry Pi 2 Model B)
測量性能
我將在購買適配器時測量更多的適配器。為了獲得最佳性能(最好的帶寬放在首位):
熊貓300Mbps無線N USB適配器
Edimax EW-7811Un 150Mbps 11n Wi-Fi USB適配器
Wi-Pi Raspberry Pi 802.11n無線適配器
TP-LINK TL-WN725N無線N納米USB適配器150Mbps
RT5370
》 Panda設(shè)備只有拇指驅(qū)動器的大小,并且可能不會像較小的加密狗那樣將大量的處理任務(wù)分擔(dān)給CPU。
步驟5:最小設(shè)置
圖像:以最小設(shè)置(藍(lán)色)運(yùn)行iperf3 100間隔的結(jié)果,然后使用推薦的設(shè)置(紅色)再次運(yùn)行。 x軸為Mbps,y軸為該帶寬內(nèi)的測量計數(shù)。
最小設(shè)置與我建議的設(shè)置之間的差異并不明顯。我選擇了一個設(shè)置,該設(shè)置比最小設(shè)置要復(fù)雜一些,但是測量結(jié)果不支持此選擇(請參見圖片)。
只要您沒有電源問題,您的網(wǎng)關(guān)支持dhcp,您的適配器在raspbian中具有驅(qū)動程序支持,那么這是使wifi正常工作的最小設(shè)置:
/etc/network/interfaces
如果您有wpa_supplicant.conf文件,請將其重命名。
運(yùn)行命令:
$ sudo nano /etc/network/interfaces
,然后編輯以僅包含:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid “?your-ssid?”
wpa-psk “?your-pass-phrase《?”
CTRL-o寫入文件
ENTER確認(rèn)寫入
CTRL-x退出nano編輯器
步驟6:/etc/network/interfaces
圖片:使用“ iface eth0 inet dhcp”(藍(lán)色),然后再使用“#iface”運(yùn)行iperf3 100個間隔的結(jié)果eth0 inet dhcp”(紅色)。 x軸為Mbps,y軸為該帶寬內(nèi)的測量計數(shù)。
/etc/network/interfaces
/etc/network/interfaces文件中的每個參數(shù)均已測量。
此文件必須正確,否則wifi無法正常工作。
登錄樹莓派并運(yùn)行命令:
$ sudo nano /etc/network/interfaces
編輯文件為:
# interfaces(5) file used by ifup(8) and ifdown(8)
# Please note that this file is written to be used with dhcpd
# For static IP, consult /etc/dhcpcd.conf and ’man dhcpcd.conf‘
# Include files from /etc/network/interfaces.d:
# source-directory /etc/network/interfaces.d
# Commented parameters were used in measurements
# All comments can be removed
# Replace spades (?) and text enclosed in ?replace-this? with actual value
# loopback interface
# loopback is used for tools to talk to themselves on the RPi
auto lo
iface lo inet loopback
# ethernet interface
# leave ethernet interface - may be needed for cable connection in the future
iface eth0 inet dhcp
# Wireless adapter
# Use only one group of settings at a time - either RT5370 or WiPi
# RT5370 settings:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
# Use wpa-ssid and wpa-psk OR wpa_supplicant, but not both
# wpa-ssid “?your-ssid?”
# wpa-psk “?your-pass-phrase?”
# Use wpa-conf instead of wpa-roam
# Using wpa-roam without correct wpa_roam.conf causes issues
# For example, on reboot wpa-roam can default to IPv6 and wifi stops
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
#
# Turning power management off reduces dropped packets
wireless-power off
# WiPi settings:
# auto wlan0
# iface wlan0 inet dhcp
# wpa-ssid “?your-ssid?”
# wpa-psk “?your-pass-phrase?”
# default interface
# iface default inet dhcp
CTRL-o寫入文件
ENTER確認(rèn)寫入
CTRL-x退出納米編輯器
第7步:/etc/wpa_supplicant/wpa_supplicant.conf
圖片:以每間隔100個間隔運(yùn)行iperf3的結(jié)果生成密鑰,而是使用密碼短語。 x軸為Mbps,y軸為該帶寬中的測量計數(shù)。
預(yù)生成的密鑰
創(chuàng)建預(yù)生成的PSK密鑰。登錄到Raspberry Pi并運(yùn)行以下命令:
$ wpa_passphrase ?your-ssid? ?your-pass-phrase?
輸出:
network={
ssid=“?your-ssid?”
psk=?your-pre-generated-key?
}
/etc/wpa_supplicant/wpa_supplicant.conf
已測量/etc/network/interfaces文件中的每個參數(shù)。
wpa_supplicant.conf文件必須正確,否則wifi無法正常工作。
登錄樹莓派并運(yùn)行以下命令:
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
編輯文件如下所示:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid=“?your-ssid?”
# use a pre-generated key
psk=?your-pre-generated-key?
# if creating a standard image for many projects, then use pass phrase
# instead of generated key
# a generated key depends on the Raspberry Pi’s MAC
# psk=“?your-pass-phrase?”
# specify for clarity
key_mgmt=wpa_psk
proto=rsn
# CCMP is the correct encryption to use for WPA-PSK
# The Wi-Fi Alliance requires 802.11n transmissions use WPA2 and CCMP
pairwise=CCMP
group=CCMP
}
CTRL-o寫入文件
ENTER確認(rèn)寫入
CTRL-x退出nano編輯器
步驟8:Testwifi.sh
圖片:顯示微波爐運(yùn)行時的傳輸速率下降。
testwifi.sh
在我的第一個Raspberry Pi項目中,該pi會間歇性地失去連接并且無法恢復(fù)。當(dāng)時,我沒有意識到電源適配器的重要性。如果出現(xiàn)任何問題,我寫了此腳本來還原wifi。
登錄到Raspberry Pi并運(yùn)行以下命令:
$ sudo nano /usr/local/bin/testwifi.sh
編輯文件,如下所示:
!/bin/bash
# Router IP address
TESTIP=?u-verse-gateway-ip-address?
counter=0
while true; do
# ping the router
ping -c1 ${TESTIP} 》 /dev/null
if [ $? != 0 ]
then
# try a couple of times before restarting, pings can get lost
if [ “$counter -lt 3 ]
then
counter=$((counter+1))
logger ”testwifi.sh: WiFi seems down, sleeping“
sleep 2
else
logger ”testwifi.sh: WiFi seems down, restarting“
sudo /sbin/ifdown --force wlan0
sleep 10
sudo /sbin/ifup wlan0
exit 0
fi
else
logger ”testwifi.sh: WiFi seems fine“
exit 0
fi
done
exit 0
CTRL-o寫入文件
ENTER確認(rèn)寫入
CTRL-x退出nano編輯器
使文件可執(zhí)行:
$ sudo chmod ug+x /usr/local/bin/testwifi.sh
或
$ sudo chmod 0755 /usr/local/bin/testwifi.sh
創(chuàng)建一個crontab條目以定期運(yùn)行腳本:
$ sudo crontab –e
,并使它看起來像:
# run every 2 minutes:
*/2 * * * * /usr/local/bin/testwifi.sh 》》 /var/log/syslog
CTRL-寫入文件
ENTER確認(rèn)寫入
CTRL-x退出nano編輯器
您已完成!
第9步:附錄測量
圖片:顯示是否帶有wpa_supplicant.conf
測量
基本的測量方法是:
重復(fù)并完善直到測量準(zhǔn)確且容易報告的
將micro SD卡刷新到NOOBS
應(yīng)用設(shè)置更改以使Raspberry Pi處于已知的良好狀態(tài)
在筆記本電腦上將iperf3作為服務(wù)器運(yùn)行
為每個測量重復(fù)以下步驟:
重新啟動(Raspberry Pi)RPi
,無需更改即可運(yùn)行iperf3作為RPi上的客戶端
進(jìn)行一次更改并重新啟動RPi
運(yùn)行iperf3作為RPi上的客戶端
刪除更改
將iperf3結(jié)果復(fù)制并粘貼到Excel中
在沒有結(jié)果更改的情況下繪制結(jié)果Excel
在測量過程中,我將microSD卡刷新了五次。
大多數(shù)測量100個間隔。某些測量值為1000。需要更精確的數(shù)據(jù)時,需要更多的間隔。例如,當(dāng)比較適配器時。
分析包括使用2 sigma測試計算平均值,最小值,最大值和標(biāo)準(zhǔn)偏差以及顯著性。所有的iperf3結(jié)果都將轉(zhuǎn)換為Mbps(M位/秒)
測量結(jié)果會四舍五入以適合1Mbps的bin并進(jìn)行計數(shù)。四舍五入消除了一些準(zhǔn)確性,但是使繪制圖形的結(jié)果更易于解釋。
兩個結(jié)果(有或無變化)都以圖形表示:y軸=計數(shù),x軸= Mbps。
步驟10:附錄Iperf3
圖片:顯示了通過無線訪問點(diǎn)運(yùn)行iperf3的兩個MacBook Pro之間的帶寬。
iperf3
iperf3是用于測量帶寬的命令行速度測試工具。
測量兩臺筆記本電腦(PC或MacBooks)之間的帶寬。此度量為您的網(wǎng)絡(luò)上可實現(xiàn)的最高帶寬建立了基線。使用網(wǎng)絡(luò)外部的iperf3服務(wù)器可能會導(dǎo)致測量差異,這些差異超出了您的控制范圍。
所有其他測量都是在筆記本電腦和Raspberry Pi之間進(jìn)行的。這種方法隔離了Raspberry Pi上顯示對帶寬有影響的更改。
期望Raspberry Pi和PC之間的帶寬小于兩臺PC之間的帶寬。
安裝iperf3:
打開一個終端窗口。
下載并在兩臺筆記本電腦/臺式機(jī)上安裝iperf3。 (我使用的是MacBook Pro,但它也可以在PC上使用)
http://macappstore.org/iperf3/
查找MacBook的IP地址,該IP地址將用作iperf3服務(wù)器
$ ifconfig | grep ”inet 192.168“
inet 192.168.1.76
ssh并登錄到Raspberry Pi
$ ssh pi@?raspberry-pi-ip-address?
在Raspberry Pi上安裝iperf3
$ sudo apt-get install iperf3
使用perf3進(jìn)行測量:
要進(jìn)行測量,請從Raspberry Pi到MacBook運(yùn)行iperf3
打開終端窗口并啟動iperf3服務(wù)器正在運(yùn)行:
$ iperf3 -s
打開第二個終端窗口,登錄Raspberry Pi并運(yùn)行:
$ iperf3 -c 192.168.1.76 -R -b 0 -i1 -t 100
選項說明($ man iperf3):
-R在反向模式下運(yùn)行perf
-bn = 0將帶寬設(shè)置為無限制,否則n = bandwidth-不需要
-i1暫停n秒帶寬報告之間的間隔-不需要
-t 100將間隔數(shù)設(shè)置為100
步驟11:附錄CCMP
圖像:帶有和不帶有CCMP
CCMP是WPA2標(biāo)準(zhǔn)所使用的標(biāo)準(zhǔn)加密協(xié)議,比WPA的WEP協(xié)議和TKIP協(xié)議更有效。這里真的沒有選擇。使用CCMP。
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
network={
ssid=?your-ssid?
psk=?your-pre-generated-key?
# only have one of measurement 1, 2 or 3
# measurement 1
# pairwise=CCMP
# group=CCMP
# measurement 2
# pairwise=CCMP
# group=CCMP
# measurement 3
pairwise=CCMP TKIP
group=CCMP TKIP
}
步驟12:附錄Key_mgmt和Proto
圖片:使用和不包含key_mgmt和 proto
使用和不使用key_mgmt和proto進(jìn)行測量。
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
network={
wpa-ssid=”?your-ssid?“
wpa-psk=”?your-generated-psk?“
# Only include measurement 1 or 2, but no both
# Measurement 1
# key_mgmt=WPA-PSK
# proto=RSN
# Measurement 2
key_mgmt=WPA-PSK
proto=RSN
pairwise=CCMP
group=CCMP
}
步驟13:附錄環(huán)回接口
圖像:帶和不帶環(huán)回接口
帶和不帶環(huán)回接口的測量。
Loopback被Raspberry Pi上的各種應(yīng)用程序用來與自己對話。因此,我不會進(jìn)行此更改。
$ sudo nano /etc/network/interfaces # Measurement 1
auto lo
iface lo inet loopback
# Measurement 2
# auto lo
# iface lo inet loopback
步驟14:附錄默認(rèn)界面
圖像:帶有和不帶有默認(rèn)界面的
帶有和不帶有默認(rèn)界面的測量。
$ sudo nano /etc/network/interfaces # Measurement 1
iface default inet dhcp
# Measurement 2
# iface default inet dhcp
第15步:使用和不使用GUI的附錄
圖片:使用和不使用GUI
使用和不使用測量GUI。刪除GUI會在Micro SD卡上釋放大約2GB的空間。
要刪除GUI,請執(zhí)行以下操作:
$ sudo apt-get --purge remove ‘x11-*’
$ sudo apt-get --purge auto remove
$ sudo reboot $ sudo raspi-config
高級選項
memory_split:
Raspberry Pi的RAM有限。 RAM在中央處理器(CPU)和圖形處理器(GPU)之間共享。 Raspbian Wheezy為GPU提供了64MB的RAM。刪除GUI可以為運(yùn)行在CPU上的應(yīng)用程序釋放此RAM。之后運(yùn)行raspi-config應(yīng)該顯示分配給GPU的0MB。
在raspi-config中設(shè)置后,此命令將顯示分配給GPU的內(nèi)存:
$ cat /boot/config.txt
gpu_mem=0
責(zé)任編輯:wv
-
適配器
+關(guān)注
關(guān)注
8文章
1965瀏覽量
68116
發(fā)布評論請先 登錄
相關(guān)推薦
評論