TwinCast Recovery¶
The TwinCast Recovery module provides automatic failover functionality for multicast streaming with zero downtime. It ensures maximum reliability for content delivery by automatically switching between primary and backup servers without interrupting the broadcast.
Overview¶
TwinCast Recovery is designed for content providers who need to deliver multicast streams with maximum reliability. The module implements a sophisticated standby mechanism that monitors the primary server and automatically activates the backup server when needed.
Key Features¶
- Zero Downtime Failover: Automatic switching without broadcast interruption
- Standby Mode: Backup servers monitor primary server status
- IGMP Compatibility: Works with any IGMP receiver
- Automatic Recovery: Seamless return to primary server when available
- Real-time Monitoring: Continuous status monitoring via
stats.push[0].standby_status
How Standby Mode Works¶
The standby mode operates through a sophisticated monitoring and switching mechanism:
Primary Server Operation¶
- Active Broadcasting: Primary server sends streams to multicast group address
- Continuous Monitoring: Backup server constantly monitors multicast group activity
- Status Verification: Backup server checks if any server is sending multicast packets
Backup Server Operation¶
- Standby State: Backup server remains in standby mode while primary is active
- Automatic Activation: When primary server goes offline, backup starts streaming
- Automatic Deactivation: When primary returns, backup stops and returns to standby
Failover Process¶
- Detection: Backup server detects absence of multicast packets from primary
- Activation: Backup server immediately starts streaming to multicast group
- Recovery: When primary server returns, backup automatically stops and returns to standby
- Monitoring: Continuous monitoring ensures immediate response to any issues
Configuration¶
Basic Setup¶
Configure TwinCast Recovery through the Mcaster Admin UI:
- Access Stream Settings: Go to the Output tab of stream settings
- Configure Primary Server: In the URL column of Push live video to certain URLs section, specify:
udp://239.1.1.1:1234
Where: 239.1.1.1
- multicast group address-
1234
- port for Mcaster to listen to -
Add Backup Server: Configure backup server with same multicast group settings
- Enable Standby Mode: Open Options and enable standby mode by checking Standby box
- Apply Changes: Click Save to activate configuration
Advanced Configuration¶
Multicast Group Settings¶
stream primary_stream {
input udp://239.0.0.1:1234;
push udp://239.1.1.1:1234;
}
stream backup_stream {
input udp://239.0.0.1:1234;
push udp://239.1.1.1:1234 standby;
}
Network Considerations¶
- Multicast Routing: Ensure proper multicast routing configuration
- IGMP Snooping: Configure switches for optimal multicast delivery
- Bandwidth Planning: Account for both primary and backup streams
- Network Isolation: Consider VLAN configuration for multicast traffic
Monitoring and Status¶
Standby Status Monitoring¶
Monitor the standby status using the stats.push[0].standby_status
field:
{
"stats": {
"push": [
{
"standby_status": "active|waiting"
}
]
}
}
Status Values¶
- active: Server is currently broadcasting to multicast group
- waiting: Server is monitoring but not broadcasting (standby mode)
Monitoring Best Practices¶
- Regular Status Checks: Monitor
standby_status
field regularly - Log Analysis: Review logs for failover events
- Performance Metrics: Track switching times and reliability
- Alert Configuration: Set up alerts for status changes
Use Cases¶
Content Provider Redundancy¶
- Satellite Broadcasting: Ensure continuous satellite feed delivery
- Cable Networks: Maintain service during server maintenance
- Live Events: Prevent broadcast interruption during critical events
- 24/7 Operations: Maintain service availability around the clock
Enterprise Applications¶
- Corporate Broadcasting: Reliable internal video distribution
- Educational Institutions: Uninterrupted lecture streaming
- Government Communications: Reliable emergency broadcast systems
Troubleshooting¶
Common Issues¶
Backup Server Not Activating¶
- Check Network Connectivity: Verify multicast routing
- Verify Standby Configuration: Ensure standby mode is enabled
- Monitor Logs: Check for error messages in system logs
- Test Multicast Group: Verify multicast group accessibility
Primary Server Not Detected¶
- Network Configuration: Check multicast group settings
- Firewall Rules: Ensure multicast traffic is allowed
- IGMP Configuration: Verify IGMP snooping on switches
- Server Status: Confirm primary server is broadcasting
Frequent Failovers¶
- Network Stability: Check for network instability
- Server Performance: Monitor primary server resources
- Multicast Congestion: Check for multicast traffic issues
- Configuration Conflicts: Verify no conflicting multicast groups
Diagnostic Commands¶
# Check multicast group status
netstat -g
# Monitor multicast traffic
tcpdump -i eth0 udp port 1234
# Verify IGMP membership
cat /proc/net/igmp
Performance Optimization¶
Switching Speed Optimization¶
- Network Latency: Minimize network latency between servers
- Detection Time: Optimize multicast packet detection timing
- Buffer Configuration: Adjust buffer sizes for optimal performance
- CPU Resources: Ensure adequate CPU resources for monitoring
Resource Management¶
- Memory Usage: Monitor memory consumption during failover
- CPU Utilization: Track CPU usage during standby monitoring
- Network Bandwidth: Plan for multicast traffic requirements
- Storage I/O: Consider storage requirements for logging
Security Considerations¶
Network Security¶
- Multicast Authentication: Implement multicast authentication if required
- Network Isolation: Use VLANs to isolate multicast traffic
- Access Control: Restrict access to multicast configuration
- Monitoring: Monitor for unauthorized multicast traffic
Configuration Security¶
- Secure Configuration: Protect configuration files
- Access Logging: Log all configuration changes
- Backup Security: Secure backup of configuration files
- Update Procedures: Follow secure update procedures