![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 2.03.2011 Ostrzeżenie: (0%) ![]() ![]() |
Czesc.
Mam dokumentacje protokolu opartego o UDP: http://xbtt.sourceforge.net/udp_tracker_protocol.html ... i nie bardzo wiem jak to ugryzc. Chodzi mi o to, jak mam podac dane. Nie moge uzmyslowic sobie co to jest offset - zakladam, ze jest to n-ty bajt w ciagu ?
Gdyby ktos byl tak mily, i wytlumaczyl mi krok 1 - "obtain connection id" oraz jak odebrane dane przekonwertowac z postaci binarnej do np. tablicy. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat Chodzi mi o to, jak mam podac dane. Struktura pakietu jest dosyć jasno wytłumaczona. Jako treść wiadomości musisz podać zmienną zawierającą w sobie zlepek różnych danych (do zlepienia danych musisz wykorzystać pack).Pamiętaj, że w PHP liczby całkowite (int) mogą być 32 lub 64 bitowe, tak więc powinieneś to mieć na uwadze. W przypadku, gdy masz 64-bitowy PHP, a protokół wymaga podania danych 32-bitowych musisz pozbyć się początkowych 32 bitów. W przypadku gdy masz 32-bitowy PHP, a protokół wymaga podania 64-biotwej liczby musisz spakować dwie zmienne w jedną - ponownie: pack. Cytat wytlumaczyl mi krok 1 - "obtain connection id" Jest to losowa 32-biotwa liczba, która pozwala Ci identyfikować kolejne pakiety, w skrócie robisz coś takiego:Pamiętaj, że UDP to protokół który nie gwarantuje praktycznie niczego - dotyczy to również kolejności w jakiej dochodzą pakiety (pakiet wysłany później może dojść wcześniej). Cytat oraz jak odebrane dane przekonwertowac z postaci binarnej do np. tablicy. Działanie odwrotne od pakowania danych do binarnego stringu - czyli unpackEDIT: Cytat Nie moge uzmyslowic sobie co to jest offset - zakladam, ze jest to n-ty bajt w ciagu ? Offset jest tam podany w bajtach (czyli offset = 8 oznacza "od 64 bitu"). Tutaj masz przykład struktury pakietu wysyłanego w protokole TCP: http://en.wikipedia.org/wiki/Transmission_...gment_structure - myślę, że to dobrze obrazuje o co chodzi.
Ten post edytował Crozin 2.03.2011, 16:45:03 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 22:34 |