【linux】網絡基礎(1)

文章目錄

  • 網絡基本概念
    • 網絡的定義
    • 網絡的類型
      • 局域網(LAN)
      • 廣域網(WAN)
  • 網絡協議
  • OSI七層模型
  • TCP/IP模型
    • TCP/IP模型的結構
  • 網絡傳輸的基本流程
    • 計算機與計算機之間的通信
    • 計算機的信息處理
    • 封裝報頭

網絡基本概念

網絡的定義

1.網絡是指多個計算機系統通過通信鏈路連接在一起,以實現資源共享和數據交換的系統。
2.網絡可以是有線的或無線的。

網絡的類型

局域網(LAN)

覆蓋小范圍區域,如辦公室或家庭。
在這里插入圖片描述

廣域網(WAN)

覆蓋較大范圍的網絡,如城市、國家或全球范圍的網絡。
在這里插入圖片描述

網絡協議

計算機之間的傳輸媒介是光信號和電信號. 通過 “頻率” 和 “強弱” 來表示 0 和 1 這樣的信息. 要想傳遞各種不同的信息, 就需要約定好雙方的數據格式

對于各種計算機的生產商不同,各種計算機裝載的操作系統也會不同,這就導致計算機A傳輸的‘0’,‘1’信號,相對于計算機B所設定的‘0’,‘1’信號會有不同的表現,為了解決這個問題,就必須制作一個共同的標準,A.B等等都來遵守,就有了網絡協議

OSI七層模型

分層名稱功能
物理層負責物理媒體上的比特傳輸,如電纜、光纖。定義硬件設備和傳輸介質的規范。
數據鏈路層負責節點間的幀傳輸和錯誤檢測。包括MAC地址的處理。
網絡層負責數據包的路由和轉發。使用IP地址進行尋址。
傳輸層提供端到端的通信服務。包括TCP和UDP協議。
會話層負責建立、管理和終止會話。管理數據交換的對話控制。
表示層負責數據的格式化、加密和解密。處理數據的語法和語義。
應用層提供網絡應用服務。包括HTTP、FTP、SMTP等協議。

在這里插入圖片描述

TCP/IP模型

TCP/IP模型的結構

TCP/IP模型是互聯網的標準協議模型。
分為四層:網絡接口層、互聯網層、傳輸層和應用層。

分層名稱功能
應用層: 負責應用程序間溝通,如簡單電子郵件傳輸(SMTP)、文件傳輸協議(FTP)、網絡遠程訪問協議(Telnet)等. 我們的網絡編程主要就是針對應用層.
傳輸層負責兩臺主機之間的數據傳輸. 如傳輸控制協議 (TCP), 能夠確保數據可靠的從源主機發送到目標主機
網絡層負責地址管理和路由選擇. 例如在IP協議中, 通過IP地址來標識一臺主機, 并通過路由表的方式規劃出兩臺主機之間的數據傳輸的線路(路由).
數據鏈路層負責將數據幀發送到物理網絡中,并接收從物理網絡傳來的數據幀。

在這里插入圖片描述

網絡傳輸的基本流程

計算機與計算機之間的通信

在這里插入圖片描述
例如上圖,倘若主機A要給主機D發送消息,在這同一局域網內,主機B和主機C也可以收到主機A發送的消息,但是這兩個主機經過信息處理發現并不是給自己的消息,會直接丟棄此消息,而主機D處理消息后發現是發給自己的,則會進行數據處理等一些操作。

計算機的信息處理

在這里插入圖片描述

根據tcp/ip模型結構,發送信息是自上而下的對數據進行封裝報頭,而接受消息則是自下而上的對信息的報頭進行解包分用

封裝報頭

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/37215.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/37215.shtml
英文地址,請注明出處:http://en.pswp.cn/web/37215.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

專題一: Spring生態初探

咱們先從整體脈絡上看下Spring有哪些模塊,重要的概念有個直觀印象。 從Spring框架的整體架構和組成對整體框架有個認知。 Spring框架基礎概念 Spring基礎 - Spring和Spring框架組成 上圖是從官網4.2.x獲取的原圖,目前我們使用最廣法的版本應該都是5.x&am…

GitHub每日最火火火項目(6.30)

項目名稱:modelscope / DiffSynth - Studio 項目介紹:該項目致力于讓用戶體驗擴散模型的神奇魅力。擴散模型是一種具有廣泛應用前景的技術,在圖像生成、音頻處理等領域展現出了強大的能力。通過DiffSynth - Studio,用戶可以深入探…

Arrays.asList 和 java.util.ArrayList 區別

理解 Java 中的 Arrays.asList 和 java.util.ArrayList 的區別 在 Java 編程中,Arrays.asList 方法和 java.util.ArrayList 是兩種常用的處理列表數據的方式。雖然它們在功能上看起來相似,但在內部實現和使用上有著本質的不同。本文將探討這兩種方式的區…

一區算法MPA|海洋捕食者算法原理及其代碼實現(Matlab/Python))

Matlab/Python: 本文KAU將介紹一個2020年發表在1區期刊ESWA上的優化算法——海洋捕食者算法 (Marine Predators Algorithm,MPA)[1] 該算法由Faramarzi等于2020年提出,其靈感來源于海洋捕食者之間不同的覓食策略、最佳相遇概率策略、海洋記…

【Linux】IO多路復用——select,poll,epoll的概念和使用,三種模型的特點和優缺點,epoll的工作模式

文章目錄 Linux多路復用1. select1.1 select的概念1.2 select的函數使用1.3 select的優缺點 2. poll2.1 poll的概念2.2 poll的函數使用2.3 poll的優缺點 3. epoll3.1 epoll的概念3.2 epoll的函數使用3.3 epoll的優點3.4 epoll工作模式 Linux多路復用 IO多路復用是一種操作系統的…

MCU復位時GPIO是什么狀態?

大家一定遇到過上電或者復位時外部的MOS電路或者芯片使能信號意外開啟,至此有經驗的工程師就會經常關心一個問題,MCU復位時GPIO是什么狀態?什么電路需要外部加上下拉? MCU從上電到啟動,實際可分為復位前和復位后、初始…

【WPF】Windows系統桌面應用程序編程開發新手入門-打造自己的小工具

電腦Windows系統上的桌面程序通常是用Visual Studio 開發工具編寫出來的,有兩種開發方式供選擇,一種是WindowForm,簡稱WinForm,另一種是Windows Presentation Foundation,簡稱WPF,這里將學習WPF項目。 文章…

大物3錯題整理

平衡位置:在O點上的位置 相位: 當N很大的時候,wxwywz。因此,平均平動動能除以3,就是能量均分定理。 W F在x上的積分 Π時無單位 180,就是單位 1rad,rad就是單位 左手定則、右手定則、安培定…

C++模板類與繼承

1)模板類繼承普通類(常見)。 2)普通類繼承模板類的實例化版本。 3)普通類繼承模板類。(常見) 4)模板類繼承模板類。 5)模板類繼承模板參數給出的基類(不能是模板類)。 示…

【抽代復習筆記】24-群(十八):循環群的兩道例題

例1:證明: (1)三次交錯群A3是循環群,它與(Z3,)同構,其中Z3 {[0],[1],[2]}; (2)G {1,i,-1,-i},G上的代數運算是數的乘法,則G是一個循環群&…

如何解決三菱軟件提示 起動MELSOFT Mediative Server失敗

前言: 注意,這篇文章僅針對如何解決 起動MELSOFT Mediative Server失敗 的問題。對于其他相關的問題,請搜索其他相應的解決辦法。 本人是在重裝三菱GX Works軟件時遇到此問題的。后來搜索發現無人能妥善的關閉這個提示。因此本文介紹如何關…

【Web3項目案例】Ethers.js極簡入門+實戰案例:實現ERC20協議代幣查詢、交易

蘇澤 大家好 這里是蘇澤 一個鐘愛區塊鏈技術的后端開發者 本篇專欄 ←持續記錄本人自學智能合約學習筆記和經驗總結 如果喜歡拜托三連支持~ 目錄 簡介 前景科普-ERC20 Ethers極簡入門教程:HelloVitalik(非小白可跳) 教程概覽 開發工具 V…

魔行觀察-烤匠麻辣烤魚-開關店監測-時間段:2011年1月 至 2024年6月

今日監測對象:烤匠麻辣烤魚,監測時間段:2011年1月 至 2024年6月 本文用到數據源獲取地址 魔行觀察http://www.wmomo.com/ 品牌介紹: 2013年,第一家烤匠在成都藍色加勒比廣場開業,隨后幾年成都國金中心店…

超詳細的tomcat安裝以及簡略項目的部署

一、安裝包 安裝路徑: 鏈接:https://pan.baidu.com/s/1JzPQQ2zUdnXi_FaTTG0pvg?pwdriht 提取碼:riht 安裝完之后我們打開,可看見以下目錄結構 二、環境變量配置 首先打開我們電腦的高級環境變量配置 我們先配置一個系統變量…

Variables Reference for vscode

Predefined variables Visual Studio Code 支持在調試、任務配置文件以及一些特定的設置中使用變量替換。這些變量可以使用 ${variableName} 語法在 launch.json 和 tasks.json 文件的某些鍵和值字符串中使用。 Predefined variables Visual Studio Code 支持以下預定義變量…

Zookeeper:Zookeeper JavaAPI操作與分布式鎖

文章目錄 一、Zookeeper JavaAPI操作1、Curator介紹2、創建、查詢、修改、刪除節點3、Watch事件監聽 二、Zookeeper分布式鎖原理 一、Zookeeper JavaAPI操作 1、Curator介紹 Curator是Apache Zookeeper的Java客戶端。常見的Zookeeper Java API: 原生Java API。ZkC…

天氣網站爬蟲及可視化

摘要:隨著互聯網的快速發展,人們對天氣信息的需求也越來越高。本論文基于Python語言,設計并實現了一個天氣網站爬蟲及可視化系統。該系統通過網絡爬蟲技術從多個天氣網站上獲取實時的天氣數據,并將數據進行清洗和存儲。同時&#…

數據倉庫面試題(二)

1. 簡述星型模型和雪花模型的區別?應用場景 ? 星型模型(Star Schema)和雪花模型(Snowflake Schema)是數據倉庫中常用的兩種維度建模方法,它們在數據組織和設計上有所不同。 星型模型&#xff…

【簡易版tinySTL】 哈希表與移動語義

基本概念 哈希表(HashTable)是一個重要的底層數據結構, 無序關聯容器包括unordered_set, unordered_map內部都是基于哈希表實現。 哈希表是一種通過哈希函數將鍵映射到索引的數據結構,存儲在內存空間中。哈希函數負責將任意大小的輸入映射到…

【C++】內存分區

目錄 內存分區代碼運行前后區別各分區詳細解釋C內存申請和釋放 內存分區 不同的操作系統對程序內存的管理和劃分會有所不同。 此處是C內存區域劃分主要是針對通用的情況,并不限定在某個特定操作系統上 一般分為4個區(有時把全局區拆分成數據區未初始化…