爲什麼引入“端口(port)”

首先說一下什麼是端口。端口是TCP/IP協議簇中,應用層進程與傳輸層協議實體間的通信接口。端口是操作系統可分配的一種資源;應用程序通過系統調用與某端口綁定後,傳輸層傳給改端口的數據都被相應進程接收,相應進程發給傳輸層的數據都通過端口輸出。
爲什麼需要端口這個概念呢?在網絡通信過程中,需要唯一識別通信兩端的端點,就是使用端口識別運行於某主機中的應用程序。如果沒有引入端口,則只能通過 進程號進行識別。進程號是系統動態分配的,不同的系統會使用不同的進程標識符,應用程序在運行之前不知道自己的進程號,如果需要運行後再廣播進程號則很難 保證通信的順利進行。而引入端口後,就可以利用端口號識別應用程序,同時通過固定端口號來識別和使用公共服務,如HTTP和FTP等。
順便提供幾個常用的保留端口:TCP常用保留端口:FTP(21),HTTP(80),SMTP(25),POP3(110);UDP常用保留端口:DNS(53),TFTP(69),SNMP(161)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章