随笔分类 - 网络编程
摘要:Modbus协议 / Modbus Protocol 目录 1 Modbus 协议简介 Modbus协议MODICON公司1979年开发的一种通信协议,是一种工业现场总线协议标准,1996年施耐德公司推出了基于以太网TCP/IP的Modbus协议—ModbusTCP。 Modbus协议是一项应用层报
阅读全文
摘要:BOOTP-TFTP-FTP 目录 1 文件传输流程 / File Transfer Flow 利用BOOTP,TFTP,FTP三种传输协议,建立起客户端和服务器,实现一个简单的文件传输流程。 Note: 三种传输协议的实现过程可参考文末的相关阅读,部分内容如文件路径和文件名等均为硬编码,后续可做修
阅读全文
摘要:DHCP实现 / DHCP Implement 目录 下面介绍建立一个简单的DHCP服务器,主要用于对基本的DHCP请求进行响应,目前只提供一个IP为客户端使用,实现最基本的通信示例。理论内容可参考 DHCP 理论部分。 1 DHCP 服务器建立过程 首先是基本服务器的建立,这个服务器实现了最基本的
阅读全文
摘要:DHCP协议 / DHCP Protocol 目录 1 DHCP 基本理论 DHCP (Dynamic Host Configuration Protocol, 动态主机配置协议) 是一种局域网的网络协议,使用UDP协议进行工作,主要有两个用途,在RFC 2131中有详细的描述, 1. 给内部网络或
阅读全文
摘要:BOOTP实现 / BOOTP Implement 目录 Note: 理论部分请参考文末相关阅读链接 1 BOOTP 的服务器建立过程 服务器建立步骤主要有: (1) 设定服务器IP,传送ip(offer_ip),服务端口68,客户端口67; (2) 建立send_socket/UDP,广播模式允许
阅读全文
摘要:BOOTP协议 / BOOTP Protocol 目录 1. 基本理论 / Basic Theory BOOTP(Bootstrap Protocol)是一种引导协议,基于RFC951协议,基于UDP协议,也称为自举协议,是DHCP协议的前身。BOOTP用于无盘工作站(类似网吧无盘结构)的局域网中,
阅读全文
摘要:TFTP实现 / TFTP Implement 目录 1 TFTP 的服务器建立过程 服务器建立步骤主要有: (1) 设定服务器IP和端口号(常用69),建立socket并bind地址; (2) 设定服务器工作目录; (3) 建立主循环进行监听,根据收到的信息选择读/写模式; (4) (建立新的线程
阅读全文
摘要:TFTP 的基本理论 目录 TFTP(Trivial File Transfer Protocol,简单文件传输协议)是UDP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69,基于RFC1350协议。 1 通信流程 / Communica
阅读全文
摘要:使用 ftplib 建立 FTP 客户端 用于建立FTP Client,与 pyftplib 建立的 Server 进行通信。 快速导航 1. 模块信息 2. 建立 FTP 客户端 1. 模块信息 1.1 常量 / Constants FTP_PORT = 21 标准的FTP协议服务端端口 1.2
阅读全文
摘要:使用 pyftplib 建立 FTP 服务器 pyftplib 主要用于建立 FTP Server,与 ftplib 建立的 Client 进行通信。 快速导航 1. 模块信息 2. 建立 FTP 服务器 1 模块信息 1.1 servers模块 用于建立服务器 1.1.1 FTPServer()类
阅读全文
摘要:FTP协议 / FTP Protocol FTP全称为File Transfer Protocol(文件传输协议),常用于Internet上控制文件的双向传输,常用的操作有上传和下载。基于TCP/IP,基于RFC959通信协议。 0 FTP理论 / FTP Theory 详细的理论可以参考这里。 1
阅读全文
摘要:Socket 目录 1 socket的TCP/IP通信基本建立过程 socket的TCP/IP通信连接主要包括两个部分,服务端与客户端 1.1 Socket server服务端建立 服务端建立步骤主要有: 1.2 Socket client客户端建立 客户端建立步骤主要有: 2 socket的UDP
阅读全文
摘要:socket 1. 常量 / Constants AF_* 和 SOCK_* 分别属于 AddressFamily 和 SocketType 1.1 AF_*类常量 socket.AF_UNIX: UNIX本地通信使用 socket.AF_INET: IPv4连接时使用 socket.AF_INET
阅读全文
摘要:Socket socket 简述 / socket Abstract 网络进程通信与 socket 网络中进程之间如何通信,首要解决的问题是如何唯一标识一个进程,否则通信无从谈起。在本地可以通过进程 PID 来唯一标识一个进程,但是在网络中这是行不通的。其实 TCP/IP 协议族已经帮我们解决了这个
阅读全文