Перейти к содержимому

Фото
- - - - -

Võrgurakendused II - ITV0040


  • Вы не можете создать новую тему
  • Please log in to reply
4 ответов в этой теме

#1 Iljas

Iljas

    IAPB

  • Пользователь
  • 169 сообщений

Отправлено 17 Январь 2011 - 01:37

Кто уже сдавал сабж в этом или прошлом году, рассказывайте? Как там на экзамене? Какие вопросы и вообще? )

Спасибо.
  • 0

#2 Salakando

Salakando
  • Новобранец
  • 12 сообщений

Отправлено 12 Сентябрь 2011 - 23:43

Пожалуйста,кто-нибудь,озвучьте на русском требования,предъявляемые к практикуму 1!

http://lambda.ee/ind...vitusi_ja_ideid

Пока только понял,что обмен данными ведется на сокетах,а где и что храниться должно - непонятно.Причем тут вообще http,если НЕТУ СЕРВЕРА.Каким образом оно должно отслеживать запросы ? Или он хочет напрямую через сокеты (бэкконнект) ? Желательно как можно подробнее,а то через слово понятно...в общих чертах только проясняется


Чат у меня представляется так:

1) WinApi окошко по центру.
2) Справа Мемо,форма под мемо или окошко.
3)Ниже центрального окошка поле ввода для символов,смайлов и т.д.
4)Справа выводятся айпишники и порты или что там надо вывести.
5)справа от поля ввода кнопка отправить сообщение или что-то в этом духе : )

Ещё вроде он пишет мол за доп. пункты можно и проблему с фаирволлом и закрытыми портами решить.Если так,то решения могут быть такими:

1) Если имеются ввиду Windows Firewalls,то добавить имя приложения(на винапи) в список ACL который разрешит подключение.
2) Через ShellExecute консоли вызвать сервис и через него добавить программу.
3) Использовать прокси сервер(не понимаю,при чем тут фаирволл и прокси сервер,порты-то локальные должны быть открыты).


Надеюсь,я не зря разглагольствовал.Пожалуйста,помогите разобраться...

Сообщение изменено: Salakando (12 Сентябрь 2011 - 23:57 )

  • 0

#3 quiz

quiz
  • Новобранец
  • 15 сообщений

Отправлено 13 Сентябрь 2011 - 12:15

Пожалуйста,кто-нибудь,озвучьте на русском требования,предъявляемые к практикуму 1!

http://lambda.ee/ind...vitusi_ja_ideid

Пока только понял,что обмен данными ведется на сокетах,а где и что храниться должно - непонятно.Причем тут вообще http,если НЕТУ СЕРВЕРА.Каким образом оно должно отслеживать запросы ? Или он хочет напрямую через сокеты (бэкконнект) ? Желательно как можно подробнее,а то через слово понятно...в общих чертах только проясняется


Чат у меня представляется так:

1) WinApi окошко по центру.
2) Справа Мемо,форма под мемо или окошко.
3)Ниже центрального окошка поле ввода для символов,смайлов и т.д.
4)Справа выводятся айпишники и порты или что там надо вывести.
5)справа от поля ввода кнопка отправить сообщение или что-то в этом духе : )

Ещё вроде он пишет мол за доп. пункты можно и проблему с фаирволлом и закрытыми портами решить.Если так,то решения могут быть такими:

1) Если имеются ввиду Windows Firewalls,то добавить имя приложения(на винапи) в список ACL который разрешит подключение.
2) Через ShellExecute консоли вызвать сервис и через него добавить программу.
3) Использовать прокси сервер(не понимаю,при чем тут фаирволл и прокси сервер,порты-то локальные должны быть открыты).


Надеюсь,я не зря разглагольствовал.Пожалуйста,помогите разобраться...


нафига здесь ВипАПИ? ты пишешь на АНСИ С?

ГУИ не нужен, соотв. тогда и ВинАПИ. Хранить нужно данные в промежуточной памяти, т.е. стэк-ом в РАМ. Единственное - изначально сделать файл, куда занести некоторые данные привязки хостов и их идентификаторов (имя - айпи адресс). Его апп должен прочитать при запуске. Про сокеты верно. Стандартный набор TCP/IP, без всяких RAW_SOCKETS. Центрального сервера нет, поэтому и суть задания - P2P. В идеале - запускать нужно будет по одному приложению на каждой машине. Как показывает практика - удаётся это в редких случаях, так как у большинства всё написано криво и коряво, хотя протокол один (поэтому, просто будешь демонстрировать работу своего приложения либо на локальном хосте, либо один и тот-же апп *своей сборки* запустишь на разных компах). Почему ХТТП? Вообще, он здесь абсолютно не нужен - он взят для спорного удобства и простаты, дабы упростить серверную часть коммутации. Т.е. это база для предоставления возможности обратиться к сервису одного из пииров. По сути - ничего более как "listening socket" и пары-другой стандартных ответов (эррор коды). Поэтому, можно смело лепить отсебятину и писать с нуля, или, наоборот, скопировать его пример мини-сервера на яве и кастрировать. Опять-же - здесь просто взята аналогия ХТТП, хотя сам протокол, это чистой воды homebrew.

Одно замечание - приложение, по большому счёту, должно работать как UDP. Т.е. без прямых установленных соединений. Кинул запрос - соединение разорвал. Т.е. одновременно как даемон, так и как клиент. Асинхронно. Это не дуплексная связь.

Про файерволл это отдельная история. Её нужно показывать. Порты в локалке закрыты, т.к. по умолчанию на каждом компе включен виндооза фаявалл. Т.е. входящие соединения - блокируются. Могу сказать, что кодить ничего не нужно (если нет особого желания сделать промежуточный сервер-туннель) - решается эта проблема незамысловатой хитростью или вообще просто вниманием к деталям. Здесь расписывать нет смысла. Если интересует - напиши ПМ, думаю найду минут 10 как-нибудь в айти мая.

Сообщение изменено: quiz (13 Сентябрь 2011 - 12:26 )

  • 0

#4 xpaMoBHik

xpaMoBHik
  • Пользователь
  • 52 сообщений
  • Откуда:КОПЛИ

Отправлено 21 Октябрь 2011 - 17:20

сообщение удалено

Сообщение изменено: xpaMoBHik (21 Октябрь 2011 - 17:24 )

  • 0

#5 Kroi

Kroi
  • Новобранец
  • 12 сообщений

Отправлено 04 Декабрь 2011 - 01:34

Кому не жалко, можете скинуть в личку первую домашку по Võrgurakendus II
  • 0