You are on page 1of 4

Table of

Contents
Network Programming with Perl
By Lincoln D. Stein

Publisher : Addison Wesley
Pub Date : December l5, 2000
lSBN : 0-20l-6l57l-l
Pages : 784
Slots : l

Copyright

Preface

This Book's Audience

Roadmap

The Many Versions of Perl

Getting the Code for the Code Examples

lnstalling Modules

Online Documentation


Acknowledgments

Part l: Basics

Chapter l. lnput/Output Basics

Perl and Networking

Networking Made Easy

Filehandles

Using Object-Oriented Syntax with the lO::Handle and lO::File Modules

Summary


Chapter 2. Processes, Pipes, and Signals

Processes

Pipes

Signals

Summary


Chapter 3. lntroduction to Berkeley Sockets

Clients, Servers, and Protocols

Berkeley Sockets

Socket Addressing

A Simple Network Client

Network Names and Services

Network Analysis Tools

Summary


Chapter 4. The TCP Protocol

A TCP Echo Client

Socket Functions Related to Outgoing Connections

A TCP Echo Server

Adjusting Socket Options

Other Socket-Related Functions

Exceptional Conditions during TCP Communications

Summary

Page l
mk:@MSlTStore:Z:\mnt\PRO\Tech Matters\Perl\Perl Programmin... 5/l9/20l2

Chapter 5. The lO::Socket APl

Using lO::Socket

lO::Socket Methods

More Practical Examples

Concurrent Clients

Summary



Part 2: Developing Clients for Common Services

Chapter 6. FTP and Telnet

Net::FTP

Net::Telnet

Summary


Chapter 7. SMTP: Sending Mail

lntroduction to the Mail Modules

Net::SMTP

MailTools

MlME-Tools

Summary


Chapter 8. POP, lMAP, and NNTP

The Post Office Protocol

The lMAP Protocol

lnternet News Clients

A News-to-Mail Gateway

Summary


Chapter 9. Web Clients

lnstalling LWP

LWP Basics

LWP Examples



Part 3: Developing TCP Client/Server Systems

Chapter l0. Forking Servers and the inetd Daemon

Standard Techniques for Concurrency

Running Example: A Psychotherapist Server

The Psychotherapist as a Forking Server

A Client Script for the Psychotherapist Server

Daemonization on UNlX Systems

Starting Network Servers Automatically

Using the inetd Super Daemon

Summary


Chapter ll. Multithreaded Applications

About Threads

A Multithreaded Psychiatrist Server

A Multithreaded Client

Summary


Chapter l2. Multiplexed Applications

A Multiplexed Client

The lO::Select Module
Page 2
mk:@MSlTStore:Z:\mnt\PRO\Tech Matters\Perl\Perl Programmin... 5/l9/20l2

A Multiplexed Psychiatrist Server

Summary


Chapter l3. Nonblocking l/O

Creating Nonblocking l/O Handles

Using Nonblocking Handles

Using Nonblocking Handles with Line-Oriented l/O

A Generic Nonblocking l/O Module

Nonblocking Connects and Accepts

Summary


Chapter l4. Bulletproofing Servers

Using the System Log

Setting User Privileges

Taint Mode

Using chroot()

Handling HUP and Other Signals

Summary


Chapter l5. Preforking and Prethreading

Preforking

Prethreading

Performance Measures

Summary


Chapter l6. lO::Poll

Using lO::Poll

lO::Poll Events

lO::Poll Methods

A Nonblocking TCP Client Using lO::Poll

Summary



Part 4: Advanced Topics

Chapter l7. TCP Urgent Data

"Out-of-Band" Data and the Urgent Pointer

Using TCP Urgent Data

The sockatmark() Function

A Travesty Server

Summary


Chapter l8. The UDP Protocol

A Time of Day Client

Creating and Using UDP Sockets

UDP Errors

Using UDP Sockets with lO::Socket

Sending to Multiple Hosts

UDP Servers

lncreasing the Robustness of UDP Applications

Summary


Chapter l9. UDP Servers

An lnternet Chat System

The Chat Client
Page 3
mk:@MSlTStore:Z:\mnt\PRO\Tech Matters\Perl\Perl Programmin... 5/l9/20l2

The Chat Server

Detecting Dead Clients

Summary


Chapter 20. Broadcasting

Unicasting versus Broadcasting

Broadcasting Explained

Sending and Receiving Broadcasts

Broadcasting Without the Broadcast Address

Enhancing the Chat Client to Support Resource Discovery

Summary


Chapter 2l. Multicasting

Multicast Basics

Using Multicast

Sample Multicast Applications

Summary


Chapter 22. UNlX-Domain Sockets

Using UNlX-Domain Sockets

A "Wrap" Server

Using UNlX-Domain Sockets for Datagrams

Summary



Appendix A. Additonal Source Code

Net::NetmaskLite (Chapter 3)

PromptUt|/.pm (Chapters 8 and 9)

lO::LineBufferedSet (Chapter l3)

lO::LineBufferedSessionData (Chapter l3)

DaemonDebug (Chapter l4)

Text::Travesty (Chapter l7)

mchat_c/|ent.p/ (Chapter 2l)


Appendix B. Perl Error Codes and Special Variables

System Error Constants

Magic Variables Affecting l/O

Other Perl Globals


Appendix C. lnternet Reference Tables

Assigned Port Numbers

Registered Port Numbers

lnternet Multicast Addresses


Appendix D. Bibliography

Perl Programming

TCP/lP and Berkeley Sockets

Network Server Design

Multicasting

Application-Level Protocols

Top
Page 4
mk:@MSlTStore:Z:\mnt\PRO\Tech Matters\Perl\Perl Programmin... 5/l9/20l2

You might also like