目錄
一、端口號機制
二、網絡診斷工具
1. netstat命令
2. pidof工具
三、UDP協議詳解
協議特征
典型應用場景
四、TCP協議深度解析
核心機制
狀態轉換模型
特殊狀態說明
五、協議對比分析
六、開發實踐要點
一、端口號機制
- 核心作用:標識主機唯一進程,結合公網IP可定位全網唯一進程
- 組成結構:2字節整數(0-65535)
- **分類標準:
- 0-1023:固定服務端口(HTTP-80/HTTPS-443/SSH-22/FTP-21)
- 1024-65535:動態分配端口
查看系統端口配置:
cat /etc/services
二、網絡診斷工具
1. netstat命令
# 常用組合:
netstat -ntlp # 查看TCP監聽狀態
netstat -nulp # 查看UDP監聽狀態
2. pidof工具
pidof nginx # 獲取指定進程的PID
三、UDP協議詳解
協議特征
- 無連接傳輸
- 不可靠交付
- 固定報文結構
- 64KB數據上限
典型應用場景
- DNS解析
- 實時音視頻傳輸
- 網絡設備發現(DHCP)
四、TCP協議深度解析
核心機制
-
有序傳輸:字節編號系統
-
可靠性保障:
- 雙向確認機制(ACK)
- 智能超時重傳
- 動態窗口控制
-
連接管理:
- 三次握手建立連接
- 四次揮手終止連接
狀態轉換模型
服務端流程: CLOSED → LISTEN → SYN_RCVD → ESTABLISHED → CLOSE_WAIT → LAST_ACK → CLOSED
客戶端流程: CLOSED → SYN_SENT → ESTABLISHED → FIN_WAIT_1 → FIN_WAIT_2 → TIME_WAIT → CLOSED
特殊狀態說明
TIME_WAIT:
- 確保最后ACK送達
- 默認等待2MSL時間
- 防止舊連接數據干擾
五、協議對比分析
特性 | TCP | UDP |
---|---|---|
連接方式 | 面向連接 | 無連接 |
可靠性 | 確認重傳機制 | 盡力交付 |
傳輸模式 | 字節流 | 數據報文 |
流量控制 | 滑動窗口 | 無 |
典型應用場景 | 網頁/郵件/文件傳輸 | 實時視頻/DNS查詢 |
六、開發實踐要點
- 服務端標準流程:
socket() → bind() → listen() → accept()
- 客戶端連接流程:
socket() → connect()
- 數據傳輸注意事項:
- 雙工通信特性
- 緩沖區管理策略
- 異常斷開處理