Студијски
програм : Дипломске
академске
студије |
||||
Назив
предмета: Мрежно
програмирање |
||||
Наставник: Доц. Зоран
Николић |
||||
Статус
предмета: Изборни |
||||
Број
ЕСПБ: 4 |
||||
Услов: |
||||
Циљ
предмета: Да
студентима
омогући
познавање
теорије,
принципа, стандарда,
протокола и
основних
библиотека
на којима је
базирано
мрежно
програмирање. Овај
курс
захтева
познавање
програмског
језика C/C++,
као и у
извесној
мери
познавање
апликативног
програмирања
под
оперативним
системом Windows. |
||||
Исход
предмета: Усвајање
теоријских
основа мрежног
програмирања
у оквирима
развојних
окружења
под Windows или Linux
оперативним
системима.
Упознавање
са
специфичним
развојим
платформама
у области
мрежног
програмирања,
као и
упознавање
са методама
програмирања
базираних
на
протоколима.
Развој портабилних
апликација
за размену
информација
на релацији
клијент-сервер,
као и развој
апликација
за
управљање
даљинском
аквизицијом
података. |
||||
Садржај
предмета: Теоријска
настава:
Основе Microsoft NetBIOS-а
и програмирања
у њему. UNC, Mailslot,
Named Pipe
комуникација
између
програма.
Протоколи. Winsock2.
WSASocket сокети под
Windows-има.
Креирање и
управљање
сокетима.
Основне Socket API
функције,
модови и
модели.
Реализација
конекција
коришењем Winsock2 API-ја.
IP адресе. Две
врсте
сокета.
Системски
позиви. Мултиплатформско
мрежно
програмирање.
Увод у TCP/IP.
Независност
протокола.
Клијент и
сервер. Транспортни
нивои TCP и UDP.
Портови. TCP
бројеви
портова и
конкурентски
сервери. Величине
бафера и
лимити. Више
о сокетима.
Адресе и
сокети. Byte Ordering функције.
Функције за
манипулацију
бајтовима.
Елементарни
TCP и UDP сокети. Сличности
и разлике.
Начини
примене и
домени
употребе. Примери
клијената и
сервера.
Нормалан
старт и
излазак из
клијентског
програма.
Размене
порука.
Режими рада.
Прекид
конекције
пре
прихватања Return-а.
Излазак из
серверских
процеса.
Обраде ексцесних
процеса и
изузетака. Примена
Socket
програмирања
у
реализацији
Client-Server
апликација.
Пример
размене
тесктуалних
порука - CHAT
апликација. Размена
системских
порука.
Пренос
информација
и развој
система за
аутоматску
размену
информација.
Системска
информација
као
датотека
или ток.
Развој
клијент-сервер
апликације
за remote measuring и
управљање
мерењем. |
||||
Литература: 1. A. Jones, Network
Programming for Microsoft Windows, Microsoft Press, (1999). 2. R. Stevens, Unix network programming 1 & 2,
Prentice Hall PTR, (1998). 3. B. Hall, Beej’s Guide to Network Programming
Using Internet Sockets, Brian “Beej Jorgensen” Hall, (2005). |
||||
Број
часова активне
наставе: 2 |
Теоријска
настава:
5
(2+2) |
Практична
настава:
|
||
Методе
извођења
наставе Предавања
(Теоријска
обрада
тематских
јединица,
практични
примери,
домаћи
задаци),
рачунске
вежбе
(домаћи
задаци и
семинари). |
||||
Оцена знања
(максимални
број поена 100) |
||||
Предиспитне
обавезе |
поена |
Завршни
испит |
поена |
|
активност
у току
предавања |
15 |
писмени
испит |
15 |
|
активност
у току
рачунских
вежби |
15 |
усмени
испит |
25 |
|
семинар |
30 |
UKUPNO |
100 |
|