There is a new edition of the book and this is an old link.
Smart pointers are data structures that act like a pointer, but they also have additional metadata and capabilities. The different smart pointers defined in Rust’s standard library provide extra functionality beyond what references provide.
Here are the relevant sections in the new and old books: