Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Interpacket gap - как это выглядит в реальности?
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Fast Ethernet/Gigabit Ethernet/FibreChannel
novartis
Как говорит википедия, для 10G значение Interpacket gap равно 9.6 ns (в 802.3 указана цифра 96 бит).

Вот например на выходе PCS (до XGMII) у меня идут два пакета:

Код
X"1E00000000000000";        -- IDLE
X"78555555555555D5";        -- Start Of Packet
X"cccc00000001cccc";            -- Dest MAC = 0xcccc00000001;    Source MAC = 0xcccc00000002
X"000002c108004500";            -- IP 0x0800
X"005f2d3b00008011";            -- Total Length = 95 (0x005f);    Identification = 0x2d3b;    Time Live = 0x80 (128);    Protocol = 0x11 (UDP)
X"895Cc0a80105c0a8";            -- CRC = 0x895C; Source Address = 192.168.1.5, (0xc0a80105);
X"01a1700070000030";            -- Dest Address = 192.168.1.161, (0xc0a801a1);    Source PORT = 28672 (0x7000);    Dest PORT = 28672 (0x7000);    Length = 48 (0x0030)
X"C20001020304e01b";            -- UDP CRC = 0xC200;    
...
X"00000000AABBCCDD";            -- AABBCCDD - CRC of Ethernet Packet
X"8700000000000000";        -- End Of Packet
X"1E00000000000000";        -- IDLE
...
...
...
...
X"1E00000000000000";        -- IDLE
X"78555555555555D5";        -- Start Of Packet
X"cccc00000001cccc";            -- Dest MAC = 0xcccc00000001;    Source MAC = 0xcccc00000002
X"000002c108004500";            -- IP 0x0800
X"005f2d3b00008011";            -- Total Length = 95 (0x005f);    Identification = 0x2d3b;    Time Live = 0x80 (128);    Protocol = 0x11 (UDP)
X"895Cc0a80105c0a8";            -- CRC = 0x895C; Source Address = 192.168.1.5, (0xc0a80105);
X"01a1700070000030";            -- Dest Address = 192.168.1.161, (0xc0a801a1);    Source PORT = 28672 (0x7000);    Dest PORT = 28672 (0x7000);    Length = 48 (0x0030)
X"C20001020304e01b";            -- UDP CRC = 0xC200;    
...
X"00000000EEFFCCDD";            -- EEFFCCDD - CRC of Ethernet Packet
X"8700000000000000";        -- End Of Packet
X"1E00000000000000";        -- IDLE


Частота шины - 156,25 МГц (6,4 нс), ширина слова - 64 бит.

Паузу в 9.6 нс нужно выдержать между 'End Of Packet' и 'Start Of Packet'?
Получается достаточно вставить два IDLE и всё?



UPDATE:
в 802.3 (4.4.2) написано:
"NOTE 4—For 10 Gb/s operation, the spacing between two packets, from the last bit of the FCS field of the first packet
to the first bit of the Preamble of the second packet, can have a minimum value of 40 BT (bit times), as measured at the
XGMII receive signals at the DTE. This interpacket gap shrinkage may be caused by variable network delays and clock
tolerances."
Это вообще получается, что может придти что-то такое:
Код
X"00000000AABBCCDD";            -- AABBCCDD - CRC of Ethernet Packet
X"8700000000000000";        -- End Of Packet    - между последним битом CRC ETH и первым битом преамбулы - 64 бит
X"78555555555555D5";        -- Start Of Packet


Так ведь?


des333
Если постоянно будете вставлять по 2 слова IDLE, то 100% нагрузку не получите.
Поэтому на передаче нужен DIC.
novartis
Мне на передачу 100% нагрузку и не надо.
Я хочу понять, какие варианты пакетов и пауз между ними могут придти ко мне, чтобы проработать варианты их обработки.
Ну и хотелось бы также понять, какие варианты я могу сформировать, так чтобы они были корректными и не нарушали работу сети.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.