Communication Networks 2 --- IPTV Measurement
Total Page:16
File Type:pdf, Size:1020Kb
Communication Networks 2 --- IPTV measurement Measurement guide 1. Introduction The goal of this measurement is to get to know network context of the Internet Protocol Television (IPTV) technology, mostly focusing to multicast based IP packet transmission and Quality of Service (QoS) guaranteeing based on network features. Students will get to know multicast IP transport, methods of IPTV video-streaming and protocols. And they will measure network paramaters focusing to the QoS determination. Hardware and software devices applied in the laboratory: AverMedia Volar HD PRO DVB-T receiver (for digital TV broadcast receiving) Linux server for the DVB-T videostream conversion in real-time, properly for technological requirements of the IPTV services. o Video for Linux (V4L), w_scan, Dvblast, lighttpd Emulator of network QoS (delay, jitter, packet loss) parameters: NetEm Ethernet switches with Multicast (IGMPv3) support Client side: PC-s for measurering (Windows 7 x64) Wireshark protocol analyzer KODI mediaplayer and Simple IPTV Client plugin VLC mediaplayer 1. Figure: IPv4 Test-network 1 IPTV services transport of live TV and radio broadcast on the IP network Digital Rights Management (DRM) Electronic Program Guide (EPG) Teletext Recording of live broadcast (client side) Picture on Picture (PiP) – During the TV program watching on the display (usually in the corner) other TV channel program comes up on a small window Time shifting – recording of live program and delay-action replay More recording in the same time + live broadcast (bandwidth of the internet service could be a limit) Programmed recording based on the EPG Video on Demand – (TV programs, films, serials, etc) Applications running (news, weather, rates, messaging, etc) Protocol stack and media codecs IPv4/IPv6 IGMPv3/MLDv2/PIM UDP RTP/RTCP MPEG-2 Transport Stream H.264/H.265 (video codec) AAC (audio codec) 2. Multicast packet transport on the IP network Two spreading methods of media contents transporting exist in an IP network. In the first model based on everybody’s demands are initiated viewing of different contents. This is the Video on Demand (VoD) system. This type of service is provided by the Youtube, Netflix, TV.GO, IPTV providers, on the airplanes, etc. In this case provider has to deliver the proper content in the proper time. Accordingly, dedicated unicast media-streams have to be transported from the provider toward to every client. Resource requirements of a unicast transport are almost linearly scaled. Therefore the increase of subscriber/active viewers’ number needs to be followed by the appropriate amount of resources at the server side and network side as well (CPU, memory, bandwidth). In this case of this unicast spreading model the biggest challenge is handling of the periodic peak load. Good example is for the second model, when the linear programme of the TV channel needs to be delivered to subscribers through an IP network. In this case viewers of the same channel can be gathered into a same group and only one media stream is needed to be transported to this group, without reference to the number of subscribers in this group. This model gives a very good scalability, because network services need to deliver the media stream to members of an appropriate group, but this requires a special multicast IP routing. Here we need to mention that some providers build up their own multicast IP routing (which is totally idependent from unicast routing) in their network, due to more effective serving of subscribers. Good example is for sutdents this measurement of an IPTV service. 2 Multicast IP addresses In case of multicast message transport, we use a special IP address range 224.0.0.0/4 (D class), based on the IPv4 protocol. Very first four bits of the first octet in Class D IP addresses are set to 1110. In this address range one address is using for identification of more nodes (network interfaces) as a one group. This is the identificator of this specific group. Members (network interfaces) of this group do not need to be a part of a same IP network. In this measurement one muticast address is used for one TV channel identification. Namely, a media stream got from the programme of this TV channel is forwarded to members of this multicast group with a D class type IP address. Class D has IP address range from 224.0.0.0 to 239.255.255.255. IP address ranges: Ranges inside the Name Goal D class Protocol specific addresses, which are valid inside 224.0.0.0- Local subnetwork a local network. This range is managed by the 224.0.0.255 IANA. Protocol specific traffic, which is forwardable on 224.0.1.0- Internetwork control block the public Internet network. This range is 224.0.1.255 managed by the IANA. 224.0.2.0- 224.0.255.255 This is for applications that don't fit either of the 224.3.0.0- AD-HOC block previously described two categories. This range is 224.4.255.255 managed by the IANA. 233.252.0.0- 233.255.255.255 Range using for source-specific multicast 232.0.0.0/8 Source-specific multicast forwarding. An experimental, public multicast address range 233.0.0.0/8 GLOP addressing for publishers and Internet service providers Address range provided to each organization that Unicast prefix based 234.0.0.0/8 has /24 or larger globally routed unicast address multicast addresses space allocated Administratively scoped Address range for private using within an 239.0.0.0/8 multicast addresses organization. (Private multicast IP addresses) 3 Internet Group Management Protocol (IGMP) The IGMP is a communications protocol used by IP hosts and routers for multicast membership management. The IGMP message changing operates between the client computer (host) and a local multicast router. These messages are directly embedded into IPv4 packets. Based on the “level view” like the ICMP, IGMP is also a part of the IP protocol set working on the network level. The most important novelty of this protocol version 2 was that promoted the explicit leave group marking (Leave Group message). The current version 3 plus contains a possibility of source-specific multicast. More information about this can be read in the PIM protocol description. The IGMPv2 or IGMPv3 are used commonly in case of IPTV systems. The Leave Group message, benefit of the IGMPv2, allows quick traffic termination toward members of a specific group, when this group does not have active members anymore. IGMPv2/v3 message types Membership Query – The IGMP querier is a hosts’ multicast membership querry. Three subtypes are known: general query, group-specific query and group-and-source-specific query. Membership Report / Join – Membership report toward the multicast router (IGMP querier). A host with the same message can join this multicast group. Leave Group – explicit mark of a group leaving IGMPv3 source filtering Source-specific multicast support can be specified with filters for address of source node. Include mode: In this mode, the receiver announces membership to a host group and provides a list of IP addresses (the include list) from which hosts wants to receive traffic. Exclude mode: In this mode, the receiver announces membership to a host group and provides a list of IP addresses (the exclude list) from which hosts does not want to receive traffic. The display filter igmp can be used for the IGMP messages displaying in the Wireshark program. Tip: Other programs and Windows services than the VLC program also generate IGMP messages traffic in our PC. Therefore we have to pay attention to identification of IGMP Join/Leave messages in case of TV channel changing. In case of IGMP traffic analysis you could recognise that the network router gets hosts’ multicast group membership at stated intervals (it could be 20sec in the laboratory network). A Membership Query message is receiving from the router and the host is answering with a Membership Report message (messages). Important: do not be confused, these messages are separate from the join messages generated in case of TV channel changing! The General Membership Query messages are sent to the 224.0.0.1 target address by the multicast router. This is the global address of all multicast hosts. 4 The Membership Report answer messages and the Join/Leave messages are sent to the 224.0.0.22 address by the endpoint. IGMP Snooping Ethernet switches commonly send all received packets with multicast address to all their ports (like in case of broadcat traffic). This causes unnecessary traffic to ports which are not connected with active members of the certain multicast group. The IGMP Snooping function of the IGMP layer 2 is like an optimization. IGMP snooping monitors the IGMP traffic between hosts and multicast routers. The switch uses what IGMP snooping has learned, forwarding multicast traffic only to interfaces that are connected to interested receivers. This conserves bandwidth by allowing to send multicast traffic to only those switch interfaces that are connected to hosts that want to receive traffic, instead of flooding traffics to all interfaces in the network. Important: Ethernet switches in the laboratory network do not delete immediatly proper multicast group/port connections from the local IGMP table in the laboratory network. Therefore in case of TV channel changing, belong the new channel multicast traffic also the traffic of old channel is arriving to the network interface for a while. Check how long has appeared both groups’ traffic on the interface by the Wireshark! This information could be important when the duration of channel changing is observing. Because when we are changing to the channel, which was watched only before 60 seconds (or shorter time), then the duration of the second phase of this channel changing is zero second.