-
- Наконец поглядел.... А Оперой отрываете? попробуйте IE и еще раз выложите. Странно оно както у вас, а где HTML? как выложить свой снимок сюда? - OlegPowerC(26.09.2014 18:02)
- до IE теперь только в понедельник дойду. Sylvan(51 знак., 26.09.2014 18:54)
- Проверьте в вашей ОС ключ реестра TcpAckFrequency - так как в Windows по умолчанию включена "задержка ACK" Винда по идее делает следующее: При приеме пакета взводится таймер 200мс. и если по истечении этого времени более данных не пришло, то OlegPowerC(975 знак., 27.09.2014 00:40 - 13:00)
- Спасибо. А какие стеки под МК делают так, как у вас написано? - Sylvan(28.09.2014 21:50)
- У меня свой. А вообще надо глянуть lwip, но он здоровенный. Возможно CMX - но что с ним сейчас я не в курсе. В понедельник гляну - OlegPowerC(28.09.2014 21:54)
- С lwIP на LPC1768 толку много не выйдет -- не сделать большое окно передачи. Винда и линух при большом трафике выставляют окно в 65535 байт, и дают ACK через несколько сот мс после принятия последнего пакета. Столько ОЗУ нет в МК. Лучше уж LPC18xx VVB(77 знак., 29.09.2014 07:09 - 07:14, ссылка)
- думаю, у вас другая задача, соответственно, и решение другое. Мне в данном случае не нужно много ОЗУ и не нужно много данных по TCP. Мне нужно 10-100 байт передать на сервер и 10-100 байт с него принять. Но хорошо бы побыстрее чем за 300мс. 100мс Sylvan(397 знак., 29.09.2014 10:10)
- А может попробовать с Keil связаться? может подскажут чего? - OlegPowerC(29.09.2014 18:07)
- а я у них стек не покупал :-) Sylvan(40 знак., 29.09.2014 18:40)
- Стыдно должно быть за воровство, при наличии кучи бесплатных альтернатив (uIP, lwIP, gcc и прочее). Непрофессионально. - VVB(30.09.2014 06:46)
- Не чувствуете остроту политического момента, батенька. В связи с санкциями весь спижженный софт является трофейным. SciFi(3 знак., 30.09.2014 10:30, картинка)
- :)))) - Sylvan(30.09.2014 10:34)
- идите вы в жопу с вашим стыдом. И никогда не учите незнакомых вам людей - сами будете в дураках. Стек может быть любым. Но очень удобно если есть http, ftp и прочие приблуды. Это единственное, почему я пользуюсь им. - Sylvan(30.09.2014 10:07)
- В вопросах этики каждый решает сам, кем ему быть -- быдлом, вором, честным или просто воспитанным человеком. А детей обучать надо. Сожалею... - VVB(30.09.2014 19:13)
- "Не говорите, что мне делать, и я не скажу, куда вам идти" © SciFi(26 знак., 30.09.2014 19:21)
- Воспитанней, чем "в жопу". - VVB(01.10.2014 06:25)
- "Не говорите, что мне делать, и я не скажу, куда вам идти" © SciFi(26 знак., 30.09.2014 19:21)
- В вопросах этики каждый решает сам, кем ему быть -- быдлом, вором, честным или просто воспитанным человеком. А детей обучать надо. Сожалею... - VVB(30.09.2014 19:13)
- Не чувствуете остроту политического момента, батенька. В связи с санкциями весь спижженный софт является трофейным. SciFi(3 знак., 30.09.2014 10:30, картинка)
- Ясно... Думал uTasker умеет, а похоже что тоже не умеет... - OlegPowerC(29.09.2014 18:59, ссылка)
- Стыдно должно быть за воровство, при наличии кучи бесплатных альтернатив (uIP, lwIP, gcc и прочее). Непрофессионально. - VVB(30.09.2014 06:46)
- а я у них стек не покупал :-) Sylvan(40 знак., 29.09.2014 18:40)
- Используй UDP. У меня сраненькая мега328 с ENC28 обновляет 1 мБ дата флэш за десяток секунд (с учетом стирания страниц). С квитированием... Для "10-100 байт" самое то. К тому же появляется возможность орудования broadcast пакетами (очень удобно, Гудвин(97 знак., 29.09.2014 12:31)
- TCP нужно для поддержки того что придумали до меня, увы. - Sylvan(29.09.2014 12:55)
- А что мешает просто добавить UDP сокет? И старое будет поддерживаться, и быстрый обмен данными. - Гудвин(29.09.2014 13:13)
- возможно так и придется сделать. - Sylvan(29.09.2014 13:17)
- А что мешает просто добавить UDP сокет? И старое будет поддерживаться, и быстрый обмен данными. - Гудвин(29.09.2014 13:13)
- TCP нужно для поддержки того что придумали до меня, увы. - Sylvan(29.09.2014 12:55)
- UDP вас спасёт. Никаких дополнительных задержек. Подтверждение сами формируйте. - VVB(29.09.2014 12:21)
- А вот из промышленного что мне реально понравилось - так это EtherCAT - ни TCP ни UDP сразу в кадр Ethernet все инкапсулируется, для возможности маршрутизации есть инкапсулирование в IP. - OlegPowerC(29.09.2014 13:05)
- UDP мы реализовавали какраз с квитированием и номером кадра - эдакий псевдо TCP, однако сейчас я порлядываю на что нибудь стандартное, так вот из промышленного Ethernet на UDP наверное только FL-Net - OlegPowerC(29.09.2014 13:00)
- UDP уже есть в других штуках. В данном случае необходима поддержка того что уже давно есть. А есть http сервер. - Sylvan(29.09.2014 12:29)
- А может попробовать с Keil связаться? может подскажут чего? - OlegPowerC(29.09.2014 18:07)
- думаю, у вас другая задача, соответственно, и решение другое. Мне в данном случае не нужно много ОЗУ и не нужно много данных по TCP. Мне нужно 10-100 байт передать на сервер и 10-100 байт с него принять. Но хорошо бы побыстрее чем за 300мс. 100мс Sylvan(397 знак., 29.09.2014 10:10)
- спасибо большое. - Sylvan(28.09.2014 21:55)
- С lwIP на LPC1768 толку много не выйдет -- не сделать большое окно передачи. Винда и линух при большом трафике выставляют окно в 65535 байт, и дают ACK через несколько сот мс после принятия последнего пакета. Столько ОЗУ нет в МК. Лучше уж LPC18xx VVB(77 знак., 29.09.2014 07:09 - 07:14, ссылка)
- У меня свой. А вообще надо глянуть lwip, но он здоровенный. Возможно CMX - но что с ним сейчас я не в курсе. В понедельник гляну - OlegPowerC(28.09.2014 21:54)
- Ты мяккие знаки када выучиш, грамотей? - MBedder(27.09.2014 00:50)
- Блин, и не говори - исправил. Уже выучил вроде. Правила прочитал в 100500 раз, а мягкий знак так и тянет вставить, прям мания какая то :-)) - OlegPowerC(27.09.2014 13:03)
- Ты неровно дышишь в его сторону? Тут приблизительно каждый второй - "грамотей" :-) - SciFi(27.09.2014 13:03)
- Не не, самому стыдно, вроде в целом грамотно пишу. А вот мягкие знаки какой то бич - исправляюсь ! - OlegPowerC(27.09.2014 13:05)
- Спасибо. А какие стеки под МК делают так, как у вас написано? - Sylvan(28.09.2014 21:50)
- Во я лошара :-) выложу попозже - OlegPowerC(26.09.2014 20:20)
- Проверьте в вашей ОС ключ реестра TcpAckFrequency - так как в Windows по умолчанию включена "задержка ACK" Винда по идее делает следующее: При приеме пакета взводится таймер 200мс. и если по истечении этого времени более данных не пришло, то OlegPowerC(975 знак., 27.09.2014 00:40 - 13:00)
- до IE теперь только в понедельник дойду. Sylvan(51 знак., 26.09.2014 18:54)
- Снимите пожалуста снимок WireShark ом! чтоб и IP был виден и вообще все... - OlegPowerC(25.09.2014 20:26)
- снял. Гляньте если вам не сложно. - Sylvan(26.09.2014 11:01, ссылка)
- а в кейловой либе нет такого упрощения как в uIP? когда в окно передачи только один TCP пакет улетает а не два. - Mahagam(25.09.2014 18:50)
- Есть такое упрощение. Только, наверное, должен быть ещё трюк, когда от пакета отщепляют маленький кусочек и отправляют сразу следом за первым. - SciFi(25.09.2014 18:59)
- как этим всем воспользоваться? - Sylvan(26.09.2014 10:23)
- ещё можно в реестре винды поковыряться, чтобы она на каждый пакет слала ответ. для uIP это гарантированно помогает. мне с 15к в секунду подняло трафик до 3-4 мегов в сек. - Mahagam(26.09.2014 10:32)
- ого!!! - Sylvan(26.09.2014 10:36)
- никаких ого. так и должно было быть. 200ms на задержку до второго пакета давало 5 пар пакетов в сек. а 10 пакетов - это как раз 15к трафика. а как винда стала отвечать uIP`у каждый раз - то у них получилось выйти на терпимую скорость. все мои Mahagam(129 знак., 26.09.2014 10:52)
- спасибо, это очень ценная информация для меня. Подскажите, где и что там в реестре? Где почитать? - Sylvan(26.09.2014 11:02)
- никаких ого. так и должно было быть. 200ms на задержку до второго пакета давало 5 пар пакетов в сек. а 10 пакетов - это как раз 15к трафика. а как винда стала отвечать uIP`у каждый раз - то у них получилось выйти на терпимую скорость. все мои Mahagam(129 знак., 26.09.2014 10:52)
- ого!!! - Sylvan(26.09.2014 10:36)
- Для начала надо подтвердить. Сделайте захват WireShark'ом и выложите файл с пакетами, а не скриншот, сюда. Кто-нибудь посмотрит. - SciFi(26.09.2014 10:26)
- посмотрите пожалуйста, Wireshark Sylvan(26.09.2014 11:00)
- Гы, я же специально написал: "НЕ СКРИНШОТ". - SciFi(26.09.2014 11:04)
- ай, не обратил внимание. Выкладываю Sylvan(26.09.2014 11:05 - 11:14)
- Пишут, что надо включить TCP_TYPE_DELAY_ACK -> - SciFi(26.09.2014 11:37, ссылка, ссылка)
- интересно, а если я использую их же http сервер, там сокеты создаются где-то в глубине их библиотеки, исходников нет. Можно ли ли повлиять на свойства сокета в этом случае? - Sylvan(26.09.2014 13:06)
- Балиииин!!! Это реально работает! стало минимум в 2 раза быстрее! Спасибо огромное! Sylvan(58 знак., 26.09.2014 11:43 - 12:40)
- Пишут, что надо включить TCP_TYPE_DELAY_ACK -> - SciFi(26.09.2014 11:37, ссылка, ссылка)
- ай, не обратил внимание. Выкладываю Sylvan(26.09.2014 11:05 - 11:14)
- Гы, я же специально написал: "НЕ СКРИНШОТ". - SciFi(26.09.2014 11:04)
- щас все сделаю. - Sylvan(26.09.2014 10:37)
- посмотрите пожалуйста, Wireshark Sylvan(26.09.2014 11:00)
- ещё можно в реестре винды поковыряться, чтобы она на каждый пакет слала ответ. для uIP это гарантированно помогает. мне с 15к в секунду подняло трафик до 3-4 мегов в сек. - Mahagam(26.09.2014 10:32)
- как этим всем воспользоваться? - Sylvan(26.09.2014 10:23)
- Есть такое упрощение. Только, наверное, должен быть ещё трюк, когда от пакета отщепляют маленький кусочек и отправляют сразу следом за первым. - SciFi(25.09.2014 18:59)
- Наконец поглядел.... А Оперой отрываете? попробуйте IE и еще раз выложите. Странно оно както у вас, а где HTML? как выложить свой снимок сюда? - OlegPowerC(26.09.2014 18:02)