Auteur Sujet: Exigences TV  (Lu 11553 fois)

0 Membres et 1 Invité sur ce sujet

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« le: 10 juin 2020 à 23:25:25 »
Après moult essais,  il semblerait qu'il faille réunir ces 3 conditions pour avoir à coup sûr la TV chez ByTel:

- marquage p3 des paquets IGMP via la cos
- possibilité de forcer IGMPv2
- un proxy IGMP qui ne traîne pas de bugs impactant (notamment un bon support des VLAN) le bon fonctionnement du multicast


Bug connu:
en sortie de veille, sans redémarrage du proxy IGMP, la dernière chaîne regardée est accessible mais pas les autres pendant 2 minutes (erreur F3411) alors que le flux arrive sur le port ethernet de la Miami.


En ce moment, je teste ce setup avec openwrt sur ER-X et ça fonctionne bien (modulo les macro-blocs plus présents qu'avec la bbox à mon goût).
Sur pfsense, forcer IGMPv2 ne fonctionne pas correctement, d'où ma bidouille avec pimd.

Soit votre OS (pfsense, opnsense, GNU/Linux vous permet de marquer les paquets) soit il faut utiliser un switch qui permet cela.
Vite fait en s'inspirant du marquage p6 sur les requêtes DHCP chez Orange: https://lafibre.info/remplacer-livebox/switch-gs108tv2-pour-prendre-en-charge-la-cos-devant-les-routeurs/
où un seul VLAN est utilisé: 100

Avec le même branchement, on ne marque pas le DHCP p6 mais l'IGMP p3 selon les 2 images suivantes (vous êtes assez grands pour comprendre le principe, n'est-ce pas ?).
« Modifié: 13 juin 2020 à 12:20:15 par mirtouf »

nonosch

  • Abonné Free fibre
  • *
  • Messages: 248
  • Mulhouse 68
Exigences TV
« Réponse #1 le: 11 juin 2020 à 11:10:56 »
Salut,

tu pourrais indiquer ta conf sous openwrt stp ?


En tout cas merci pour ton super travail et le temps que tu dois passer dessus

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« Réponse #2 le: 11 juin 2020 à 12:35:04 »
J'utilise omcproxy (igmpproxy fonctionne aussi):
config proxy
option scope global
option uplink wan
list downlink lan

config proxy
option scope global
option uplink wan6
list downlink lan

et une règle en input:
config rule
        option src 'wan'
        option name 'Multicast'
        list dest_ip '224.0.0.0/4'
        option target 'ACCEPT'
        list proto 'udp'
        list src_ip '89.86.96.0/24'
        list src_ip '89.86.97.0/24'
        list src_ip '193.251.97.0/24'

Par défaut, openwrt autorise le trafic IGMP.

avec le marquage p3 sur l'IGMP sinon le flux coupe au bout de 5 minutes.
et forcer IGMP v2:
net.ipv4.conf.all.force_igmp_version=2
Je ne sais pas encore si en bidouillant le ttl, on peut se passer du marquage cos.

nonosch

  • Abonné Free fibre
  • *
  • Messages: 248
  • Mulhouse 68
Exigences TV
« Réponse #3 le: 11 juin 2020 à 23:31:50 »
Merci,

je vais recevoir]mon Er-x la semaine prochaine

le temps de le passer sous  Openwrt et je te fais un retour (pour l'instant j'avais toujours l'erreur 34.. pour la tv)


avec le marquage p3 sur l'IGMP sinon le flux coupe au bout de 5 minutes.

Le marquage p3 pour l'igmp peut se définir soous Openwrt (si oui comment ) où faut-il un switch externe  ?


mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« Réponse #4 le: 11 juin 2020 à 23:36:34 »
Cela doit être possible mais avec un risque de perdre l'offload, j'utilise un switch pour le faire.

nonosch

  • Abonné Free fibre
  • *
  • Messages: 248
  • Mulhouse 68
Exigences TV
« Réponse #5 le: 12 juin 2020 à 00:36:27 »
Cela doit être possible mais avec un risque de perdre l'offload, j'utilise un switch pour le faire.

Faisable en partant sur une base comme celle de la fibre Orange avec un script vlanprio et des regles "iptables custom rules" adapté  a la prio 3 ?

cf : https://lafibre.info/remplacer-livebox/remplacement-de-la-livebox-par-un-routeur-openwrt-18-dhcp-v4v6-tv/

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« Réponse #6 le: 12 juin 2020 à 09:22:43 »
Tu feras le test. ;)

nonosch

  • Abonné Free fibre
  • *
  • Messages: 248
  • Mulhouse 68
Exigences TV
« Réponse #7 le: 12 juin 2020 à 09:46:00 »

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« Réponse #8 le: 12 juin 2020 à 13:40:17 »
Tu vas aussi pouvoir vérifier que les replays ne fonctionnent plus suite à cette mise à jour:
https://www.bbox-mag.fr/forum/viewtopic.php?f=149&t=2859


un reboot et ça repart.
« Modifié: 12 juin 2020 à 15:02:18 par mirtouf »

nonosch

  • Abonné Free fibre
  • *
  • Messages: 248
  • Mulhouse 68
Exigences TV
« Réponse #9 le: 12 juin 2020 à 19:06:00 »
Tu vas aussi pouvoir vérifier que les replays ne fonctionnent plus suite à cette mise à jour:
https://www.bbox-mag.fr/forum/viewtopic.php?f=149&t=2859


un reboot et ça repart.

tant mieux.  :)

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« Réponse #10 le: 13 juin 2020 à 13:11:12 »
Vite fait sur un coin de table avec le paquet ip-full.

Au démarrage via rc.local:
for i in 0 1 2 3 4 5 6 7; do
## on définit pour chaque file une priorité
    ip link set eth0.100 type vlan egress $i:$î > /dev/null
done
## On modifie la priorité de la file 1 à 0 c'est là qu'on renverra tous nos paquets, la file 0 qui est celle par défaut passe à 6
    ip link set eth0.100 type vlan egress 1:0 > /dev/null
    ip link set eth0.100 type vlan egress 0:6 > /dev/null

Puis des règles iptables perso:
##IPV4
## Tout les protocoles changent de file vers le skb 01 dont on a mis la prio à 0
iptables -t mangle -A POSTROUTING -o eth0.100 -j CLASSIFY --set-class 0000:0001
##On maintient les paquets réseaux dans une file à prio 3 (IGMP) ou 5 (ICMP)
iptables -t mangle -A POSTROUTING -o eth0.100 -p igmp -j CLASSIFY --set-class 0000:0003
iptables -t mangle -A POSTROUTING -o eth0.100 -p icmp -j CLASSIFY --set-class 0000:0005
##Les paquets VOIP(SIP) sont taggués EF ont les met en prio 5 (j'utilise un VLAN dédié pour la bbox)
#iptables -t mangle -A POSTROUTING -o eth0.100 -m dscp --dscp 0x2e -j CLASSIFY --set-class 0000:0005
##Si votre client DHCP n'utilise pas les raw socket il faut envoyer les paquet DHCP dans la file 6 (prio 6)
iptables -t mangle -A POSTROUTING -o eth0.100 -p udp --dport 67 -j CLASSIFY --set-class 0000:0006
##IPV6
## Tout les protocoles changent de file vers le skb 01 dont on a mis la prio à 0
ip6tables -t mangle -A POSTROUTING -o eth0.100 -j CLASSIFY --set-class 0000:0001
##On maintient les paquets réseaux dans une file à prio 6
ip6tables -t mangle -A POSTROUTING -o eth0.100 -p ipv6-icmp -j CLASSIFY --set-class 0000:0005
##Si votre client DHCPv6 n'utilise pas les raw socket il faut envoyer les paquet DHCPv6 dans la file 6 (prio 6) (c'est le cas de dibbler)
ip6tables -t mangle -A POSTROUTING -o eth0.100 -p udp --dport 547 -j CLASSIFY --set-class 0000:0006

Je me demande l'impact sur les performances.
« Modifié: 13 juin 2020 à 14:06:10 par mirtouf »

mirtouf

  • Abonné Bbox fibre
  • *
  • Messages: 1 304
  • Chelles (77)
    • L'antre de la bête
Exigences TV
« Réponse #11 le: 13 juin 2020 à 15:03:30 »
Comme prévu, c'est a priori un choix entre offload et marquage DSCP.

C'est OK pour une offre Must mais pas une offre Ultym.