## 4 Streaming Applications Architecture over Named Data Networks  
A streaming media user can be listening to media or watching a video in real time or prerecorded over the Internet (IP) by current streaming applications. In streaming, continuous content is delivered by the producer to the consumer. The video may be delivered to be saved in the cache for later on-demand playback by CDN caching servers. In this way, a streaming producer may handle failures and diversity, such as traffic congestion, multiple versions of an encoder, different device video resolution, etc.  
The video distribution applications benefit from the NDN architecture. The live streaming tools (NDNlive, NDNvideo, and NDN-RTC) and prerecorded and live stream tools (NDNtube) were proposed by [20; 21; 22; 23]. Instead of relying on centralized servers as it is constructed with current streaming applications, the NDN design may make the servers robust by naming the streaming packets, which can be retrieved from the network layer, independently. Through NDN, the applications fetch the streamed content by name, and the content can be delivered either by the producer or by any router's CS. That also removes the third-party application requirements of managing and locating streamed contents, as designed in NDNtube [22] and video-conferencing applications [23].  
The audio conference tool (ACT) architecture over NDN, proposed by [24], takes the advantage of named data to locate the conference, the speakers, and to fetch packets from speakers. The tool also announces the conference by using a signaling protocol, which is called the session description protocol (SDP) [25]. The name is constructed as /ndn/broadcast/conference/session/speaker-list, for example. When the voice packet is generated by the speaker, the ACT server caches the data in SDP format, which describes the name prefix that can be used for media type, voice data, and public key locator.  
Figures 5 and 6 illustrate a generic name hierarchy on NDN streaming applications. The large video content is split into video segments with their frame number. The NDN video and audio name components are presented by the following:  
Routable prefix: This is used to identify the interest and forward it to the NDN network. Application: The NDN_x is used to identify the NDN application name, such as live streaming, video, RTC, and Tube. Stream ID: This is an identifier used to distinguish one stream from the others. Media: This is used to identify the content type for /video and /audio. Content: The audio and video frames are structured in the content and may be also used to identify the streaming information, such as codec H.264 and metadata. Frame: It identifies each audio and video frame by a number. Segment: It identifies each data frame segment.  
The content name may also include a content verification parameter and is identified by the metadata section of a data packet, as described by [26]. Each frame is signed by  
Figure 5: Video streaming and audio packet format.  
Figure 6: NDN streaming applications namespace (Adapted from [20]).  
the producer and signature carried within namespace <stream>/key in metadata. The metadata parameter may also include a freshness period (e.g., \(\approx\)1000 ms) of the data packet, which also defines the cache time for the data packet by its producer.