iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 27
1
自我挑戰組

Linux學習系列 第 27

Linux ping指令、AWS EC2 Hadoop、SAA-C02

截圖來自教學
Ping 指令用法教學:檢查網路連線狀態與品質

ping
發送 ICMP ECHO_REQUEST的封包,檢查自己與特定設備之間的網路是否暢通,並同時測量網路連線的來回通訊延遲時間(round-trip delay time),通常如果網路出問題時,會使用 ping 這個指令來做初步的檢查。

先來了解來回通訊延遲時間(round-trip delay time)

所以要先了解什麼是網路延遲
網路的延遲(Latency)與頻寬(Bandwidth)是什麼?

會影響網路速度的兩個重要因素就是延遲(Latency)與頻寬(Bandwidth):

延遲(Latency):一個封包從來源端送出後,到目的端接收到這個封包,中間所花的時間。單位ms(毫秒,千分之一秒)

頻寬(Bandwidth):傳輸媒介的最大吞吐量(throughput)。速率單位Mbps。
bps代表bit per second(位元/秒) ,M代表百萬bit,所以Mbps是百萬位元/秒

網路延遲(Latency)的組成元素:
在網路上有許多路由器專門負責遞送網路封包,這樣的路由器通常會有下面這些會造成網路延遲的因素:

propagation delay:封包在網路線上傳輸所花費的時間,與網路線上電子訊號跑的速度有關,這個時間就是距離除以訊號傳送速度所得到的數值。假設傳送距離為d,傳輸的速率為s,那麼propagation delay就是 d/s。

transmission delay:網路卡將資料傳送到網路線上(或從網路線上接收)所花的時間,與網路設備的傳送速度有關(如高速乙太網路傳送速度為100Mbps)。假設頻寬為L(bits),數據傳輸速率為 R(bits/sec),這樣產生的transmission delay 就是L/R。

nodal processing delay:路由器處理封包表頭(packet header)、檢查位元資料錯誤與尋找配送路徑等所花費的時間。

queuing delay:路由器因為某些因素無法立刻將封包傳送到網路上,造成封包暫存在佇列(queue)中等待的時間。

大概了解這四種延遲後,那什麼是來回通訊延遲時間(round-trip delay time)?
簡寫:RTT。就是不只是發送端到接收端的網路延遲,也有接收端到發送端的網路延遲,也就是大約 2 * Propagation delay,為甚麼只剩Propagation delay?,因為其他的delay都因為比Propagation delay的時間小很多,所以都被當成0而忽略不記。

有關為什麼RTT大概等於2 * Propagation delay:
Computer Networks: Round Trip Time

接著了解什麼是ICMP
Internet Control Message Protocol (ICMP) | ICMP protocol tutorial | part 1

網際網路控制訊息協定(英語:Internet Control Message Protocol,縮寫:ICMP)
簡單來講應該就是ip(Internet Protocol,OSI第三層)是只有管封包交換,也就是記錄來源和目的的地址,所以不保證任何封包均能送達目的地,也不保證所有封包均按照正確的順序無重複地到達,所以需要TCP(Transmission Control Protocol,OSI第四層),那如果ip封包有錯誤時,使用者要知道ip封包哪裡錯誤,就需要ICMP(OSI第三層)

這邊舉例子:找不到目的地的封包的話,要怎麼丟棄? 或 time-to-live變成0,這些都是ICMP的事
https://ithelp.ithome.com.tw/upload/images/20200813/201119940sWwpuDq8b.png

ICMP有兩部分
1 error-reporting messages:回報錯誤
2 query messages:檢查狀態
ICMP的messages都會傳給sender,而不會給reciver:
https://ithelp.ithome.com.tw/upload/images/20181109/20111994l9M1Zya4SF.png

ICMP的錯誤和檢查類型,由type的值分類:
https://ithelp.ithome.com.tw/upload/images/20200813/20111994fJAJCOnXtp.png

如圖這就是ICMP的header,ICMP的header是從ip的第160位元開始,所以應該就是ip的Options(其他參數)和Padding(補齊項目)的部分,對照前面的表格,像是如果type是3那就是Destination unreachable
https://ithelp.ithome.com.tw/upload/images/20200813/20111994tTCUyQRCGi.png

接著影片就詳細介紹error-reporting messages和query messages的詳細項目,這邊就先跳過。

接下來練習ping指令:
5.2.1 兩部主機兩點溝通: ping

Ping + 網址
離開ping-->ctrl+c
https://ithelp.ithome.com.tw/upload/images/20181109/2011199491vlp4swac.png

TTL可以判斷作業系統
Linux 64
Windows 128
Unix 255
像這邊從虛擬機器ping windows 的ttl就是127,因為從windows要發封包給虛擬機器要經過一個路由器,所以ttl是128-1=127,可以更改ttl的預設值,如果不想這麼簡單就讓別人判斷電腦的作業系統
https://ithelp.ithome.com.tw/upload/images/20181109/201119948NrgP2zqiv.png

可以測試mtu,先修改mtu,然後ping限定的封包大小要是mtu-28才能通過路由器,28是因為IP封包表頭 (不含 options) 就已經佔用了20bytes,再加上ICMP的表頭有8bytes
https://ithelp.ithome.com.tw/upload/images/20181109/20111994rhyLRrRibi.png
https://ithelp.ithome.com.tw/upload/images/20181109/20111994WRih0PtfNH.png

AWS EC2 Hadoop

照著教學建環境:
Part 1 - Hadoop on Amazon EC2 + SSH
Part 2 - Hadoop on Amazon EC2 + Java JDK and Hadoop Single Node Clusters on 4 Nodes
Part 3 - Hadoop on Amazon EC2 Hadoop Multi Node Clusters on 4 Nodes
BDAT1002-2017B - Data Systems Architecture
整理:
1 hadoop下載點:
Index of /hadoop/common

要注意版本問題,要改成有的版本號像是2.9.2:

wget http://apache.forsale.plus/hadoop/common/hadoop-2.9.2/hadoop-2.9.2.tar.gz -P ~/Downloads/Hadoop

SAA-C02

1 acloud.guru

2 jayendrapatil

3 AWS Solution Architect Associate - Meet Your Instructor Andrew Brown

4 遇到不太懂的,google關鍵字到AWS官網看常見問答集

5 acloud.guru和jayendrapatil 題目 感覺 有比考試的難。 所以 能夠了解 這些 模擬題,應該就沒問題了。

6 acloud.guru裡的SAA-C02的影片要看,SAA-C02的題目會考。

7 如果觀念都看得懂,就不太需要實際操作AWS。


上一篇
AWS ELB 、 CloudFront 、 Route 53 、 SNS 、 Lambda、CloudFormation、SQS
下一篇
Linux Questions
系列文
Linux學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言