Hallo Ragnar,
hier mal meine Ausführungen zu Deinen Fragen.
Frage 1
Eine übertragene Länge macht in höhere Schichten weniger Probleme als Framen
Beim Framen fühlt man sich als Programmierer in alte Zeiten versetzt und muß mit Timeouts auf Daten warten die vielleicht noch kommen werden (oder auch nicht.. mit Überraschungseffekt)
Man muß je nach dem für Speicher (Buffer) sorgen (alockieren und resizen wie bekloppt) ... nene
Lieber eine Lenght zu begin und ein Frame bzw. Endflag.
So merkt man den Müll in der Leitung besser solange es hierführ noch keine expliziten Checks (Checksumme etc.) gibt.
So ne art zweite Sicherung des Pakets
(Datenpacketlänge richtig kein Endzeichen ... Müll dabei)
(Datenpacketlänge zu kurz/ zu lang + Endzeichen ... wieder Müll)
(Datenpacketlänge richtig + Endzeichen ... könnte passen)
(Endzeichen fehlt ... Leitungsprobleme)
Das Endzeichen könnte hierbei auch eine Checksumme sein. So ne Art ECC für Datenpackete. (Kann auch unter ISBN-Checksumme nachgelesen werden)
Frage 2
Generel klingt 128 Byte ganz ordentlich... und könnte vielleicht sogar ausreichend sein. Als max. Paketgröße (right?)
Wie ist das eigentlich mit den Buffern ausgegeangen?
Auch hoffe ich immernoch auf schnelle Bilddaten.
d.H die Untere Ebene kann sich an diese 128 halten. Beim nächsten Layer aber bitte mehr Saft... Buffering etc.
(für verwöhnte programmierer )
Frage 3
Wie wärs mit regexp oder ähnlich:
A = Irgendein Ctrl char
\A = A
\\\A = \A
...ist etwas einfacher zu verstehen.
Frage 4
Das Protokoll zur Anmeldung sollte meiner Meinung auch erst beim SW-Entwurf dabei sein.
Bislang kann man noch nicht sagen welche Infos ausgetauscht werden müßen.
(An dieser Stelle würde ich auch die Byteorder einflicken, denn im Layer 4 ist es zu spät!
Das Layer 4 bedient sich aus Daten der unteren Layer... wenn die Unteren Layer dann nichts zur ByteOrder verraten, kann es von Layer 4 auch nicht gerochen werden. )
Ok man könnte es explizit zuweisen/konfigurieren usw. aber der ganze Konfigurationskram ist ziemlich Erklärungsbedürftig und pflegeintensiv.
Und wie uC <-> uC damit klar kommen soll würde dann auch ein Rätzel bleiben.
Netter Gruß @all
Chris
EDIT: Man sollte Nachts schlafen und nicht über geschriebenen Käse senieren ;-)