封包傳輸

什麼是封包(network packet)

在 packet-switched network 中被傳輸的東西就叫做封包。封包分為 control information 和 user data 兩個部分,control information 紀錄著要將封包送去哪裡的相關資訊,user data 則是要給對方的資料。以包裹來比喻的話,control information 紀錄著收件者、寄件者等等資訊,user data 則是包裹的內容物。

一筆大的資料,可先分割為若干封包後再進行傳輸。

封包傳輸(Packet switching)

封包傳輸可分為兩種 communication mode:connectionless 和 connection-oriented。

connectionless mode

此種模式,不需要預先建立與接收方之間的通道,因此,在同一個通道中,可以同時進行多個通訊。但代價是,要在 control information 攜帶更多訊息,例如目的地位址、來源位置、埠號等等,可能還會有封包的序號。因為每個封包可能是經由不同的路徑抵達目的地,所以送出封包的順序,和最後接收方收到的順序可能是不一樣的,所以,若封包的順序很重要的話,需要有封包序號才能將封包以正確的順序排列。

屬於此模式的協定有:Internet Protocol(IP)、User Datagram Protocol(UDP)。

connection-oriented mode

此種模式,在傳輸資料前,要預先建立與接收方之間的通道,因此 control information 需要攜帶的資料比較少,例如,不需要位址資訊,只需要 connection identifier。但代價是,一旦建立通道,其他的傳輸就不能使用此通道。

屬於此模式的協定有:Transmission Control Protocol(TCP)。

參考資料

Comments

Popular posts from this blog

shop_platform - 建立多對多關聯:Association Object

[計算機概論] SR Flip-Flop

git 指令