как раз на udp на одной из зимних практик я написал чат, вся группа в нем сидела, была проверка кто в онлайне ники, защита от пустых строк и еще пару фишек. Для изучения сетевого программирования чат самое то)))
Возник вопрос, к твоей статье и к тебе относящийся слабо, но гуглить лень :)
UDP и TCP/IP, оба завязаны на связку IP:Port. Если у одного(двух, трех, всех) клиентов, а то и у сервера эти адреса не являются выделенными (серые айпишники), как тогда держать связь? Ну, кроме проброса порта от оборудования с реальным ипом (роутер) до нужного компа?
Например, провайдер дает серый ип, не будешь же ты ему звонить и просить сделать роутинг ***** порта исключительно на тебя.
Или допустим другую ситуацию - динамический IP, предугадать заранее мы его не можем.
В общем, это все конечно гуглится, но хотелось бы услышать и твое мнение :)
Для того чтобы все друг друга видели и делают связки клиент-сервер, сервер на реальном IP стоит, а клиенты откуда будут - уже не важно. У сервера определённые IP и Port, чтобы клиенты заранее знали куда подключаться, а у клиента и IP динамический может быть и порт выдаваться системой может. Адреса для UDP и TCP выглялят как IP:Port. В случае UDP, сервер должен держать их в "голове" чтобы отвечать, записывая их при первой датаграмме от клиента. В случае TCP сервер может создавать специальный сокет для вновь подключевшегося и общается данными через этот сокет.
как раз на udp на одной из зимних практик я написал чат, вся группа в нем сидела, была проверка кто в онлайне ники, защита от пустых строк и еще пару фишек. Для изучения сетевого программирования чат самое то)))
ОтветитьУдалитьМолодец, неплохо написано :)
ОтветитьУдалитьПроглядел по диагонали (сижу на паре), приду домой, прочитаю.
Возник вопрос, к твоей статье и к тебе относящийся слабо, но гуглить лень :)
ОтветитьУдалитьUDP и TCP/IP, оба завязаны на связку IP:Port. Если у одного(двух, трех, всех) клиентов, а то и у сервера эти адреса не являются выделенными (серые айпишники), как тогда держать связь? Ну, кроме проброса порта от оборудования с реальным ипом (роутер) до нужного компа?
Например, провайдер дает серый ип, не будешь же ты ему звонить и просить сделать роутинг ***** порта исключительно на тебя.
Или допустим другую ситуацию - динамический IP, предугадать заранее мы его не можем.
В общем, это все конечно гуглится, но хотелось бы услышать и твое мнение :)
Для того чтобы все друг друга видели и делают связки клиент-сервер, сервер на реальном IP стоит, а клиенты откуда будут - уже не важно.
ОтветитьУдалитьУ сервера определённые IP и Port, чтобы клиенты заранее знали куда подключаться, а у клиента и IP динамический может быть и порт выдаваться системой может.
Адреса для UDP и TCP выглялят как IP:Port.
В случае UDP, сервер должен держать их в "голове" чтобы отвечать, записывая их при первой датаграмме от клиента.
В случае TCP сервер может создавать специальный сокет для вновь подключевшегося и общается данными через этот сокет.
Ага, понятно. А если без сервака (клиент-клиент напрямую, так скажем), то тут либо локальная сеть, либо... даже не знаю что.
ОтветитьУдалитьСпасибо, прояснил ситуацию. Как-нибудь надо будет засесть за сетевое взаимодействие.