 In this module, we are going to look at a very attractive application of NGNs, particularly with regards to the customer base. IPTV is one of the most favorite applications and the delivery of the content for IPTV requires an understanding of different scenarios, particularly involving once roaming is there and once it's a non-roaming scenario. Naturally, we'll start with non-roaming because in roaming scenario, a lot of interaction between different IMS and their components of the engine architecture are going to be involved. So IPTV Unicasting is the transmission of the content from one content provider to one content seeker. So typically, IPTV services are provided to a variety of users who are coming from different NGNs. So there's a requirement that some functional elements have to be identified, which would be either activated or not activated depending upon where the user is located, because the content can be distributed across the NGN service providers, which are many. So in that case, we need to understand how two scenarios are independently handled. Let's look at the non-roaming scenario. It looks intuitive to assume that it's going to be a simpler scenario. And indeed, it is because here, the IPTV transport function in the engine architecture, it uses the service control functions which come naturally in the engine architecture. So all the connection establishment requests for establishing connection between the client or the user and the service provider are established through signaling. This signaling is based primarily on SIP and then certain control functions like activation of the content and pausing the content or streaming the content are all managed by the service control function. Here, the end user equipment functionality, which is implemented in the user equipment interacts with the network functions in the same engine. So the requirement to look for the content provider is not there. So no routing or lookup takes place. It's a very local phenomenon. So correspondingly, the network attachment control functions, which are responsible for providing connectivity of the user equipment to the engine architecture, take care of the initial requirements, such as the connectivity, the access and authorization to this particular content. Subsequently, all the functions like application provisioning, discovery of the service and the selection of the most appropriate content are done locally. So the main concern here is to highlight the point that since it is the same engine, so the service control function and the network attachment and control functions are primarily responsible and it looks pretty straightforward. If there's a requirement for QS control, because a user might be expecting certain quality of service. So in that case, the same admission control functions, the resource reservation functions of the transport stratum are activated. It gets a little more complicated when we talk about the roaming scenario, because in roaming scenario, the user equipment moves from the home NGN to the visited or the foreign NGN. Since both of these are NGNs, so there's an understanding that the two IP multimedia systems of the original home NGN and the visited NGN are going to interact with each other. The user makes an explicit request while being in the foreign NGN. So the responsibility to interact with the home NGN lies with the visited NGN. This is best understood once we look at the complete illustration. Here we start off with the leftmost side. You can see here that we have the IPTV transport function, which are incorporated in the user equipment, which make an explicit request to the access network functions in the NGN architecture. So a request is made and that after granting the request, then the IPTV transport functions interact with the network attachment and control function for subsequent authentication upon the authentication approval. Then an IP address is assigned and then formally the IMS functions are invoked through the SIP processing that involves registration of the client or user equipment IP address and credentials with the user profile. So user profile looks at it as a case of a prepaid customer or a postpaid customer and remaining balance etc. Once everything is there, then it is allowed to proceed. So the IMS functions then allow the IPTV transport functions to be registered as part of the allowed users. Then the ITF starts the proper SIP signalling because this is going to be request in which the content is being requested from remote entity. So the SIP invite for real time streaming protocol is initiated that subsequently triggers resource reservation and this resource reservation allows the required bandwidth computing power and the time of service to the requesting ITF. Then the IMS calls the application function or the content provider for the video and demand. Then acknowledgement is sent to the ITF and after the request for streaming service then the initiation of content delivery is requested because first the content was requested, now the content delivery is being requested. Subsequent approval is granted after resource reservation and then an explicit request is sent to deliver the data and then data streaming takes place. The video and demand basically can be delivered from the application function right to the ITF using the protocol stack of UDP over IP because while UDP is at the transport layer, RTP is at the application layer. So the data or the live or the streaming data is encapsulated from the application function server end to the ITF and hence the video is played back on the client user equipment.