今天發現jrtplib-2.9不支援我們學校的專用網與外網通訊

來源:互聯網
上載者:User

jrtplib-2.9建立了三個socket

rtpsock           專用來接收rtp資料包     邦定一個偶數連接埠

rtcpsock        專用來接收rtcp資料包    邦定rtpsock連接埠+1

sendsock     專門用來發送資料包      邦定0,系統自動分配

NAT協議轉換表(示意,不完整)

專用地址   專用連接埠     外部地址      外部連接埠       傳輸層協議

如下假設:

172.29.26.30 用4000連接埠給60.212.212.130的40000連接埠發資料

假設NAT路由器的ip為202.102.154.3 它給影射的連接埠是 40000

然後60.212.212.130用非40000連接埠把資料發給202.102.154.3的

40000連接埠,我們學校的情況是172.29.26.30數不到資料。

然後60.212.212.130用40000連接埠把資料發給202.102.154.3的

40000連接埠,172.29.26.30就能到資料。

也就是說rtp發送方的傳送埠(sendsock的連接埠)必須是已知固定的,請求發送方必須把請rtp求資料包的

目的port設定為該連接埠。

可是rtpjrtp-2.9的傳送埠是自動分配的。

解決方案:

修改rtp庫,使其sendsock邦定可獲得已知連接埠。請求端串連該連接埠。

但是無法解決,多個用戶端請求時,rtp伺服器如何監聽和發送資料並發處理。

監聽時recvfrom要佔用連接埠

發送資料要佔用同樣的連接埠

不知如何是好。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.