sasamy, это все хорошо, но мне надо чтобы g45 проц связывался не только с g45, но и другим оборудованием. оно уже настроено и отрегулировано. там свои протоколы обмена.
щас вот смотрю на исходник eoip и не понимаю как оно ограничивает скорость канала. там по моему вообже на максимальной скорости проца будет все обрабатываться.
Я вас опять перестаю понимать - какое другое оборудование и на что оно настроено ? Как по вашему работает Интернет где серверы могут быть с терабитными каналами а клиенты могут на тоненьком диалапе сидеть ? Есть протоколы верхнего уровня - TCP например
другое оборудование сделано на пике PIC18F97J60. там для посылания "паузы" есть функция MacPauseOn и Off - они позволяют регулировать узкое горлышко на спутниковом канале. никаких протоколов там нет, обмен IP и ARP пакетами. ни TCP ни UDP там не пахнет.
вот как послать на проце g45 похожий сигнал?
понятия не имею - какой вы там протокол используете и что должен процессор сделать. Как сделать бридж на 2-х g45 я вам описал, что там с ethernet фреймами левое оборудование делает и какие протоколы инкапсулированы в payload тут неважно.
никаких протоколов там не инкапсулировано. пришел пакет - не думая его на спутник шлем и все. добавляем в начало и конец синхрометки только. щас код приложу.
в pdf на пик вот так описано:
функция меняет бит в регистре
EFLOCON: ETHERNET FLOW CONTROL REGISTER
bit 1-0 FCEN1:FCEN0: Flow Control Enable bits
When FULDPX(MACON3<0>) = 1:
11= Send one pause frame with a ‘0’ timer value and then turn flow control off
10= Send pause frames periodically
01= Send one pause frame then turn flow control off
00= Flow control off
When FULDPX (MACON3<0>) = 0:
x1= Flow control on
x0= Flow control off