通用封包無線服務（英語：General Packet Radio Service，縮寫：GPRS）是 GSM 移動電話用戶可以使用的一種移動數據業務 / 技術。它經常被描述成「2.5G」，意指這項技術介於第二代（2G）與第三代（3G）移動通訊技術之間。它是利用 GSM 網路中未使用的 TDMA 頻道，提供中速的數據傳輸服務。起初有人想通過擴展 GPRS 來覆蓋其他標準，只是這些網路都正在轉而使用 GSM 標準，這樣 GSM 就成了 GPRS 唯一能夠使用的網路。GPRS 在 Release 97 之後被集成進 GSM 標準，起先它是由 ETSI 標準化，但是現在已經移交 3GPP 負責。



GPRS 原理

GPRS 有別於舊的電路交換連接，電路交換連接在 Release 97 之前就已經被納入 GSM 標準。在舊有系統中，一個數據連接要創建並保持一個電路連接，在整個連接過程中這條電路將被獨占，直到連接被解除。GPRS 基於封包交換，也就是多個用戶可以共享一個相同的傳輸通道，每個用戶只有在傳輸數據的時候才會占用頻道。這意味著所有的可用帶寬可以立即分配給當前發送數據的用戶，這樣有更多的間隙發送或接受數據，用戶可以共享帶寬。WEB 瀏覽、收發電子郵件和即時消息都是能有效利用共享帶寬的間歇傳輸數據的服務。

GPRS 數據的通常計費方式不是按照電路交換方式的秒，而是千字節（KB）。在電路交換方式下，即使網路上沒有數據傳輸，其他用戶也不能使用空閒的頻道。

GPRS 最初支持（理論上）網際網路協議 IP，點到點協議 PPP 和 X.25 連接。後者典型的應用是無線付費終端，儘管它已經作為標準需求被去除。X.25 依然可以通過 PPP 甚至是 IP 得到支持，但是這樣做既不需要重新封裝也不用集成什麼到終端里。



GPRS 速度和屬性

基於 GPRS 的報文數據交換使用未使用的蜂巢式網路帶寬傳輸數據。 而作為專門為電話系統設計的語音頻道（或者數據頻道）一旦被報文數據交換使用，將降低可用帶寬，其結果是如果在一個忙碌的電話域內，報文傳輸速度極慢。理論上報文數據交換速度是大約 170 千位元 / 秒，而實際速度是 30-70 千位元 / 秒。在 GPRS 的射頻部分的改進，取名為 EDGE 技術，將支持從 20 至 200 千位元 / 秒的更高速度傳輸。最大數據速率取決於同分時配到的 TDMA 影格的時槽。因此，數據速率越高，糾錯可靠性就越低。一般來說，連接速度隨著與距離的增加迅速下降。在人口密集的高網路密度城區這倒不是什麼大問題，但是在人口比較少的郊區這就真是問題了。

GPRS class 8 也就是平常所說的 4+1。這表示 4 個時槽用於下行流量，1 個時槽用於上行流量。 這樣做是為了優化像 WEB 瀏覽器這樣的大部分是下載流量的應用。如果用戶閱讀郵件量大於他發送的量，這個也適用。一般來說 GPRS 手機默認使用 Class 8 來傳輸。

GPRS class 10 也就是 4+2。4 個時槽下行，2 個時槽上行。不過同時使用的時槽不能超過 5 個。 這個方案適用於雙向數據差不多相等的情況下，例如即時消息。

其他存在的級別，包括 GPRS class 6 （3+2） 和 GPRS class 4 （3+1），只有老設備才使用。有些個別設備能夠做到 4+4 （四個時槽用於上行和下行，最多 5 個同時工作）. 這只是工業應用，超過 2 個上行時槽電磁輻射就會對人體產生一定的影響。

傳輸速率還依賴於頻道編碼。最佳編碼方案（CS-4）適用於在基地台附近的時候，最差編碼方案（CS-1）用於離基地台比較遠的地方。

使用 CS-4 有可能達到每時槽 22.8kbps 的速度。但是如果使用這個方案，現有網路只能覆蓋一般情況的 25% 的區域。CS-1 能達到 9.05 kbit/s 每時槽的速率而且可以覆蓋 98% 的正常區域。

每一個時間片（timeslot）傳輸一個 RLC 影格，使用 CS4 最高達 21.4Kbps, 但通常情況下使用 CS2 比較多，RLC 層速率為 13.4Kbps，折算到 IP 層 11.32Kbps。 從協議封裝來計算開銷，上行傳輸的要大於下行的，這意味著同樣一個時槽，上行的 IP 層可獲得帶寬要比下行的小一些，例如同樣的 CS2 編碼方式，上行的 IP 帶寬只有約 10.15Kbps。

需要注意的是，CSD 及 HSCSD 這類服務通常都按使用時間來計費，就像通話時間般。假如要長時進行下載檔案的動作，則會比 GPRS 優勝，因為在移動電話網路中 CSD 及 HSCSD 的優先次序都會比 GPRS 為高，較少有數據傳輸中斷的情況出現。

GPRS 報文數據交換基於數據包。 當使用 TCP/IP 協議時，每個電話分配到有一個或多個 IP 位址。 當電話切換扇區或者基地台時，GPRS 要暫時存儲轉發數據包到電話里。當因為無線電雜訊干擾導致傳輸暫停和丟包可以由 TCP 來處理，這將導致臨時的傳輸速率調整。



GPRS 服務

GPRS 提升 GSM 的數據服務性能:


* 點到點 （P2P） 服務：連接 （IP protocols）IP 網路 和 X.25 網路。

* 多播 （P2MP）服務：一點到多點的組播和多方通話。

* 簡訊服務 （SMS）：發送 SMS。

* 多媒體短訊（MMS）：發送攜帶語音和圖像資訊的短消息。

* 網際網路服務提供商服務：提供網際網路內容服務。

* 郵件服務：通過 POP3 或者 IMAP 協議檢查閱讀發送電子郵件。

* 匿名服務：匿名訪問預定服務。

* 未來功能：靈活加入新的功能，例如更大容量，更多用戶，新的資源和無線網路。



GPRS 的發展

根據歐洲 ETSI 的 GSM 第 2＋階段的建議，GPRS 分為兩個發展階段（即 Phase 1 和 Phase2）。GPRS 的 Phase l 階段將能支持下列功能和業務：

1. TCP/IP 和 X.25 業務
2. 全新的 GPRS 空中接口加密技術
3. GPRS 附加業務
4. 增強型的簡訊業務（E-SMs）

GPRS 封包數據計費功能，即根據數據量而採取計費上述功能業務中最顯著的是 TCP/IP 和 X.25 功能。GSM 網路可以通過 TCP/IP 和 X.25 為用戶提供電子郵件、WWW 瀏覽、專用數據、LAN 接入等業務。GPRS Phase 2 階段的規範尚在制訂之中，它將能提供更多的新功能和新業務。



現實中的 GPRS

運營商已經給 GPRS 制定了相對便宜的價格（相對於舊的 GSM 數據通訊、CDPD、高速電路交換數據）在很多地方例如芬蘭，多數運營商不支持包價收費訪問網際網路 （但是美國的 T-Mobile 是一個著名的例外），取而代之的是按照數據流量，通常以 1 KB 或者 1 MB（中國移動通訊、中國聯通）作為計費單位。

典型的費率比較高昂，在美國 T-Mobile 提供每月 20 美元無限量 GPRS 使用的服務。 其他運營商像 AT&T Wireless 也提供包月。Orange （英國）提供 88 英鎊每月 1 GB 流量套餐。

GPRS 預付費數據服務一般比較貴，局限在 WAP 和 MMS。

一般而言，GPRS 最大連接速度跟類比電話網路上的調製解調器一樣大約 4-5 kB/s （依賴於電話），最高 30～40kbps，但是在無線環境允許的情況下，實際測試結果亦可達到 9 kB/s，即 70+ kbps，此時占用 4 個下行時槽使用 CS4 編碼方式。 延遲比較高，在迴路測試 ping 中，典型的要大約 600-700 毫秒，往返時間經常達到 1 秒 。 GPRS 的實際性能十分普遍的低於理論值，而且連接質量很不穩定，很易受到影響產生大幅波動，這是因為在行動通訊所用的無線介面傳遞的封包數據會遺失或損壞導致封包數據要一再重傳所致。

無線環境惡化對傳輸造成的干擾，首先通過前向錯誤更正編碼來克服，CS1 具有最強糾錯能力，相應帶寬最小，而 CS4 則完全不具備前向錯誤更正能力，當然提供的帶寬在四種編碼中最大，但是一旦 RLC 層檢測到錯誤就只能通過空口塊重傳來糾錯了。在 RLC 層通過前向錯誤更正編碼和重傳機制可以有效地克服無線環境對傳輸質量的干擾，在此情況下，不會引起上層即 IP 層的封包丟失，對於 IP 層的影響主要體現在網路迴路時延的微小增加上（通常只有幾十毫秒）。IP 封包的丟失通常發生在小區重選 / 路由區更新的時刻，此時需要網元設備支持跨小區或跨 SGSN 的數據轉發能力，才能避免封包數據的丟棄和重傳。需要指出的是，作為端到端的通訊過程，鏈路中的任何一個環節都有丟失封包的可能性，區別是無線接入部分概率較大而已，蜂窩行動通訊系統中小區重選和路由區更新是不可避免的事情。



GPRS 的移動終端

GPRS 的移動終端（Mobile Station，MS） 分為三類。

1. A 類終端：MS 可以同時傳送 GSM 語音與傳送 GPRS 數據。
2. B 類終端：MS 可以同時以 GSM 和 GPRS 方式在網路登記。MS 可以自動轉換使用 GPRS 服務或是 GSM 服務，但不能同時傳送語音與傳送數據。所以當 MS 在傳送資料的時候，若收到來電呼叫，會暫停傳送資料，接聽電話後在繼續傳送數據。
3. C 類終端：功能是只能傳送 GPRS 數據。此類終端例如用於筆記本電腦的 PCMCIA GPRS 上網卡。



外部連結


* 免費在線教程

* GSM World - 負責 GSM 和 GPRS 的協會

* GPRS 附著和 PDP 激活時序圖（頁面存檔備份，存於網際網路檔案館）（PDF 文檔）

* 手機通訊



參看


* EDGE

* UMTS