位元組流

位元組流（）在電腦科學中是一種比特流，不過裡面的比特被打包成一個個我們叫做位元組（Bytes）的單位。

在電腦網路內，八比特字串流（octet stream）有時會拿來代表同樣的東西；這種措辭強調了我們的位元組是8比特的位元組，或者說八比特（octets）。最早位元組這個詞被引進的時候，本身並沒有一個大小的標準；不過大多數現在的電腦位元組都等同於八位元。

正式的說，一個位元組流是一種特定的抽象化，一個讓實體（entity）可以傳輸一系列的位元組給處在另一端實體的一種通信頻道。一般來說這種頻道會是雙向，不過有時有單向的。在幾乎所有的狀況，這裡的頻道都具有所謂可靠的特質;也就是，在另一端會按照正確的順序出現應該出現的位元組（現實生活中有些頻道，有時會順序錯誤，有時會多出或者失去一些位元組）。

比較不正式的說，我們可以把它想做是兩個實體之間的管線（conduit）；其中一個實體會將位元組輸入管線，另一個實體則接收這些位元組。這個管線可以是短暫或者永久的。

範例
在多數的作業系統，包含類Unix系統和Windows，一個行程（process）想要去取得任何檔案都是一種位元組流的範例。特別是每個行程都有的三個標準串流（stdin, stdout, stderr），這三個位元組流可視為是單向位元組流的範例。UNIX裡面pipe的機制常被使用於連接不同的行程，並且用來創造行程之間的位元組流。

另外一個在網路傳輸協議裡面比較有名，且會提供位元組流給客戶端的範例是TCP/IP通訊協定裡面的傳輸控制協議（TCP），這種協議提供了雙向的位元組流。

對於任意位元組流的網際網路媒體型式是application/octet-stream。其他媒體型式則會以公開的格式來定義他們自己的位元組流。

相關條目
 字串流
 位元流
 Flow (computer networking)
 可靠位元組流
 Byte orientation
 Byte-oriented protocol
 Byte Stream Protocol

Category:資料傳輸
Category:電腦網路