4、从零开始编写基础 Web 服务器

从零开始编写基础 Web 服务器

1. TCP/IP 网络模型概述

TCP/IP 网络模型包含多个层次,其中网络层和网络访问层是重要组成部分:
- 网络层 :利用 IP 地址和路由器来定位并将信息包路由到跨网络的主机。与专注于在由 IP 地址和端口号标识的两个服务器之间发送和接收原始字节的传输层不同,网络层决定了将数据包从源发送到目的地的最佳路径。不过,我们无需直接与网络层交互,Rust 的标准库提供了与 TCP 和套接字交互的接口,并处理网络层通信的内部细节。
- 网络访问层 :是 TCP/IP 网络模型的最底层,负责通过主机之间的物理链路(如使用网卡)传输数据。对于我们的需求而言,用于网络通信的物理介质是什么并不重要。

2. 在 Rust 中编写 TCP 服务器

2.1 TCP/IP 通信流程设计

Rust 标准库通过 std::net 模块提供网络原语,其文档可在 这里 找到。该模块支持基本的 TCP 和 UDP 通信。 TcpListener TcpStream 这两个特定的数据结构包含了实现我们场景所需的大部分方法。
- TcpListener :用于创建绑定到特定端口的 TCP 套接字服务器。客户端可以向指定套接字地址(机器的 IP 地址和端口号的组合)的套接字服务器发送消息。一台机器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值