2

YouTube がビデオをさまざまなクライアントにストリーミングする際にさまざまなプロトコルやポート番号を使用しているかどうかを誰かが知っているかどうか疑問に思っています。たとえば、HTTP、Mozilla Firefox (またはその他の Web ブラウザー) のポート 80、RTSPなどのポート 53 を使用して、Android プラットフォームにストリーミングすることは可能ですか? Android VideoView/MediaPlayer ライブラリが HTTP ストリーミングをサポートしていることは知っていますが、この SO スレッドの回答は RTSP が可能であることを示唆しています。

もっと一般的に言えば、YouTube、Netflix、ESPN などのビデオ サーバー/プロバイダーが使用するストリーミング プロトコルとポートを特定する良い方法はありますか? Wireshark を使用してみましたが、特定の IP アドレスをホスト/ドメイン名に関連付けるのがいかに面倒かを理解しています。さらに、Wireshark は、トランスポート層とアプリケーション層のプロトコルを区別していないようです (つまり、同じソース IP アドレスを持ついくつかの 2 つのランダムなパケットの場合、最初のパケットでは、使用中のプロトコルが TCP であるとリストされ、2 番目のパケットではプロトコルはHTTPであると言われています)。

4

1 に答える 1

2

ここではWiresharkが最善の策だと思います。私が持っているキャプチャに基づいて、Android 2.2、Android 4.0、iOS 4.3.3、および iOS 5.x 上の Netflix と Youtube アプリは、HTTP と HTTPS (ポート 80 と 443) のみを使用して通信していると言えます。これが表すそれぞれのアプリのバージョンは不明ですが、すべて 2011 年と 2012 年にキャプチャされました。

キャプチャに DNS、HTTP ポート 80、または HTTPS ポート 443 以外のパケットが含まれているかどうかを判断するには、以下のようなフィルターを使用してみてください。1.2.3.4テストに使用しているデバイスの IP アドレスに置き換えます。

ip.src==1.2.3.4 && not dns && tcp.dstport != 80  && tcp.dstport!=443

Wireshark を使い始める際の提案については、このSO の質問を参照してください。

于 2012-07-17T05:45:04.507 に答える