UNIX再学习 -- 网络与网络协议
生活随笔
收集整理的這篇文章主要介紹了
UNIX再学习 -- 网络与网络协议
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、網絡協議模型
1、ISO/OSI 網絡協議模型
什么是計算機網路?
計算機網絡,是指將地理位置不同的具有獨立功能的多臺計算機及其外部設備,通過通信線路連接起來,在網絡操作系統、網絡管理軟件及網絡通信協議的管理和協調下,實現資源共享和信息傳遞的計算機系統。什么是網絡協議?
網絡協議是一種特殊的軟件,是計算機網絡實現其功能的最基本的機制。網絡協議的本質就是規則,即各種硬件和軟件必須遵循的共同守則。網絡協議并不是一套單獨的軟件,它融合于其它所有的軟件甚至硬件系統中,因此可以說協議在網絡中無所不在。什么是協議棧?
為了減少網絡設計的復雜性,絕大多數網絡采用分層設計的方法。所謂分層設計,就是按照信息的流動過程將網絡的整體功能分解為一個個的功能層,不同機器上的同等功能層之間采用相同的協議,同一機器上的相鄰功能層之間通過接口進行信息傳遞。各層的協議和接口統稱為協議棧。什么是 ISO/OSI 網絡協議模型?
描述計算機網絡各協議層的一般方法是采用國際標準化組織(International Standardization Organization, ISO)的計算機通信開放系統互連(Open System Interconnection, OSI)模型,簡稱 ISO/OSI 網絡協議模型。2、TCP/IP 協議族
TCP/IP 不是個單一的網絡協議,而是由一組具有層次關系的網絡協議組成的協議家族,簡稱 TCP/IP 協議族。
? ? — TCP:傳輸控制協議,面向連接,可靠的全雙工的字節流。 ? ? — UDP:用戶數據報協議,無連接,不如 TCP 可靠但速度快。 ? ? — ICMP:網際控制消息協議,處理路由器和主機間的錯誤和控制消息。 ? ? — IGMP:網際組管理協議,用于多播。 ? ? — IPv4:網際協議版本 4,使用 32 位地址,為 TCP、UDP、ICMP 和 IGMP 提供遞送分組服務。 ? ? — IPv6:網際協議版本 6,使用 128 位地址,為 TCP、UDP 和 ICMPv6 提供遞送分組服務。 ? ? — ARP:地址解析協議,把 IPv4 地址映射到硬件地址。 ? ? — RARP:逆地址解析協議,把硬件地址映射到 IPv4 地址。 ? ? — ICMPv6:網際控制消息協議版本 6,總和了 ICMP、IGMP 和 ARP 的功能。 ? ? — BPF:BSD 分組過濾器,為應用程序提供訪問數據鏈路層的接口,由源自 BSD 的系統內核提供。 ? ? — DLPI:數據鏈路提供者接口,為應用程序提供訪問數據鏈路層的接口,由源自 SVR4 的系統內核提供。通常所說的 TCP、UDP 和 ICMP 等協議都是工作在 IP 協議之上的,IP 協議作為它們的基礎協議為其提供服務支撐。 擴展:IPv6協議原理以及跟IPv4的差別
3、TCP/IP 與 ISO/OSI 模型
在 ISO/OSI 網絡協議模型的基礎上,TCP/IP 協議做了部分合并和簡化,同時將網絡編程的接口設定在傳輸層與會話層之間,這樣做的理由有兩點。 第一、上三層與應用程序的業務邏輯(如數據包的組織與解析、收發的實際與次序等)密切相關,而與具體的通信細節(如收發分組、計算驗證校驗和、丟包重傳等)關系不大;下四層主要處理通信細節而與具體應用的業務邏輯無關。 第二、上三層通常構成用戶進程,而下四層通常是系統內核的一部分。二、消息與地址
1、消息包與消息流
應用程序負責組織的通常都是業務相關的數據內容,而要想把這些數據內容通過網絡發送出去,就要將其自上向下地壓入協議棧,每經歷一個協議層,就會對數據做一層封包,每一層輸出的封包都是下一層輸入的內容,消息包沿著協議棧的運動形成了消息流。 當從網絡上接收數據時,過程剛好相反,消息包自下向上地流經協議棧,每經歷一個協議層,就會對輸入的數據解一層封包,經過層層解包以后,應用程序最終得到的將只是與業務相關的數據內容。2、IP 地址
什么是 IP 地址?
IP 地址,全稱網際協議地址(Internet Protocol Address),是 IP 協議提供的一種統一的地址格式,為互聯網上的每個網絡和每臺主機分配一個邏輯地址,借以消除物理地址差異所帶來的影響。IP地址如何表示?
在計算機內部,IP 地址用一個 32 位無符號整數表示,如:0x01020304。如無特別說明,我們只討論 IPv4 的情況。 人們更習慣使用點分十進制字符串表示,如:1.2.3.4。字符串形式的從左到右,對應整數形式的從高字節到低字節。注意這里所說的高低指的是數位高低而非地址高低。查看 IP 地址的基本命令
Windows系統操作系統:ipconfig ? ?ipconfig/allUnix/Linux操作系統:ifconfig?? ?/sbin/ifconfig
什么是 IP 地址分級?
? ? — A 級地址:以 0 為首的 8 位網絡地址 +24 位本地地址 ? ? — B 級地址:以 10 為首的 16 位網絡地址 +16 位本地地址 ? ? — C 級地址:以110 為首的 24 位網絡地址 +8 位本地地址 ? ? — D 級地址:以 1110 為首的 32 位多播地址 例如:某臺計算機的 IP 地址:192.168.182.48,寫成整數形式:11000000 10101000 10110110 00110000 C 級地址,網絡地址:192.168.182.0,本地地址:48. 工具:進制轉換 - 在線工具什么是子網掩碼?
一般與IP地址搭配使用,主要用于指定一個IP地址中具體的網絡地址和主機地址。也就是說判斷兩個IP地址是否在同一個子網中。IP 地址 & 子網掩碼 = 網絡地址 192.168.182.48 & 255.255.255.0 = 192.168.182.0
總結
以上是生活随笔為你收集整理的UNIX再学习 -- 网络与网络协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UNIX再学习 -- 网络IPC:套接字
- 下一篇: 【C语言笔记结构体】