I am the assigned Gen-ART reviewer for this draft. The General Area Review Team (Gen-ART) reviews all IETF documents being processed by the IESG for the IETF Chair. Please treat these comments just like any other last call comments. For more information, please see the FAQ at . Document: draft-ietf-rtcweb-sdp-11 Reviewer: Peter Yee Review Date: 2020-04-28 IETF LC End Date: 2020-04-28 IESG Telechat date: Not scheduled for a telechat Summary: This informative specification gives examples of using SDP to negotiate session capabilities between WebRTC peers. I lack the ability to machine check each example for correctness, but I’ve read them and offered suggestions to improve clarity and consistency. I’ve also marked a large number of nits that should be fixed prior to the document being submitted to the RFC Editor to prevent gnashing of teeth and pulling of hair. ;-) [Ready with nits] Major issues: None. Minor issues: None. Nits: (Given the difficulty in specifying a location within the examples, I’m relying on the page numbers, section numbers, and other identifying marks to point out where changes would be helpful. That means you have to use the text version of the draft to find what I'm specifying) General: Change “use-cases” to “use cases”. The hyphen is unnecessary. There’s also one instance of “use-case” (singular) that needs to be changed. Change “48khz” to “48 kHz” throughout the document. That aligns with preferred SI formatting and the proper name for the unit. Strongly consider changing “Audio” to “audio”, “Video” to “video”, “Stream” to “stream”, and “Session” to “session” throughout the document (with the obvious exception of at the beginning of sentences and in section titles). RFC 3550 does not capitalize these terms. There’s inconsistent usage of “n-way” throughout the document. To wit, sometimes I see the number (generally n is 1 or 2) spelled out in English, other times it is shown as numeric digits. Sometimes the hyphen is present, sometimes it is missing. “Way” is sometimes capitalized, sometimes it’s not. I don’t care whether you usage the English word for a number or the actual digits, but choose one for and use it consistently. The hyphen is not optional. “Way” is lower case in this usage. There are way too many of these occurrences for me to mark them individually, but you should be able to find them with a different searches. Change “reduced size” to “reduced-size” throughout the draft. This change aligns the draft with RFC 5506. In the “RFC#/Notes” column in several example, when RFC 5104 FIR is explained, drop the word “Frame” from the entry. RFC 5104 does not include “Frame” in the term. FIR is just “Full Intra Request”. Change “sreams” to “streams” everywhere. Change “stram” to “stream” everywhere. Consider changing “Offer” to “offer”, “Answer” to “answer”, “Offerer” to “offerer”, and “Answerer” to “answerer” to align with RFC 3264. Change “end-point” to “endpoint” everywhere. Specific: Page 1, Abstract, 1st paragraph, 1st sentence: append a comma after “video”. Page 1, Abstract, 1st paragraph, 2nd sentence: change “With in” to “Within”. Change “Rtcweb” to “WebRTC”. Change “protocol” to “Protocol”. Page 1, Abstract, 2nd paragraph, change “Rtcweb” to “WebRTC”, to maintain alignment with draft-ietf-rtcweb-overview usage. Page 3, section 1, 1st paragraph, 1st sentence: change “Javascript” to “JavaScript”. Append a comma after “updating”. Page 3, section 3, title: delete “the”. Page 3, section 3, 1st paragraph, 2nd sentence: delete “the”. Page 3, 2nd paragraph, 2nd sentence: insert “a” before “multimedia”. Append a comma after “addresses”. Append a comma after “invitation”. Page 3, section 3, 3rd paragraph: append a comma after “[RFC3550]”. Move “[RFC7826]” between “Protocol” and “applications”. Page 4, 1st paragraph: Insert “The figure” at the beginning of the sentence. Replace “Below figure” with “below”. Insert “a” before “high-level”. Page 5, 1st paragraph (after the figure), 1st sentence: insert “using a” before “JavaScript”. Page 5, 2nd numbered item: insert “a” before “participant’s”. Page 5, section 4, 1st paragraph, 1st sentence: insert “the” before “SDP”. Append a comma after “updating”. Page 5, section 4, 1st paragraph, 1st sentence: insert “to” before “[RFC3264]”. Change “operation” to “operations”. Page 6, 1st paragraph, 1st sentence: change “rule” to “rules”. Page 6, 1st paragraph, 2nd sentence: insert “a” before “protocol”. Delete “with”. Insert “the” before “participants”. Change “from” to “with”. Change “others” to “other”. Delete “perspective”. Append “messages” (or another similar word) after “SDP”. Page 6, 2nd paragraph, 1st sentence: insert a space before “the protocol”. Page 6, 4th paragraph, 1st sentence: change “With in” to “Within”. Change “them” to “themselves”. Page 6, 4th paragraph, 2nd sentence: Insert “The” before “JSEP”. Insert “and” before “transport”. Page 6, section 5, 1st paragraph: change “web based” to “web-based”. Change “below” to “follows”. Page 6, 1st bullet item: change “Audio only” to “audio-only”. Change “Video only” to “video-only”. Change “Audio/Video” to “audio/video”. Change “Sessions” to “sessions”. RFC 3550 does not capitalize these words. Page 6, 4th bullet item: insert “the” before “ICE”. Page 6, 5th bullet item: change “RTCP based” to “RTCP-based”. Page 6, 6th bullet item: insert “or” before “dual”. Change “dual-stack based” to “dual stack-based”. Page 7, 1st bullet item: change “BUNDLE based” to “BUNDLE-based”. Page 7, section 5.1, 2nd bullet item: change “apriori” to “a priori”. Insert “a” before “successful”. Page 7, section 5.1, 3rd bullet item: change “is” to “are”. Append a comma after “detailed”. Page 7, section 5.1, 4th bullet item: change “Eventhough” to “Even though”. Page 7, section 5.1, 5th bullet, 3rd sub-bullet: change the “an” before “ASCII” to “a” in both places. Change “ASCII” to “US-ASCII” in both occurrences to align with IANA’s preferred usage. Page 8, 1st bullet item: insert “The” at the beginning of the sentence: Change “Following” to “following”. Page 8, 1st paragraph following the sub-bullets: insert “the” before “[I-D.ietf-rtcweb-jsep]”. Page 8, 2nd bullet item: change “a” to “an” before “RTP Session”. Change the “a” before “RTP Stream” to “an”. Also review the general nit regarding capitalization of terms. Page 8, 3rd bullet item: append a comma after “H.264”. Page 8, 4th bullet item: change “is” to “are”. Page 8, 5th bullet item: change “is” to “are”. Page 8, 6th bullet item: append “’s” after “Bob”. Page 8, 7th bullet item: change “Mediastream” to “MediaStream”. Insert “and” before “MediaStreamTrack”. Change “Ids” to “IDs”. Insert “than” before “and/or” append “in comparison to” after “random”. Delete “than” before “the ones”. Page 9, 3rd bullet item: delete “section”. Page 9, section 5.2.1, 1st paragraph: insert “the” before “SDP”. Insert “a” before “secure”. Page 9, ladder diagram: see general nit “n-way”. Page 14, section 5.2.2, ladder diagram heading: change the comma to a slash. Page 14, section 5.2.2.1, 1st sentence: change “IPv4 only” to “IPv4-only”. Page 19, RFC#/Notes column, RFC4585: change “NACK based” to “NACK-based”. Page 19, RFC#/Notes column, RFC5104: delete an extraneous space after they hyphen. Page 24, RFC#/Notes column, RFC4585: change “NACK based” to “NACK-based”. Page 24, section 5.2.3, title: change “Data Only” to “Data-only”. Page 24, section 5.2.3, 1st sentence: change “setup” to “set up”. Change “file-transfer” to “file transfer”. Change the comma after “file-transfer” to “ or”. Append a comma after “control”. Page 25, ladder diagram: change “SCTP based” to “SCTP-based”. Change “DataChannel” to “data channel”. Page 31, section 5.2.5, 2nd sentence: insert “the” before “first”. Page 35, section 5.2.6: I had some difficulty in rewriting this sentence to make sure it’s clear that no one mistakenly believes the audio is somehow muxed into the video stream. I ended up with “In this scenario Alice and Bob engage in a one-way audio and video session with Bob receiving Alice's her presentation slides as a video stream and her audio.” I’m not entirely happy with that either. If you believe that the original wording is unlikely to be mistaken in its intent by the reader, feel free to ignore this suggestion. Page 36, ladder diagram: change “send only” to “send-only”. Page 37, RFC#/Notes column, RFC3264: change “Send only” to “Send-only” Page 38, RFC#/Notes column, RFC3264: change “Receive only” to “Receive-only”. Page 39, section 5.2.7: insert “the” before “following”. Change “setup” to “set up”. Append a period at the end of the sentence. Page 40, 1st bullet item: delete “the” before “Alice”. Page 40, 2nd bullet item: change “offerer’s” to “Offerer’s” to be consistent with the previous bullet. Or see the general nit concerning the terms “Offer”, “Offerer”, “Answer”, and “Answerer” for a more general solution. If accepting that general nit, then a correction in the previous bullet item is needed and this bullet item does not need to be changed. Page 40, 1st paragraph after bullet items: insert “a” before “single”. Insert “of” before “the Media Streams”. Consider making “Media Streams” lower case. Page 40, ladder diagram, title: change the comma to “ and “. Page 40, ladder diagram: change “address” to “addresses”. Page 45, section 5.2.8, title: insert a space before “Video”. Append a comma after “Video”. Page 45, ladder diagram, title: insert “ and “ before Data. Page 45, ladder diagram: insert “an “ before “identical”. Insert a space before “Video” at the bottom of the diagram. Page 50, ladder diagram, title: change the comma to “ and “. Page 54, section 5.2.10, title: drop the parentheses. Page 54, section 5.2.10, 1st sentence: change “show-cases” to “showcases”. Append a comma after “Video”. Insert “the” before “data”. Page 54, section 5.2.10, 2nd (partial) sentence: insert “a” before “unique”. Page 55, 1st partial paragraph: insert “the” before “data”. Page 59, section 5.2.11, 2nd sentence: insert “The” at the beginning of the sentence. Change “First” to “first”. Change “setup” to “set up”. Insert “an” before “Audio”. Insert “a” before “video”. Page 60, ladder diagram, title: delete the space after “Only”. Page 66, section 5.3, 1st sentence: change “coding, simulcast” to “coding and simulcast”. Page 66, section 5.3, 2nd sentence: insert “a” before “few”. Page 66, section 5.3, 3rd sentence: change “to” to “of”. Page 66, section 5.3.1, title: change “Sendonly” to “Send-only”. Capitalize “cameras”, “encodings”, and “camera” to match your other capitalization scheme for most other section titles. Page 66, section 5.3.1, 1st paragraph, 1st sentence: append “example” after “SDP”. Insert “an” before “Offer/Answer”. Page 66, section 5.3.1, 1st paragraph, 2nd sentence: change “source” to “sources”. Page 66, section 5.3.1, 3rd, 4th, and 5th paragraphs: insert “The” at the beginning of the paragraph. Page 66, section 5.3.1, 5th paragraph: append “solely” after “sources”. Page 67, 1st paragraph: Insert “The” at the beginning of the sentence: delete “the” before “5”. Page 67, 2nd paragraph: delete “a” before “non-interactive”. Page 67, ladder diagram: change “sendonly” to “send-only”. Append a comma after “H.264”. Page 70, RFC#/Notes column, RFC3264: change “Send only” to “Send-only”. Page 74, section 5.3.2, 1st paragraph, 2nd sentence: insert “is” before “being”. Change “stream” to “streams”. Page 74, ladder diagram: insert “a” before “sendonly”. Change “sendonly” to “send-only”. This section says the session has audio and a single video source, but the diagram doesn’t show an audio offer being made. Is that correct? Change “Codec” to “codec”. Page 78, 1st paragraph: change “[RFC4588] style” to “[RFC4588]-style”. Delete the hyphen in “re-transmission” to align with RFC 4588 usage. Page 78, 2nd and 3rd paragraphs: insert “The” at the beginning of the paragraph. Page 79, ladder diagram: insert a space before “all muxed”. Page 83, section 5.3.4, 2nd paragraph: change “Stream” to “Streams” and append a comma. Page 84 ladder diagram: change “audio,video” to “audio and video” at the bottom. Page 88, section 5.3.5, 1st paragraph: insert “a” before “Simulcast”. Change “Simulcast” to “simulcast”. Delete an extraneous “and”. Change “[RFC5956] style” to “[RFC5956]-style”. Page 88, section 5.3.5, 2nd paragraph: append a comma after “mechanism”. Insert “with” before “one”. Append a comma after “video streams”. Append a comma after “FEC streams”. Insert “which” before “are sent”. Page 89, ladder diagram: at the bottom of the diagram, you refer to this as “4 video streams”. In the description on page 88, you referred to this as “2 simulcast video streams, and 2 associated FEC streams”. Which one is it? Are FEC streams considered video streams? Also, change the comma to “ and “. Change “Simulcast” to “simulcast”. Append a comma after the “)”. Page 93, section 5.4: change “the” to “this”. Change “exchange” to “exchanges”. Change “extension” to “extensions”. Append a comma after “scenarios”. Page 93, section 5.4.1: change “audio-level” to “audio level”. Page 97, section 5.4.2: change the sentence to start “This example of SDP highlights the RTP header” Page 97, ladder diagram: change “interest to audio” to “interest in audio”. Change “audio-levels” to “audio levels”. Change “Audio-levels” to “Audio levels”. Change “CSRCS is” to “CSRCS are”. Page 100, section 5.4.3, title: change “legacy” to “Legacy”. Change “bundle” to “Bundle”. Page 100, section 5.4.3, 1st paragraph, 1st sentence: append a comma after “WebRTC endpoint”. Page 100, section 5.4.3, 1st paragraph, 2nd sentence: insert “an” before “audio”. Change “audio only” to “audio-only”. Insert “the” before “bundle-only”. Page 100, section 5.4.3, 1st paragraph, last word: change the comma to a colon. Page 100, section 5.4.3, 1st bullet item: Insert “The” at the beginning of the sentence. General nit regarding capitalization applies. Page 100, section 5.4.3, 2nd bullet: insert “the” before “BUNDLE”. Page 100, NOTE: insert “the” before “BUNDLE”. Page 101, ladder diagram: insert “the” between “accepts” and “audio” on the side. Page 105, section 5.4.4, 1st paragraph: change “which” to “that”. Insert “an” before “[RFC3264]”. Change “RTP/AVP based” to “RTP/AVP-based”. Insert “a” before “DTLS”. Page 105, section 5.4.4, 2nd paragraph: append a comma after “Bob”. Append a comma after “end-point” (noting general nit about end-point). Insert “the” before “procedures”. Insert “a” before “DTLS”. Change “DTLS-SRTP based” to “DTLS-SRTP-based”. Page 106, ladder diagram: change “End-point” to “endpoint” (lowercase, no hyphen) twice. Change “Legacy compliant” to “Legacy-compliant”. Change “dtls” to “DTLS”. Change “rtcp” to “RTCP”. On the side, change “legacy compliant” to “legacy-compliant”. Page 108, RFC#/Notes column, RFC4585, change “loss” to “Loss”. Page 108, RFC#/Notes column, RFC4566 change “RTP/AVP based” to “RTP/AVP-based” in two places. Page 109, section 7, 2nd paragraph: append a comma after “TLS transport”. Page 109, section 8, 2nd sentence: insert “a” before “syntax”. Page 118, section A.1, 2nd sentence: change “compliant to” to “compliant with”. Page 118, 2nd bullet item: insert “a” before “64”. Change “64 bit” to “64-bit”. Append a comma after “’addrtype’”. Page 118, 3rd bullet item: change “cases” to “case”. Page 119, 1st bullet item: change “with” to “and have”. Page 119, 3rd bullet item: change “WEBRTC” to “WebRTC”. Page 119, section A.1.2: insert “The” at the beginning of the sentence. Change “Following” to “following”. Page 119, section A.1.2, 1st bullet item: insert “the” before “dummy”. Page 119, section A.1.2, 3rd bullet item: insert “The” at the beginning of the sentence. Page 119, section A.1.2, 5th bullet item: delete “in” before “included”. Page 119, section A.1.2, 7th bullet item: append a comma after “retransmission”. Page 119, section A.1.2, 8th bullet item: append a period at the end of the sentence. Page 119, section A.1.2, 10th bullet item: change “i.e” to “i.e.,”, i.e., add a period and a comma. Page 120, 4th bullet item: change “lines” to “line”. Page 120, 6th bullet item: insert “the” before “following”. Page 120, 8th bullet item: change “session level” to “session-level”. Change “lip same” to “same lip”. Page 121, section A.1.3, title: change “DataChannel” to “Data Channel”. Page 121, section A.1.3, change “datachannel” to “data channel”. Page 121, 2nd bullet item: change “An JSEP” to “A JSEP”. Page 121, 5th bullet item: insert “an” before “SCTP”.