1 option
Network programming Rust : build fast and resilient network servers and clients by leveraging Rust's memory-safety and concurrency features / Abhishek Chanda.
- Format:
- Book
- Author/Creator:
- Chanda, Abhishek, author.
- Language:
- English
- Subjects (All):
- Rust (Computer program language).
- Programming languages (Electronic computers).
- Computer programming.
- Physical Description:
- 1 online resource (1 volume)
- Edition:
- 1st ed.
- Place of Publication:
- Birmingham, UK : Packt Publishing, 2018.
- Biography/History:
- Chanda Abhishek: Abhishek Chanda studied computer science at IIEST Shibpur in India and electrical engineering at Rutgers University. He has been working on networking and distributed systems since 2008. Over his career, he has worked with large companies (like Microsoft and Dell) and small startups (Cloudscaling, DataSine) in India, US, and the UK. He is enthusiastic about open source software and has contributed to a number of projects like OpenStack, Nomad etc. He contributes to a number of open source projects. He came across Rust in 2015 and found it to be a perfect fit for writing highly performant systems.
- Summary:
- Rust has steadily become one of the most important new programming languages in recent years. One the one hand, it is low-level enough to provide fine-grained control over memory while providing memory-safety through compile-time validation. Rust also guarantees data race-free parallelism. All these features make it uniquely suitable for.
- Contents:
- Cover
- Copyright and Credits
- Dedication
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Introduction to Client/Server Networking
- A brief history of networks
- Layering in networks
- Addressing in networks
- How IP routing works
- How DNS works
- Common service models
- Connection-oriented service
- Connectionless service
- The network programming interface in Linux
- Summary
- Chapter 2: Introduction to Rust and its Ecosystem
- The Rust ecosystem
- Getting started with Rust
- Introduction to the borrow checker
- Generics and the trait system
- Error handling
- The macro system
- Syntactic macros
- Procedural macros
- Functional features in Rust
- Higher-order functions
- Iterators
- Concurrency primitives
- Testing
- Chapter 3: TCP and UDP Using Rust
- A Simple TCP server and client
- A Simple UDP server and client
- UDP multicasting
- Miscellaneous utilities in std::net
- Some related crates
- Chapter 4: Data Serialization, Deserialization, and Parsing
- Serialization and deserialization using Serde
- Custom serialization and deserialization
- Parsing textual data
- Parsing binary data
- Chapter 5: Application Layer Protocols
- Introduction to RPC
- Introduction to SMTP
- Introduction to FTP and TFTP
- Chapter 6: Talking HTTP in the Internet
- Introducing Hyper
- Introducing Rocket
- Introducing reqwest
- Chapter 7: Asynchronous Network Programming Using Tokio
- Looking into the Future
- Working with streams and sinks
- Heading to tokio
- Socket multiplexing in tokio
- Writing streaming protocols
- The larger tokio ecosystem
- Conclusion
- Chapter 8 : Security
- Securing the web
- Letsencrypt using Rust
- OpenSSL using Rust
- Securing tokio applications
- Cryptography using ring
- Summary.
- Chapter 9 : Appendix
- Introduction to coroutines and generators
- How May handles coroutines
- Awaiting the future
- Data parallelism
- Parsing using Pest
- Miscellaneous utilities
- Other Books You May Enjoy
- Index.
- Notes:
- Description based on online resource; title from title page (viewed April 2, 2018).
- ISBN:
- 9781788621717
- 1788621719
- OCLC:
- 1030304585
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.