1. 程式人生 > 其它 >計算機網路基本概念

計算機網路基本概念

目錄

計算機網路通訊

什麼是計算機網路

計算機網路是指將地理位置不同的具有獨立功能的多臺計算機及其外部裝置,通過通訊線路連線起來,在網路作業系統,網路管理軟體及網路通訊協議的管理和協調下,實現資源共享和資訊傳遞的計算機系統。

網路程式設計的目的:資源共享和資訊傳遞

網路程式設計中的主要問題

  • 如何精準定位到一臺或多臺主機上
  • 找到主機後如何通訊

網路通訊的要素

通訊雙方的地址

  • ip+埠號,定位一臺主機
  • 如:192.168.16.124:5900

規則:網路通訊協議

TCP/IP參考模型(這裡主要了解傳輸層的TCP和UDP

IP地址

  • 唯一定位一臺網路上的計算機

  • 本機localhost:127.0.0.1

  • ip地址的分類

    • IPV4/IPV6

      • IPV4 127.0.0.1 ,4個位元組組成。每個位元組範圍0~255,一共42億:30億在北美,亞洲4億,2011用盡了
      • IPV6,128位,8個無符號整數
      2001:0bb2:aaaa:0015:0000:0000:1aaa:1212!
      
    • 公網(網際網路)-私網(區域網)

      • ABCD類地址
      • 192.168.xx.xx,專門給組織內部使用的
  • 域名:記憶IP問題

    • IP:www.baidu.com

埠port

表示計算機上的一個程式的程序

  • 不同的程序有不同的埠號,用來區分不同軟體

  • 被規定為0-65535

  • 分為TCP/UDP埠:所以有65535*2個,單個協議下埠號不能衝突

  • 埠分類

    • 公有埠0~1023
      • HTTP:80
      • HTTPS:443
      • FTP:21
      • Telent(遠端監聽):23
      • 。。。。
    • 程式註冊埠:1024~49151,分配給使用者或者程式
      • Tomcat:8080
      • MySQL:3306
      • Oracle:1521
    • 動態、私有:49152~65535
  • 一些dos命令

    netstart -ano  #檢視所有埠
    netstart -ano|findstr "埠號" #檢視置頂的埠
    tasklist|findstr “埠號” #檢視指定埠的程序
    

通訊協議

網路通訊協議:速率,傳輸位元速率,程式碼結構,輸出控制

非常複雜—>分層

TCP/IP協議簇:實際是一組協議

重要:

  • TCP:使用者傳輸協議
  • UDP:使用者資料報協議

出名的協議:

  • TCP
  • IP:網路互聯協議

TCP和UDP的對比

  • TCP:打電話

    • 連線,穩定

    • 三次握手,四次揮手

    • 客戶端,服務端

    • 傳輸完成釋放連線,效率低

  • UDP:發簡訊

    • 不連線但還是需要知道對方地址,不穩定
    • 客戶端,服務端:沒有明確的界限
    • 直接傳送不管對方是否接收
    • DDOS:洪水攻擊(一直髮送把線路堵住,飽和攻擊)

URL

統一資源定位系統(uniform resource locator):用於指定資訊位置的表示方法。

協議://ip地址(或者相應的域名):埠號/專案名/資源