首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

網路程式設計基礎:OSI 七層模型、TCP/IP 四層架構與通訊三要素

     編輯:Java 綜合教學

計算機網路定義

將分散於不同地理位置的計算機與專用外部設備,透過通訊線路連接成大規模、功能強大的網路系統,實現資訊傳遞、硬體/軟體/資料資源共享。

OSI 七層模型 (ISO 1978)

層級名稱核心功能典型設備/協定
7應用層提供應用程式間通訊介面HTTP、FTP、SMTP、DNS、Telnet
6表示層資料格式轉換、加密解密、壓縮SSL/TLS、JPEG、MPEG、ASCII
5會話層建立、維護、管理會話連線RPC、NetBIOS、PPTP
4傳輸層端到端連線、可靠傳輸、流量控制TCP、UDP、SPX
3網路層定址、路由選擇、封包轉發IP、ICMP、IGMP、路由器
2資料鏈路層介質存取、幀同步、錯誤檢測Ethernet、WiFi、PPP、交換機、網卡
1物理層比特流傳輸、物理介面規範光纖、雙絞線、同軸電纜、集線器

分層優勢

  • 廠商設備互通相容
  • 各層專注單一功能 (交換機 L2、路由器 L3)
  • 故障排查定位層級化
  • 上層不需關心物理介面細節

OSI 封裝過程

OSI 封裝過程圖

資料從應用層向下:資料 → 區段 → 封包 → 幀 → 比特流,每層添加首部 (Header),傳輸層可能添加尾部 (Trailer)。

TCP/IP 四層模型 (網際網路實際標準)

TCP/IP 層級對應 OSI 層級核心協定
應用層應用 + 表示 + 會話HTTP、FTP、SMTP、DNS、SSH
傳輸層傳輸層TCP、UDP
網路層網路層IP、ICMP、ARP、RARP
網路介面層資料鏈路 + 物理層Ethernet、WiFi、驅動程式

TCP/IP 四層模型圖

網路通訊三要素

  1. IP 位址:唯一識別網路主機
    • IPv4:32 位元,4 位元組,點分十進制 (如 192.168.0.5)
    • IPv6:128 位元,冒號十六進制
    • Java 對應類別:InetAddress
  2. 埠號:識別主機上具體應用程式 (邏輯位址)
    • 16 位元,範圍 0-65535
    • 0-1023:知名埠 (HTTP 80、HTTPS 443、SSH 22、FTP 21)
    • 1024-49151:登記埠
    • 49152-65535:動態/私用埠
  3. 傳輸協定:通訊規則約定
    • TCP:面向連線、可靠、有序、流量控制、三次交握/四次揮手
    • UDP:無連線、不可靠、無序、低延遲、適用即時性要求高場景

Java 網路程式設計核心類別

功能TCP 類別UDP 類別
伺服端ServerSocketDatagramSocket (綁定埠)
客戶端SocketDatagramSocket (系統分配埠)
資料單位位元組流 (InputStream/OutputStream)資料包 (DatagramPacket)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved