网络编程概述
一、什么是网络编程?
网络编程是 让不同计算机或设备通过网络协议进行数据交换 的软件开发技术。
其核心目标是:
- 实现设备间的 可靠通信(如网页浏览、文件传输)
- 支持 实时交互(如视频通话、在线游戏)
- 构建 分布式系统(如微服务、云计算)
二、核心基础概念
概念 | 作用 | 类比说明 |
---|
IP地址 | 设备的唯一网络标识(如 192.168.1.1 ) | 相当于"电话号码" 。定位网络中的某台计算机 |
端口号 | 标识应用程序的通信入口(范围:0-65535) | 相当于"分机号" 。定位计算机上的某个进程(某个应用) |
协议 | 通信规则集合(如TCP、UDP、HTTP) | 相当于"语言沟通的语法规则" |
Socket | 网络通信的编程接口(收发数据的端点) | 相当于"电话听筒" |
三、网络分层模型(TCP/IP四层)
层级 | 典型协议 | 编程关注点 |
---|
应用层 | HTTP, FTP, WebSocket | 处理业务逻辑(如JSON/XML数据解析) |
传输层 | TCP, UDP | 选择可靠传输或高效传输 |
网络层 | IP, ICMP | 路由寻址(通常由操作系统处理) |
网络接口层 | Ethernet, WiFi | 物理设备驱动(程序员不直接操作) |
四、关键协议对比
特性 | TCP | UDP |
---|
连接方式 | 面向连接(三次握手) | 无连接 |
可靠性 | 保证数据顺序和完整到达 | 可能丢包、乱序 |
速度 |