TCP/IP Sockets Programming

Course

In High Wycombe and Manchester

£ 1,375 + VAT

Description

  • Duration

    3 Days

Facilities

Location

Start date

High Wycombe (Buckinghamshire)
See map
24 - 28 Crendon Street, HP13 6LS

Start date

On request
Manchester (Greater Manchester)

Start date

On request

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Course programme

Objectives

On successful completion of this course attendees will be able to:

  • explain what a TCP/IP sockets application is
  • describe the basic structure of sockets applications
  • describe the finite socket states and the transition between states
  • identify the different types of sockets applications
  • describe how to allocate a socket for each type
  • describe the purpose and use of socket options
  • explain how set and test socket options
  • describe what an ephemeral socket does
  • explain how to bind a socket
  • describe the method for building a TCP/IP Connection
  • describe the method for accepting a TCP/IP Connection request
  • understand the concept of message streams
  • describe how to send and receive stream data
  • understand the concept of datagram messages
  • describe typical error conditions and how to handle them
  • describe how to send and receive datagram data
  • explain how to disconnect TCP/IP connections
  • understand how to support multiple concurrent connections
  • develop a server application
  • develop a client application
  • drive the IBM Network Management APIs that rely on sockets
  • describe how to program IPv6 sockets
  • describe how to program SSL (secure) sockets
  • describe how to achieve SSL security using AT-TLS
  • develop a simple Web Server.

Who Should Attend

This course is designed for network technicians, systems programmers and application programmers who need a good understanding of how to develop or support applications that communicate using TCP/IP protocols.

Prerequisites

Attendance on the RSM courses TCP/IP Fundamentals or equivalent experience. A working knowledge of either C (Linux or z/OS), REXX or Assembler is required. Where applicable, all examples will be done using all three programming languages and exercises can be done in the language each student prefers.

ContentsReview of TCP/IP Fundamentals

What is TCP/IP; what are TCP/IP applications; what are TCP/IP ports; what are TCP/IP sockets; how sockets relate to ports and applications; different socket types; client and server applications.

Overview of TCP/IP Applications

How does a TCP/IP application work; typical server application structure; typical client application structure; socket states; transition between states; monitoring socket states using netstat; TCP/IP Socket APIs for Assembler, C and REXX; developing applications for z/OS and Linux.

Getting Started with Sockets Programming

Allocating an STREAM socket; allocating a DATAGRAM socket; allocating a UNIX socket; blocking and non-blocking sockets; other socket options; setting socket options; getting socket options; binding a socket to an IP address and port combination; binding an ephemeral port.

TCP/IP Connection Management

Listening for incoming connections in a server application; accepting incoming connection requests; verifying the identity of the connecting partner; rejecting unwanted connections; connecting to a server from a client application; disconnecting an active connection; handing multiple concurrent connections; using internal connections.

TCP/IP Data Communication

Receiving stream data from a partner application; knowing when the stream is complete; sending stream data to a partner application; receiving datagrams; sending datagrams; detecting communications errors; handing multiple concurrent connections; things that can go wrong.

TCP/IP Sockets Programming - Additional Topics

IPv6 sockets and applications; developing secure sockets programs using SSL/TLS; using AT-TLS to achieve the same goals; socket ownership; giving and taking socket ownership; network management APIs that use TCP/IP sockets.

A Simple WebServer

How does a webserver work; what are the benefits of writing your own; using the examples and exercises from the course to build and test a simple WebServer which can communicate with IE and Firefox.

TCP/IP Sockets Programming

£ 1,375 + VAT