Re: UDP + фрагментация
От: selectron Россия  
Дата: 15.10.03 09:55
Оценка:
Здравствуйте, old->*Plutonia_Experiment(), Вы писали:

OP>Привет !


OP>Клиент шлет серверу большой UDP-пакет — около 10000 байт.

На мой взгляд, нереальный размер пакета... обычно по 1500 байт (у маршрутизаторов нет столько памяти)

OP>Если напринимающей стороне пакет не собирается полностью, что получит читатель ?

Кого ты имеешь ввиду под "читателем"?
OP>Или не получит вообще ничего ?

OP>Сам протокол, построенный на UDP, простой.

Не совсем
OP>Клиент серверу шлет пинг и ждет ответа
OP>Сервер отвечает на пинг
OP>По получении ответа на пинг клиент шлет запрос о получении данных.
OP>Сервер отсылает данные, затребованные клиентом.


OP>Нужно ли вводить дополнительные данные в пакет (размер, контрольная сумма), на тот случай, если пакет придет неполным(фрагмент потерялся) ? или таковой ситуации не будет ?


Такие поля пакета, как контр. сумма, длина пакета, определены в спецификации UDP

OP>Заранее благодарен
О заработке в Интернет. Практический опыт.
Re[2]: UDP + фрагментация
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.10.03 10:22
Оценка:
Здравствуйте, selectron, Вы писали:

OP>>Клиент шлет серверу большой UDP-пакет — около 10000 байт.

S>На мой взгляд, нереальный размер пакета... обычно по 1500 байт (у маршрутизаторов нет столько памяти)

Естественно. Это и есть фрагментация. Но ничто мне не запрещает послать 64 кила. Все будет фрагментировано и на приемнике соберется обратно.
Re[3]: UDP + фрагментация
От: selectron Россия  
Дата: 15.10.03 10:32
Оценка:
Здравствуйте, Plutonia Experiment, Вы писали:


OP>>>Клиент шлет серверу большой UDP-пакет — около 10000 байт.

S>>На мой взгляд, нереальный размер пакета... обычно по 1500 байт (у маршрутизаторов нет столько памяти)

PE>Естественно. Это и есть фрагментация. Но ничто мне не запрещает послать 64 кила. Все будет фрагментировано и на приемнике соберется обратно.



я имел ввиду, что 1 пакет не может быть такого размера...
О заработке в Интернет. Практический опыт.
Re[4]: UDP + фрагментация
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.10.03 10:49
Оценка:
Здравствуйте, selectron, Вы писали:

S>я имел ввиду, что 1 пакет не может быть такого размера...


Хорошее замечание, но с этого топик то и начинался
Re[5]: UDP + фрагментация
От: selectron Россия  
Дата: 15.10.03 11:28
Оценка:
Тогда, то о чем ты говорил не UDP-пакет
это данные протокола прикладного уровня...
О заработке в Интернет. Практический опыт.
Re[6]: UDP + фрагментация
От: Аноним  
Дата: 15.10.03 12:03
Оценка:
Здравствуйте, selectron, Вы писали:

S>Тогда, то о чем ты говорил не UDP-пакет

S>это данные протокола прикладного уровня...

нет, это пакет, если бы была сеть позволяющая по себе передавать такие пакеты, он бы пошёл одним пакетом.
Но поскольку этот пакет в Ethernet не лезет, то при отправке он будет фрагментирован, порезан на несколько маленьких пакетов.
Эти маленькие пакеты неполноценные, про них нельзя сказать, что это UDP пакеты.
Например, номера портов UDP будут лежать только в самом первом пакете, в остальных их не будет.
При приходе на конечную машину пакет будет собран протоколом IP обратно, после чего (если его удалось собрать ПОЛНОСТЬЮ) будет передан протоколу UDP, а тот вернёт клиенту данные в вызове recv (или read).
Re: UDP + фрагментация
От: Mikhail Kurnosov Россия  
Дата: 15.10.03 12:18
Оценка: +1
Здравствуйте, old->*Plutonia_Experiment().

Может стоит подумать о возможности использвания TCP.

С уважением, M. Kurnosov.
Re[7]: UDP + фрагментация
От: selectron Россия  
Дата: 15.10.03 12:28
Оценка: -1
Здравствуйте, Аноним, Вы писали:


А>нет, это пакет, если бы была сеть позволяющая по себе передавать такие пакеты, он бы пошёл одним пакетом.

А>Но поскольку этот пакет в Ethernet не лезет, то при отправке он будет фрагментирован, порезан на несколько маленьких пакетов.
А>Эти маленькие пакеты неполноценные, про них нельзя сказать, что это UDP пакеты.
А>Например, номера портов UDP будут лежать только в самом первом пакете, в остальных их не будет.
как это только в самом первом?
Ты не прав...
у каждого UDP-пакета есть однотипный заголовок, который стандартизирован...
А>При приходе на конечную машину пакет будет собран протоколом IP обратно, после чего (если его удалось собрать ПОЛНОСТЬЮ) будет передан протоколу UDP, а тот вернёт клиенту данные в вызове recv (или read).
IP вообще никогда сборкой не занимался...
IP отвечает только за маршрутизацию....
Сборкой занимается протокол прикладного уровня
есть замечательная книга Семенова "Протоколы Интернет." Могу тебе прислать...
О заработке в Интернет. Практический опыт.
Re[8]: UDP + фрагментация
От: Аноним  
Дата: 16.10.03 07:06
Оценка:
Здравствуйте, selectron, Вы писали:

S>Здравствуйте, Аноним, Вы писали:



А>>нет, это пакет, если бы была сеть позволяющая по себе передавать такие пакеты, он бы пошёл одним пакетом.

А>>Но поскольку этот пакет в Ethernet не лезет, то при отправке он будет фрагментирован, порезан на несколько маленьких пакетов.
А>>Эти маленькие пакеты неполноценные, про них нельзя сказать, что это UDP пакеты.
А>>Например, номера портов UDP будут лежать только в самом первом пакете, в остальных их не будет.
S>как это только в самом первом?
S>Ты не прав...
S>у каждого UDP-пакета есть однотипный заголовок, который стандартизирован...

Да, есть, и этот заголовок мирно лежит ТОЛЬКО в первом фрагменте фрагментированного пакета

А>>При приходе на конечную машину пакет будет собран протоколом IP обратно, после чего (если его удалось собрать ПОЛНОСТЬЮ) будет передан протоколу UDP, а тот вернёт клиенту данные в вызове recv (или read).

S>IP вообще никогда сборкой не занимался...
S>IP отвечает только за маршрутизацию....
S>Сборкой занимается протокол прикладного уровня

Протоколу прикладного уровня никто не запрещает заниматься сборкой того, что он сам порезал, но то, что порезал IP стек, этот IP стек же и собирает.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.