我們說在計算機網(wǎng)絡中IP地址是用來標識一個通信實體的,,這樣網(wǎng)絡中的計算機主機通信時才能相互找到對方,,那么同一臺主機上同時可以運行多個應用程序,這個時候就需要采用端口號來進行識別了,,因此,,端口號有時候也可被稱為程序地址。比如FTP服務端口號21,,SSH服務端口號22,,HTTP服務端口號80同時運行,傳輸層協(xié)議正是利用這些端口號來識別本機中正在進行通信的應用程序,,并準確地將數(shù)據(jù)進行傳輸,。 如何進行通信識別TCP/IP或UDP/IP通信中通常采用5個信息來識別一個通信。它們是源IP地址,、目標IP地址,、協(xié)議號、源端口號和目的端口號。只要某一項不同,,則被認為是其他通信,。例如一臺主機上打開瀏覽器同時訪問兩個服務器上不同的頁面就是兩個不同的通信。如下圖1和2的通信,,主機A為客戶端IP地址172.20.100.34訪問遠程服務器172.20.100.32,,它們的目標端口號相同都是80,但是源端口不同分別為2001和2002,。1和3的目標端口號和源端口號完全相同,,但是它們各自的源IP地址不同。此外,,還有一種情況圖中并未列出,,那就是IP地址和端口完全都相同,只有協(xié)議號(表示上層是TCP或UDP的一種編號)不同,。這種情況下也會認為是兩個不同的通信。 如何分配端口號在實際進行通信時,,需要事先確定端口號,,與IP地址一樣,端口號也不是隨意使用的,,而是按照一定的規(guī)定進行分配,。端口的分配標準主要有知名端口和動態(tài)端口。 知名端口 它是指每個應用程序都有其指定的端口號,,并不是說可以隨意使用任何一個端口號,。例如,HTTP,、TELNET,、FTP等廣泛使用的應用協(xié)議中所使用的端口號就是固定的。這些端口號也被稱之為知名端口號,。知名端口號一般由0到1023的數(shù)字分配而成,。應用程序應該避免使用知名端口號進行既定目的之外的通信,以免產(chǎn)生沖突,。如下圖列出了一些TCP和UDP具有代表性的知名端口號,。 動態(tài)端口 動態(tài)分配是指當一個系統(tǒng)進程或應用程序進程需要網(wǎng)絡通信時,它向主機申請一個端口,,主機從可用的端口號中分配一個供它使用,。當這個進程關閉時,同時也就釋放了所占用的端口號,。服務端有必要確定監(jiān)聽端口號,,但是接受服務的客戶端沒必要確定端口號。在這種情況下,客戶端應用程序可以完全不用自己設置端口號,,而全權交給操作系統(tǒng)進行分配,。操作系統(tǒng)可以為每個應用程序分配互不沖突的端口號。動態(tài)端口的范圍是從1024到65535,。之所以稱為動態(tài)端口,,是因為它一般不固定分配某種服務,而是動態(tài)分配,。 如何查看端口號我們可以在windows電腦的dos窗口使用netstat命令查看到本機與遠程主機建立通信會話所采用的端口號,。 以上就是以上就是我對這個問題的解答了,關于更多IT相關知識歡迎大家關注,,謝謝,! |
|