1、 簡述osi七層模型和TCP/IP五層模型
物理層(Physical Layer):確保數據可以在各種物理媒體上傳輸。爲上層協議提供了傳輸數據的物理媒體,本層傳輸bit流。
數據鏈路層(Data Link Layer):建立邏輯連接。本層的功能:物理地址尋址、數據的成幀(將bit流封裝成幀)、流量控制、數據的檢錯與重發等。
網絡層(Network Layer):對子網間的數據包進行路線選擇,還可實現擁塞控制、網際互連等功能,本層的數據單位被稱爲數據包。
傳輸層:定義傳輸數據的協議端口號、流控和差錯校驗。本層的數據單位被稱爲數據段。
會話層:建立、管理、終止會話。本層還利用在數據中插入校驗點來實現數據的同步,訪問驗證和會話管理在內的建立和維護應用之間通信的機制。
表示層:本層主要解決用戶信息的語法表示問題,即提供格式化的表示和轉換數據服務。數據的壓縮和解壓縮, 加密和解密等工作都由本層負責。
應用層:本層層爲操作系統或網絡應用程序提供訪問網絡服務的接口。
2、 簡述iproute家族命令
ip命令:
格式: ip [ OPTIONS ] OBJECT { COMMAND | help }
link:網絡設備配置
- ip link set:改變設備屬性;
- ip link show:顯示設備屬性(查看二層設備的屬性,與IP地址無關);
- ip link help:顯示簡要使用幫助;
nentns:網絡名稱空間
- ip netns add NETNAMESPACE_NAME:設定網絡名稱空間名稱;
- ip link set IFACE netns NETNAMESPACE_NAME:把指定接口移動到指定網絡名稱空間中;
- ip netns exec NETNAMESPACE_NAME COMMAND:在網絡名稱空間中執行命令;
- ip netns :manage network namespaces
ip netns add NAME:創建指定的netns;
ip netns del NAME:刪除指定的netns;
ip netns list:列出所有的netns;
ip netns exec NAME COMMAND:在指定的netns中執行命令;
addr:協議地址管理
- ip address add:添加新的協議地址;
- ip address del:刪除協議地址;
- ip address show:查看協議地址;
- ip address flush:清空所有協議地址
ip route命令:
- ip route add:添加路由
- ip route list:查看路由表
- ip route change:更改路由
- ip route replace:替換路由
- ip route delete:刪除路由條目
- ip route flush:清空路由表
- ip route get:獲取指定路由條目
3、 詳細說明進行管理工具htop、vmstat等相關命令,並舉例
htop命令:
交互式進程查看器
各顯示字段同top;
選項:
-d #:指定延遲時間間隔;
-u USERNAME:僅顯示指定用戶的進程;
-s COLUME:以指定字段進行排序;
子命令:
與top相同;
l:顯示選定進程打開的文件列表,能跟蹤一個進程所打開的文件;
s:跟蹤選定的進程所發起的系統調用;
t或F5:以層級關係顯示各進程狀態,樹狀結構顯示進程父子關係;
a:將選定的進程綁定在指定的CPU核心,設置進程在哪顆CPU上運行(affinity);
F2:設定顯示格式、顯示方式等 ;
u:顯示用所有戶進程;
H:隱藏/顯示用戶線程threads;
K:隱藏/顯示內核線程;
F:使用光標選擇進程;
P M T:根據CPU%,MEM%,TIME排序;
c:標記進程和子進程;
Esc:返回主界面;
vmstat命令:
- 格式: vmstat [options] [delay [count]]
delay:間隔顯示;
count:間隔秒鐘; - 顯示結果字段:
procs:進程段
r:處於等待運行的進程的個數;就是cpu上等待運行的任務的隊列長度;是實時的;
b:處於不可中斷睡眠態的進程個數;被阻塞的任務隊列的長度;
memory:內存段
swpd:交換內存的使用總量;
free:空閒的物理內存總量;
buff(緩衝):用於buffer(緩衝)的內存總量;
cache(緩存):用戶cache(緩存)的內存總量;都是爲了銜接兩系統間速度不匹配而設定的;
swap:交換分區段
si:swap in,數據進入swap中的數據速率(kb/s),換進;是速率,每秒鐘多少,是平均值;
so:swap out,數據離開swap的數據速率(kb/s),換出;
判斷物理內存很少時:交換內存使用、
io:塊級IO
bi:塊級別的,從塊設備讀入數據到系統(內存)的速率(kb/s);
bo:保存數據至塊設備的速率(kb/s);
system:系統段
in:interrupts,中斷產生的速率(每秒鐘多少次);
尤其網絡服務服務器,任何數據報文到達當前主機時都會發生(硬件級別)硬中斷;
任何磁盤IO也都會發生中斷;
應用程序運行時,從用戶模式轉爲內核模式時(發生系統調用),也會發生軟中斷;
cs:context switch,進程上下文切換的速率;
cpu:cpu段
us:user space,用戶空間程序佔用cpu百分比;
sy:system,系統調用:
id:idle,空閒;
wa:wait,等待;
st:stolen,被虛擬化技術偷走的;
4、使用until和while分別實現192.168.0.0/24
- while
- until