TCP協議中的埠具體指的是什麼,為什麼要有埠

2021-07-27 13:11:27 字數 594 閱讀 7794

ip能鎖定一台物理機器,對應著一張網絡卡,外界發來的資料報網絡卡都會接收。但是問題來了,網絡卡給程式提供了介面,你監聽一下我,要是有訊息來了,我就**給你。這樣應用程式就能收到資料了。但是問題來了,程式a和程式b都需要監聽網絡卡接髮資料,網絡卡說那我把接到的資料都發給你兩,你們自己看著辦吧。好,小a小b都接受了。但是又來了cdef......,不行了,每個包都被發到了所有應用程式,每個應用程式都累得不行,最終垮了。

好,那網絡卡說我給你們加個表示吧,我們之間可以用乙個號碼來作為標識,我和小a之間就用1來標識,如果外界發給1號標識的資料我就**給你,你監聽我的時候得告訴我你監聽的時1,我就**1的資料報給你。好了其他的bcd...都自己弄乙個標識號,只要不重複就行。這樣大家都省事了。

最後設計到安全,乙個標識號只能被乙個應用程式監聽,因為如果小a程式和小b同時監聽乙個標識號號,那就壞了,我傳的資料都被ab接到,這樣資料安全性就沒辦法保證了。

這個標識號就是埠,最初設計網路資料交換的設計者不知道是怎麼想的。這是我的理解。

其實網絡卡都是被系統層封裝了,埠和程序之間的關係也是系統封裝好的。我們只需要用socket就行,給定乙個埠號就行了。其他的事都交給作業系統去做。

這就是我的理解,希望大家指正拍磚。

tcp協議的埠狀態

listening syn sent syn rcvd established close wait time wait 對方主動關閉 對方呼叫close 我方的狀態變為 close wait 我方主動關閉 我方呼叫close 我方的狀態變為 time wait 統計各種埠狀態的數目 netstat...

TCP協議中的埠指什麼,為什麼要有埠

ip能鎖定一台物理機器,對應著一張網絡卡,外界發來的資料報網絡卡都會接收。但是問題來了,網絡卡給程式提供了介面,你監聽一下我,要是有訊息來了,我就 給你。這樣應用程式就能收到資料了。但是問題來了,程式a和程式b都需要監聽網絡卡接髮資料,網絡卡說那我把接到的資料都發給你兩,你們自己看著辦吧。好,小a小...

TCP協議的滑動視窗具體是怎樣控制流量的

首先明確 1 tcp滑動視窗分為接受視窗,傳送視窗 滑動視窗協議是傳輸層進行流控的一種措施,接收方通過通告傳送方自己的視窗大小,從而控制傳送方的傳送速度,從而達到防止傳送方傳送速度過快而導致自己被淹沒的目的。對ack的再認識,ack通常被理解為收到資料後給出的乙個確認ack,ack包含兩個非常重要的...