看板 MIS 關於我們 聯絡資訊
※ [本文轉錄自 Network 看板 #1U2PGtJJ ] 作者: gowrite (gowrite) 看板: Network 標題: [問答] 基礎網路問題 port 相關 時間: Mon Dec 30 14:07:49 2019 不好意思, 新手自學網路 最近自學到 TCP/IP stack 到 application 與 transportation layer 如何運作的地方 但是這邊有個地方 , 書上沒有講解 , google 也不知道如何描述這個問題 就是資料上都會說 , port 總數有 65536 個, TCP 會到這邊依照 port 編號 , 把不同的 pack 傳給各個 App , 前段部分因為歷史的因素, 所以有被預設為某些服務 , 例如 : 80 HTTP , 443 HTTPs 之類的 那我的問題是 照理說一個 port 只有一個 app 可以佔著使用 例如我開一個 HTTP server 一直 listening localhost:5500 那我要開第二個 server 就無法 listening port 5500 那為什麼我可以同時開 chrome 及 firefox 開很多頁面 , 同時訪問很多 HTTP 或 HTTPs 的網頁?? 照理說 同一個 80 port 應該只有一個 browser page 可以佔住來訪問一個 HTTP 的頁面對吧? 那同一個瀏覽器 , 開另一個新的 page 訪問另一個 HTTP 的頁面 , 那這個新的 page 使用的也是 80 port 嗎? 這個問題不太理解 , 所以想問下面哪一個想法比較接近??? 1. 我整個理解錯誤了嗎? 整個網路運作不是我想得這樣 2. 所有 browser 所有的 page 在訪問 HTTP 的頁面的時候都是使用 80 port 但是每個頁面不同的流量是靠更上層的 application layer 來處理 , 把不同 page 的流量再分給不同的 page 但是這邊延伸出一個問題 , 就是不同的瀏覽器怎麼去辨識哪一個才是自己的流量封包 3. 還是其實 80 port 只會給開瀏覽器的第一個 page 使用, 但是第二個之後的新 page 就是隨機占用其它後段的 port 了, 例如隨機使用 port 10000 , 因此 HTTP 不會只使用 80 port , 是這樣嗎? 請問哪一個才對呢? 希望有版友可以幫忙解惑, 回答我這個網路 ABC 等級的問題 , 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.227.179.163 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Network/M.1577686071.A.4D3.html ※ 編輯: gowrite (61.227.179.163 臺灣), 12/30/2019 14:08:44 ※ 編輯: gowrite (61.227.179.163 臺灣), 12/30/2019 14:12:01 ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: gowrite (61.227.179.163 臺灣), 12/30/2019 14:12:50
goodga: 你又不是Server 你是client 開網頁... 12/30 14:15
tomsawyer: 因為你通常是用4xxxx 以上的亂數port去連的 12/30 14:38
fonzae: netstat 12/30 14:41
slash66: 你搞錯了,建議你用Wireshark跑個http封包看一下就知道了 12/30 15:48
slash66: ,可以多瞭解網路封包的傳輸方式跟內容,這實際上比較有 12/30 15:48
slash66: 幫助 12/30 15:48
kenwufederer: Client 連線不是用80 443… 12/30 16:21
Klauhal: client用萬位數的port去連server的80/443 12/30 17:35
EVGA: L4的port和L3的ip address一樣,有source和destination之分 12/30 18:22
EVGA: Client用source 49152~65535 desitination 80, Server則反 12/30 18:25
chang505: netstat 你就懂了 12/30 18:32
eaegg: 會不會是THREADING? 12/30 23:26
axuiolji: 因為你是client,同樓上說的,妳是用隨機port號去連線We 12/31 06:22
axuiolji: bServer的 12/31 06:22
eric00169: 用TCP VIEW打開看一下就知道問題了 12/31 08:42
saitoh: source port看os與設定不同,不一定是49512開始 12/31 11:27
Weky: 自學不是唸書就好 你實作一下就有答案 12/31 12:41
yoyo178134: 再者 http 這種無狀態協議 跑完也就關掉了 要持續連結 01/14 18:52
yoyo178134: 就得再開其他協議 01/14 18:52