Hallo Besucher, der Thread wurde 9,5k mal aufgerufen und enthält 31 Antworten

letzter Beitrag von guidol am

offener VoIP Router: Nequester

  • Mahlzeit,


    eigentlich ist Nequester mehr etwas fürs IP-Phone-Forum, aber da bin ich nur sehr selten anzutreffen. Hier werde ich immer wieder mal auf das Projekt "Nequester" angesprochen, deswegen sammeln wir das besser hier, damit andere Threads nicht off-topic driften.


    Ich hatte dazu auf der Revision ein Seminar gehalten, gibts auf Youtube hier:
    http://www.youtube.com/watch?v…dex=11&feature=plpp_video


    Da habe ich am Anfang ziemlich viel über das Teil selbst geredet, damit man ein Gefühl dafür bekommt, wie die Hardware überhaupt aussieht.


    Ich schau' ab und zu mal in den Thread hier und versuche Fragen zu beantworten.


    Jens

  • Hallo Jens,


    dann mache ich mal den Anfang mit ein paar Fragen, mich interessiert besonders der Telefonieteil von dem Gerät.


    - Wird Impulswahl an den analogen Telefon-Ports unterstützt, auch mit genügend Toleranz, so daß mechanische Nummernschalter funktionieren (die Fritzbox z.B. ist sehr pingelig beim Timing)?


    - Welche Möglichkeiten des "Amtsanschlusses" gibt es - analog, ISDN, VoIP oder alles zusammen?


    - Falls ISDN-Amtsanschluss möglich ist: Kann man über die ISDN-Ports auch Datenübertragung machen, oder geht nur Telefonie?


    - Wird AOCD/AOCE an die internen ISDN-Ports durchgereicht und als 16kHz-Impuls an die analogen Telefone weitergegeben, oder kann der Nequester vielleicht sogar AOCD und Gebührenimpuls ohne Unterstützung vom Amt selbst in einstellbaren Zeitabständen erzeugen? Das würde einige (Münz-)Telefonsammler ziemlich glücklich machen...


    - Gibt es Unterstützung für Faxempfang und -versand?



    Oliver

  • - Wird Impulswahl an den analogen Telefon-Ports unterstützt, auch mit genügend Toleranz, so daß mechanische Nummernschalter funktionieren (die Fritzbox z.B. ist sehr pingelig beim Timing)?


    Momentan wird nur Tonwahl unterstützt, aber wir haben schon geklärt, dass die API des Telefon-Chipsets entsprechend erweitert werden kann. Der Code für die Flashtasten-Erkennung ist sehr aufgeräumt - das bekommen wir sicher hin.


    - Welche Möglichkeiten des "Amtsanschlusses" gibt es - analog, ISDN, VoIP oder alles zusammen?


    Gar keine. Nequester ist ein NGN-Router, das bedeutet, er zielt auf die Zukunft der Telefonie. Die sieht nunmal so aus, dass die Festnetze alle abgeschaltet werden, weil der Betrieb ein Vielfaches von Datennetzen kostet.


    - Falls ISDN-Amtsanschluss möglich ist: Kann man über die ISDN-Ports auch Datenübertragung machen, oder geht nur Telefonie?


    In voller Ausstattung hat Nequester zwei getrennte S0-Busse. Wenn Du die Speisung abschaltest, kannst Du mit einem gekreuzten Kabel auch an Deinen NTBA und dem Treiber sagen, dass er jetzt im TE-Mode laufen soll. Standardmäßig sind beide S0-Busse im NT-Mode, so dass Du insgesamt 16 Telefone anschließen kannst, von denen vier gleichzeitig ein Gespräch führen können.
    Der Betrieb im TE-Mode ist zwar in den Treibern drin, wird aber von unserer Software überhaupt nicht verwendet. Du müsstest Dir das alles selbst basteln - PPP over ISDN installieren, oder gar X75-Transfers (mann ist das lang her...). Wir haben überhaupt kein Interesse an der Entwicklung in diese Richtung, denn langfristig werden die ISDN-Netze abgestellt - für genau den Fall werden gute NGN-Router gebraucht.


    - Wird AOCD/AOCE an die internen ISDN-Ports durchgereicht und als 16kHz-Impuls an die analogen Telefone weitergegeben, oder kann der Nequester vielleicht sogar AOCD und Gebührenimpuls ohne Unterstützung vom Amt selbst in einstellbaren Zeitabständen erzeugen? Das würde einige (Münz-)Telefonsammler ziemlich glücklich machen...


    Es wird (mangels Amtsanschluss) überhaupt nichts "durchgereicht". AOC ist ne einfache Facility message, die kannst Du natürlich erzeugen, und sie wird über den D-Kanal an das entsprechende Telefon geschickt. Das mit dem ISDN-Kram ist schon fast drei Jahre her, aber wenn ich mich richtig erinnere, mussten wir einigen Telefonen eine AOC-E Message schicken, damit sie die Uhrzeit übernehmen.
    Münzfernsprecher sind überhaupt nicht unser Ziel. Da gab's aber auch noch ganz andere Messages die die brauchen, beispielsweise AOC-S, damit der Fall abgedeckt wird "die ersten drei Minuten kosten Grundbetrag X, und dann kostet jede weitere Minute Betrag Y" - auch hier: Der LCR in Nequester ist open-source und Du kannst Dir sicher selbst was fummeln, aber unsere Software wird das nicht unterstützen.
    Der Gebührenimpuls auf analoger Seite ist 16kHz und damit außerhalb dessen, was meine Wandler können. Auch hier war die Überlegung, lieber in die Zukunft zu denken, als nostalgische Telefone anzuschließen. Im Zeitalter von Flatrates ist es doch gerade sexy, dass der Gebührenzähler stehen bleibt, oder? Hier habe ich aber noch eine Hintertür: Für Kunden, die eine ganze Serie (mindestens 5000 Stück) kaufen, kann ich ein anderes FXS-Chipset installieren, das auch den Gebührenimpuls erzeugen kann. Kostet halt mehr Geld und ist daher für die normalen Geräte nicht geplant.


    - Gibt es Unterstützung für Faxempfang und -versand?


    Nennt sich T38 und steht ganz oben auf der Liste, sobald wir die analogen Telefonports in die Software integriert haben. Und ja, mir ist bewusst, dass Fax eine besondere Herausforderung ist. Die Anfängerfehler (Echokompensation...) werden wir sicher nicht machen ;-)
    Was elektronisches Fax angeht, ist Asterisk Dein Freund. Das wäre mein persönlicher Favorit: Ankommende Faxe werden als PDF gespeichert und sind wahlweise in der Web-Oberfläche verfügbar, oder werden als eMail verschickt. Eine Kombination mit dem USB-Drucker ist auch denkbar, dann wird Nequester eben zum Faxgerät. Einen Faxversand mit (CAPI-)Treibern ähnlich wie Fritzbox ist erstmal nicht geplant. Auch hier kann man sicher noch add-ons entwickeln, aber ehrlich gesagt ist unsere Todo-Liste schon lang genug :-)


    Jens

  • Hallo Jens,


    der Vortag hört sich interessant an. Wie sieht es mit der Offenheit der Firmware aus?
    Wird der Source Code soweit offen sein, dass keine precompiled Blobs im Source Tree liegen? Ist eigene Erweiterbarkeit durch eine Community erwünscht? Stichwort OpenWrt)
    Wie weit geht die Öffnung? Werden precompiled Blobs im Build-Tree liegen?


    Die 128MB Flash und 128MB RAM + PBX und USB sind sehr sexy, gerade da es kaum vernünftige Router mit OpenWrt und PBX gibt und da AVM seit der FritzOS, Einführung einige Kernelstrukuturen durch Blobs soweit festgeschnürt hat, dass offene Firmware Projekte wie Freetz viel vorher vorhandene Funktionalität nicht mehr nachrüsten können.


    grüße

  • Einige pre-compiled blobs werden da liegen *müssen*, weil wir von Broadcom dazu gezwungen werden. Im Wesentlichen handelt es sich um Hardwaretreiber, aber auch die Nequester-Anwendung selbst (web-Oberfläche, Erstellen von Configs und Auswerten von Logs).


    Trotzdem ist die Zugänglichkeit der Box um Größenordnungen besser als das, was andere Hersteller bieten. Wenn Du die Weboberfläche verändern willst, weil Du Dein eigenes Feature via Web zugänglich machen willst, gibt es extra dafür vorgesehene "Seiteneingänge", die auch beschrieben werden. Damit dürfte klar sein, dass wir ausdrücklich *wünschen*, dass sich Leute mit so einer Box befassen und Funktionen hinzufügen. An anderer Stelle habe ich es geschafft, dass Treiber geöffnet werden können, von denen ich es nie gedacht hätte. Beispielsweise die API des FXS-Chipsets: Irgendwie machen die Hersteller von Analogtelefon-Chipsets gern ein Geheimnis daraus, wie sie gewisse Details lösen. Der Hersteller Zarlink geht sogar so weit und lässt seine Kunden absolute Knebelverträge unterschreiben. Ich war einige Monate lang in Verhandlungen mit denen, aber ich habe es nicht geschaft, eine typisch-amerikanische Formulierung aus den Verträgen zu bekommen. Die Jungs waren total fassungslos, als ich nach einigen Monaten verkündet habe, dass ich die Verhandlungen abbreche und auf die Suche nach einem neuen Lieferanten gehe - ich hatte zu dem Zeitpunkt tatsächlich keinen "Plan B".
    Jetzt habe ich mich für den Hersteller Nuvoton für das FXS-Chipset entschieden, und die sind wesentlich lockerer drauf. Mittlerweile sind die auch einverstanden, dass ihre gesamte API open-source wird, so dass wir das großzügig in den LCR einbetten können, der seinerseits auch offen ist.


    WLAN ist so ein Thema für sich - auch da wird der Treiber als binary-blob vorliegen, aber die "Adaptersoftware" die wir für HostAPD geschrieben haben, wird offen sein. Ebenso offen werden die WLAN-API-calls sein, die sich durch den Kernel ziehen: Broadcom zieht eine komplett neue Abstraktionsebene in den Kernel ein, die es denen erlaubt, ein- und denselben Treiber für Linux, Ecos und VxWorks zu verwenden. Da werden die OpenWrt-Leute sicher einiges zu schmökern haben (lies: Es wird endlich up-to-date-hardware für OpenWrt geben!).


    Andere Dinge bleiben closed-source, weil dadurch die Integrität gesichert wird. Dazu gehört beispielsweise ein Check der eingestellten MAC-Adressen: Wir müssen den Providern gegenüber garantieren, dass die MAC-Adressen weltweit "unique" sind, deswegen werden Prüfsummen zusätzlich abgelegt, die der Benutzer nicht selbst generieren kann. Wenn Du bei Dir zuhause eine MAC-Adresse spoofen willst, ist das der Außenwelt egal, aber wenn Du mit einem SFP-Modul ans optische Netz Deines Providers gehst, will der garantiert haben, dass dort eine einzigartige MAC-Adresse hängt.


    Das Flash ist zwar auf den ersten Blick großzügig und wird bei näherer Betrachtung der Hardware nochmal 4MByte größer (das serielle Flash kommt noch drauf), aber wir haben auch einiges an Sicherheit eingezogen, die wieder Speicher kostet. Die 4MByte des seriellen Flash sind in drei Partitionen geteilt: Bootloader, ENV-Variablen und Kernel. Im Kernel ist dann der NAND-Treiber, und die 128MByte NAND sind in vier Partitionen unterteilt:


    32MB Applikation 1
    32MB Applikation 2
    8MB Logfiles und config
    56MB storage (Ansagen, AB-Sprüche, Faxe etc.)


    Die zwei Applikations-Partitionen werden im Wechsel verwendet: Wenn Du ein Firmware-Update einspielst, wird immer die inaktive Partition neu beschrieben. Erst nach erfolgreichem Update wird ein Schalter (ENV-Variable) umgelegt, der die jeweils andere Partition als Bootpartition einstellt. Das gibt die Sicherheit, sehr einfach auf den vorherigen Stand zurück zu gehen. Obwohl der Flash-Vorgang weiterhin als "kritisch" eingestuft wird, kannst Du mit dem System auch während des Flash-Vorganges den Stecker ziehen. Bein nächsten Start wird der Flash-Vorgang einfach fortgesetzt, der Nutzer bekommt davon kaum etwas mit.


    Und wenn doch mal beide Applikations-Partitionen verduselt sind, liegt im seriellen Flash noch ein minimales Rescue-System. Es ist also *sehr* schwer, einen Nequester zu bricken. Das geht aber auf Kosten der nutzbaren Flash-Größe: Ja, wir haben sehr viel mehr Platz als ne Box aus Berlin, aber nicht so viel, wie man auf den ersten Blick meinen könnte.


    Jens

  • Hey,
    danke für die auführliche Antwort auf die kurzen Fragen.


    Einige pre-compiled blobs werden da liegen *müssen*, weil wir von Broadcom dazu gezwungen werden. Im Wesentlichen handelt es sich um Hardwaretreiber, aber auch die Nequester-Anwendung selbst (web-Oberfläche, Erstellen von Configs und Auswerten von Logs).


    Das habe ich vermute, mehr dazu weiter unten.


    Trotzdem ist die Zugänglichkeit der Box um Größenordnungen besser als das, was andere Hersteller bieten. Wenn Du die Weboberfläche verändern willst, weil Du Dein eigenes Feature via Web zugänglich machen willst, gibt es extra dafür vorgesehene "Seiteneingänge", die auch beschrieben werden. Damit dürfte klar sein, dass wir ausdrücklich *wünschen*, dass sich Leute mit so einer Box befassen und Funktionen hinzufügen. An anderer Stelle habe ich es geschafft, dass Treiber geöffnet werden können, von denen ich es nie gedacht hätte. Beispielsweise die API des FXS-Chipsets: Irgendwie machen die Hersteller von Analogtelefon-Chipsets gern ein Geheimnis daraus, wie sie gewisse Details lösen. Der Hersteller Zarlink geht sogar so weit und lässt seine Kunden absolute Knebelverträge unterschreiben. Ich war einige Monate lang in Verhandlungen mit denen, aber ich habe es nicht geschaft, eine typisch-amerikanische Formulierung aus den Verträgen zu bekommen. Die Jungs waren total fassungslos, als ich nach einigen Monaten verkündet habe, dass ich die Verhandlungen abbreche und auf die Suche nach einem neuen Lieferanten gehe - ich hatte zu dem Zeitpunkt tatsächlich keinen "Plan B".
    Jetzt habe ich mich für den Hersteller Nuvoton für das FXS-Chipset entschieden, und die sind wesentlich lockerer drauf. Mittlerweile sind die auch einverstanden, dass ihre gesamte API open-source wird, so dass wir das großzügig in den LCR einbetten können, der seinerseits auch offen ist.


    NIce. Nun gut bei Voice-Decoding als auch bei DSL und WLAN sind viele Patente und Patente von 3rd-Parties in der Software, (auch eventuell welche die nicht direkt lizensiert wurden also im guten Glauben unwissentlich vervendet wurden ;) Da geht man gerne auf Nummer sicher und die Firmen geben sich eher verschlossen. Im Rahmen von Freetz wurde viel Recherchiert gerade in Richtung Infinieon Hardware und deren Datenblätter (nicht die 2-Seiten Werbebroschüren). Meist findet man nicht viel und selbst für die Datenblätter soll man NDAs plus Geld lassen.


    WLAN ist so ein Thema für sich - auch da wird der Treiber als binary-blob vorliegen, aber die "Adaptersoftware" die wir für HostAPD geschrieben haben, wird offen sein. Ebenso offen werden die WLAN-API-calls sein, die sich durch den Kernel ziehen: Broadcom zieht eine komplett neue Abstraktionsebene in den Kernel ein, die es denen erlaubt, ein- und denselben Treiber für Linux, Ecos und VxWorks zu verwenden. Da werden die OpenWrt-Leute sicher einiges zu schmökern haben (lies: Es wird endlich up-to-date-hardware für OpenWrt geben!).


    Der neue WLAN-Treiber mit Kernel-Source plus einzulinkendes .o ist in der 12.09 beta schon enthalten.


    Andere Dinge bleiben closed-source, weil dadurch die Integrität gesichert wird. Dazu gehört beispielsweise ein Check der eingestellten MAC-Adressen: Wir müssen den Providern gegenüber garantieren, dass die MAC-Adressen weltweit "unique" sind, deswegen werden Prüfsummen zusätzlich abgelegt, die der Benutzer nicht selbst generieren kann. Wenn Du bei Dir zuhause eine MAC-Adresse spoofen willst, ist das der Außenwelt egal, aber wenn Du mit einem SFP-Modul ans optische Netz Deines Providers gehst, will der garantiert haben, dass dort eine einzigartige MAC-Adresse hängt.


    Das ist klar. Doch wird dies nicht meist in EPROMs gegossen und man laesst dunkel wie man es ändern kann? (security by obscurity, wird aber durchaus praktisch angewandt, ...)


    Das Flash ist zwar auf den ersten Blick großzügig und wird bei näherer Betrachtung der Hardware nochmal 4MByte größer (das serielle Flash kommt noch drauf), aber wir haben auch einiges an Sicherheit eingezogen, die wieder Speicher kostet. Die 4MByte des seriellen Flash sind in drei Partitionen geteilt: Bootloader, ENV-Variablen und Kernel. Im Kernel ist dann der NAND-Treiber, und die 128MByte NAND sind in vier Partitionen unterteilt:


    32MB Applikation 1
    32MB Applikation 2
    8MB Logfiles und config
    56MB storage (Ansagen, AB-Sprüche, Faxe etc.)


    Ich vermutte Applikation 1/2 sind RO (vermutlich Squashfs), und damit ihr TR-069/64 mit Remote-Firmwareupdates sauber unterstützt doppelt.
    Wird TR-069 abschaltbar sein? Wird das rootfs ro sein oder werdet ihr mit transparenten Overlay Filesystemen arbeiten. Wie wird das rootfs Layout ausschauen? Wird das Starten eher SysV (Openwrt änlich sein) oder eher was eigenes, sogar schon Systemd, der sich ja auch toll für embeded nutzten läst IMHO.


    Die zwei Applikations-Partitionen werden im Wechsel verwendet: Wenn Du ein Firmware-Update einspielst, wird immer die inaktive Partition neu beschrieben. Erst nach erfolgreichem Update wird ein Schalter (ENV-Variable) umgelegt, der die jeweils andere Partition als Bootpartition einstellt. Das gibt die Sicherheit, sehr einfach auf den vorherigen Stand zurück zu gehen. Obwohl der Flash-Vorgang weiterhin als "kritisch" eingestuft wird, kannst Du mit dem System auch während des Flash-Vorganges den Stecker ziehen. Bein nächsten Start wird der Flash-Vorgang einfach fortgesetzt, der Nutzer bekommt davon kaum etwas mit.


    Nice. Machen einige Boxen aus Berlin auch so.


    Und wenn doch mal beide Applikations-Partitionen verduselt sind, liegt im seriellen Flash noch ein minimales Rescue-System. Es ist also *sehr* schwer, einen Nequester zu bricken. Das geht aber auf Kosten der nutzbaren Flash-Größe: Ja, wir haben sehr viel mehr Platz als ne Box aus Berlin, aber nicht so viel, wie man auf den ersten Blick meinen könnte.

    Ist ein JTAG oder GPIOs als PINs verfügbar? I2C o.ä.?


    Werdet ihr Hardware Beschleunigung NAT für v4 nutzen wie die Box aus Berlin oder werdet ihre auf Linuxboardmittel setzten Netfilter/Conntrack und Bridgeutils? (Bitte mit Linuxboardmitteln, alles andere macht Usermods u.A. sehr kaputt, das macht eine Box aus Berlin nämlich). Wird ggf die CryptoHW aus dem Broadcom SoC genutzt (wenn vorhanden?)
    Wie sieht es mit IPv6 Support aus IPSec oder gar openvpn aus?


    Grüße

  • So Jens. Butter bei die Fische: Wann gibts das Ding zu kaufen und was wird es in welcher Ausstattung kosten?


    Willst du immernoch einen "Volvo C30 2009 Recharge Concept" dagegen tauschen? (Gut, der Tausch war eigentlich ein 060-TK-Design, aber ich hattes noch im Kopf :D)


    Du redetest schon seit Wochen, Monaten, Jahren von dem Teil und hast sogar einen Vortrag drüber gehalten, aber eigentlich verrätst du darüber nicht mehr als über den Clone-A...


    Gruß,
    crasbe

  • So Jens. Butter bei die Fische: Wann gibts das Ding zu kaufen und was wird es in welcher Ausstattung kosten?


    Es gibt zwar jetzt einen Zeitplan, auf dem deutlich weniger Punkte stehen als noch vor einigen Monaten, und der Plan enthält sogar die Produktion der ersten paar hundert Geräte, aber da wir seit über drei Jahren immer wieder Zeitpläne verworfen haben, möchte ich mich nicht mehr zu weit aus dem Fenster lehnen. In den letzten Monaten haben wir mal wieder riesige Hürden genommen, aber Datum, Ausstattung und Preise werde ich Dir erst nennen, wenn sich das nicht mehr so anfühlt, als müssten wir bewegliche Ziele treffen.


    Du redetest schon seit Wochen, Monaten, Jahren von dem Teil und hast sogar einen Vortrag drüber gehalten, aber eigentlich verrätst du darüber nicht mehr als über den Clone-A...


    Denks Du ;-) Eigentlich ist über Nequester alles bekannt - zumindest was technische Daten angeht. Das ist bei Clone-A nicht der Fall, und wird auch erst am Tag des ersten Verkaufes bekannt gegeben (naja, vielleicht ein paar Tage früher). OK, ein paar kleine Asse habe ich noch im Ärmel, aber die sind wirklich klein und haben mehr Gadget-Charakter.
    Dass Entwicklungen länger dauern als geplant hat immer wieder neue Gründe, aber wenn ich jetzt anfange Dir von meinen Sorgen mit Chip-Herstellern, mit Taiwanesen und dem social engineering drumherum zu erzählen, würdest Du wahrscheinlich sowas ähnliches denken wie "der hat auch für alles ne Erklärung" - ich versuch's deswegen erst gar nicht (bzw. behalte es für mich, damit ich es mir mit bestimmten Chipherstellern nicht verscherze). Dass sich die Anforderungen schneller verändert haben als wir anfangs entwickeln konnten, ist sicher schon durchgekommen. Fest steht, dass es kein Zurück gibt: Aufgeben ist für Mädchen. Die Entwicklung von Chameleon hat auch - trotz umfangreicher Vorkenntnisse - runde fünf Jahre gedauert und geht immer noch weiter. Da liegen wir mit Nequester eigentlich noch gut im Rennen, denn der ist deutlich komplexer und erst drei Jahre in Entwicklung ;-)


    Willst du immernoch einen "Volvo C30 2009 Recharge Concept" dagegen tauschen? (Gut, der Tausch war eigentlich ein 060-TK-Design, aber ich hattes noch im Kopf :D)


    Ein halbwegs modernes Auto wäre toll, aber das gibts ja nicht zu kaufen. Diese Spielzeuge wie Opel Ampera, Chevy Volt, und diese Hybrid-Schwergewichte, die ohne den ganzen Elektrokrempel locker 1 Liter weniger verbrauchen würden, sind doch nur Kundenverarsche. Ich fahre weiter meinen V70. Regelmäßig Öl tanken, ab und zu Benzin nachfüllen, dann schafft der auch die nächsten 300.000km.


    Jens

  • Im Rahmen von Freetz wurde viel Recherchiert gerade in Richtung Infinieon Hardware und deren Datenblätter (nicht die 2-Seiten Werbebroschüren). Meist findet man nicht viel und selbst für die Datenblätter soll man NDAs plus Geld lassen.


    Ist bei Broadcom nicht anders: Da darfst Du erst ins Datenblatt gucken, wenn Du glaubhaft gemacht hast, dass Du 6-stellige Stückzahlen des Chips abnehmen wirst.


    Der neue WLAN-Treiber mit Kernel-Source plus einzulinkendes .o ist in der 12.09 beta schon enthalten.


    Ja wie, auch mit 802.11ac Unterstützung? Ist die Version des Generic-Treibers von Broadcom bekannt, bzw. aus dem .o ersichtlich?


    Wird TR-069 abschaltbar sein?


    Natürlich. Und in den Retail-Boxen wird's gar nicht erst einschalt-bar sein, denn wer sich son Teil aus eigenem Antrieb beschafft, der will nicht, dass jemand Anderes darin herumfingert. TR-069 ist doch die Oma-Funktion für genervte Mitarbeiter in der Support-Hotline :-)



    Wird das rootfs ro sein oder werdet ihr mit transparenten Overlay Filesystemen arbeiten. Wie wird das rootfs Layout ausschauen? Wird das Starten eher SysV (Openwrt änlich sein) oder eher was eigenes, sogar schon Systemd, der sich ja auch toll für embeded nutzten läst IMHO.


    ähemm.. jetzt geht's zu weit ins Detail - weiter zumindest, als ich es beantworten kann. Du redest mit dem Hardwareentwickler und "Architekten" - ich weiß nicht über alles bescheid.


    Ist ein JTAG oder GPIOs als PINs verfügbar? I2C o.ä.?


    JTAG ja, sogar direkte Unterstützung von usbjtag.com, aber keine GPIOs und kein I2C. Wenn Du irgendwas direkt steuern willst, wirst Du's als USB- oder Netzwerkgerät anschließen müssen. Falls Du hier konkreten Bedarf hast, dann beschreib' den doch mal. Da ist ein kleiner 8-Bit Microcontroller in dem Design, der ne Menge glue-Aufgaben hat und am zweiten UART der CPU hängt. Der steuert auch die (momentan noch viel zu zahlreichen) LEDs. Ein paar LEDs fliegen raus und würden ein paar Pins frei machen. So tief wollte ich aber *eigentlich* nicht in die Bastlerwelten vordringen...


    Werdet ihr Hardware Beschleunigung NAT für v4 nutzen

    Diese "Hardwarebeschleuniger" sind nichts weiter als Doppelkern-SoCs, bei denen der zweite Kern zum NAT-Routing verwendet wird. Der 53003 ist aber ein single-core MIPS M74K, bei dem wir ganz klassich Linux-Boardmittel nutzen. NAT-Routing hat ne Obergrenze bei knapp über 200MBit/s, und das fällt gewaltig, wenn man mit der Paketgröße 'runtergeht. Die 200MBit/s sind gemessen an einer optischen Verbindung und mit PPPoE, also "denkbar ungünstige Config" u.A. wegen adaptiver MTU size. Das klingt im Vergleich zum Berliner Modell lahm, ist aber um den Faktor 2 schneller als das, was die meisten Großkunden fordern. Das, was sich gern Konkurrenz nennen würde, schafft nämlich nur selten mehr als 60MBit/s bei PPPoE+NAT und schafft's in der Regel nichtmal in die erste Shortlist.


    Wird ggf die CryptoHW aus dem Broadcom SoC genutzt (wenn vorhanden?) Wie sieht es mit IPv6 Support aus IPSec oder gar openvpn aus?


    Keine Crypro-Hardware, sorry. Trotzdem kann OpenVPN eine DSL-Leitung sättigen, ohne dass die CPU-Last durch die Decke geht. Die 600MHz sind vielleicht nicht wirklich beeindruckend, aber 32-bit breiter DDR2-Speicher ist für ein SoC schon Luxus auf hohem Niveau (Peak-Durchsatz in der Größenordnung 2,5GByte/s). Viele Boxen krebsen da noch mit SDR und 16 Bit herum, da helfen Dir auch hunderte MHz nicht. OpenVPN ist aber noch im "Bastelstadium" - darüber werde ich wahrscheinlich erst in 6-8 Wochen mehr sagen können.


    IPv6 muss ich mit dem "ready"-Spielchen beantworten: Hardware kann's, wir haben auch Labor-Testszenarien, haben's aber noch nie in der realen Welt ausprobiert. Eigentlich sagt jeder, dass das recht schmerzfrei funktioniert, aber das will ich erst versprechen, wenn ein Neubauprojekt (Glasfaserprojekt) mit IPv6 angeschlossen ist. Da ist was im Gespräch und hat auch die ersten Hürden genommen...


    Jens

  • - Wird Impulswahl an den analogen Telefon-Ports unterstützt, auch mit genügend Toleranz, so daß mechanische Nummernschalter funktionieren (die Fritzbox z.B. ist sehr pingelig beim Timing)?


    Heute eingebaut: Wenn man den richtigen Entprell-Algo verwendet und die Stromsperre des FXS-Chipsets richtig einstellt, kann man auch verklemmte und kratzende Wählscheiben von einem Hookflash unterscheiden. Auch das "Beschleunigen" der Wählscheibe (mit dem Finger zurück drehen) bringt die Erkennung nicht aus dem Tritt.


    Ich forsche gerade in Sachen caller ID - Hinweise, welche Telefone besonders piccy sind oder welche Telefone die erweiterten Funktionen unterstützen (Nummer eines Anklopers anzeigen oder Typ II, also mit Namen) wären toll.


    Jens

  • Heute eingebaut: Wenn man den richtigen Entprell-Algo verwendet und die Stromsperre des FXS-Chipsets richtig einstellt, kann man auch verklemmte und kratzende Wählscheiben von einem Hookflash unterscheiden. Auch das "Beschleunigen" der Wählscheibe (mit dem Finger zurück drehen) bringt die Erkennung nicht aus dem Tritt.


    Hey, das klingt doch schon mal sehr fein! 8o


    Oliver

  • ogf,


    wenn Du ein Telefonsammler bist, hast Du dann auch ein Telefon in Deiner Sammlung, das die caller ID als DTMF sehen will? Wir haben jetzt caller ID Type I und Type II drin, und das ging erstaunlich schmerzfrei - zumindest für Bell202 und V.23. Da Nequester aber für den Weltmarkt konzipiert ist, brauche ich Testgelände für alle (non-)Standards, die es bei der caller ID gibt.


    Jens

  • Ja wie, auch mit 802.11ac Unterstützung? Ist die Version des Generic-Treibers von Broadcom bekannt, bzw. aus dem .o ersichtlich?


    Das weis ich gerade nicht, da ich keine Box mit passendem WLAN chipset habe.


    Zitat von abraxxll

    Wird TR-069 abschaltbar sein?


    Natürlich. Und in den Retail-Boxen wird's gar nicht erst einschalt-bar sein, denn wer sich son Teil aus eigenem Antrieb beschafft, der will nicht, dass jemand Anderes darin herumfingert. TR-069 ist doch die Oma-Funktion für genervte Mitarbeiter in der Support-Hotline :-)


    Ggf. willst du schon auch Käufer einer solchen Box ohne Vertrag, dass du TR-069 einschalten kannst. Provider wie 1und1, Vodafail oder das Telefonica-Konglumerat, teilen manchmal (je nach Vertrag) noch nicht mal mehr die Benutzterdaten mit. Da ist eine Initial einrichtung mit PIN und TR-069 sehr komfortabel, danach kann man es wieder aus machen.

    Zitat von abraxxll

    Ist ein JTAG oder GPIOs als PINs verfügbar? I2C o.ä.?


    JTAG ja, sogar direkte Unterstützung von usbjtag.com, aber keine GPIOs und kein I2C. Wenn Du irgendwas direkt steuern willst, wirst Du's als USB- oder Netzwerkgerät anschließen müssen. Falls Du hier konkreten Bedarf hast, dann beschreib' den doch mal. Da ist ein kleiner 8-Bit Microcontroller in dem Design, der ne Menge glue-Aufgaben hat und am zweiten UART der CPU hängt. Der steuert auch die (momentan noch viel zu zahlreichen) LEDs. Ein paar LEDs fliegen raus und würden ein paar Pins frei machen. So tief wollte ich aber *eigentlich* nicht in die Bastlerwelten vordringen...


    Nicht schlimm und auch nicht richtig wichtig, ist halt nur ein Nice-To-Have. I2C gibt es mitlerweile als USB-Modul und für alles Timing-Unkritische nimmt man nen FTDI.

    Zitat von abraxxll

    Werdet ihr Hardware Beschleunigung NAT für v4 nutzen?


    Diese "Hardwarebeschleuniger" sind nichts weiter als Doppelkern-SoCs, bei denen der zweite Kern zum NAT-Routing verwendet wird. Der 53003 ist aber ein single-core MIPS M74K, bei dem wir ganz klassich Linux-Boardmittel nutzen. NAT-Routing hat ne Obergrenze bei knapp über 200MBit/s, und das fällt gewaltig, wenn man mit der Paketgröße 'runtergeht. Die 200MBit/s sind gemessen an einer optischen Verbindung und mit PPPoE, also "denkbar ungünstige Config" u.A. wegen adaptiver MTU size. Das klingt im Vergleich zum Berliner Modell lahm, ist aber um den Faktor 2 schneller als das, was die meisten Großkunden fordern. Das, was sich gern Konkurrenz nennen würde, schafft nämlich nur selten mehr als 60MBit/s bei PPPoE+NAT und schafft's in der Regel nichtmal in die erste Shortlist.


    Vorsicht wenn du aus dem Berliner Hause alles kleiner gleich 7270 nimmst mag das stimmen ohne Fine Tuning. Mit Finetuning schaffen diese Router auch ihre . Ab 7390 und ihren Schwestern wird die NAT und Routing-Beschleunigerhardware wirklich verwendet.(Was wiederum, weil closed source und undokumentiert das an Conntrack und NAT kaputt macht, was Linux könnte. )
    Siehe hier
    Wie habt ihr die 200MB gemessen? TCP only oder auch mit kleinen UDP schnippseln? Wieviele "Verbindungen' gleichzeitg?


    Zitat von abraxxl

    Wird ggf die CryptoHW aus dem Broadcom SoC genutzt (wenn vorhanden?) Wie sieht es mit IPv6 Support aus IPSec oder gar openvpn aus?


    Keine Crypro-Hardware, sorry. Trotzdem kann OpenVPN eine DSL-Leitung sättigen, ohne dass die CPU-Last durch die Decke geht. Die 600MHz sind vielleicht nicht wirklich beeindruckend, aber 32-bit breiter DDR2-Speicher ist für ein SoC schon Luxus auf hohem Niveau (Peak-Durchsatz in der Größenordnung 2,5GByte/s). Viele Boxen krebsen da noch mit SDR und 16 Bit herum, da helfen Dir auch hunderte MHz nicht. OpenVPN ist aber noch im "Bastelstadium" - darüber werde ich wahrscheinlich erst in 6-8 Wochen mehr sagen können.


    Schoen. Wie wird das ungefähr aussehen OpenVPN Config zusammen klicken, oder gar einfach eine Config+Certifikate hochladen?


    IPv6 muss ich mit dem "ready"-Spielchen beantworten: Hardware kann's, wir haben auch Labor-Testszenarien, haben's aber noch nie in der realen Welt ausprobiert. Eigentlich sagt jeder, dass das recht schmerzfrei funktioniert, aber das will ich erst versprechen, wenn ein Neubauprojekt (Glasfaserprojekt) mit IPv6 angeschlossen ist. Da ist was im Gespräch und hat auch die ersten Hürden genommen...


    Ist ja nicht weiter schwierig, Linux bringt ja alles mit. es muss nur für den Endbenutzer einfach funktionieren.
    Welche Kernelversion nutzt ihr? Werdet ihr zum Releasezeitpunkt SDK+Toolchain verfügbar? Da mit sich Bastler gg.f eigene Firmwares neubauen können?


    Alles in allem sieht das nach einem tollen Produkt aus, ich würde mich freuen hier mehr zu hören. Und würde auch gerne mal testen :)


    Joerg


  • wenn Du ein Telefonsammler bist, hast Du dann auch ein Telefon in Deiner Sammlung, das die caller ID als DTMF sehen will?


    Hallo Jens,


    leider kann ich Dir da nicht helfen, so neumodisches Zeug hab' ich nicht ;-)


    Im Ernst, alle Telefone hier sind entweder ISDN oder lange vor der Erfindung von Caller ID auf Analogleitungen gebaut.



    Oliver

  • Wie habt ihr die 200MB gemessen? TCP only oder auch mit kleinen UDP schnippseln? Wieviele "Verbindungen' gleichzeitg?


    Das war ein IPerf-Setup mit zwei schnellen Rechnern - einer als PPPoE-Server, der Andere als "Surfer". Den Test hat ein Kunde gemacht, der die Geräte für sein Glasfasernetz haben wollte. Da bin ich zwar in die Shortlist gekommen, konnte aber nicht rechtzeitig liefern. Ich darf aber aufgrund der hohen Performance nochmal vorsprechen, wenn ich liefern kann ;-)


    Schoen. Wie wird das ungefähr aussehen OpenVPN Config zusammen klicken, oder gar einfach eine Config+Certifikate hochladen?


    Das ist noch gar nicht entschieden - wie gesagt, es ist im Bastelstadium und hat bisher nur manuelle Config bekommen, damit wir mal die CPU-Last sehen konnten.


    Welche Kernelversion nutzt ihr?


    2.6.27.18 mit einigen Patches, die wir hardwarebedingt anbringen mussten.


    Werdet ihr zum Releasezeitpunkt SDK+Toolchain verfügbar? Da mit sich Bastler gg.f eigene Firmwares neubauen können?


    Ja - die kommt in Form einer VM, die Du mit dem VMware Player starten kannst. An Nequester nimmst Du ein Telefon ab, öffnest den SSH-Port mit einem Telefoncode, und kannst Dich erstmal auf der Box einloggen. Dort stellst Du eine Handvoll ENV-Variablen um, damit nur noch der Bootloader aus dem Flash kommt. Der Bootloader sucht dann im "developer mode" nach dem NFS-Server, den die VM bereit stellt. Von da wird der Kernel und das initiale RAM-Image geholt. Nequester startet im Developer-Mode also fast ohne eigenes Flash - die Turnaround-Zeiten sind handlich-kurz, weil Du nicht erst noch ein Flash-Image erzeugen musst.


    Je nach Topologie Deines Netzwerkes zuhause brauchst Du gar keine extra Hardware. Ich hab' aber ein paar Kandidaten, die in dem Cross-Dev Rechner eine zweite Netzwerkkarte stecken haben, über die die VM mit Nequester redet. Eine serielle Konsole mit 3.3V-Pegel ist hilfreich (weil Du dann schon dem Bootloader beim Starten zuschauen kannst, im Notfall eingreifen kannst), aber nicht zwingend erforderlich. Da ist dann wohl Disziplin gefragt, denn wenn Du keine Startup-ENV-Variablen gesetzt hast, steht der Bootloader in der Kommandozeile und wartet ewig auf Eingabe :-)


    Und würde auch gerne mal testen :)


    Kannst mich ja mal anschreiben, vielleicht ist im nächsten Prototypen-Lauf ein Gerät frei, das ich an einem bestimmten Anschluss testen muss. Wenn Du bei einem Anbieter bist, der irgendwelche Besonderheiten hat - sehr gern!


    Jens

  • Hallo Jens,
    Auessert interessantes Projekt was du da wieder hast :)
    Von den Berlienern hab ich nen 7170er, die macht hier mangels Speicher exakt DSL, NAT und WLAN. (Oh und VOIP damit das Handy mitklingelt :))
    Aufgrund von maximal langsamen Prozessor macht VPN in keinster weise Spass, und ich kann nichtmal DSL2K saettigen m(
    Krimskrams wie 2xWLAN oder adhoc WLAN muss man gar nicht erst mit kommen, waer aber fuer OLSR oder B.A.T.M.A.N schick.
    Zur Rufnummernanzeige: Ich hab hier ein Siement euroset 251 stehen, bei Anrufen steht immer $random-zeugs im Display...


    Ansonsten, weiter so!


    Gruss, Martin

  • waer aber fuer OLSR oder B.A.T.M.A.N schick.


    Vorsicht - auch wenn ich ein Fan solcher Projekte bin (insbesondere B.A.T.M.A.N.), und sicher einigen Kernentwicklern den einen oder anderen Router zum subventionierten Preis überlassen kann, werden weder ich, noch meine Angestellten Support dafür leisten. Auch die Entwicklungsumgebung, von der ich weiter oben geschrieben habe, wird "as-is" übergeben, ohne jeglichen Support. Jede Anfrage dazu verschwindet in NIL: (oder auch /dev/null für diejenigen, die keinen Amiga hatten). Entwicklungs-Support kann aber zu marktüblichen Preisen gekauft werden.


    Ich werde beizeiten ein Wiki aufsetzen, das den Router so vollständig wie möglich dokumentiert. Die Offenheit soll schon demonstriert werden, aber sie darf keine zusätzliche Arbeit kosten, die uns niemand bezahlt. Wer von der Firmware im Auslieferungszustand abweicht, bekommt lediglich Hilfe, den Auslieferungszustand wieder herzustellen.


    Zur Rufnummernanzeige: Ich hab hier ein Siement euroset 251 stehen, bei Anrufen steht immer $random-zeugs im Display...


    Gilt das für alle Euroset, oder nur für das spezielle Modell? Wurde das von den Berlinern mal in einer Firmware korrigiert? Deine 7170er ist scheinbar "orphaned", jedenfalls ist das letzte Update im Juni 2011 gekommen.


    Jens

  • Nach allen bisherigen Beschreibungen stell ich mir das Entwickeln sehr angenehm vor, im Vergleich zu den Kisten aus Berlin.
    OLSR ist eh Userspace (tuts hier auf den Berliner Kisten, leicht sinnbefreit ohne AdHoc) und B.A.T.M.A.N tuts wunderbar auf 2.6.27.
    Um sowas einzubauen braucht man allerdings AdHoc unterstuetzung bei zumindest einer WLAN-Lösung die an den Nequester passt. Wenn es dann noch ne definierte Methode gibt die paar Einstellungen ins WebIF zu bekommen ist das unproblematisch.
    (Wobei hier ja grade der Vorteil ist das mans selber bauen kann, und nicht ein tgz mit veralteten, unkompilierbaren Quellen an den Kopf geworfen bekommt)


    Die Anleitung zu dem Euroset find ich grade nicht :(


    Nochwas, wie ist das ADSL-Modem so im vergleich zu den Kisten aus Berlin


    Gruesse, der Gruetzkopf

  • Die Anleitung zu dem Euroset find ich grade nicht :(


    Die gibts online. Ich bräuchte das Telefon, damit ich testen/debuggen kann. So oft gibts das nicht auf eBay oder hood ;-)


    Nochwas, wie ist das ADSL-Modem so im vergleich zu den Kisten aus Berlin


    Ich kenne die Testresultate der AVM-Geräte nicht und will mich auch nicht ins Verhältnis setzen, deswegen lieber ein paar Messwerte die ich ohnehin vorlegen muss, wenn ich mich "ADSL2+" nennen möchte:



    Test ist vom 4. Februar 2012 an einem Prototypen vorgenommen worden. Danach habe ich noch Änderungen bei der Abschirmung gegen die Magnetfelder meiner DC-DC Wandler gemacht, um die noise margin noch höher zu bekommen (empfindliche Teile sitzen jetzt in ner kleinen Metalldose). Bei kürzerer tap length gehen die Werte natürlich gewaltig nach oben, aber bei dem aufmodulierten white noise in diesem Test versagen viele Modems einfach ihren Dienst. Der DSLAM sagt nämlich bei weniger als 6dB Margin, dass die Verbindung neu trainiert werden muss.


    In der Praxis (also an Telekom-Anschlüssen) wirst Du nur merken, dass Nequester ohne Probleme funktioniert. Wenn Du aber einen Provider hast, der rate adaptive mode (DSL-RAM) anbietet, kann ich meine Stärken ausspielen, denn dann bekommst Du runde 30% mehr Leistung als das, was für die Erfüllung des Standards erforderlich ist.


    Und bevor hier jemand meckert, dass das für eine 16MBit-Leitung doch sehr lahm sei, dem sei gesagt, dass 24AWG gerademal 0,2mm dick ist und von der Telekom niemals mit 16MBit betrieben werden würde.


    Es gibt noch ein fieseres Testprofil, bei dem der white noise an beiden Enden eingespeist wird und eine Länge bis 3800 Meter (nicht ft) angenommen wird. Bei dem schaffe ich im Upstream 588kbit bei 6dB noise margin (gefordert sind 288kbit) und im Downstream 2007kbit bei 6,5dB noise margin (gefordert sind 608kbit).


    Jens

  • off-hook CLIP (Anzeige der caller ID bei Anklopfen) ist jetzt auch erfolgreich getestet. Ein Gigaset, welches frisch gekauft ist, kann's nicht (auch nicht am Telekom-Anschluss), aber ein altes Philips-Telefon kann's. Wenn jemand von Euch ein Telefon hat, bei dem die Rufnummer eines Anklopfers gezeigt werden *müsste*, dies aber an der Box seiner Wahl nicht klappt, hätte ich großes Interesse an diesem Telefon (wie ich überhaupt Interesse an jedem "Problemtelefon" habe).


    Jens