更新時間:2021-08-16 來源:黑馬程序員 瀏覽量:
我們思考一個問題:不同電腦上的飛秋之間進行數據通信,它是如何保證把數據給飛秋而不是給其它軟件呢?其實,每運行一個網絡程序都會有一個端口,想要給對應的程序發(fā)送數據,找到對應的端口即可。
端口效果圖:
端口是傳輸數據的通道,好比教室的門,是數據傳輸必經之路。
那么如何準確的找到對應的端口呢?
其實,每一個端口都會有一個對應的端口號,好比每個教室的門都有一個門牌號,想要找到端口通過端口號即可。
端口號效果圖:
操作系統(tǒng)為了統(tǒng)一管理這么多端口,就對端口進行了編號,這就是端口號,端口號其實就是一個數字,好比我們現實生活中的門牌號,端口號有65536個。
那么最終飛秋之間進行數據通信的流程是這樣的,通過ip地址找到對應的設備,通過端口號找到對應的端口,然后通過端口把數據傳輸給應用程序。
最終通信流程效果圖:
端口號可以標識唯一的一個端口。
知名端口號:
知名端口號是指眾所周知的端口號,范圍從0到1023。
這些端口號一般固定分配給一些服務,比如21端口分配給FTP(文件傳輸協(xié)議)服務,25端口分配給SMTP(簡單郵件傳輸協(xié)議)服務,80端口分配給HTTP服務。
動態(tài)端口號:
一般程序員開發(fā)應用程序使用端口號稱為動態(tài)端口號, 范圍是從1024到65535。
·如果程序員開發(fā)的程序沒有設置端口號,操作系統(tǒng)會在動態(tài)端口號這個范圍內隨機生成一個給開發(fā)的應用程序使用。
·當運行一個程序默認會有一個端口號,當這個程序退出時,所占用的這個端口號就會被釋放。
猜你喜歡: