[LiSA-Devel] Intrebari

Faur Andrei da3drus at gmail.com
Tue Apr 14 21:03:53 EEST 2009


2009/4/13 Radu Rendec <radu.rendec at ines.ro>:

>> Bun, acum ca am reusit asta as vrea sa scriu un mic tutorial in care arat
>> pasii parcursi in implementarea unui protocol oarecare, in userspace,
>> folosind LiSA. Cu ce cont ma loghez pe wiki?
>
> Ti-am creat cont. Ar trebui sa primesti notificarea automata de la wiki
> pe adresa de gmail.
>

Am creat un tutorial in wiki, practic e cam tot ce am discutat pe mailing
list pana acum + bucati luate din codul sursa. In tutorial nu am explicat
si _de ce_ lucrurile trebuie facute asa deoarece, sincer, inca nu inteleg prea
bine codul sursa din LiSA ca sa dau explicatii corecte. Chiar si asa, oricine
vine si are de lucrat in userspace, poate sa faca modificarile respective si
daca nu mai are treaba in kernel, poate uita de ele.

Am dat si un exemplu in partea de userspace, care e de fapt o prelucrare
a programului test_sock deja existent. Codul respectiv (sender si receiver)
as dori sa se afle permanent in sursele LiSA in directorul test astfel incat
daca vine cineva si citeste tutorialul, sa il poata rula direct. (Pentru asta
presupun ca trebuie sa fac un push cu git?)

Momentan e doar un draft, ideea e sa fie cat mai user-friendly astfel incat
cineva care nu e interesat neaparat de partea de kernel sa poata face usor
modificarile.

In legatura cu partea de RSTP.
Eu va trebui sa tin in kernel, in structura net_switch_port un camp care imi
va zice starea portului (Listening, Blocking, etc.). Nu sunt sigur cum as putea
face comunicatia dintre userspace si kernel, astfel incat sa am acces la acel
camp. Din cate imi dau seama, la un nivel ridicat, proiectul consta in
schimbul de mesaje intre switchuri si modificarea starilor porturilor pe baza
acelor mesaje. Cum logica programului pe baza careia voi lua decizii se va afla
in intregime in userspace, cum fac accesul in kernel? Din cate imi dau seama
o modalitate ar fi prin implementarea unei comenzi ioctl care sa faca
treaba asta.

Andrei


More information about the LiSA-Devel mailing list