编程知识 cdmana.com

【網絡編程入門】什麼是 IP、端口、TCP、Socket?

IP 地址的介紹

學習目標

  • 能够說出IP地址的作用

1. IP 地址的概念

IP 地址就是 標識網絡中設備的一個地址,好比現實生活中的家庭地址。

網絡中的設備效果圖:

在這裏插入圖片描述

2. IP 地址的錶現形式

在這裏插入圖片描述

說 明:

  • IP 地址分為兩類: IPv4IPv6

  • IPv4 是目前使用的ip地址

  • IPv6 是未來使用的ip地址

  • IPv4 是由點分十進制組成

  • IPv6 是由冒號十六進制組成

IP 地址的作用

IP 地址的作用是 標識網絡中唯一的一臺設備的,也就是說通過IP地址能够找到網絡中某臺設備。

IP 地址作用效果圖:

在這裏插入圖片描述

3. 查看 IP 地址

  • Linux 和 mac OS 使用 ifconfig 這個命令
  • Windows 使用 ipconfig 這個命令

說明:

ifconfigipconfig 都是查看網卡信息的,網卡信息中包括這個設備對應的IP地址

在這裏插入圖片描述

說明:

  • 192.168.1.107是設備在網絡中的IP地址
  • 127.0.0.1錶示本機地址,提示:如果和自己的電腦通信就可以使用該地址。
  • 127.0.0.1該地址對應的域名是 localhost域名是 ip 地址的別名,通過域名能解析出一個對應的ip地址。

4. 檢查網絡是否正常

  • 檢查網絡是否正常使用 ping 命令

檢查網絡是否正常效果圖

在這裏插入圖片描述

說 明:

  • ping www.baidu.com 檢查是否能上公網
  • ping 當前局域網的ip地址 檢查是否在同一個局域網內
  • ping 127.0.0.1 檢查本地網卡是否正常

5. 小結

  • IP 地址的作用是標識網絡中唯一的一臺設備的
  • IP 地址的錶現形式分為: IPv4 和 IPv6
  • 查看網卡信息:ifconfig
  • 檢查網絡: ping

端口和端口號的介紹

學習目標

  • 能够說出端口和端口號的作用

1. 問題思考

不同電腦上的飛秋之間進行數據通信,它是如何保證把數據給飛秋而不是給其它軟件呢?

其實,每運行一個網絡程序都會有一個端口,想要給對應的程序發送數據,找到對應的端口即可。

端口效果圖:

在這裏插入圖片描述

2. 什麼是端口

端口是傳輸數據的通道,好比教室的門, 是數據傳輸必經之路

那麼如何准確的找到對應的端口呢?

其實,每一個端口都會有一個對應的端口號,好比每個教室的門都有一個門牌號,想要找到端口通過端口號即可。

端口號效果圖:

在這裏插入圖片描述

3. 什麼端口號

操作系統為了統一管理這麼多端口, 就對端口進行了編號,這就是端口號, 端 口號其實就是一個數字,好比我們現實生活中的門牌號,

端口號有65536個。

那麼最終飛秋之間進行數據通信的流程是這樣的, 通 過ip地址找到對應的設備,通過端口號找到對應的端口,然後通過端口把數據傳輸給應用程序

最終通信流程效果圖:

在這裏插入圖片描述

4. 端口和端口號的關系

端口號可以標識唯一的一個端口。

5. 端口號的分類

  • 知名端口號
  • 動態端口號

知名端口號:

知名端口號是指 眾所周知的端口號,範圍從0到1023。

  • 這些端口號一般固定分配給一些服務,比如21端口分配給FTP(文件傳輸協議)服務,25端口分配給SMTP(簡單郵件傳輸協議)服務,80端口分配給HTTP服務。

動態端口號:

一般程序員 開發應用程序使用端口號稱為動態端口號, 範圍是從1024到65535。

  • 如果程序員開發的程序沒有設置端口號,操作系統會在動態端口號這個範圍內隨機生成一個給開發的應用程序使用。
  • 當運行一個程序默認會有一個端口號,當這個程序退出時,所占用的這個端口號就會被釋放。

6. 小結

  • 端口的作用就是 給運行的應用程序提供傳輸數據的通道
  • 端口號的作用是 用來區分和管理不同端口的,通過端口號能找到唯一個的一個端口
  • 端口號可以分為兩類: 知名端口號動態端口號
    • 知名端口號的範圍是0到1023
    • 動態端口號的範圍是1024到65535

TCP 的介紹

學習目標

  • 能够說出TCP 的特點

1. 網絡應用程序之間的通信流程

之前我們學習了 IP 地址和端口號,通過 IP 地址能够找到對應的設備,然後再通過端口號找到對應的端口,再通過端口把數據傳輸給應用程序, 這裏要注意,數據不能隨便發送,在發送之前還需要選擇一個對應的傳輸協議,保證程序之間按照指定的傳輸規則進行數據的通信,而這個傳輸協議就是我們今天學習的TCP。

2. TCP 的概念

TCP 的英文全拼(Transmission Control Protocol)簡稱 傳 輸控制協議,它是一種 面向連接的、可靠的、基於字節流的傳輸層通信協議

面向連接的效果圖:

在這裏插入圖片描述

TCP 通信步驟:

1. 創建連接
2. 傳輸數據
3. 關閉連接

說 明:

TCP 通信模型相當於生活中的’打電話’,在通信開始之前,一定要先建立好連接,才能發送數據,通信結束要關閉連接。

在這裏插入圖片描述

3. TCP 的特點

1. 面向連接

  • 通信雙方必須先建立好連接才能進行數據的傳輸,數據傳輸完成後,雙方必須斷開此連接,以釋放系統資源。

2. 可靠傳輸

  • TCP 采用發送應答機制
  • 超時重傳
  • 錯誤校驗
  • 流量控制和阻塞管理

4. 總結

TCP 是一個 穩 定、可靠的傳輸協議,常用於對數據進行准確無誤的傳輸,比如: 文件下載,瀏覽器上網

Socket 的介紹

學習目標

  • 能够說出 socket 的作用

1. 問題思考

到目前為止我們學習了 ip 地址和端口號還有 tcp 傳輸協議,為了保證數據的完整性和可靠性我們使用 tcp傳輸協議進行數據的傳輸,為了能够找到對應設備我們需要使用 ip 地址,為了區別某個端口的應用程序接收數據我們需要使用端口號,那麼通信數據是如何完成傳輸的呢

使用 socket 來完成。

2. socket 的概念

socket (簡稱 套接字) 是 進程之間通信一個工具,好比現實生活中的 插 座,所有的家用電器要想工作都是基於插座進行, 進程之間想要進行網絡通信需要基於這個 socket

插座效果圖:
在這裏插入圖片描述

socket 效果圖:

在這裏插入圖片描述

3. socket 的作用

負責 進程之間的網絡數據傳輸,好比數據的搬運工。

4. socket 使用場景

不誇張的說,只要跟 網絡相關的應用程序或者軟件都使用到了 socket

在這裏插入圖片描述

5. 小結

進程之間 網絡數據的傳輸可以通過 socket 來完成,socket 就是進程間網絡數據通信的工具。


加油!

感謝!

努力!

版权声明
本文为[ZSYL]所创,转载请带上原文链接,感谢
https://cdmana.com/2021/11/20211125174627525t.html

Scroll to Top