瞭解網絡通信中的端口

熟悉TCP/UDP協議的同學可能都知道端口這一詞,無論是TCP還是UDP報文都有源端口和目的端口字段,爲什麼會需要這些字段呢?

這是因爲,對於網絡之間的通信,本質而言就是應用進程之間的通信,而IP協議只提供主機與主機之間的通信,可是一個主機有那麼多進程,如何區別是哪個進程通信呢?端口就起着標識的作用。

通過IP:port這一對套接字就能保證不同主機上進程之間的通信,我們後面所學的套接字編程就要使用到端口號,因此我們需要了解一下端口的分類。

端口一般是16位的整型,最多有2 ^ 16 = 65536個端口號,對於一臺主機來說,標識進程肯定夠用了。然而有這麼多端口,我們就可以隨便用了嗎?並不是,端口主要分爲以下兩大類。

服務器端使用的端口號:

這裏又可分爲兩大類:

  1. 熟知端口號(系統端口號):0 - 1023,主要分配給一些重要的應用程序

    這裏寫圖片描述

  2. 登記端口號:1024 - 49151,這類端口號是爲沒有熟知端口號的應用程序使用的,使用時必須登記。

客戶端使用的端口號:

這裏寫圖片描述

發佈了96 篇原創文章 · 獲贊 119 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章