即時通訊和實時通訊的區別

2021-07-13 20:21:21 字數 2017 閱讀 9822

即時通訊(im)和實時通訊(聲網agora.io)都是一套網路通訊系統,其本質都是對資訊進行**。其最大的不同點,是對資訊傳遞的時間規定。二者的區別可以從以下幾個方面:

一、場景

二、產品需求點

即時通訊:主要要求可靠,考核送達率。要是你發一條簡訊,結果丟了,對方沒收到!你再也不相信簡訊了吧。

實時通訊:主要要求低延時和接通率。

低延時:你打一通**,每說一句話,對方得幾秒鐘才有回應,這**你也講不下去了吧。

接通率:你打**,你這邊聽到接通了,實際上對方的手機毫無反應,這實際上就沒接通。這跟簡訊沒送到,造成的惡劣影響是一樣的。不知道會破壞多少美好姻緣。

三、技術環節

即時通訊技術環節:訊息傳送和確認,【訊息接入端、服務端訊息邏輯處理,服務端訊息快取和儲存,**,服務端使用者狀態管理,心跳機制,訊息傳送端】、訊息接收和確認。

這些技術環節重合的部分是:資訊**。

四、傳輸協議

公共網際網路上,最常用的通訊協議有tcp、udp。

tcp:transmission control protocol,傳輸控制協議是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。有延遲不可控的特點。

udp:user data protocol,使用者資料報協議,是與tcp相對應的協議。它是面向非連線的協議,它不與對方建立連線,而是直接就把資料報傳送過去。 存在丟包、抖動、延遲的特徵。

即時通訊系統為了保證連線的可靠性,最常用的是tcp協議或者類tcp連線協議。這類協議的特點是追求連線的可靠性,而造成了延遲的不可控性,超過2秒的延遲響應是常態,甚至幾十分鐘的延遲響應,而電信級的實時通訊標準是400ms,而基於網際網路的實時通訊需要另闢蹊徑,開創出新的傳輸解決方案。這又與應用場景相關了。發簡訊,延遲幾秒鐘送達,對使用者影響不大。

實時通訊,聲網agora.io採用 udp 作為基礎傳輸協議。在設計低延時的實時通訊服務時,udp 表現要比 tcp 好得多。這是因為實時通訊中,低時延比可靠性更重要。打**,幾秒的延遲是不能忍受的。

tcp協議封裝了訊息的重傳機制,在丟包的情況下,採用tcp協議的應用程式幾乎無法優化這個重傳機制,來達到低時延的效果。特別是在移動網際網路絡中,超過30%丟包時,tcp 的延時可以到幾十分鐘, 超過 50%丟包時,甚至很容易斷開。 在同樣丟包30%的鏈路上,udp還可以傳輸資料,tcp就無法進行實時通訊了。

五、成本

成本涉及到的環節有:服務端接入、儲存和**。(人工成本就不談了)

二者成本會產生差異的環節有:

從服務端接入方式來看,即時通訊採用tcp協議來保證可靠性,可能會建立多個連線,相比無連線的udp傳輸方式,這是一種昂貴的傳輸方式。實時通訊可以基於udp協議,與服務端建立靈活的、快速的接入機制。

儲存方面,實時通訊在服務端是實時**,不會在服務端儲存資料,而即時訊息系統一般會將快取轉為儲存資料,包括富**資料,會占用大量的儲存空間,產生更多的儲存成本。

從成本上來看,傳輸同樣資訊量的資料,基於tcp的即時通訊方式,更側重於可靠性,會優先採用多線機房的傳輸方式,成本比較高;

而基於udp的實時通訊方式,會優先選取最優路徑進行傳輸資料,並可以動態調整傳輸路徑,這樣能夠高效的利用頻寬,提高傳輸效率,降低成本。

六、開源專案

即時通訊:xmpp,mqtt

實時通訊:webrtc、 tokbox

七、實時通訊有哪些開創性的應用場景

雖然前面一直在拿打**舉例子,但基於網際網路的實時通訊與打**有本質的區別。

互動直播:

傳統直播是基於cdn的一對多直播,主播演、觀眾看。主播與觀眾之間的互動,僅限於送花、打賞,很難實現主播與觀眾對話。

電視台新聞節目,基於電視網路傳播。演播廳裡的主播與場外的外景主持人有對話,這實際上中間是有導播的參與。導播聽到外景主持人開始說話,就立刻告訴主播趕緊開始說話。給觀眾造成了演播廳在和外景主持人「對話」的假象。

如果基於實時通訊技術來進行直播,那麼主播和觀眾之間的對話,就是真正意義上的對話。還可以有更多開創性的互動直播場景,比如:身處異地的雙人主播辯論。

老師和學生可以實時對話,不懂就問,問了就答。這是教育的剛需,誰可以解決這個問題,誰就能大幅度的提高教學質量。

即時通訊(IM)和實時通訊(RTC)的區別

即時通訊 im nstant messaging 和實時通訊 rtc real time communication 都是一套網路通訊系統,其本質都是對資訊進行 其最大的不同點,是對資訊傳遞的時間規定。二者的區別可以從以下幾個方面 一 場景 即時通訊 實時通訊 二 要求 即時通訊 主要要求可靠,考核...

mysql 即時通訊 即時通訊IM模板

更新記錄 1.0.3 2020 10 22 完成點對點通訊功能,修復若 ug。1.0.2 2020 06 02 1 增加登入 註冊 個人資訊頁面 speedy im 注意介紹 正在持續開發中,目前僅部分ui開發完成。demo im.apk 已有基礎ui以及登陸 點到點聊天等功能。開發客戶端測試賬號密...

即時通訊系統

企業擁有一套理想的即時通訊系統,正如找到了一位得心應手的商務秘書。然而,縱觀當前企業即時通訊市場,同質化的即時通訊軟體比比皆是,而能夠讓企業真正根據自身需要來按需定製 人性化開發的即時通訊系統卻少之又少。傳統開發理念讓企業被動使用即時通訊。目前,大多數的軟體提供商還在用傳統的開發理念來開發企業即時通...