应用层协议开发全解析
1. 字符格式与协议基础
字符格式在设置和调试方面较为简便。例如,可使用 telnet 连接到任意端口的服务器并发送客户端请求,但没有像 telnet 这样简单的工具来向客户端发送服务器响应,不过可以使用 tcpdump 或 wireshark 来监控 TCP 流量,实时查看客户端与服务器之间的收发情况。
在 Go 语言中,对字符流管理的支持存在一定问题,特别是字符集和字符编码方面,不过若假设所有内容都是 ASCII 编码,处理起来就相对简单。但不同操作系统的“换行符”状态有所不同,UNIX 使用 \n ,Windows 等使用 \r\n ,在互联网上 \r\n 更为常见,UNIX 系统需注意不要默认使用 \n 。
2. 简单示例:目录浏览协议
以目录浏览协议为例,它是简化版的 FTP,不包含文件传输部分,仅考虑列出目录名、目录内容以及更改当前目录,这是一个完整的客户端 - 服务器应用程序示例。
2.1 独立应用程序
独立应用程序允许列出目录中的文件、更改和打印目录名。其伪代码如下:
read line from user
while not eof do
if line == dir
list directory // local function cal
超级会员免费看
订阅专栏 解锁全文
1790

被折叠的 条评论
为什么被折叠?



