網絡3--網絡通信的深度理解(端口號)

網絡通信的進一步理解

兩個主機間進行通信,其實是兩個主機間的軟件進行通信,軟件也就是可執行程序,運行時就是進程,所以也為進程間通信。

14e72074c4b443808ce77498c3d3003c.png

進程間通信需要共享資源,這里兩個主機間的共享資源是網絡,利用的是網絡協議棧,實現一個主機中的軟件(客戶端)去訪問另一個主機的軟件(服務端)

端口號

?

IP地址:表示唯一的一臺主機,

端口號:表示一個主機進程的唯一性的

ip : port 標識全網唯一的進程

?

e5cc2ebc4a454d39aae0507a9f21b126.png

?我們客戶端,如何知道服務器的端口號??

這是我們自己設計過,眾所周知,約定俗稱的,當我們想要訪問相應的服務器,我們的客戶端必須知道服務端的端口號,這是內置的,我們不知道而已

傳輸層是怎樣在一群進程中找到屬于自己的呢?

7c34b143a1a74bdfb3a630bcd636f91c.png

傳輸層有一個哈希表,里面存的是進程pcb, (綁定就是將進程自己將自己的pcb放到哈希表中),當傳輸層接收到報文時,里面存有端口號,在傳輸層的哈希表中進行哈希運算,(每一個進程都有自己pcb,pcb中存有自己的端口號)找到對應的端口號,再找到相應的進程

進程pid與端口號

057418af1f5d49c290599df0f818fbc8.png

當操作系統端換掉后保證我們網絡端不會受影響。

即是保證其耦合度低,進程pid和端口號不會相互影響

?

?

?

?

?

?

?

?

?

?

?

?

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

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

相關文章

Visual Studio生成C++的DLL文件(最簡單版)

前言 當你在使用C編寫一些可重用的代碼時,將其打包成一個動態鏈接庫(DLL)可以使其更容易地被其他項目或者程序調用和使用。Visual Studio提供了一種簡單的方式來生成C的DLL文件。下面是一個關于如何在Visual Studio中生成C的DLL文件的簡單教…

【 第一性原理計算方法及應用】

第一性原理計算方法及應用述

對接極速行情丨DolphinDB MDL 行情插件使用指南

通聯數據依托于金融大數據,結合人工智能技術為投資者提供個性化、智能化、專業化投資服務, MDL 則是通聯數據提供的高頻行情數據服務。DolphinDB 提供了能夠從 MDL 服務器獲取高頻行情數據的 DolphinDB MDL 插件,幫助用戶方便地通過 DolphinD…

算法day06

第一題 1658. 將 x 減到 0 的最小操作數 如題上述: 本題原來的意思給定一個數字x,從數組的左邊或者右邊 使用x減去數組中的數字,直到減去最后一個數字為0時,返回最小的操作次數;如果最終減去的數組中的數字之后不能得…

HR系統組合漏洞挖掘過程

前言 某天在項目中遇到了一個奇怪的人才管理系統,通過FOFA(會員可在社區獲取)進行了一番搜索,發現了該系統在互聯網上的使用情況相當廣泛。于是,我開始了后續的審計過程。 在搜索過程中,我偶然間找到了一份…

「TypeScript系列」TypeScript 基礎類型

文章目錄 一、TypeScript 基礎類型1. **Number**: 用于表示數字。可以是整數或浮點數。2. **String**: 用于表示文本類型的數據。3. **Boolean**: 表示邏輯值:true 或 false。4. **Array**: 表示一組值。TypeScript 使用泛型(generics)來定義…

Mysql存儲引擎對比

存儲引擎InnoDBMyISAM文件存儲結構.frm文件:存放表結構的定義信息 .ibd文件或.ibdata文件:存放InnoDB數據(數據和索引)【獨享表空間】每個表一個.ibd文件【共享表空間】所有表使用一個.ibdata文件- .frm文件:存放表結構…

Nginx靜態壓縮和代碼壓縮,提高訪問速度!

一、概述 基于目前大部分的應用,都使用了前后端分離的框架,vue的前端應用,也是十分的流行。不知道大家有沒有遇到這樣的問題: 隨著前端框架的頁面,功能開發不斷的迭代;安裝的依賴,不斷的增多&a…

機器學習【簡述】

什么是機器學習 機器學習研究的是計算機怎么模擬人類的學習行為,以獲取的知識或技能,并重新組織已有的知識結構使之不斷改善自身。簡單一點說,就是計算機從數據中學習初規律和模式,以應用在新數據上做預測的任務。近年來互聯網數…

無人機的用途

無人機,即無人駕駛飛機,其用途廣泛且多樣,涉及到多個領域。 在農業領域,無人機通過搭載各種傳感器和相機,可以對農田進行空中巡視,收集農田數據,如土壤含水量、氣溫、濕度等,以及植…

詳細的性能分析和調優的示例過程:

當面臨數據庫查詢性能下降的問題時,以下是一個詳細的性能分析和調優的示例過程: ### 1. 監控和識別問題 假設你負責維護一個電子商務網站數據庫,最近用戶反映搜索功能響應慢。你立即使用數據庫監控工具(如Prometheus、Grafana&am…

Ardupilot開源飛控工程項目編譯回顧

Ardupilot開源飛控工程項目編譯回顧 1. 源由2. 工程編譯3. 命令列表3.1 工作環境設置3.2 獲取工程代碼3.3 建立編譯環境3.4 編譯工程代碼3.5 保存編譯結果3.6 清理編譯結果3.7 編譯設備目標 4. 補充 1. 源由 最近,有點莫名的連續遇到了2次Ardupilot編譯報錯。百思不…

Quartz.Net(2)——NetCore3.1整合Quartz.Net

在上篇文章中Quartz.Net(1) 已經介紹了Quartz.Net的基本運用&#xff0c;該篇文章中將主要介紹NetCore3.1如何整合Quartz.Net&#xff0c;在后臺運行定時job&#xff0c;并運用到上篇文章講到的介紹點。 1 導入Nuget包 <PackageReference Include"Quartz" Versio…

PyTorch中的torch.cuda.amp.autocast

torch.cuda.amp.autocast的使用 torch.cuda.amp.autocast是PyTorch中一種自動混合精度計算的方法&#xff0c;它允許在深度學習模型的訓練過程中自動執行混合精度計算&#xff0c;從而加快訓練速度并減少顯存占用。 在使用torch.cuda.amp.autocast時&#xff0c;一般會將模型…

Ubuntu系統如何使用寶塔面板搭建HYBBS論壇并發布公網遠程訪問

文章目錄 前言1. HYBBS網站搭建1.1 HYBBS網站安裝1.2 HYBBS網站測試1.3. cpolar的安裝和注冊 2. 本地網頁發布2.1.Cpolar臨時數據隧道2.2.Cpolar穩定隧道&#xff08;云端設置&#xff09;2.3.Cpolar穩定隧道&#xff08;本地設置&#xff09; 3.公網訪問測試總結 前言 在國內…

【智能算法】河馬優化算法(HO)原理及實現

目錄 1.背景2.算法原理2.1算法思想2.2算法過程 3.結果展示4.參考文獻5.代碼獲取 1.背景 2024年&#xff0c;MH Amiri受到自然界河馬社會行為啟發&#xff0c;提出了河馬優化算法&#xff08;Hippopotamus Optimization Algorithm, HO&#xff09;。 2.算法原理 2.1算法思想 …

動態IP的應用場景

動態IP適用于網絡設備規模較小、需要靈活連接網絡、經濟條件有限或者需要臨時建立網絡的場景。

【C++】AVL

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 目錄 前言 一、AVL 樹 1.1、AVL樹的概念 1.2、AVL樹節點的定義 1.3、AVL樹的插入 1.4、AVL樹的旋轉 1.4.1、新節點插入較高左子樹的左側---左左&#xff1a;右單旋 1…

Spring整體流程源碼分析

DisableEncodeUrlFilter 防止sessionId被泄露 包裝器模式 WebAsyncManagerIntegrationFilter WebAsyncManagerIntegrationFilter通常與Spring MVC的異步請求處理機制一起使用&#xff0c;確保在使用Callable或DeferredResult等異步處理方式時&#xff0c;安全上下文能夠正…

CSP備考---位運算

前言 本期我們將學習位運算&#xff0c;與本期類型的考點&#xff08;二進制轉換&#xff09;反碼、補碼、原碼。 1、位運算是什么 首先我們需要先了解位運算是什么。 我們知道&#xff0c;計算機中的數在內存中都是以二進制形式進行存儲的 &#xff0c;而位運算就是直接對整…