Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/16: Рейтинг темы: голосов - 16, средняя оценка - 4.50
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538

Сокеты и отправка данных

13.06.2013, 13:37. Показов 3284. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, форумчане... У меня есть сервер на яве и клиент на C#. Они общаются, отсылают друг-другу информацию, но периодически пакеты теряются. Незнаю куда они точно пропадают, но до конечного пользователя 1 из 10-15 пакетов не долетает. Можно ли как-то узнать о доставке пакета? Меня посетила мысль в обработчике пакетов с обоих сторон на любой пакет отправлять дополнительно какое-нибудь "Ok!", но тут опять же вопрос, если этот ок потеряется, зачем моему клиенте заного отправлять данные? И ещё такой вопрос: как можно отличать пакеты отправленные из моей программы от тех которые юзвери например засниффают и будут отправлять сами? Тут тоже была идея к каждому пакету добавлять хэш времени с солью, но если пакет прилетит через секунду после отправки, сервер его выкинет, а это мне не очень нравится.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.06.2013, 13:37
Ответы с готовыми решениями:

Отправка и получение сообщений через сокеты
Для начала , вот статья с аналоговым примером. Вот метод для получения сообщений : void Listen(CancellationToken CancellToken){ ...

Сокеты(отправка байтов серверу и получение ответа)
Нужна книга,в которой будет подробно описана работа с сокетами,т.е добавление байтов CUint и т.д. Очень нужна. Дайте ссылку на...

Сокеты. Отправка сообщений всем клиентам или только одному
Здравствуйте, имеется вот такой сервер на C#: using System; using System.Collections.Generic; using System.Linq; using System.Text;...

14
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
13.06.2013, 13:58
Расскажите, как Вы с помощью сокетов работаете напрямую с сетевыми пакетами.
И пакеты ли это на самом деле.
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.06.2013, 14:37  [ТС]
Работаю с буфером сокета, если так вопрос задавать то не пакеты.

Добавлено через 2 минуты
Стоит уйти с tcp сокета и отправлять маленькие udp?
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
13.06.2013, 14:38
ТС - прочти данную тему - [Манул-Исходник]Клиент-Сервер
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
13.06.2013, 14:57
phantom96, как Вы определяете, что пакеты теряются ?
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.06.2013, 15:26  [ТС]
Они просто не доходят до клиентов.

Добавлено через 2 минуты
Должно произойти действие в клиентской части, а оно не происходит. Большая часть доходит, но некоторые теряются.
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
13.06.2013, 15:28
Цитата Сообщение от phantom96 Посмотреть сообщение
Они просто не доходят до клиентов.
С помощью каких средств Вы это определяете ?

Я не просто так спрашиваю. Сетевые пакеты иногда действительно теряются,
это вполне штатная ситуация. В этом случае сетевое оборудование отправляет
пакет повторно, пока он не достигнет адресата. Но для прикладного (HTTP, POP3,
SMTP, ...) или транспортного (TCP/UDP) уровня это все прозрачно, т.к. работа с
пакетами выполняется гораздо ниже по сетевому стеку. На уровне TCP вы не
можете контролировать отправку и прием пакетов.
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.06.2013, 15:31  [ТС]
Skoti, тему посмотрел, не то. У меня есть сервер на Java, который посылает при достижении условия всем активным подключениям сообщение. Вот большая часть моих подключений это сообщение в итоге получает, а некоторые нет.

Добавлено через 1 минуту
Самый просто пример - в программу добавил окошко в котором выводятся сообщения, периодически сообщение теряется.

Добавлено через 1 минуту
Качество связи между клиентом и сервером оставляет желать лучшего, но такие условия( Надо просто дублировать посылаемую информацию?
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
13.06.2013, 18:24
phantom96, Помни! Что у клиентов можен быть фаэрвол или порты закрыты.... Или ещё какой либо геморой так что ты мало до кого достучишься со стороны сервера.... Это извечная проблема + Сокеты это вроде для LAN TCP/IP
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.06.2013, 19:22  [ТС]
Я же не говорю что у меня вообще не приходят сообщения. Они идут, но некоторые теряются. Файрволы пока не кусались, в конце концов клиент сам устанавливает соединение.
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
13.06.2013, 19:50
udp бдут терятся... а tcp не должны... А что за пакеты то?
0
63 / 62 / 11
Регистрация: 28.12.2011
Сообщений: 280
14.06.2013, 02:37
Насколько я знаю TCP гарантирует доставку сообщения, то есть будет долбить пока не получит подтверждение о доставке.
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
14.06.2013, 14:58  [ТС]
TCP конечно гарантирует, но сообщения всё равно теряются(
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
14.06.2013, 15:59
Цитата Сообщение от phantom96 Посмотреть сообщение
TCP конечно гарантирует, но сообщения всё равно теряются(
А в это самое время по всему миру работают тысячи TCP-серверов и TCP-клиентов.
И ничего не теряют. Удивительно, правда ?

Добавлено через 7 минут
Цитата Сообщение от Good1101 Посмотреть сообщение
TCP гарантирует доставку сообщения
TCP гарантирует порядок данных и то, что они будут переданы в неискаженном виде.
Доставку данных он не гарантирует.
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
14.06.2013, 23:09  [ТС]
Я верю в работу тысяч серверов, но я то данные теряю... Ладно, спасибо всем, буду дальше копаться в коде... Может найду косяк...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.06.2013, 23:09
Помогаю со студенческими работами здесь

Отправка данных через сокеты
Здравствуйте. Я сделал программу (Точнее 2 : сервер и клиент). Суть клиента - отправить скриншот экрана, сервера - принять и сохранить...

Сокеты. Отправка данных
Осваиваю работу с сокетами по этому пособию http://www.firststeps.ru/mfc/net/socket Возникла проблема, с отправкой данных! Суть такая:...

Сокеты получение\отправка данных
Привет, друг показал программку с использованием сокетов ну у меня и возникла одна идея как можно использовать такого рода программу....

Отправка данных через сокеты в локальной сети
Мне надо отправить строку которою я получаю из Pyqt приложения и отправить на сервер в локальной сети. Но сервер не получает никакой...

Сокеты в Windows Phone. Не происходит отправка данных
С Новым Годом всех и доброго времени суток! Помогите, пожалуйста! Возникла проблема с отправкой данных через сокет. Суть в том, что по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru