1. 服務器端Socket監聽80端口,建立連接傳輸數據時也是使用的80端口么?
答:對。建立連接時服務器會分配一個新的Socket,但是用的源端口號還是80端口。套接字是由協議類型、源IP、目的IP和源端口、目的端口五部分組成的,理論上講,不同連接的套接字只要滿足這五部分不完全相同即可。只要不完全相同,收發數據時就能區分不同連接的數據。
附:這也是通過tcpdump等網絡抓包工具抓取服務器監聽端口的數據可以抓取到該服務下所有連接的網絡包的原因所在。
2.使用同一端口號收發數據,是不是會導致帶寬利用率降低,或者端口阻塞?
答:不會。端口只是一個數字,並非實際的物理端口,所以不存在端口阻塞的問題。在數據的通信網絡傳輸過程中,只用到了網絡層、鏈路層和物理層。端口是傳輸層的東西,和它沒有關系。所以,端口號會影響帶寬使用的認識是錯誤的。