JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY HYDERABAD

NETWORK PROGRAMMING

M.Tech I Year II Semester (R17)

Course Objectives:

  • To understand to Linux utilities
  • To understand file handling, signals
  • To understand IPC, network programming in Java
  • To understand processes to communicate with each other across a Computer Network.

UNIT - I

Linux Utilities- File handling utilities, Security by file permissions, Process utilities, Disk utilities, Networking utilities, Filters, Text processing utilities and Backup utilities. Bourne again shell(bash) - Introduction, pipes and redirection, here documents, running a shell script, the shell as a programming language, shell meta characters, file name substitution, shell variables, command substitution, shell commands, the environment, quoting, test command, control structures, arithmetic in shell, shell script examples. Review of C programming concepts-arrays, strings (library functions), pointers, function pointers, structures, unions, libraries in C.

UNIT - II

Files- File Concept, File types File System Structure, Inodes, File Attributes, file I/O in C using system calls, kernel support for files, file status information-stat family, file and record locking-lockf and fcntl functions, file permissions- chmod, fchmod, file ownership-chown, lchown , fchown, links-soft links and hard links – symlink, link, unlink. File and Directory management – Directory contents, Scanning Directories- Directory file APIs. Process- Process concept, Kernel support for process, process attributes, process control – process creation, replacing a process image, waiting for a process, process termination, zombie process, orphan process.

UNIT - III

Signals- Introduction to signals, Signal generation and handling, Kernel support for signals, Signal function, unreliable signals, reliable signals, kill, raise , alarm, pause, abort, sleep functions. Interprocess Communication - Introduction to IPC mechanisms, Pipes- creation, IPC between related processes using unnamed pipes, FIFOs-creation, IPC between unrelated processes using FIFOs(Named pipes), differences between unnamed and named pipes, popen and pclose library functions, Introduction to message queues, semaphores and shared memory. Message Queues- Kernel support for messages, UNIX system V APIs for messages, client/server example. Semaphores-Kernel support for semaphores, UNIX system V APIs for semaphores.

UNIT - IV

Shared Memory- Kernel support for shared memory, UNIX system V APIs for shared memory, client/server example. Network IPC - Introduction to Unix Sockets, IPC over a network, Client-Server model ,Address formats(Unix domain and Internet domain), Socket system calls for Connection Oriented - Communication, Socket system calls for Connectionless-Communication, Example-Client/Server Programs- Single Server-Client connection, Multiple simultaneous clients, Socket options – setsockopt, getsockopt, fcntl.

UNIT - V

Network Programming in Java-Network basics, TCP sockets, UDP sockets (datagram sockets), Server programs that can handle one connection at a time and multiple connections (using multithreaded server), Remote Method Invocation (Java RMI)-Basic RMI Process, Implementation details-Client-Server Application.

TEXT BOOKS:

  • 1. Unix System Programming using C++, T.Chan, PHI.(Units II,III,IV)
  • 2. Unix Concepts and Applications, 4th Edition, Sumitabha Das, TMH.(Unit I)
  • 3. An Introduction to Network Programming with Java, Jan Graba, Springer, rp 2010.(Unit V)
  • 4. Unix Network Programming ,W.R. Stevens, PHI.(Units II,III,IV)
  • 5. Java Network Programming,3rd edition, E.R. Harold, SPD, O’Reilly.(Unit V)

REFERENCE BOOKS:

  • 1. Linux System Programming, Robert Love, O’Reilly, SPD. nd
  • 2. Advanced Programming in the UNIX environment, 2 Edition, W.R.Stevens, Pearson Education. rd
  • 3. UNIX for programmers and users, 3 Edition, Graham Glass, King Ables, Pearson Education. th
  • 4. Beginning Linux Programming, 4 Edition, N.Matthew, R.Stones, Wrox, Wiley India Edition.
  • 5. Unix Network Programming The Sockets Networking API, Vol.-I,W.R.Stevens, Bill Fenner, A.M.Rudoff, Pearson Education.
  • 6. Unix Internals, U.Vahalia, Pearson Education. rd
  • 7. Unix shell Programming, S.G.Kochan and P.Wood, 3 edition, Pearson Education.
  • 8. C Programming Language, Kernighan and Ritchie, PHI M.Tech – CN/CNIS - I Year - II Sem

Loading Question Papers

Fetching data from database...