网络编程
1.概述
TCP:相当于打电话,要保持通信
UDP:相当于短信,发送了就不管了
1.1网络通信要素
- 通信双方的地址:ip;端口号
- 规则:网络通信的协议
TCP/IP 参考模型
2.IP
2.1 ip地址:InetAddress/InetSocketAddress
- 唯一定位一台网络上的计算机
- 127.0.0.1:本机localhost
- ip地址分类
ipv4/ipv6
公网(互联网)/私网(局域网) - 域名:记忆IP问题
3.端口
3.1端口表示计算机上的一个程序的进程
- 不同的进程有不同的端口号,用来区分软件
- 被规定0~65535
- 单个协议下,端口号不能冲突
3.2 端口分类
3.2.1 公有端口 0~1023
- HTTP:80
- HTTPS:443
- FTP:21
- Telent:23
程序注册端口 1024~49151 分配用户或者程序
- tomcat:8080
- Mysql:3306
- Oracle:1521
动态,私有 49152~65535
netstat -ano //查看所有端口
netstat -ano|findstr “5900” //管道过滤查看指定端口
task list|findstr “8696” //查看指定端口进程
ctrl +shift+ESC
4.通信协议
4.1TCP/IP协议簇,实际是一组协议
TCP:用户传输协议
UDP:用户数据协议
Ip:网络互联协议
4.2 TCP与UDP
TCP:打电话
三次握手,四次挥手
客户端,服务端
传输完成才释放连接,效率低
UDP:发短信
不连接不稳定
客户端和服务端没有明确的界限
直接发送
DDOS:洪水攻击,堵塞端口
5.TCP
5.1 客户端
* 连接服务器Socket
* 发送消息
5.2服务器
* 建立服务器端口ServerSocket
* 等待用户连接accept
* 接收用户消息
5.3文件上传
5.4Tomcat
6. UDP
咨询
7.URL
统一资源定位符:定位互联网上的某个资源
后来代码偏多,这里仅占位,有时间写代码的话,会补充