Общие сведения о разделении кадров Ethernet
В этом разделе описываются конкретные требования к разделителю заголовков и данных, применяемые к поставщикам разделения заголовков и данных, в зависимости от типа кадра Ethernet, который разделяет поставщик.
Примечание После ознакомления с общими требованиями в этом разделе можно использовать следующие разделы, чтобы понять конкретные требования для каждого типа кадра Ethernet. В последующих разделах содержатся требования, приведенные в предыдущих разделах. Например, если фрейм содержит сведения об IPv4 и UDP, следует прочитать раздел Разделение кадров IPv4 и Разделение кадров в разделах Полезные данные UDP .
Если поставщик разделения заголовков и данных разделяет кадр в соответствии с требованиями разделения заголовков и данных, указанные структуры NET_BUFFER_LIST должны иметь флаг NDIS_NBL_FLAGS_HD_SPLIT в элементе NblFlags . Если поставщик разделения заголовков и данных не разделяет кадр, он должен быть обозначен следующими флагами, снятыми в NblFlags :
NDIS_NBL_FLAGS_HD_SPLIT
NDIS_NBL_FLAGS_SPLIT_AT_UPPER_LAYER_PROTOCOL_HEADER
NDIS_NBL_FLAGS_SPLIT_AT_UPPER_LAYER_PROTOCOL_PAYLOAD
Дополнительные сведения о настройке флагов разделения заголовков и данных NET_BUFFER_LIST и других требованиях к указаниям получения см. в статье Получение показаний с помощью Header-Data Split.
Бывают случаи, когда поставщик разделения заголовков и данных может разделить полученный кадр вне требований поставщика разделения заголовков и данных. В таких случаях поставщик никогда не должен разделять кадры Ethernet в середине заголовка IP, параметров IPv4, заголовков IPsec, заголовков расширений IPv6 или заголовков протокола верхнего уровня, если только первый MDL не содержит по крайней мере столько байтов, сколько NDIS, указанных для размера lookahead. Дополнительные сведения о размере lookahead см. в разделе OID_GEN_CURRENT_LOOKAHEAD.
Этот раздел состоит из следующих частей.
Разделение фрагментированных IP-кадров
Разделение кадров в начале заголовков верхнего уровня протокола
Разделение кадров в полезных данных TCP