Hallo Leute,
nach einigen Experimenten mit meinem Linux-Asterisk-Server habe ich gemerkt, dass Asterisk grosse Probleme bekommt, wenn ich den Server ein bisschen belaste (einen Atlhon 64 2800+). Vor allen Dingen sobald man die Interrupt-Zugriffe des Servers mal für andere Dinge, z.B. Festplatten benötigt. Nach ein bisschen Forschungsarbeit war das Problem auch schnell ausfindig zu machen. Der Zaphfc-Treiber benutzt Interrupts der HFC-Karte als Timer um das ISDN-Protokoll zu syncronisieren.
Das ist anstrengend für das System. Im neusten bristuff hat sich der Programmierer auch darum gekümmert und den rtai-Treiber als Realtime-Timer eingesetzt (anstatt der vielen Interrupt-Aufrufe). Das Problem dabei ist allerdings, dass dieser Treiber einen Kernelpatch benötigt und viel zu gross dafür ist, dass er eigentlich nur als timer dienen soll (und ich ihn einfach nicht kompiliert bekomme:-( ).
Daraufhin habe ich mich wieder auf die Suche in der allwissenden Müllhalde (auch Internet genannt) gemacht und das ztdummy-Modul gefunden, dass nur dafür da ist genau diese Timing-Tätigkeit zu vollführen, wobei es den ztdummy wieder in zwei Versionen gibt. Einmal für den 2.4er Kernel (USB-Kontroller abhängig) und einmal für den 2.6er Kernel. Das Modul für den 2.6er Kernel soll nun wieder von dem USB-Port unabhängig sein, und direkt mit der RTC im 2.6er Kernel zusammenarbeiten, der dafür angeblich eine ausreichende Genauigkeit besitzt.
Und nun meine Frage: Kann mir einer erklären, warum der HFC-Treiber nicht auch einfach die RTC vom Server als Timing-Quelle benutzt?
(Bitte, mein Server macht "nebenbei" noch andere Sachen ausser Asterisk, warum muss man über diese komplizierten Weg ein Timing-Signal generieren, dass meine VoIP-Verbindung so anfällig macht?)
Hat jemand einen direkten Draht zum Programmierer, oder kann mir kurz erklären, warum das so nicht geht, was ich mir da ausgedacht habe?
Danke schoneinmal.
Ciao.
nach einigen Experimenten mit meinem Linux-Asterisk-Server habe ich gemerkt, dass Asterisk grosse Probleme bekommt, wenn ich den Server ein bisschen belaste (einen Atlhon 64 2800+). Vor allen Dingen sobald man die Interrupt-Zugriffe des Servers mal für andere Dinge, z.B. Festplatten benötigt. Nach ein bisschen Forschungsarbeit war das Problem auch schnell ausfindig zu machen. Der Zaphfc-Treiber benutzt Interrupts der HFC-Karte als Timer um das ISDN-Protokoll zu syncronisieren.
Das ist anstrengend für das System. Im neusten bristuff hat sich der Programmierer auch darum gekümmert und den rtai-Treiber als Realtime-Timer eingesetzt (anstatt der vielen Interrupt-Aufrufe). Das Problem dabei ist allerdings, dass dieser Treiber einen Kernelpatch benötigt und viel zu gross dafür ist, dass er eigentlich nur als timer dienen soll (und ich ihn einfach nicht kompiliert bekomme:-( ).
Daraufhin habe ich mich wieder auf die Suche in der allwissenden Müllhalde (auch Internet genannt) gemacht und das ztdummy-Modul gefunden, dass nur dafür da ist genau diese Timing-Tätigkeit zu vollführen, wobei es den ztdummy wieder in zwei Versionen gibt. Einmal für den 2.4er Kernel (USB-Kontroller abhängig) und einmal für den 2.6er Kernel. Das Modul für den 2.6er Kernel soll nun wieder von dem USB-Port unabhängig sein, und direkt mit der RTC im 2.6er Kernel zusammenarbeiten, der dafür angeblich eine ausreichende Genauigkeit besitzt.
Und nun meine Frage: Kann mir einer erklären, warum der HFC-Treiber nicht auch einfach die RTC vom Server als Timing-Quelle benutzt?
(Bitte, mein Server macht "nebenbei" noch andere Sachen ausser Asterisk, warum muss man über diese komplizierten Weg ein Timing-Signal generieren, dass meine VoIP-Verbindung so anfällig macht?)
Hat jemand einen direkten Draht zum Programmierer, oder kann mir kurz erklären, warum das so nicht geht, was ich mir da ausgedacht habe?
Danke schoneinmal.
Ciao.