Home

Syndicate content
more
  • About
  • Training
    • Telecom
    • Hardware
    • Computer Tech. Skills
    • Catalog
  • Consulting
  • Development
  • Worldwide
  • Contact Us
  • Join Us
  • Conferences
  • Blogs
  • Why Logtel for training
  • Lecturers
  • Our classes
  • Customers
  • Choose course category
Choose course category:
  • INTRODUCTORY SEMINARS
  • DATACOM & NETWORKS
  • IP NETWORKING
  • TELEPHONY NETWORKS & ADVANCED TELEPHONY (Voice over IP - VoIP)
  • WIRELESS & CELLULAR
  • SECURITY
  • MOBILE OPERATING SYSTEM
  • VIDEO TECHNOLOGIES
  • TRANSMISSION & OPTICAL TECHNOLOGIES
  • OSS/BSS
.

TELECOM

Programming Networking Applications

Nº 1209
DATE: CALL
PRICE NIS: 5080 + VAT
DURATION: 5 Days

Course Overview:
The course introduces the fundamental concept of client-server computing used to build networking applications. The course discusses various server designs as well as the tools and techniques used to build clients and servers. It contains examples of running programs that illustrate each of the designs and tools.

Prerequisities:
None

Course Outline:
1. Introduction And Overview
  • Use Of TCP/IP
  • Designing Applications For A Distributed Environment
  • Standard And Nonstandard Application Protocols
  • An Example Of Standard Application Protocol Use
  • An Example Connection
  • Application Protocols And Software Flexibility
  • Viewing Services From The Provider's Perspective
 2. The Client Server Model And Software Design
  • Introduction
  • Motivation
  • Terminology And Concepts
  • Clients And Servers
  • Privilege And Complexity
  • Standard Vs. Nonstandard Client Software
  • Parameterization Of Clients
  • Connectionless Vs. Connection-Oriented Servers
  • Stateless Vs. Stateful Servers
3. Concurrent Processing In Client-Server Software
  • Concurrency In Networks
  • Concurrency In Servers
  • Terminology And Concepts
  • The Process Concept
  • An Example Of Concurrent Process Creation
  • Timeslicing
  • Making Processes Diverge
  • Executing New Code
  • Context Switching And Protocol Software Design
  • Concurrency And Asynchronous I/O

4. Program Interface To Protocols

  • Loosely Specified Protocol Software Interface
  • Interface Functionality
  • Conceptual Interface Specification
  • System Calls
  • Two Basic Approaches To Network Communication

 5. The Socket Interface

  • The Socket Abstraction
  • Socket Descriptors And File Descriptors
  • System Data Structures For Sockets
  • Using Sockets
  • Specifying An Endpoint Address
  • Generic Address Structure
  • Major System Calls Used With Sockets
  • Using Socket Calls In A Program
  • Symbolic Constants For Socket Call Parameters 

6. Algorithms And Issues In Client Software Design

  • Client Architecture
  • Identifying The Location Of A Server
  • Parsing An Address Argument
  • Looking Up A Domain Name
  • The TCP Client Algorithm
  • Allocating A Socket
  • Choosing A Local Protocol Port Number
  • Connecting A TCP Socket To A Server
  • Communicating With The Server Using TCP
  • Reading A Response From A TCP Connection
  • Closing A TCP Connection
  • The Need For Partial Close
  • A Partial Close Operation
  • Programming A UDP Client
  • Connected And Unconnected UDP Sockets
  • Communicating With A Server Using UDP
  • Closing A Socket That Uses UDP
  • Partial Close For UDP

 7. Example Client Software: The DAYTIME Service
 


8. Algorithms And Issues In Server Software Design
  • Concurrent Vs. Iterative Servers
  • Connection-Oriented vs. Connectionless Access
  • Connection-Oriented Servers
  • Connectionless Servers
  • Failure, Reliability, and Statelessness
  • Optimizing Stateless Servers
  • Four Basic Types of Servers
  • Request Processing Time
  • Iterative Server Algorithms
  • An Iterative, Connection-Oriented Server Algorithm
  • Placing The Socket In Passive Mode
  • Accepting Connections And Using Them
  • An Iterative, Connectionless Server Algorithm
  • Forming A Reply Address In A Connectionless Server
  • Master And Slave Processes
  • A Concurrent, Connectionless Server Algorithm
  • A Concurrent, Connection-Oriented Server Algorithm
  • When To Use Each Server Type
  • The Problem Of Server Deadlock
 9. Iterative, Connectionless Servers (UDP)
  • Introduction
  • Creating A Passive Socket
  • Process Structure
 10. Iterative, Connection-Oriented Servers (TCP)
  • Introduction
  • Allocating A Passive TCP Socket
  • Process Structure
  • Closing Connections
  • Connection Termination And Server Vulnerability
11. Concurrent, Connection-Oriented Servers (TCP)
  • Introduction
  • Iterative Vs. Concurrent Implementations
  • Process Structure
  • Cleaning Up Errant Processes
 12. Single-Process, Concurrent Servers (TCP)
  • Introduction
  • Data-driven Processing In A Server
  • Data-Driven Processing With A Single Process
  • Process Structure Of A Single-Process Server
 
13. Multiprotocol Servers (TCP, UDP)
 
14. Multiservice Servers (TCP, UDP)
 
15. Uniform, Efficient Management Of Server Concurrency
 
16. Concurrency In Clients
 
17. Tunneling At The Transport And Application Levels

 
18. Deadlock And Starvation In Client-Server Systems
  • Introduction
  • Definition Of Deadlock
  • Difficulty Of Deadlock Detection
  • Deadlock Avoidance
  • Deadlock Between A Client And Server
  • Avoiding Deadlock In A Single Interaction
  • Starvation Among A Set Of Clients And A Server
  • Busy Connections And Starvation
  • Avoiding Blocking Operations
  • Processes, Connections, And Other Limits
  • Cycles Of Clients And Servers
 19. Summary

Back to the courses page
Courses
Carrier Ethernet
Designing with the Xilinx 7 Series Families
USB 3.0 System Architecture
Object Oriented Analysis and Design
Telecom
Carrier Ethernet
MPLS Basic
ATM and ATM Networking
IP Security
Hardware
Designing with the Xilinx 7 Series Families
Designing for Performance
Partial Reconfiguration Tools & Techniques
Designing with Multi-Gigabit Serial I/O
CTS
USB 3.0 System Architecture
Object Oriented Analysis and Design
Social Networks
Real Time and Embedded Linux Development
  • About
  • Training
  • Consulting
  • Development
  • Site map

Logtel (c) All rights reserved 2010-2011 | www.logtel.com | Developed by: Hagit Bagno | Designed: NotFromHere