網路工程師必備:如何排查網路故障?

 晚云浅 晴间多云

網路故障排查是網路工程師的核心技能。

透過端對端測試確認故障範圍,使用ping、traceroute、nslookup等基本指令檢查連結性和解析;檢查交換器、路由器和伺服器狀態;利用Wireshark等網路分析工具和Nagios、Zabbix等監控工具深入分析。

網路故障可能由多種原因引起,如硬體故障、配置錯誤、網路擁塞等。故障會導致網路效能下降、服務中斷,影響使用者體驗和業務運作。
一、故障排查步驟

1. 確認故障範圍(端對端測試)端對端測試:從用戶終端到伺服器進行測試,確認故障發生的具體位置。分段排查:將網路分段,逐步縮小故障範圍。

2. 使用基本指令ping: 測試網路連通性,檢查目標設備是否可達。

例如:ping 192.168.1.1traceroute: 追蹤封包從來源到目標的路徑,顯示每個跳點的延遲。

例如:traceroute 192.168.1.1nslookup: 查詢DNS記錄,檢查網域解析是否正常。

例如:nslookup example.com3. 檢查設備狀態交換器:檢查交換器的介面狀態、錯誤計數、VLAN配置等。

指令:show interfaces、show vlan路由器:檢查路由表、介面狀態、路由協定配置等。

指令:show ip route、show interfaces伺服器:檢查伺服器的網路設定、服務狀態、日誌檔案等。指令:ifconfig、netstat、systemctl status <service>

二、故障排查工具

1. 網路分析工具(如Wireshark)Wireshark:擷取和分析網路封包,幫助診斷網路問題。… Continue reading

News Leave a comment

什麼是乙太網路?

汽车以太网技术研究实验室

1 到底什麼是以太網,這是一種協定嗎乙太網路通常指的是一種電腦網路技術,用於在區域網路(LAN)中傳輸資料。

它最初由英特爾、DEC(Digital Equipment Corporation)和Xerox等公司在1970年代末和1980年代初共同開發,並於1980年代晚期和1990年代初期廣泛應用於企業和家庭網絡中。乙太網路技術本身包含了實體層(Physical Layer)和資料鏈結層(Data Link Layer)的規範,這些規範定義瞭如何在區域網路中傳輸資料幀(Frames)。它通常使用雙絞線、光纖或同軸電纜等物理介質進行資料傳輸。此外,乙太網路還涉及一系列的協定和標準,如IEEE 802.3系列標準,它規定了乙太網路的工作原理、資料傳輸速率、幀格式等細節。 IEEE 802.3標準定義了多種速率的以太網,從最初的10 Mbps(乙太網路)到現代的千兆乙太網路(Gigabit Ethernet)和萬兆乙太網路(10 Gigabit Ethernet)等。因此,可以說乙太網路既是一種電腦網路技術,也是一系列協定和標準的總稱。它是連接電腦、伺服器、網路設備和其他網路終端的基礎網路技術之一,廣泛用於各種規模的網路環境。

2 兩個網路卡之間的雙絞線裡傳輸的是什麼訊號雙絞線用於連接網路設備,例如電腦、路由器、交換器等,以進行資料通訊。在乙太網路中,雙絞線通常用於傳輸數位訊號,而這些數位訊號表示二進位資料。具體來說,雙絞線傳輸的是差分訊號。在乙太網路中,通常使用差分訊號傳輸,即在一對雙絞線中,一個導線攜帶正電平訊號,而另一個導線攜帶負電平訊號。這種方式有助於減少電磁幹擾對訊號的影響,​​並提高訊號的穩定性和可靠性。在雙絞線中傳輸的訊號會根據特定的編碼規則(如曼徹斯特編碼、4B/5B編碼等)進行調製。這些編碼方式有助於實現時鐘恢復、減少誤碼率等目標,以確保資料的準確傳輸。整體而言,透過雙絞線傳輸的是經過數位編碼的二進位數據,這樣的數位訊號在乙太網路中用來表示各種類型的信息,包括數據、控制資訊等。

3 乙太網路屬於類比通訊還是數位通訊乙太網路屬於數位通訊。在數位通訊中,數據以離散的數位形式進行傳輸和處理,而不是以連續的類比訊號形式。在乙太網路中,資料被轉換成數位訊號,透過網路中的電纜傳輸,並在目標裝置上再次解碼為資料。數位通訊具有許多優勢,包括抗干擾能力強、易於處理和複製、數據準確性高等。乙太網路作為一種數位通訊技術,能夠有效率地傳輸數據,並且適用於各種網路應用場景。

4 乙太網路屬於串列通訊還是平行通訊乙太網路屬於串列通訊。在乙太網路中,資料透過一條電纜(例如雙絞線)以串列的方式傳輸。這是與並行通訊不同的。在串列通訊中,資料位元會依照時間順序一個接一個地傳輸,而在平行通訊中,多個位元同時傳輸。在乙太網路中,常見的實體層標準包括10BASE-T、100BASE-TX和1000BASE-T,它們都使用雙絞線來傳輸資料。在這些標準中,資料是按照一定的時間序列以串列方式在電纜上傳送的。總的來說,乙太網路採用了串列通訊的方式,這有助於降低電纜的成本、提高傳輸距離,並且更好地適應了高速資料傳輸的要求。

5 平行通訊網路的實際案例包括:平行匯流排:並行匯流排是一種將多個處理器或裝置連接在一起的通訊網絡,它使用並行通訊技術,實現了高速、高效的資料傳輸。例如,Intel的Pentium處理器中的前端匯流排(FSB)就是一種平行匯流排。平行記憶體網路:平行記憶體網路是一種基於平行通訊的記憶體網絡,它將多個儲存單元連接在一起,實現了高速、高效的資料儲存和存取。例如,RAID(Redundant Array of Independent Disks)技術就是一種平行記憶體網路的應用。平行運算網路:平行運算網路是一種基於平行通訊的多處理器系統,它將多個處理單元連接在一起,實現了平行運算和處理。例如,叢集運算、網格運算和雲端運算等都是平行運算網路的應用。平行通訊協定:平行通訊協定是一種基於平行通訊的通訊協議,它可以在多個通訊鏈路上同時傳輸數據,提高了資料傳輸的速度和效率。例如,InfiniBand、PCI Express等都是平行通訊協定的應用。總之,平行通訊網路在許多領域都有應用,它可以提高資料傳輸的速度和效率,是實現高速、高效通訊的重要手段之一。

6 乙太網路屬於單工或半雙工或全雙工乙太網路可以支援多種通訊模式,包括單工(Simplex)、半雙工(Half-Duplex)和全雙工(Full-Duplex)。具體的通訊模式取決於所使用的乙太網路標準和設備。單工(Simplex):單工通訊是指資料只能在一個方向上傳輸。在乙太網路中,單工通訊並不常見,因為它限制了通訊的靈活性。單工通訊通常用於一方向的廣播或接收,而不是雙向的互動。半雙工(Half-Duplex):半雙工通訊允許資料在兩個方向上傳輸,但不同的方向不能同時進行。在半雙工通訊中,設備需要在發送和接收之間切換。傳統的乙太網路(如10BASE-T和100BASE-TX)通常採用半雙工通訊。全雙工(Full-Duplex):全雙工通訊允許資料在兩個方向上同時傳輸,即設備可以同時發送和接收數據,而不需要切換。現代的乙太網路標準,如千兆乙太網路(1000BASE-T)和萬兆乙太網路(10GBASE-T),通常支援全雙工通訊。總體而言,儘管早期的乙太網路採用半雙工通信,但隨著技術的發展,現代乙太網路更傾向於使用全雙工通信,以提高頻寬和效能。然而,具體的通訊模式仍取決於網路設備的能力和配置。

7 乙太網路屬於同步通訊還是非同步通訊1、乙太網路屬於非同步通訊。在非同步通訊中,資料的傳輸不依賴定時時脈訊號。乙太網路中的資料傳輸是基於事件觸發的,而不是透過固定的時鐘來同步發送和接收。在乙太網路中,資料幀被傳送到網路上,接收方根據訊框的起始和結束標記來解析資料。這種方式允許設備在需要時發送和接收數據,而不受固定時脈訊號的限制。因此,乙太網路的傳輸是事件驅動的,這使得網路設備能夠更靈活地適應不同的資料傳輸需求。相較之下,同步通訊需要發送和接收方的時鐘保持同步,以確保資料的準確傳輸。在非同步通訊中,由於沒有嚴格的時鐘同步要求,設備之間的通訊更加靈活,適用於乙太網路這樣的區域網路環境。 2.乙太網路是典型的同步時序邏輯,它的時脈訊號透過曼徹斯特編碼(以前)或4B/5B編碼(現在)編碼到了訊號當中,接收者需要從訊號當中使用鎖相環解出這個時脈訊號,這樣發送方和接收方就有了一個同步的時脈訊號。依靠這個同步的時脈訊號接收方能夠正確讀取發送方發送的資料。實際上幾乎所有的高速數位傳輸協定都是同步時序邏輯。然而,從軟硬體介面的角度來看,乙太網路通訊又是異步的。電腦不會直接透過CPU指令操作目前正在傳送的數據,而是透過一系列緩存,將資料送交到網路卡,或從網路卡讀取資料。資料到來時也是一樣的,網路卡不會在接收到網路封包第一位元組的時候就通知CPU處理,而是將接收到的資料先快取起來,隨時等待CPU或DMA在適當的時候讀取。這種有緩衝區的結構是典型的非同步通訊機制。不過,現在很多電信領域的以太網,已經演化出“同步以太網”,從設備要從線路上恢復時鐘,並將本地鐘鎖定到主設備發來的時鐘頻點上。因此乙太網路既有同步通訊的特點也有非同步通訊的特點,取決於特定的應用場景和情境環境。

8 同步通訊的技術有哪些實際案例同步通訊是指資料的發送和接收在時間上是協調一致的,通訊雙方需要使用相同的時鐘或時序資訊來保持同步。以下是一些同步通訊的技術和實際案例:同步串行通訊:在串行通訊中,資料以位元的形式傳輸,而同步串行通訊使用時脈訊號來同步發送和接收方。 USB(Universal Serial Bus)和PCI Express是一些採用同步串行通訊的實際案例。 USB使用同步幀結構,而PCI Express使用基於包的同步通訊。同步並行通訊:並行通訊中的同步方式涉及同時傳輸多個位元位,並使用時脈訊號來保持同步。一些實際案例包括電腦內部的系統匯流排,例如PCI匯流排和PCI-X匯流排。同步通訊在網路中的應用:在電腦網路中,同步通訊也有一些應用。例如,同步乙太網路(Synchronous Ethernet)使用時脈訊號來協調網路中的各個節點,以提高時脈同步效能。同步通訊在無線通訊中的應用:在無線通訊中,同步通訊也是重要的。例如,LTE(Long-Term Evolution)等無線通訊標準採用同步技術,以確保基地台之間的同步性,進而提高網路效能。同步通訊在音訊視訊傳輸的應用:在音訊視訊傳輸中,同步通訊是至關重要的。例如,透過HDMI(High-Definition Multimedia Interface)傳輸的音訊視訊訊號需要同步,以確保音訊和視訊的一致性。同步通訊在即時系統中的應用:即時系統要求任務在規定的時間內完成,同步通訊在這些系統中是至關重要的。例如,工業自動化中的控制系統需要同步通訊來確保設備協同工作。這些實際案例突顯了同步通訊在不同領域中的廣泛應用,以確保資料傳輸的協調性和一致性。同步通訊有助於提高系統的可靠性和效能。

9 非同步通訊在現實中有哪些實際案例非同步通訊是指資料的發送和接收之間沒有預定的時間關係,通訊雙方使用起始位元和停止位等手段來決定資料的起始和結束。以下是一些非同步通訊在現實中的實際案例:串行通訊中的非同步傳輸:大多數串行通訊協定中採用了非同步傳輸方式。例如,RS-232串列埠通訊就是一種非同步通訊協議,它在資料的起始和結束位置使用起始位元和停止位元來實現同步。電子郵件通訊:電子郵件系統通常採用非同步通訊方式。當使用者發送電子郵件時,它並不是即時傳送到接收者,而是在系統中儲存並等待接收者檢查並拉取。文件傳輸協定(FTP):FTP是一種用於在電腦之間傳輸檔案的協議,它採用非同步通訊方式。用戶可以在任意時間請求上傳或下載文件,而不需要嚴格的時間同步。 Web瀏覽器與伺服器通訊:在網頁瀏覽器與伺服器之間的通訊中,採用了非同步通訊的技術,例如Ajax(Asynchronous JavaScript and XML)。這允許在不刷新整個頁面的情況下異步加載數據,提高用戶體驗。感測器資料擷取:在嵌入式系統和物聯網應用中,感測器通常以非同步方式向中央控制系統發送資料。這允許感測器在需要時主動發送數據,而不需要與中央系統保持嚴格的時間同步。串口通訊設備:許多嵌入式設備和感測器與電腦之間的通訊採用非同步串口通訊。這種通訊方式簡單又靈活,適用於許多嵌入式系統。非即時聊天應用:一些即時通訊應用,尤其是非即時的訊息應用,採用了非同步通訊。訊息在發送者發送後,並不需要立即被接收者接收。這些實際案例展示了非同步通訊在各種應用場景中的廣泛應用。非同步通訊方式的靈活性和簡單性使其成為許多應用中的理想選擇。

10 同步通訊和非同步通訊進行對比,各自有什麼優缺點同步通訊和非同步通訊是兩種不同的資料傳輸方式,它們在效能、複雜性和應用場景等方面存在一些差異。以下是同步通訊和非同步通訊的優缺點對比:同步通訊:優點:高效率:同步通訊的傳輸速率通常較高,因為資料的發送和接收在預定的時間關係內協調一致。即時性:適用於即時性要求較高的應用,如音訊視訊傳輸、即時控制系統等。易於調試:在同步通訊中,由於資料傳輸的時間關係已經確定,因此調試和故障排除相對較容易。缺點:複雜性:同步通訊系統通常需要更複雜的硬體和軟體支持,以確保時鐘同步和資料協調。靈活性差:不夠靈活,對設備和系統的要求較高,難以適應異構系統和設備。成本較高:由於同步通訊需要精密的時鐘同步和硬體支持,因此可能造成較高的成本。非同步通訊:優點:簡單性:非同步通訊相對簡單,不需要精確的時鐘同步,減少了系統的複雜性。靈活性:更靈活,適應性強,可以用來連接異質系統和設備。成本較低:由於不需要複雜的時脈同步和硬體支持,因此成本相對較低。缺點:效率相對較低:由於沒有預定的時間關係,可能導致資料傳輸效率相對較低。不適合即時應用:較不適合即時性要求較高的應用,如即時控制系統、音訊視訊傳輸等。較難調試:非同步通訊系統中,由於資料傳輸的時間關係不確定,調試和故障排除相對較難。在選擇同步通訊或非同步通訊時,需要根據特定的應用場景和要求進行權衡。有些應用更適合採用同步通信,而在其他場景中,非同步通信… Continue reading

News , Leave a comment

如何保障軟體供應鏈安全?

 保密科学技术

近年來,軟體供應鏈安全事件頻發,2024年7月的微軟「藍色畫面」事件進一步凸顯了軟體供應鏈安全的重要性。

軟體供應鏈源頭難以掌握、開源軟體引入的安全風險及軟體供應鏈安全管控制度和措施的不完善已成為軟體供應鏈安全面臨的主要挑戰。

那麼,如何才能更好地保障軟體供應鏈安全呢?

1.建構軟體物料清單,有效辨識軟體供應鏈風險。

需要引導產業用戶和資訊科技企業建立軟體物料清單(SBOM),建立軟體全生命週期的供應鏈管理。同時,可透過廠商自評估與專業技術機構評估結合的方式,定期進行軟體供應鏈安全風險評估工作。

2.建置軟體供應鏈安全公共服務平台,回饋共享軟體供應鏈情報。

應積極推動業者、軟體供應商、網路安全服務機構等協同建置軟體供應鏈安全公共服務平台,持續提升供應鏈安全威脅情報蒐集能力,為軟體供應鏈保障提供警報服務及處置技術支援。

3.建立常態化緊急應變機制,從容應對軟體供應鏈威脅。面向作業系統、資料庫等重點領域,應深入進行風險研判,並積極做好應對預案。

此外,定期組織進行緊急演練,保障突發情況下關鍵資訊系統運作不受影響。

4.加快提升核心技術水平,從源頭掌控軟體供應鏈。努力加速核心技術攻關,盡快完善軟體開發生態建設,力求引領更多技術方向,提升話語權和影響力。

 

【摘自《保密科學技術》2024年2月刊《軟體供應鏈安全能力模型研究》一文,作者: 翟艷芬、袁薇、王鬱】… Continue reading

News , Leave a comment

QUIC協定為什麼要基於UDP協定而不是直接基於IP協定

原創  外太空的金山
QUIC協定選擇基於UDP而不是直接基於IP協定主要有兩個原因:網路路徑上的中間盒支援問題和終端上核心支援問題。
網路路徑上的中間盒支援問題:純IP協定在網路上不好傳播,因為網路中的許多元件(如NAT、防火牆、LB等)都是基於TCP和UDP的。

如果不使用UDP,這些元件就無法辨識或正常運作。因此,為了保持網路的兼容性和功能性,QUIC選擇了基於UDP的實作方式。

終端上核心支援問題:終端設備(尤其是用戶終端)的核心普遍支援UDP,但純IP協定的派發給使用者程序的方式未知。如果使用connectionID來派發,那麼核心需要進行相應的調整。這涉及到作業系統核心的重新設計,無論是微軟還是用戶都不太可能接受這樣的改動。因此,為了減少對現有系統和終端設備的改動需求,QUIC選擇了基於UDP的實作方式。

綜上所述,QUIC協議選擇基於UDP而不是直接基於IP協議,主要是出於對網路相容性、功能保持以及對現有系統和終端設備影響最小的考慮QUIC 協議現在市面上已經有基於UDP 協議實現的可靠傳輸協議的成熟方案了,那就是QUIC 協議,已經應用在了HTTP/3。這次,聊聊 QUIC 是如何實現可靠傳輸的?又是如何解決上面 TCP 協定四個面向的缺陷?

QUIC 是如何實現可靠傳輸的?要基於 UDP 實現的可靠傳輸協議,那麼就要在應用層下功夫,也就是要設計好協議的頭部字段。拿 HTTP/3 舉例子,在 UDP 訊息頭部與 HTTP 訊息之間,共有 3 層頭部:

Packet HeaderPacket Header 首次建立連線時和日常傳輸資料時所使用的 Header 是不同的

News Leave a comment

D-UN-DY-23:Dell Unity Deploy 2023 Exam

D-UN-DY-23:Dell Unity Deploy 2023 Exam,統一部署

可用語言:英語,法語,日語
Dell Unity Deploy 2023 Certification Description
認證概覽
此認證有利於任何需要證明其能力的專業人士
部署 Dell Unity、Dell Unity XT 和 Dell Unity VSA 系統。認證要求
要成功完成此認證,候選人必須:
1.透過實際操作產品擁有足夠的知識庫/技能經驗和/或接受推薦的訓練。
2. 通過 Dell Unity Deploy 2023 考試
注意:這些詳細資訊反映了截至 2023 年 2 月 6 日的認證要求。
經過驗證的專業計劃定期更新認證以反映技術貨幣和相關性。

請查看經過驗證的專業網站定期了解最新資訊。

考試概述
該考試評估在生產中管理 Dell Unity 儲存系統所需的知識和技能
根據業務需求提供環境和配置。這也可能包括配置任務
與 Dell Unity 系統的持續管理和一些基本整合主題保持一致。
產品
本次考試可能涉及的產品包括但不限於:
• 戴爾Unity
• 戴爾Unity XT
• Dell Unity VSA
考試主題
本次考試可能涵蓋的主題包括:
Dell Unity 平台概念、功能與架構… Continue reading

News Leave a comment

什麼是MicroPython?和Python的差別在哪裡?

MicroPython 是一種針對微控制器和嵌入式系統最佳化的 Python 3 語言實作。它由澳洲物理學家 Damian George 創建,旨在提供一種輕量級的 Python 版本,以便在資源有限的環境中運作。與傳統的 Python(通常指 CPython)相比,MicroPython 在記憶體管理、庫支援和功能上有顯著不同。
MicroPython 的特點
輕量級:MicroPython 經過精簡,包含了 Python 標準庫中的一小部分,並針對微控制器進行了優化,使其能夠在內存和處理能力有限的設備上運行14。
手動內存管理:與 CPython 的自動垃圾回收不同,MicroPython 需要用戶手動管理內存,這意味著開發者需要更仔細地分配和釋放內存12。
互動式開發:MicroPython 支援 REPL(Read-Eval-Print Loop)模式,讓開發者在命令列中輸入程式碼並即時查看結果,這對於硬體程式設計非常有用

MicroPython 与 Python 的主要区别

特性
MicroPython
Python (CPython)

目标平台
微控制器和嵌入式系统
通用计算机(桌面、服务器等)

库支持
仅支持部分标准库
拥有丰富的第三方库生态系统

内存管理
手动内存管理

News , Leave a comment

現如今,到底什麼技術堆疊最流行,我簡直不敢相信(全球調查)

 58沈剑 架构师之路

技術人,都非常關注科技流行趨勢。
那麼當下,全球什麼技術棧,什麼研發工具最流行呢? stackoverflow在23年底做了一個全球調查,涵蓋程式語言,資料庫,研發工具,IDE,AI輔助工具…. 等多方面。
讓我們一起看看:我們是否在潮頭?中外又有什麼差異,值得我們反思借鏡的呢?
第一項:開發語言(多選)

各種語言的使用場景有所不同,抽取後端開發的常用語言:Python,45.32%Java,30.49%
C#,29.16%
C++,20.21%
PHP,19.03%
C,16.66%go,14.32%

而大家問自己的體感,是這個狀況嗎?為什麼國外C#用很多,而go相對較少?而國內正好反過來呢?

第二項:数据庫(多選)

各種資料庫的使用場景有所不同(SQLite,Redis,ES),抽取後端固化儲存的資料庫:

PostgreSQL:49.09%

MySQL:40.59%

SQL-Server:27.34%

MongoDB:25.66%

MariaDB:17.69%

Dynamodb: 10.31%Oracle:10.06%… Continue reading

News , Leave a comment

測試開發和軟體測試的差別?

 程大棉

什麼是軟體測試?
軟體測試就是在特定條件下對程式進行操作,在程式中需尋找 Bug 的過程,確保程式實現功能符合產品需求,程式品質符合準出標準。
軟體測試招募要求:
職位說明:
1、電腦、資訊科技等相關專業專科及以上學歷;
2、可熟練編寫linux下shell測試腳本;
3.熟練使用Linux作業系統,熟悉linux系統下常用的效能及壓力測試程序;
4、能夠完成伺服器的日常管理與維護工作;
5、具備軟體測試的基本思想,能夠嚴謹的分析設計測試用例;
6、良好的溝通能力,有嵌入式軟體測試經驗者優先.

什麼是測試開發?
測試開發仍屬於測試,分為兩類:一類是業務驅動型的測試開發,負責業務的測試工作,同時也需要深入業務,挖掘業務過程中各環節的品質的弱點,通過流程改造,開發測試工具等手段來提升自己的工作效率。工作中業務測試比例和工具開發比例基本上各50%,現在大廠的測試開發多為此類。一類是開發平台框架的測試開發,這類測試開發沒有業務測試工作,專職開發測試平台、測試框架供其他測試同學使用,開發的程式主要的使用者是測試。
測驗開發招募要求:
職位描述
1.5年以上網路及傳統產業的測試開發經驗,對軟體品質保障有系統化的思考與經驗。能夠面對
複雜情況建立體系化的軟體品質控制的策略和模型,並且有大型專案成功實踐的經驗;
2.具備業務或測試技術(自動化、效能、安全、使用者體驗、穩定性等)某方面的專長,具有一定的
業務建模能力或測試技術預研、選用、設計開發、統一規劃的能力。
3.具備抽象提煉測試技術的共通性問題,主導業務線相關領域的測試系統建設,持續發現與解決重大
系統、業務問題
4.優秀的程式碼實作能力,精通C/C++,JAVA,Python等程式語言之一,並有實際專案程式碼經驗;
5.邏輯能力強、思維活躍,接受新事物能力強;責任感強,積極主動,善於溝通,良好的團隊合作
能力;良好英文溝通能力;
6.大型網路名企經驗優先,數據及演算法測試經驗優先。

測試開發和軟體測試的程式設計技能要求?

普通的軟體測試人員的程式設計技能不是強要求,能看懂程式碼即可。測試開發的程式設計技能是強要求,必須具備一定的開發能力,能開發自動化測試工具,或二次開發開源專案。

&nbsp… Continue reading

News , Leave a comment
在线客服系统