HOME
   PRODUCTS  TRAINING    SERVICES  SOLUTIONS         CAREERS      COMPANY   
    Home / Training / E-Commerce / U306b    
 
 

U306b

 

U306b: Linux Network Programming - 4 Days


Who Should Attend:

System programmers, application programmers, computer science students, and other IT professionals who wish to write systems and client-server networking programs in the Linux environment.

 

Prerequisites:

Participants who do not have any working knowledge of Linux are advised to enrol in U101: Introduction to Linux. Participants can also acquire the necessary knowledge in network programming by enrolling in U306a: Linux System Programming.

 

Objectives:


This module is aimed at familiarising participants with network programming in Linux. They will be exposed to various network programming models and packages, such as Berkeley Sockets, STREAMS, Transport Layer Interface (TLI), and Remote Procedure Calls (RPC). Various protocols and concepts of TCP/IP such as TCP, UDP, PING, TELNET will be explored. Socket programming includes client and server side startup, termination, I/O multiplexing and data transfer.

Advanced features like daemon processes, nonblocking I/O, and broadcasting are also included. Hands-on laboratory sessions will be provided.

Participants are expected to have a prior working knowledge of Linux and programming in C, and preferably Linux systems programming.

At the end of this module, participants are expected to understand and write Linux client-server network programmes, and appreciate the networking features available in Linux.

 

Contents:


Networking Objectives: Network Goals and Applications; Network Structure and Architectures; Layered Protocols; OSI Reference Model Objectives; Linux 4-Layer Model; Linux Intercrosses Communication.

 

Berkeley Sockets: Linux Domain Protocols; Socket Addresses; Socket System Calls; Reserved Ports Stream Pipes; Socket Options; Asynchronous I/O; I/O Multiplexing.

STREAMS: Motivation; Basic View of A Stream; Benefits of Stream; Building A Simple Stream; Inserting modules Into A Stream; Asynchronous I/O; Clone able Devices; Multiplexed Configurations.

 

Transport Layer Interface (TLI): Basic Concepts; Modes of Service; Event Handling; Data Transfer; Asynchronous Execution Mode; Read/Write Interface.

 

Remote Procedure Calls (RPC): RPC Model; RPC Interface; rpcbind; rpcgen Programming (System V); External Data Representation (XDR). Practical Programming Examples.

 

--------