@PicNick:
Statt der Addition können wir gerne auch bitweise Negation (XOR 0xFF) verwenden. Du kannst
aber auch auf ein char (signed) jederzeit 8 addieren und auch bekommst trotzdem ein richtiges
Ergebnis (-128 + 1 = 0). Solange deine Variable 8 bit hat funktioniert die Addition unabhängig
von signed oder unsigned.


@PicNick:
Betreffend des von dir beschriebenen Routings einige Fragen:

1.) Wie wird das 'Nack' mit der verworfenen Nachricht assoziiert? Oder wird das Nack
einfach so an den Empfänger zurückgeschickt? Wenn ja, was kann der Empfänger mit dieser
Information anfangen wenn er sie nicht einer ausgegangenen Nachricht zuordnen kann?

Worauf ich hinauswill: 'Nack' macht meiner Meinung nach nur am lokalen Router sinn, wo der
Router direkt auf das Absenden reagieren kann. Schau dir mal IP an, da ists auch nicht anders.
Ein 'No Route to Host' bekommst du nur, wenn dein lokaler Router nicht weis wohin mit der
Nachricht. Ist die IP beim Ziel nicht bekannt, dann gehts stillschweigend schief.

2.) (aus Anforderungen/uController): Wie soll der uC eine Empfängeradresse für z.B. Sensordaten finden ?
Prinzipiell per Broadcast zu senden verschwendet IMHO Ressourcen, das Paket wird ja auch an jeden
anderen uC geschickt. Besser wäre eine Registrierung des Empfängers beim uC. Der Client registriert
also seine Adresse beim uC und jedesmal wenn der uC Daten generiert werden diese an alle registrierten
Adressen verschickt.

Prinzipiell ist das aber sowieso mal kein Problem der Routingschicht.

3.) DNS ist gute Idee, aber fürs Routing auch nicht wichtig.

4.) Wie sollen die Routingtabellen aufgebaut bzw. synchronisiert werden?


@NumberFive:
1.) Kannst du bitte mal genau beschreiben, was dein Programm alles kann? Am besten aus Sicht der
jeweiligen Schichten.

2.) Wie überträgst du die Nachrichten übers LAN?

3.) Gibts deine Programme auch als Binary? Ich habe gerade keinen Compiler greifbar und wills auch
mal ausprobieren.

4.) Welches Nachrichtenformat für Schicht2 verwendest du? Welche Adressen?


@Alle: Wer hat jetzt alles eine Implementierung der Schicht1-UART mit der ich meinen
Schicht1-UART testen kann?

@Alle:
Als nächstes sollten wir verbindlich festlegen, welche Nachrichten wir auf Level2 (Routing)
brauchen. (Adressformat, dynamisches Routing, ...)

@marvin42:
Ini-Files und anders sind implementierungsspezifisch und werden wohl nicht Standardisierbar sein.


Ragnar