Знакомые пользовали визнет в режиме UDP - если не успеваешь выгрести буфера, зависает намертво - токмо ресет спасает.
Вот и возникает вопрос:
Задача в сливании потока с РС в девайс со скоростью 1,2 мБайт в секунду. Синхронизация от девайса. Протокол ТСР. Схемка девайса (предпологаемая): визнет связан с плм, плм с приемником потока + с МК (к мк требования только по скорострельности на переключение буферов.) В плм ДМА + интерфес мк к визнету. Идея в том что МК читает указатели и счётчики на буфера сразу записывая их в регистры ДМА. Т.е. сокращать накладные расходы на пересылку. Предпологается прямое подключение к РС (в РС отдельная сетевая для этого устройства).
1. как правильно это организавать? (Может и сам пойму попозже.)
2. Не зависнет ли визнет, или он сам XON/XOF сгенерит при обмене?
3. Какая максимальная скорость в подобном режиме достигалась? (кто-то писал 3,5 Мбайта, но не помню на каком протоколе TCP or UDP)
Задача в сливании потока с девайса в РС со скоростью 1,2 мБайт в секунду. -//-
1.-//-
2.-//- (Поидее сдесь не должно быть проблем)
3.-//-
Можете дать ссылки на русском по работе ссокетами под Win, лучше с визнетом по ТСР. Надо понять сам механизм работы.
Почитал протокол ТСР. Возникли вопросы:
1. Получается передается только оди пакет и пока на него не пришёл ответ второй не будет отправлен?
1.1. Когда визнет подтверждает пакет:
а. Когда помещает данные в буфер или
б. когда я его прочитал и записал регистр Sn_RX_RR?
б.1 Sn_RX_RR является номером октета в тср?
б.2. Если я его буду записывать после каждого считанного байта, что будет, SYN с этим номером будет отправлятся?
2. Окно ТСР визнет выставляет равным выделенному буферу или нет?
3. Имеет ли смысл делать проталкивание скажем каждые 1024 байта из РС в поточном приложении? Мне требуется непрерывный поток с РС, с максимальным временем ожидания 5 мкс.
4. т.к. при приёме в РС мне уже время не кретично - главное целостность данных, то на передачу из визнета в РС я могу уменьшить размер буфера до 2 к и пока первый передаётся, писать во второй?
5. У визнета эти буфера кольцевые? Я могу не обновлять регистры ПДП и продолжить чтение/запись когда появится что читать/куда писать?
1. В tcp есть понятие окна. Оно означает сколько пакетов можно принять/передать до отправки/получения подтверждения.
Советую почитать протокол подстверждения приема/передачи и запроса на повтор при tcp соединении. Все очень просто и обычно с картинками, которые сильно облегчают жизнь.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.