-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.n
eostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: <k...@w...pl>
Newsgroups: pl.comp.programming
References: <jhp44p$n9f$1@inews.gazeta.pl> <jhqq12$6mr$1@mx1.internetia.pl>
<jhrb92$17i$1@inews.gazeta.pl>
Subject: Re: prosty kod sieciowy do gierki
Date: Mon, 20 Feb 2012 13:49:09 +0100
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157
X-Antivirus: avast! (VPS 120220-0, 2012-02-20), Outbound message
X-Antivirus-Status: Clean
Lines: 85
Message-ID: <4f424143$0$1232$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 178.42.206.25
X-Trace: 1329742147 unt-rea-b-01.news.neostrada.pl 1232 178.42.206.25:3487
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:195511
[ ukryj nagłówki ]>> Odczyt pakietu nie różni się praktycznie niczym od odczytu pliku, poza
>> tym, że musisz wiedzieć (np z nagłówka, albo ze specyfikacji) jak długi
>> jest pakiet. Podobnie jak przy odczycie pliku nie musi się to udać "od
>> razu" i możliwa jest konieczność oczekiwania na dane. Tak więc
>> definiujesz sobie protokół przez zdefiniowanie jakie rodzaje pakietów
>> możesz przyjąć, a te pakiety obrabiasz tak jakby były małymi pliczkami.
>> No i oczywiście 1 zły bajt i cała transmisja pada...
>>
No i mu namieszałeś, chcesz aby on wynajdował koło na nowo -> Implementacja
Gniazd.
Po co mu tłumaczysz jak działa stos sieciowy, o tym niech sobie doczyta.
Do "" poczytaj o gniazdach surowych to podstawa do obecnej komunikacji
sieciowej.
musisz sam wymyśleć sobie protokół
>> Tak na ten moment to rozumiem...
>
> ok, ale mam szczegolowe pytania (jak nie bedzie odpowiedzi to bee musial
> sam poszukac, wiadomo, ale pogadac nie zaszkodzi):
>
> jaki rozmiar powinny miec te pakiety najlepiej - spodziewam sie
> ze po jednym bajcie nie warto wysylac, podobnie zapewne nie warto
> wysylac po jednym gigabajcie - jaki rozmiar najlepiej i jaki to ma
> wplyw
To zależy od prędkości i jakości sieci
Ogólnie TCP/IP ma 0-1024 bajtów w pakiecie, ale tak naprawdę to on decyduje
ile ma pakiet, jeżeli będzie za duży to zostanie podzielony.
Jednocześnie gwarantuje że prześle dane lub zerwie transmisje.
> jak opakowac i odpakowac te pakiety, czy zwykle wysyla sie
> (zwlaszcza w kontekscie gamedevu) pakiet o takiej samej
> strukturze czy wysyla pakiety roznych typow ktore pozniej
> trzeba 'odpakowac' po jakims typie?
po co? W gniazdach robisz to Send i Recv i to koniec
Send -> wysyłasz dane
RecV -> odbierasz dane
i tyutaj odgrywa rolę twój protokół ... end done
Tutaj masz namiastkę opisu
http://pjwstk.dyski.one.pl:81/public/ftp.pjwstk.edu.
pl/zsuski/zso/04-Gniazda.pdf
Jest jeszcze
http://lubimyczytac.pl/ksiazka/122164/unix-programow
anie-uslug-sieciowych-tom-1-api-gniazda-i-xti
to chyba najlepsza pozycja ze szczegółami jak ma działać serwer i klient jak
rwie się połączenie.
Linux - Windows nie wiele się różni.
Ciiii
http://peb.pl/informatyka/411135-rapidshare-unix-pro
gramowanie-uslug-sieciowych.html
tego nie podawałem
>
> jak czesto wysylac? czy 30 pakietow (stanow gry) na
> sekunde to nie za duzo (jak to ustalic?)
Prawdopodobnie doświadczalnie, ale myślę im mniej ruchu tym lepiej.
> jak rozumiem
> to jest obslugiwane na 'oddzielnym watku' przez jakis
> 'driver' do netu ktury obsluguje programową kolejke,
> ale czy przy za duzym wysylaniu ta kolejka sie nie
> przepelni?
A www się przepełnia?
To zależy jak ustawisz gniazda, TCP/IP blokujące , nie blokujące -
asynchroniczne, czy UDP.
Jedno jest ważne TCP/IP gwarantuje dostarczenie danych w odpowiedniej
kolejności lub wcale, a UDP nie gwarantuje nic ale przez to jest duzo
szybsze.
Ogólnie to zależy od sysstemu, łącza, odległości itp...
Następne wpisy z tego wątku
- 20.02.12 12:56 k...@w...pl
- 20.02.12 16:43
- 21.02.12 07:26 k...@w...pl
- 21.02.12 07:35 Adam Klobukowski
- 21.02.12 07:43
- 21.02.12 07:44 k...@w...pl
- 21.02.12 07:49
- 21.02.12 13:31 k...@w...pl
- 21.02.12 13:48
- 22.02.12 08:44 k...@w...pl
- 25.02.12 17:40
- 25.02.12 21:52 Karol Y
- 26.02.12 09:52
- 26.02.12 18:45 Karol Y
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-16 W telefonie brak szufladki na drugą kartę SIM
- 2024-12-16 Szukam monitora HDMI ok. 4"
- 2024-12-16 Poznań => Key Account Manager <=
- 2024-12-16 Akwarium w aucie
- 2024-12-16 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-12-16 Warszawa => Expert Recruiter 360 <=
- 2024-12-16 Gdańsk => System Architect (background deweloperski w Java) <=
- 2024-12-16 Warszawa => Key Account Manager <=
- 2024-12-16 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-16 Białystok => Analityk w dziale Trade Development (doświadczenie z Po
- 2024-12-16 Warszawa => Programista Microsoft Dynamics 365 Business Central <=
- 2024-12-16 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2024-12-16 Szczecin => Key Account Manager (ERP) <=
- 2024-12-16 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-12-16 Gdańsk => Specjalista ds. Sprzedaży <=