軟件端口是應用層的各種協議進程與運輸實體之間進行層間交互的一種地址;
端口號只具有本地意義,它只是爲了標誌本計算機應用層中的各個進程在和運輸層交互的層間接口,它是用16位來標誌的,所以最多有65535個不同的端口;
其主要分爲兩大類:
- 服務器使用的端口號
這裏又分爲兩類,最重要的一類叫做熟知端口號或系統端口號,數值爲0~1023;這些數值可在網址www.iana.org上查到;IANA 把這些端口號指派給了TCP/IP最重要的一些應用程序,讓所有的用戶都知道;例如一些常用的熟知端口號:
另一類叫做登記端口號,數值爲1024~49151,這類端口號是爲了沒有數值端口號的應用程序使用的,使用這類端口號必須在IANA按照規定的手續登記,防止重複; - 客戶端使用的端口號
數值爲49152~65535,由於這類端口號僅在客戶進程運行時才動態選擇,因此又叫 短暫端口號,這類端口號是留給客戶進程選擇暫時。當服務器收到客戶進程的報文時,就知道客戶進程的端口號,因而可以把數據發送給客戶進程,通信結束後,剛纔使用過的客戶端口號就不復存在,這個端口號就可以給其他進程使用;