Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
REMOTE_NDIS_PACKET_MSG hermetyzuje pakiety danych NDIS w celu utworzenia pojedynczego komunikatu danych.
Łączenie wielu elementów REMOTE_NDIS_PACKET_MSG tworzy komunikat wielopakietowy. Każdy składnik REMOTE_NDIS_PACKET_MSG jest skonstruowany zgodnie z poniższym opisem. Różnica między komunikatem o pojedynczym pakiecie polega na tym, że pole MessageLength w każdym nagłówku REMOTE_NDIS_PACKET_MSG zawiera kilka dodatkowych bajtów dopełnienia. Te dopełnienie bajtów są dołączane do wszystkich, ale ostatnich REMOTE_NDIS_PACKET_MSG, aby pomyślne REMOTE_NDIS_PACKET_MSG zaczyna się od odpowiedniej granicy bajtów. W przypadku komunikatów wysyłanych z urządzenia do hosta to wypełnienie powinno spowodować, że każda REMOTE_NDIS_PACKET_MSG zaczyna się od przesunięcia bajtów, które jest wielokrotną 8 bajtami rozpoczynającą się od początku komunikatu wielopakietowego. Gdy host wysyła do urządzenia komunikat z wieloma pakietami, będzie on zgodny z PacketAlignmentFactor, który określa urządzenie.
Format REMOTE_NDIS_PACKET_MSG jest zdefiniowany w poniższej tabeli.
| Przesunięcie | Rozmiar | Pole | Opis |
|---|---|---|---|
0 |
4 |
Typ komunikatu |
Określa typ wysyłanego komunikatu. Ustaw wartość 0x1. |
4 |
4 |
MessageLength |
Długość komunikatu w bajtach, w tym dołączone dane pakietu, dane OOB, dane informacji o pakiecie oraz wewnętrzne i zewnętrzne wypełnienie. |
8 |
4 |
DataOffset |
Określa przesunięcie w bajtach od początku pola DataOffset tego komunikatu do początku danych. Jest to liczba całkowita z 4. |
12 |
4 |
DataLength |
Określa liczbę bajtów w zawartości danych tego komunikatu. |
16 |
4 |
OOBDataOffset |
Określa przesunięcie w bajtach pierwszego rekordu danych OOB od początku pola DataOffset tego komunikatu. Ustaw wartość zero, jeśli nie ma danych OOB. W przeciwnym razie jest to liczba całkowita z 4. |
20 |
4 |
OOBDataLength |
Określa w bajtach łączną długość danych OOB. |
24 |
4 |
NumOOBDataElements |
Określa liczbę rekordów OOB w tym komunikacie. |
28 |
4 |
PerPacketInfoOffset |
Określa w bajtach przesunięcie od początku pola DataOffset w komunikacie REMOTE_NDIS_PACKET_MSG danych na początek pierwszego rekordu danych informacji o pakiecie. Ustaw wartość zero, jeśli nie ma danych na pakiet. W przeciwnym razie jest to liczba całkowita z 4. |
32 |
4 |
PerPacketInfoLength |
Określa w bajtach łączną długość informacji na pakiet zawartych w tym komunikacie. |
36 |
4 |
VcHandle |
Zarezerwowane dla urządzeń zorientowanych na połączenia. Ustaw wartość zero. |
40 |
4 |
Zastrzeżony |
Zastrzeżony. Ustaw wartość zero. |
Format pojedynczego rekordu danych OOB jest wskazany w poniższej tabeli.
| Przesunięcie | Rozmiar | Pole | Opis |
|---|---|---|---|
0 |
4 |
Rozmiar |
Długość w bajtach tego nagłówka obiektu OOB i dołączonych danych OOB i dopełnienie. Jest to liczba całkowita z 4. |
4 |
4 |
Typ |
Brak zdefiniowany dla urządzeń 802.3. |
8 |
4 |
ClassInformationOffset |
Przesunięcie bajtu od początku tego rekordu danych OOB na początek danych OOB. |
(N) |
... |
Dane OOB |
Dane OOB; Aby uzyskać więcej informacji, zapoznaj się z dokumentacją zestawu Microsoft Windows Driver Development Kit (DDK). |
Uwaga (N) jest równa wartości ClassInformationOffset.
W poniższej tabeli zdefiniowano format rekordu danych informacji o pakiecie.
| Przesunięcie | Rozmiar | Pole | Opis |
|---|---|---|---|
0 |
4 |
Rozmiar |
Długość w bajtach tego nagłówka na pakiet i dołączona dane na pakiet i wypełnienie. Ta wartość jest liczbą całkowitą z 4. |
4 |
4 |
Typ |
Ustaw jedną z wartości prawnych dla NDIS_PER_PACKET_INFO_FROM_PACKET, zgodnie z opisem w zestawie Windows 2000 Driver Development Kit (DDK). |
8 |
4 |
PerPacketInformationOffset |
Przesunięcie bajtu od początku tego rekordu danych informacji o pakiecie na początek danych informacji o pakiecie na początek danych informacji o pakiecie. |
(N) |
... |
dane Per-Packet |
Per-Packet dane; Aby uzyskać więcej informacji, zapoznaj się z dokumentacją zestawu DDK systemu Windows 2000. |
Uwaga (N) jest równa wartości PerPacketInformationOffset.
Uwagi
Każdy REMOTE_NDIS_PACKET_MSG może zawierać co najmniej jeden rekord danych OOB. NumOOBDataElements wskazuje liczbę rekordów danych OOB w tym komunikacie. Rekordy danych OOB muszą być wyświetlane w sekwencji. Pole OOBDataLength wskazuje długość w bajtach całego bloku danych OOB. Pole OOBDataOffset wskazuje przesunięcie bajtu od początku pola DataOffset na początek bloku danych OOB. Aby uzyskać więcej informacji na temat danych pakietów OOB, zobacz specyfikację NDIS w zestawie DDK systemu Windows 2000.
Jeśli wiele bloków danych OOB jest dołączonych do komunikatu REMOTE_NDIS_PACKET_MSG, każdy kolejny rekord danych OOB musi natychmiast podążać za danymi poprzedniego rekordu OOB.
Brak informacji OOB nie jest obecnie zdefiniowany dla urządzeń 802.3.
Każdy REMOTE_NDIS_PACKET_MSG może zawierać jeden lub więcej rekordów danych na pakiet. Informacje o pakiecie są używane do przekazywania metadanych pakietów, takich jak suma kontrolna TCP. Pole PerPacketInfoOffset wskazuje przesunięcie bajtu od początku pola DataOff set na początek rekordu danych informacji o pakiecie. Pole OOBDataLength wskazuje długość bajtów rekordu danych informacji o pakiecie. Aby uzyskać więcej informacji na temat danych informacji o pakiecie, zobacz Zestaw DDK systemu Windows 2000.
Jeśli istnieje wiele bloków danych informacji o pakiecie, każdy kolejny rekord danych informacji o pakiecie musi natychmiast postępować zgodnie z poprzednimi danymi rekordu informacji o pakiecie.
Zdalne urządzenie NDIS musi wysyłać i odbierać dane za pośrednictwem pakietów danych NDIS. Magistrala używana przez urządzenie określa sposób przekazywania tych pakietów z hosta do urządzenia i urządzenia do hostowania. Może to być pamięć współdzielona lub w przypadku potoków USB, Isoch i Bulk. Pakiety NDIS mogą również zawierać dane poza pasmem (OOB), a także dane, które przechodzą przez sieć.
Zdalne urządzenie NDIS przesyła pakiety NDIS, hermetyzowane jako REMOTE_NDIS_PACKET_MSG w kanale danych. Oba urządzenia bez połączenia (takie jak 802.3) i zorientowane na połączenie (takie jak ATM) używają tej samej struktury komunikatów pakietów, aby ułatwić wspólny kod do przetwarzania pakietów. Każdy komunikat REMOTE_NDIS_PACKET_MSG zawiera informacje o pojedynczej jednostce danych sieciowych (takiej jak ramka Ethernet 802.3).
Aby uzyskać więcej informacji na temat danych pakietów poza pasmem lub danych pakietów na pakiet, zobacz sekcje NDIS zestawu DDK systemu Windows 2000.
Wymagania
Wersja |
Dostępne w systemie Microsoft Windows XP i nowszych wersjach systemów operacyjnych Windows. Dostępne również w systemie Windows 2000 jako pliki binarne redystrybucyjne. |
Nagłówek |
Rndis.h (include Rndis.h) |