Ranch User Guide


Table of Contents

1. Introduction
1.1. Prerequisites
1.2. Supported platforms
1.3. Versioning
2. Listeners
2.1. Starting a listener
2.2. Stopping a listener
2.3. Default transport options
2.4. Listening on a random port
2.5. Listening on privileged ports
2.6. Accepting connections on an existing socket
2.7. Limiting the number of concurrent connections
2.8. When running out of file descriptors
2.9. Using a supervisor for connection processes
2.10. Upgrading
2.11. Obtain information about listeners
3. Transports
3.1. TCP transport
3.2. SSL transport
3.3. Sending and receiving data
3.4. Sending files
3.5. Writing a transport handler
4. Protocols
4.1. Writing a protocol handler
4.2. Using gen_server
5. Embedded mode
5.1. Embedding
6. Writing parsers
6.1. Parsing text
6.2. Parsing binary
7. SSL client authentication
7.1. Purpose
7.2. Obtaining client certificates
7.3. Transport configuration
7.4. Authentication
8. Internals
8.1. Architecture
8.2. Number of acceptors
8.3. Platform-specific TCP features