Salut, Imi cer scuze pentru toate mesajele, acesta e ultimul in acest thread. Am gasit problema. Server-ul meu nu astepta sa primeasca tot request-ul de la client. Imediat ce parsa calea, incepea sa trimita raspunsul. Acum astept sa trimita clientul toata cererea, apoi trimit raspunsul si fisierul daca este cazul si merge perfect. Stack overflow m-a salvat din nou [1].
Numai bine, George https://stackoverflow.com/questions/31168131/http-server-not-sending-complete-file-to-wget-firefox-connection-reset-by-peer În vin., 17 mai 2019 la 18:01, George Diaconu <[email protected]> a scris: > > Revin cu o completare. > La testul 16, server-ul afiseaza ca a trimis raspunsul "200 OK", apoi > fisierul si ca a inchis conexiunea, chair daca wget spune ca a fost > inchisa conexiunea inainte sa primeasca macar "200 OK". > Am rulat testul si am obitnut 2 fisiere .pcap, unul pentru o executie > cu succes a testului si altul cand esueaza testul. Las arhiva cu cele > doua fisiere la [1]. > La [2] este link-ul catre repo-ul meu. > > Numai bine, > George Diaconu > > [1] https://drive.google.com/open?id=1JG98HjEDUO7kZM0UmOiHid62gF0OWqNY > [2] https://gitlab.cs.pub.ro/george.diaconu2208/l3-so-assignments > > În vin., 17 mai 2019 la 16:48, George Diaconu <[email protected]> a scris: > > > > Salut, > > > > Am reusit sa rezolv problema asta intre timp. Las la [1] link-ul unde > > am inteles care a fost problema. Pe scurt, din ce am inteles, netcat > > anunta ca este gata sa opreasca conexiunea, dar server-ul considera ca > > s-a si deconectat si dadea drop conexiunii. Acum in momentul in care > > recv intoarce 0, nu inchid imediat conexiunea, verific in ce stadiu > > este conexiunea (am o masina de stari cum este recomandat in enuntul > > temei), si inchid conexiunea dupa ce a fost trimis tot fisierul. > > > > Acum am probleme cu testul 16. Uneori merge, alteori nu merge. Acest > > test foloseste wget. Cand nu merge, mesajul intors de wget este "Read > > error (Connection reset by peer) in headers." Interesant este ca daca > > adaug flag-ul '-d' comenzii wget, testul trece mereu (am testat cu 100 > > de rulari succesive, fara '-d' merge foarte rar). Flag-ul acesta ar > > trebui doar sa produca mai mult output, dar cumva face mai mult. > > > > Numai bine, > > George > > > > [1] > > https://stackoverflow.com/questions/41776718/what-exactly-does-the-q-option-of-netcat-do > > > > În vin., 17 mai 2019 la 15:12, Razvan Crainea > > <[email protected]> a scris: > > > > > > Salut, George! > > > > > > Poți face un trace pcap (folosind wireshark sau tcpdump) pe portul > > > 8888, să vedem exact comunicația TCP între client și server? > > > > > > Numai bine, > > > Răzvan > > > > > > On Fri, May 17, 2019 at 1:28 AM George Diaconu via so > > > <[email protected]> wrote: > > > > > > > > Salut, > > > > > > > > Am o problema la testul 13. Checker-ul executa urmatoarea comanda: > > > > echo -ne "GET /static/small00.dat HTTP/1.0\r\n\r\n" | nc -q 1 > > > > 192.168.169.128 8888 > > > > > > > > Inteleg de aici ca cere fisierul /static/small00.dat. > > > > Problema mea este ca dupa ce clientul trimite toata cererea (unesc > > > > bucatile trimise de client), server-ul apuca sa parseze cererea, dar > > > > apoi client-ul inchide conexiunea fara sa mai astepte raspunsul. > > > > Am reusit sa reduc problema la parametrul '-q 1' al comenzii 'nc'. In > > > > manual scrie ca acest parametru face ca 'nc' sa mai astepte o secunda > > > > dupa ce a primit EOF de la stdin, si apoi se inchide. > > > > Am incercat cu '-q 5' si am observat ca server-ul scrie mesajul de la > > > > deconectarea cleintului inainte ca 'nc' sa isi termine executia. Asta > > > > ma face sa trag concluzia ca nc inchide conexiunea mult prea devreme. > > > > Restul testelor de la static merg fara probleme. > > > > > > > > De asemenea, in momentul in care trimit raspunsul, intai raspund cu > > > > HTTP/1.1 200 OK si apoi incep sa trimit fisierul. De asemenea, verific > > > > ca raspunsul sa fie trimis in intregime, si trimit pe bucati daca nu > > > > poate fi trimis tot o data. > > > > > > > > Nu inteleg unde gresesc, mai ales ca restul testellor trec fara > > > > probleme. > > > > > > > > Multumesc anticipat. > > > > _______________________________________________ > > > > http://ocw.cs.pub.ro/courses/so/info/lista-discutii > > > > > > > > > > > > -- > > > Răzvan Crainea _______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
