Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Alles eine Frage des Images
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Moin,

folgende Ausgangssituation:

- Yadi 2.2.0.4 auf einer Sagem 1x-Box
- NFS-Server auf einer FreeBSD-6.2-p9 Maschine (mit 1Gbit Netzwerkkarte)
- Dbox hängt an einem 100Mbit-Switch, dieser ist verbunden mit einem 1Gbit-Switch, an diesem hängt der FreeBSD-Rechner.

Diese Ausgangssituation kann nicht geändert werden. Der Modus der Netzwerkkarte am NFS-Server kann nicht runtergesetzt werden, es kann keine direkte Verbindung zwischen den Rechner hergestellt werden.

Nach langem suchen und lesen hier im Forum und vielen Fragen (die mir beantwortet wurden) im IRC weiß ich nun folgendes (berichtigt mich, wenn ich falsch liege): die rsize und wsize sollten auf 32768 gestellt werden. Sobald ich jedoch an der Dbox einen Wert > 16384 setze, wird dieser ignoriert und ein "mount" zeigt folgende Ausgabe:

Code: Alles auswählen

192.168.1.2:/mnt on /mnt/custom type nfs (rw,v3,rsize=16384,wsize=16384,soft,udp,nolock,addr=192.168.1.2)
Ich habe bereits tcp versucht und andere Werte für wsize/rsize. Ich habe versucht mit und ohne STPS-Modus aufzunehmen. Der Datenfluss bricht jedoch unregelmäßig ab. Aufnahmesender ist fast immer ZDFDoku. Es gibt Aufnahmen, da läuft alles komplett durch, es gibt Aufnahmen (gleiche Sendung) die bricht häufig ab. Mal nimmt er 3-4GB ohne Abbruch auf (selten), ein ander Mal bricht er nach X MB ab und beginnt eine neue Datei.

Folgende Fragen:
1. Ist der NFS-Client im aktuellen Yadi hier "beschränkt"?
2. Serverseitig kann ich die wsize und rsize ja nicht beeinflussen, oder?
3. Wie könnte ich in dieser Ausgangssituation noch etwas Performance herauskitzeln?

Solltet ihr noch weitere Infos benötigen, sagt Bescheid.

Gruß und Danke
Columbo
NoX1911
Interessierter
Interessierter
Beiträge: 50
Registriert: Montag 16. Februar 2004, 16:13

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von NoX1911 »

Hört sich nach typischem Flaschenhals Netzwerkkarte an. Ich konnte das durch 32768 rwsizes abstellen. Die DBox kann das definitiv, dein Server wohl nicht. Evtl. nur eine Konfigurationssache. Bei FreeBSD kann ich dir aber nicht weiterhelfen.
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Danke, dann seh ich nochmal auf der Serverseite nach. Wobei ich mir fast sicher war gelesen zu haben, dass zB Yadi-Images einen nfs-client haben, der eine Grenze von der rsize/wsize hat...
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Tommy »

nfs-client haben, der eine Grenze von der rsize/wsize hat...
Bullshit :wink: - der Server setzt die Grenze
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Ich bin einen Schritt weiter. Die Beschränkung liegt tatsächlich nicht in der Dbox aber auch nicht am Server. Es ist wohl ein kleiner "Bug" im Image:

Wenn ich "vers=3" nicht bei den Mountoptionen angebe, wird zwar mit v=3 gemountet, die wsize+rsize sind allerdings auf 16384 beschränkt. Gebe ich "vers=3" an, wird auch mit v=3 gemountet, wsize+rsize lassen sich allerdings auf 32768 setzen. <-- falsche Aussage (Siehe Edit)

Edit: mit udp kann ich immer noch nicht 32768 mounten. Nur tcp funktioniert das. Kann das jemand bestätigen?

Mit einem Script, das ich im Netz gefunden habe, habe ich Tests gefahren:
Results for write throughput:
8.134 Mbit/s with udp,async,wsize=32768
7.895 Mbit/s with udp,async,wsize=16384
7.255 Mbit/s with udp,async,wsize=8192
6.391 Mbit/s with tcp,async,wsize=32768
6.242 Mbit/s with tcp,async,wsize=16384
5.965 Mbit/s with tcp,async,wsize=8192
5.592 Mbit/s with udp,async,wsize=4096
5.263 Mbit/s with tcp,async,wsize=4096

Results for read throughput:
7.895 Mbit/s with tcp,async,rsize=16384
7.456 Mbit/s with tcp,async,rsize=8192
6.882 Mbit/s with tcp,async,rsize=32768
6.391 Mbit/s with udp,async,rsize=4096
6.391 Mbit/s with tcp,async,rsize=4096
2.164 Mbit/s with udp,async,rsize=8192
Failure with udp,async,rsize=32768
Failure with udp,async,rsize=16384
Ich werde mal testen, ob das nun besser wird mit den Aussetzern.

Gruß und Danke
schufti
Einsteiger
Einsteiger
Beiträge: 352
Registriert: Freitag 20. August 2004, 23:33

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von schufti »

Hi,

nö, kann ich nicht bestätigen. Hier von meiner dBoxII

Code: Alles auswählen

~ > cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / squashfs ro 0 0
none /dev devfs rw 0 0
proc /proc proc rw 0 0
/dev/mtdblock/3 /var jffs2 rw 0 0
tmpfs /tmp tmpfs rw 0 0
192.168.22.132:/mnt/C /mnt nfs rw,noatime,v3,rsize=32768,wsize=32768,hard,intr,udp,nolock,addr=192.168.22.132 0 0
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Tommy »

32k geht nur mit tcp


Quelle: http://www.faqs.org/docs/Linux-HOWTO/NFS-HOWTO.html
5.1.
The theoretical limit for the NFS V2 protocol is 8K. For the V3 protocol, the limit is specific to the server. On the Linux server, the maximum block size is defined by the value of the kernel constant NFSSVC_MAXBLKSIZE, found in the Linux kernel source file ./include/linux/nfsd/const.h. The current maximum block size for the kernel, as of 2.4.17, is 8K (8192 bytes), but the patch set implementing NFS over TCP/IP transport in the 2.4 series, as of this writing, uses a value of 32K (defined in the patch as 32*1024) for the maximum block size.
NoX1911
Interessierter
Interessierter
Beiträge: 50
Registriert: Montag 16. Februar 2004, 16:13

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von NoX1911 »

Tommy hat geschrieben:32k geht nur mit tcp
Das ist nicht richtig. UDP geht auch und ist deutlicher schneller. Schufti hat es bereits weiter oben bewiesen.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Tommy »

naja, wenn Ihr meint - ich klink mich dann hier mal aus.

EDit:
schieb mir doch mal schnell die Doku rüber wo steht das NFS Server V3 unter udp 32k blocksize unterstützt. Nur weil was wo angezeigt wird ist "hörensagen".
schufti
Einsteiger
Einsteiger
Beiträge: 352
Registriert: Freitag 20. August 2004, 23:33

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von schufti »

Hi,

also bevor ich den Kernelparameter auf 32k gesetzt habe, hat er mir auf der Box auch nur 8k angezeigt. Seitdem ich am Server den Kernel gepatched habe, zeigt mir die Box 32k an.

und auch die Meßwerte lassen vermuten, dass die Änderung auch bei nfs über udp wirksam wird.

Code: Alles auswählen

Results for write throughput:
6865027 with udp,async,wsize=4096
7669584 with tcp,async,wsize=4096
7895160 with udp,async,wsize=8192
7895160 with tcp,async,wsize=8192
8659208 with udp,async,wsize=16384
8134407 with tcp,async,wsize=16384
8659208 with udp,async,wsize=32768
8134407 with tcp,async,wsize=32768

Results for read throughput:
7035945 with udp,async,rsize=4096
6547206 with tcp,async,rsize=4096
7895160 with udp,async,rsize=8192
6547206 with tcp,async,rsize=8192
8134407 with udp,async,rsize=16384
6391320 with tcp,async,rsize=16384
8388608 with udp,async,rsize=32768
6547206 with tcp,async,rsize=32768
Aber wie gesagt: das ist auf Linux-server. Wie sich Free-BSD da verhält, kann - und wird sehr wahrscheinlich - ganz anders sein.

Und ich kann auch nirgendwo - weder in den Kernelsourcen noch in der zitierten Stelle - lesen, dass die Kernelvariable nur für udp gilt. Zumal für aktuelle 2.4 (und 2.6 sowieso) kernel für nfs über tcp keine Patches mehr nötig sind.... gemeint war mit dieser (nicht mehr relevanten, Rev.:2002-08-25) Textstelle vielmehr, dass diese (veralteten) Patches neben nfs über tcp auch die Kernelvariable (auf 32k) gepatched haben.

schufti

Es war einmal ein Problem von dem alle Weisen sagten, dass da nichts zu machen sei. Dann kam ein einfacher Mann, der von den Weisen nichts wußte, und machte es einfach...
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Zum UDP-Thema: Zumindest bei deinem "write throughput" sieht es für mich so aus, als wäre 32768 das gleiche wie bei 16384. Beim read throughput könnte das noch eine normale "Schwankung" sein.

Zum Thema: Ich bin derzeit am Testen und gebe Bescheid wenn ich weitere Resultate habe. Im Moment nimmt er mal ohne Aussetzer auf, aber bedingt durch einen Fehler von mir (vermute ich), hat er ohne Ton aufgenommen.

Gruß
NoX1911
Interessierter
Interessierter
Beiträge: 50
Registriert: Montag 16. Februar 2004, 16:13

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von NoX1911 »

Du hast Buffer overruns, weil die Daten nicht schnell genug abtransportiert werden können. Da die Programme unterschiedliche Bitraten zugeordnet bekommen, wirst Du auch nur bei bestimmten Sendungen Abbrüche haben.

Die stärksten Programme sind mitunter Bundesliga und manche FTAs. Dort wird verhältnismäßig viel Bitrate verschleudert, was für den DBox2 Netztransport einen Härtefall darstellt. Wenn das funktioniert, geht der Rest bestimmt. Schau dir den Bitratendurchsatz bei den 'techn. Informationen' (rot/blau) an.

Ich kenne die genauen DVB Bestimmungen nicht,könnte mir aber vorstellen, dass die max. Bitrate auch bei 9.8MBit/s liegt. Das schafft die Netzwerkkarte der DBox zwar nicht, wird aber, da es sich nur um kurzzeitge Flanken (der variablen Bitrate) handelt, von den Ringpuffern aufgefangen. Es ist verdammt eng bemessen, aber es funktioniert.

Versuch doch einfach mal einen anderen Treiber in BSD.
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von wolgade »

NoX1911 hat geschrieben:Ich kenne die genauen DVB Bestimmungen nicht,könnte mir aber vorstellen, dass die max. Bitrate auch bei 9.8MBit/s liegt.
Nö, mein bisheriger Spitzenwert lag mal bei 11MBit/s, zumindest hat ProjectX das behauptet. Ein guter Kandidat für hohe Datenraten ist das ZDF nach 21.00 Uhr, wenn KiKa Sendeschluß hat. Auch gut dabei ist "Das Erste".
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Moin,

kurze Zwischeninfo: Zur Zeit läuft die Aufnahme stabil. Weitere Tests laufen aber noch.

Anknüpfende Frage (Featurerequest?):

Ich habe als Aufnahmepfad /mnt/custom angegeben und mounte derzeit mit udp und einer wsize von 16384. Wie man an meinen Geschwindigkeitstests sehen kann, ist dieser Wert jedoch nur für das Schreiben optimal. Zum Lesen (abspielen von Filmen) reicht die Geschwindigkeit nicht. Um das zu umgehen habe ich zusätzlich den gleichen "Export" nach /mnt/filme gemountet und diesmal tcp und eine rsize von 8192 angegeben. Klappt wunderbar. Wenn ich jedoch jetzt im Movieplayer in das "TS Filmarchiv" gehe, läuft das über den "Direktaufnahmepfad", der ja bei mir /mnt/custom mit udp ist. Ich würde das gerne auf /mnt/filme umbiegen. Ich gehe davon aus, dass dies derzeit noch nicht möglich ist (über das Neutrino-Menü) und wollte deswegen diesen Feature request hier einstellen :)

Gruß
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von seife »

Doch, das geht. Ich weiß zwar nicht mehr genau, was ich gemacht habe, aber man konnte es irgendwo im movie{player,browser,dreck} einstellen.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Tommy »

..glaube im MB <dbox> Taste
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Genial, danke. Dbox-Taste im Menü "TS Filmarchiv". Dort kann man das dann einstellen.

Ich kämpfe aber derzeit mit einem anderen Problem.. :dash: Ich muss wohl wieder was verstellt haben. Die letzten Timeraufnahmen hat er nicht durchgeführt. Timerliste ist nach der Aufnahme leer, die Aufnahme fehlt... Ich bin mal wieder auf der Suche :)

Gruß und Danke für den Tipp!
Columbo
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Tommy »

Fehlt die Aufnahme wirklich oder siehst Du Sie nur nicht weil sie nicht die Endung .ts trägt. Das würde auf einen nicht aktiven SPTS Mode deuten.
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

Die Aufnahme fehlt wirklich. Ich wollte sie mir am Rechner ansehen und habe auf Dateisystemebene gesucht. Der SPTS-Treiber ist bei mir generell geladen, da ein Einschalten für die Aufnahme manchmal für Probleme sorgt.

Anscheinend ist der SPTS-Treiber kein Kernel-Modul, ich habe nämlich die Ausgaben von lsmod einmal mit und einmal ohne SPTS-Treiber in eine Datei geschrieben und diese verglichen. Keine Unterschiede.

Manuelle Aufnahmen funktionieren. Timer gesteuerte Aufnahmen scheinen derzeit nach /dev/null zu verschwinden ;) Ich habe jetzt nochmal einen Timer gesetzt und prüfe mal, ob die Aufnahme klappt. Ich habe die Vermutung, dass die Box die Aufnahme nicht nach /mnt/custom/foobar speichern möchte (wie eingestellt) sondern nach /mnt/custom bzw. /mnt/filme. Auf dieses Verzeichnis hat bislang die Schreibberechtigung gefehlt, da ich eben nicht dorthin aufnehmen möchte..

Trotz den Problemchen die ich aktuell habe, muss ich sagen, dass die Dbox (die ich schon recht lange mit Yadi betreibe) mehr Spaß macht, je intensiver man sie benutzt :)

Gruß
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

So, Übeltäter gefunden. Durch das Umstellen des "TS-Filmarchiv-Verzeichnisses", werden die Timergesteuerten Aufnahmen in dieses Verzeichnis geschrieben. Ich habe das ja auf "/mnt/filme" eingestellt, was aber eine optimierte rsize hat. Jetzt habe ich auch wieder Aussetzer, da natürlich mit der falschen wsize und dem falschen Protokoll geschrieben wird.

Ich stelle das jetzt nochmal um und prüfe ob danach die Aufnahme wieder nach /mnt/custom/foobar gespeichert wird. Vielleicht ist hier doch ein Bug, den ich aber damit umgehen könnte, dass ich aus das Filmarchiv verzichte...

Gruß
Columbo0815
Neugieriger
Neugieriger
Beiträge: 9
Registriert: Dienstag 15. Januar 2008, 09:41

Re: Yadi, Direktaufnahme, NFS, Aussetzer bei der Aufnahme

Beitrag von Columbo0815 »

So, noch mal eine kleine Zwischenmeldung. Ich bin noch auf der Suche, glaube aber den Fehler gefunden zu haben:

Wenn ich über das Webinterface Aufnahmen programmiere, nimmt er ins falsche Verzeichnis auf. Programmiere ich über Neutrino, nimmt er es ins richtige Verzeichnis auf.

Das Problem mit den Aussetzern konnte ich größtenteils lokalisieren. Es ist wohl tatsächlich so, dass insbesondere die Sender von Das Erste und ZDF in den Abendstunden hohe Datenraten haben. Kann ich umgehen, indem ich einfach eine Wiederholung tagsüber programmiere :)

Gruß