IPTV (Specific to the Golf)

For more information on Switches and the ZeeVee boxes used on the Golf, or a refresher of your IPTV training have a look at this article.

IPTV Switches

Layer 2 & 3 Switches

Typically, on golf events Layer 2 switches are used out on course. But what exactly is a Layer 2 switch?

A table detailing the OSI Model.
Figure 1 OSI Model

Above is the OSI Model where the term Layer 2 comes from (The Data Link Layer). From here we can understand what the switch will be achieving, in our case moving traffic in a specific LAN (Local Area Network). The switch will store the MAC address of devices connected, and what port they can be found on. A Layer 3 device (such as a router, or some switches) can hold information about multiple networks (be that LANs, WANs, or VLANs). A Layer 3 switch functionally exists between a Layer 2 switch and a Gateway Router.

The basic information we want to know about our devices are the following:

  • The Port that the device that it is plugged into – Think of this as the Flat number in a multi-story that our device will live at.
  • The IP Address that the device is either assigned or has pre-set – Think of this as our way to contact our device.
  • The Subnet that our device sits in – This can show us the range that we can communicate to it in
  • The Router/Gateway the device is looking for – When the device wants to talk to a device, it will ask if can be connected to it.

Subnets

Subnets let you divide your network up where it’s needed. Imagine you have a big apartment building with many floors and apartments. A regular IP address is like giving everyone just a building number. It doesn’t tell you which floor or specific apartment they’re in.

Subnetting for dummies - Spiceworks
Figure 2 Subnet Classes

Subnetting is like adding sub-addresses within the building number. It’s like saying “Building 1, Floor 3, Apartment 2”. This way, you can easily deliver mail or messages to the right person. You take a large network (like the apartment building) and divide it into smaller ones (like floors). These smaller networks are called subnets. A subnet mask is like a special code that tells everyone which part of the address is the network part (building) and which part is the individual address (floor and apartment). The benefits of splitting a network into different subnets are that we can keep specific devices secure by reducing unwanted traffic and keeping things more efficient allowing routing to be faster. Along with flexibility as we know the exact number of devices you need in each subnet.

DHCP

Devices in a network can be assigned two ways. Dynamically from DHCP (Dynamic Host Configuration Protocol) where a service in the network will distribute an address to any devices that request one for a set period (Discover > Offer > Request > Acknowledge), or a Static address where the information is set by the user.

A diagram detailing DHCP in action
Figure 3 DHCP in action

DHCP is like a helpful manager who automatically assigns apartment numbers (IP addresses) to residents (devices) in a network. It works like this:

New resident arrives: When a new device joins the network, it’s like a new resident arriving. It doesn’t have an apartment number (IP address) yet.

Resident asks manager: The device sends a message asking the network (the manager) for an apartment number.

Manager checks availability: The DHCP server (the manager) checks if there are any free apartments (unused IP addresses).

Manager assigns apartment: If there’s one available, the server assigns it to the device and sends it the details (IP address, subnet mask, lease duration).

Resident moves out: When a device leaves the network, it’s like a resident moving out. It releases its apartment number back to the server so it can be assigned to someone else.

Here’s why DHCP is useful:

Automatic: No need to manually configure each device, saving time and effort.

Flexible: Devices can come and go without needing manual intervention.

Efficient: Unused IP addresses are automatically released and reused.

VLANs

On our Layer 2 switch configurations we have separate VLANs to divide traffic. Think of these as virtual walls within the network splitting them into groups, in our case we have the following VLANs: VLAN 4 IPTV VLAN 5 INTERNET VLAN 6 CONTROL

Information on the same VLAN can pass freely to each other, but to go into other rooms, they will need to go through a router to pass into an VLAN.

Think of it this way: Subnetting is like dividing the building into separate apartments, while VLANs are like creating invisible walls within a single apartment building to separate different groups.

IGMP Snooping & Queriering

Imagine you’re hosting a party in your apartment building. But instead of everyone wanting to hear the same music, different groups want different channels. That’s where IGMP and IGMP Querier come in, like party organizers for network traffic.

IGMP (Internet Group Management Protocol) is like the party guest list. It helps figure out which groups (multicast groups) want to receive specific broadcasts (like music channels). Devices interested in a channel send an “I’m in!” message (IGMP report).

IGMP Snooping is like the bouncer at your party. It lives on network switches and checks the guest list (IGMP reports) to see who’s interested in each channel. It only allows traffic for channels with interested guests to pass through, saving bandwidth and preventing unwanted noise.

IGMP Querier is like the party host who keeps the guest list updated. It periodically asks everyone, “Who’s still interested in these channels?” If someone loses interest, they send an “I’m out!” message (IGMP leave), and the Querier updates the guest list.

IGMP snooping - Wikipedia
Figure 4 IGMP in action

Here’s a breakdown:

Who uses it: IGMP is used by devices like TVs and smart speakers, while IGMP Snooping and Queriering run on network switches.

Benefits: Saves bandwidth, reduces network clutter, and improves performance for everyone.

Similarities: Both work with multicast traffic, which sends data to multiple devices at once.

Differences:

IGMP is a protocol used by devices.

IGMP Snooping and Queriering are features on network switches.

Queriering keeps the “guest list” updated, while snooping uses it to control traffic.

Think of IGMP as the communication tool, IGMP Snooping as the enforcer, and IGMP Querier as the list manager, all working together for a more efficient and enjoyable network party!

Without IGMP in the network, we might see what is called flooding, which will slow down the network and in the long run might cause us issues in the long run.

UDP Flood wireshark – The Cybersecurity Man
Figure 5 UDP Flooding on a network via Wireshark

Switch Configuration

All these settings are setup on configurations ready to deploy directly onto switches, so they are ready to go. This will give our Layer 2 switches their set VLANs and point them to the IGMP Querier. The basic golf IPTV switch configurations can be found here.

Our IGMP querier and DHCP server will run from a Layer 3 device, in most cases on golf this will be the Netgear M4100.

Applying a configuration to a switch is found in the “Maintenance” tab on a Netgear switch, and within “File Operations” on a Cisco.

Encoding

What is it encoding?

To get a signal onto the network we need to encode an analogue signal and convert that to something that can be transferred across our network. In a typical case we will use a Kiloview E1 or RE1 to perform this. We need to consider what type of stream we will be pushing on to our network, in our case we will go over UDP and RTP as our method of transport, though SRT might be used in some cases. We also need to consider our Bitrate, be that a Constant or Variant bitrate (CBR and VBR) and bps (bit per second). The framerate that we are sending out, something that matches up with our input source and that our end destination will accept. Along with our GOP size (Group of Pictures) to simplify it, we want this to be double the framerate that we are using.

UDP & RTP

Imagine you’re delivering pizzas to friends across town. You have two options:

UDP (User Datagram Protocol): This is like a quick delivery service. They throw the pizzas in their car and zip off, hoping they all get there eventually. It’s faster and cheaper, but some pizzas might be cold or missing toppings.

UDP Streaming: This is like using UDP for delivering video or audio streams. It’s fast and efficient, but some packets might get lost or arrive out of order, leading to glitches or choppy playback. This is often used for live streaming, where speed is crucial.

RTP (Real-time Transport Protocol): This is like adding a delivery guy with a timer and a map. He uses UDP for speed but also keeps track of the pizzas, resending any that get lost and putting them in order. It’s still faster, but more slightly reliable than plain UDP.

Feature

UDP Streaming

RTP Streaming

Reliability

Low

Medium

Speed

Fast

Faster

Error correction

No

Yes (limited)

Order guarantee

No

Yes (partially)

Typical use

Live streaming

Live streaming, real-time communication

Figure 6 UDP & RTP summarised

To simplify it:

  • Use UDP streaming when speed is essential and glitches are acceptable (e.g., live sports).
  • Use RTP streaming when speed and some reliabilities are important (e.g., video calls).

Pushing a stream to the network

Now that we have gone through the type of stream we need to push that onto the network. On our Kiloview we can build either an UDP or RTP pushing stream with a set multicast address that sits in the Class D range so will travel though all subnet and does not need to sit in the same range as the intended host(s) along with a port for the stream to accessed on

Decoders

Now that we have encoded our video signal and sending it over the network, we need to decode the stream into a viewable format. This typically is done with a decoding device (like a ZeeVee STBi3) or can be viewed on a via a media player such as VLC. This is done by opening a Network location and pointing it to the multicast address that our encoder is broadcasting out on with the correct format that VLC accepts.

UDP://@MULTICASTADDRESS:PORTNUMBER

RTP://@MULTICASTADDRESS:PORTNUMBER

A decoder will be configured to point to the address in the same sort of manner, in our case will look at how the STBi3 is monitored and controlled by the IPTV STB Manger.

STB Manager

The IPTV STB Manager is a docker based application that can operate and manage boxes in a simple easy to use format. Rather than accessing induvial boxes via their IP address :8080 and shoot html commands to them.

When Windows starts, allow the Docker to open and run until the IPTV Manager container status reads Running 7/9 open your browser and go to localhost:5050.

A screenshot of a computer

Description automatically generated
Figure 7 IPTV STB Manager Homepage

Configuration: IP Scanning must be set to the range the STBs will pick up their DHCP or static IP addresses. The manager server address should be set to the IP Address of the machine running the IPTV STB manager.

A screenshot of a phone Description automatically generated

Channel List: Create channels first, the name and number will be what appears in the EPG of the STB.

The Multicast address will be determined by:

• The stream address in the encoder, as well as

• The Port Number

• Whether it is RTP or UDP.

Create Channel Group will determine which of your channels are available in the STB groups.

Splash Screens: This is where you store the image files for the STB Splash Screen. They must be 1920 x 1080.

STBs: Create groups first, depending on location give a relevant name for each, along with a colour to quickly identify it, and the same for the channel, depending on which channels they require.

Once you are sure the STBs have been allocated an IP address, press SCAN. This will scan the IP range set during configuration and will display the number of boxes discovered in Blue Disc. Indicator. To adopt the STB, click the 3 dots and press Adopt, which will open a window to name the STB, and set the Group and Splash Screen.

The STB should now appear in the allocated Group. On the STB display on the TV, you will see the volume change to confirm the process. The STBs will need to be deleted and re-adopted if the Splash Screens or Channel lists are updated.

Global & Group Control – will change every adopted box, and boxes in the selected group. You can also control an individual box if required via the 3 dots by each icon.

Troubleshooting

When troubleshooting issues a good way to identify and resolve issues is to use the OSI model. Tackling issues in these layers can help find issues, either by taking a top down approach to the situation, going bottom up, or dividing between the two to source the problem.

A diagram of a diagram

Description automatically generated with medium confidence
Figure 10 Using the OSI to troubleshoot problems.

Here are some useful programs to download if they aren’t already on the machine (This link is only accessible to Creative Technology employees)

To summaries the programs suggested:

Wireshark – View and monitor traffic in the network to identify if there is anything wrong such as UDP flooding.

Advanced IP Scanner – Allows you to scan a set IP range for devices on the network, such as decoders, switches.

VLC – Monitor streams from in local environment.

Command prompt commands that might be useful

ipconfig /all – show your devices IP address and MAC address.

ping {IP ADDRESS} – send four packets of data to the destination to see if there is a response (you can follow the IP address with -t to continuously send the ping command, can cancel it with Control+C).

tracert {IP ADDRESS} – will indicate the amount of network hops discovered and time (in ms) for each hop.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *