1. 程式人生 > >應用層和傳輸層的關係

應用層和傳輸層的關係

看了下面的介紹,才明白為什麼那些tomcat,weblogic預設埠都是80開頭的了

2.3  應用層協議

傳輸層協議新增埠就可以標識應用層協議。應用層協議代表著伺服器上的服務,伺服器上的服務如果對客戶端提供服務,必須在TCP或UDP埠偵聽客戶端的請求。

2.3.1  應用層協議和傳輸層協議的關係

傳輸層的協議TCP或UDP加上埠就可以標識一個應用層協議,TCP/IP協議中的埠範圍是從0~65535。

1.埠的作用

埠有什麼用呢?我們知道,一臺擁有IP地址的主機可以提供許多服務,比如Web服務、FTP服務、SMTP服務等,這些服務完全可以通過1個IP地址來實現。那麼,主機是怎樣區分不同的網路服務呢?顯然不能只靠IP地址,因為IP 地址與網路服務的關係是一對多的關係。實際上是通過"IP地址+埠號"來區分不同的服務的。

伺服器一般都是通過知名埠號來識別的,如圖2-2所示。例如,對於每個TCP/IP實現來說,FTP伺服器的TCP埠號都是21,每個Telnet伺服器的TCP埠號都是23,每個TFTP(簡單檔案傳送協議)伺服器的UDP埠號都是69。任何TCP/IP實現所提供的服務都用知名的1~1023之間的埠號。這些知名埠號由Internet號分配機構(Internet Assigned Numbers Authority,IANA)來管理。

 
圖2-2  應用層協議和傳輸層協議的關係

2.應用層協議和傳輸層協議的關係

下面是一些常見的應用層協議和傳輸層協議之間的關係。

HTTP預設使用TCP的80埠標識

FTP預設使用TCP的21埠標識

SMTP預設使用TCP的25埠標識

POP3預設使用TCP的110埠

HTTPS預設使用TCP的443埠

DNS使用UDP的53埠

遠端桌面協議(RDP)預設使用TCP的3389埠

Telnet使用TCP的23埠

Windows訪問共享資源使用TCP的445埠

3.知名埠

知名埠即眾所周知的埠號,範圍從0~1023,這些埠號一般固定分配給一些服務。比如21埠分配給FTP(檔案傳輸協議)服務,25埠分配給SMTP(簡單郵件傳輸協議)服務,80埠分配給HTTP服務,135埠分配給RPC(遠端過程呼叫)服務等。

網路服務是可以使用其他埠號的,如果不是預設的埠號則應該在位址列上指定埠號,方法是在地址後面加上冒號":"(半形),再加上埠號。比如使用"8080"作為WWW服務的埠,則需要在位址列裡輸入"

http://www.cce.com.cn:8080"。

但是有些系統協議使用固定的埠號,它是不能被改變的,比如139 埠專門用於NetBIOS與TCP/IP之間的通訊,不能手動改變。

客戶端在訪問伺服器時,源埠一般都是動態分配的1024以上的埠。