1

RTCDataChannel が接続を開始するために SCTP を使用していることは知っていますが、接続を開始するために SCTP パケット (データ チャンクなどを含む) を使用していないようです。SDP パケットを使用します。

このデモを試してみて、コンソールを確認すると、次のようなパケットが送信されます。

v=0
o=- 777388697042846508 2 IN IP4 127.0.0.1
s=-
t=0 0
a=msid-semantic: WMS
m=application 9 DTLS/SCTP 5000
c=IN IP4 0.0.0.0
a=ice-ufrag:ZE/xENc11wK9832B
a=ice-pwd:s9JV35l6IzPCPzSAhdcZrO7P
a=fingerprint:sha-256 AD:4B:A2:17:94:52:B5:68:8D:94:88:DD:37:98:B7:02:91:12:4D:FF:EE:32:76:80:11:12:AB:EE:4D:B7:15:16
a=setup:actpass
a=mid:data
a=sctpmap:5000 webrtc-datachannel 1024
common.js:8 14.954: Answer from remoteConnection 
v=0
o=- 8720098635349520996 2 IN IP4 127.0.0.1
s=-
t=0 0
a=msid-semantic: WMS
m=application 9 DTLS/SCTP 5000
c=IN IP4 0.0.0.0
b=AS:30
a=ice-ufrag:sVJDQDQk2/ONvM7v
a=ice-pwd:ET9E6bl6qNpnZY2d7l5xKMDi
a=fingerprint:sha-256 AD:4B:A2:17:94:52:B5:68:8D:94:88:DD:37:98:B7:02:91:12:4D:FF:EE:32:76:80:11:12:AB:EE:4D:B7:15:16
a=setup:active
a=mid:data
a=sctpmap:5000 webrtc-datachannel 1024

私が知っているように、これはSDPパケットのフォーマットです。

それで、誰でもそれについて明確にするのを手伝ってくれる?

4

1 に答える 1

1

データ チャネル (および PeerConnection) を開始するには、クライアント間で SDP (コーデック、データ チャネルに関する情報、ICE 候補など) を交換する必要があります。

その後、DC を介して一部のデータを交換できるようになります。DTLS/UDP でカプセル化されているため、SCTP は表示されません。

ただし、SCTP は接続の初期化には使用されません。接続を処理し、データチャネルのデータを交換するために使用されます。

于 2016-05-04T08:36:23.413 に答える