NAT中PoC中的應用

NAT技術即穿牆技術,NAT的全稱爲:Network Address translation,NAT旨在找出主機對外的真正IP即公網IP。PoC對NAT的應用即對會話的保持,爲何要保持會話呢,對講的特色便是即時性,若是在講話過程當中再去鏈接那就談不上即時了,因此須要對會話要進行保持,咱們以前講過基於VOIP的對講大多使用的UDP做爲傳輸層的協議,UDP自己是一個短連接在必定的時間內會斷開,那麼要進行會話的保持咱們採用心跳的方式,即每間隔一段時間在原有的連接基礎上發送一個數據包以維持連接。那麼以前連接的端口就不會關閉。例如會話在客戶端的地址爲:112.34.56.67:6000 服務端的ip爲234.56.77.12:5000,在連接上以後服務器會記住客戶端的ip以及端口號,若是服務器須要向客戶端發送數據時就會經過記住的端口和IP向服務器發送數據,若是端口沒有關閉那麼客戶端是能夠接收到這個數據的,若是客戶端端口關閉了,那麼客戶端就接收不到這個數據了。因此須要在此連接上一直向服務器發送心跳以保持連接。那麼這個心跳設置多長時間合適呢,心跳的設置時間和網絡的關係很是大,通常網絡設置端口關閉時間爲60s,可是也有比這個更短的,那麼若是因爲心跳的設置時間太長而致使端口變化,會發生什麼狀況呢,若是端口發送變化以後發送心跳,那麼服務器會記住新的端口號,並向新的端口號發送數據,那麼這個時候客戶端也是能夠收到的。可是因爲心跳時間過長,端口關閉以後服務端再發送數據那麼客戶端就收不到了,因此服務端向客戶端發送數據依賴於心跳發送的時間。那麼把心跳設置短一點會有什麼影響呢,若是PoC應用是在對待機要求比較嚴格的設備上使用,心跳時間短那麼會影響設備的待機狀況甚至不待機。服務器

相關文章
相關標籤/搜索