-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.man.lodz.pl!newsfeed.pionier.net.p
l!news.samoylyk.net!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.c
om!peer01.iad!feed-me.highwinds-media.com!peer01.ams1!peer.ams1.xlned.com!news.
xlned.com!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!new
sfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!
news.neostrada.pl.POSTED!not-for-mail
Date: Sun, 9 Oct 2022 10:19:19 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.3.0
Subject: Re: lwIP - odbieranie danych przez TCP
Content-Language: en-US, pl
Newsgroups: pl.misc.elektronika
References: <632f2939$0$455$65785112@news.neostrada.pl>
<1sjefj0s46cyi.l9ylckob73a0$.dlg@40tude.net>
<6333f830$0$447$65785112@news.neostrada.pl>
<a...@n...neostrada.pl>
<6339e123$0$567$65785112@news.neostrada.pl>
<a...@n...neostrada.pl>
From: Atlantis <m...@w...pl>
In-Reply-To: <a...@n...neostrada.pl>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 50
Message-ID: <63428407$0$567$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.27.20.143
X-Trace: 1665303559 unt-rea-b-01.news.neostrada.pl 567 83.27.20.143:36086
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 4095
Xref: news-archive.icm.edu.pl pl.misc.elektronika:774737
[ ukryj nagłówki ]On 9.10.2022 08:25, Marek wrote:
> A czy problemy z odtwarzaniem przez sieć nie wynikają ze słabej
> wydajności stosu tcpip iwip/mla przy "odległych" podłączeniach? Np. MLA
> szybko działa w lokalnej sieci (kilkaset kB/s) ale przez internet jest
> już znacznie wolniejszy (kilka kB/s) niż oczekiwany wpływ szybkości
> łącza.
Wszystkie wersje tego urządzenia na PIC32 i MLA zawsze wyciągały
wystarczającą szybkość, żeby być w stanie płynnie odtwarzać streamy z
odległych serwerów. Przez odległe mam na myśli nawet studenckie
rozgłośnie zza oceanu. ;)
Wczoraj udało mi się znaleźć źródło problemu. Okazało się ono być
banalne, ale leżało w trochę nieoczekiwanym miejscu. Mianowicie prędkość
SPI dedykowanego VS1003 była za mała. Nie wpadłem na to od razu, bo
prędkość była w pełni wystarczająca aby odtwarzać nawet MP3 o większych
bitrate'ach z lokalnych nośników.
Problemem było to, w jaki sposób stos lwIP na RAW API dostarcza dane. W
MLA można pobierać sobie dowolną ilość danych z bufora. W przypadku lwIP
taka operacja jest możliwa jedynie przy użyciu socket API, które wymaga
RTOS-a. Tutaj natomiast muszę albo:
- Przyjąć całą paczkę danych w callbacku odbiorczym, zwolnić pamięć i
zgłosić gotowość przyjęcia kolejnej porcji.
- Opóźnić tę operację i wykonać ją trochę później w pętli głównej.
Nie po prostu zapisać w buforze tyle danych, ile aktualnie mam wolnego
miejsca.
I tutaj problemem było tempo w jakim VS1003 by w stanie przyjmować dane.
Zbyt często po prostu dochodziło do sytuacji, kiedy po przyjściu nowej
paczki danych w buforze wciąż nie było dostatecznej ilości miejsca na
jej przyjęcie i trzeba było czekać aż VS przeniesie je do swojego
wewnętrznego bufora.
Po przyspieszeniu SPI wszystko zaczęło się odbywać dużo sprawniej.
Okazało się jednak, że przy buforze cyklicznym umieszczonym w pamięci
RAM (a więc ograniczonym do kilku kB) co jakiś czas zdarza się minimalne
przycięcie. Po przywróceniu 128kB bufora w pamięci SPI RAM wszystko
zaczęło działać zupełnie płynnie, chociaż na dobrą sprawę pewnie mógłbym
jeszcze dość znacznie zmniejszyć rozmiar tego bufora.
Obecnie będę musiał jeszcze trochę zoptymalizować program, zwłaszcza pod
kątem użycia pamięci. Może uda mi się jej trochę odzyskać po
przywróceniu bardziej oszczędnych ustawień lwIP.
Poza tym pingi nie wyglądają idealnie. Większość ma typową dla Ethernetu
wartość 0.1-0.5 ms, jednak podczas odtwarzania streamu mniej więcej co
piąty przychodzi z opóźnieniem od kilkudziesięciu do nawet ponad 100 ms.
W przypadku wersji na PIC32 też były opóźnienia, ale nie aż tak duże.
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Czy cos fi przechodzi przez trafo separujące?
- śrubka masy
- Ciekawostka na dziś lock bity
- [OT] napisy w YT
- Było 83V
- Stare komputery
- Odbiornik ADS-B i wzmacniacze
- Thunderbird i dysk...
- opornosc falowa
- Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- Tani zakup z ali?
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML