一、java学习 | 网络编程【10】

文章介绍了计算机网络的基本概念,包括通过IP地址和端口定位网络主机,以及TCP和UDP协议在数据传输中的差异。TCP提供稳定连接,适合需要可靠性的通信,而UDP则更快速但不保证数据包顺序。此外,还提到了网络通信中的URL和DNS域名解析系统。
摘要由CSDN通过智能技术生成

一、基本知识
1.什么是计算机网络:计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
2.网络编程的目的:传播交流信息,数据交换,通信。
3.想要达到效果需要什么:
(1)如何准确定位网络上的一台主机:IP地址:192.168.16.124+端口,定位计算机上的某个资源
(2)找到了这个主机。如何传输数据?
4.Javaweb:网页编程 B/S架构
5.网络编程:TCP/IP C/S架构

二、网络通信的要素
1.如何实现网络的通信?
(1)通信双方地址:
ip:
端口号:
(2)规则:网络通信协议 主要学tcp,udp
在这里插入图片描述
实际上使用的是TCP/IP。OSI过于理想化(open system of internet)
小结:如何定位网络上的一台或多台主机
找到后如何通信
三、IP
ip:inetAddress
唯一定位网络上的计算机
本机:127.0.0.1
ip地址分类:
ipv4/ipv6:4个字节组成,0~255,42亿/ 128位。 8个无符号整数
公网(互联网)私网(局域网)分类:
192.168.XXX.XX 专门给组织内部使用分ABCD类
域名:记忆IP问题
IP:
四、端口
端口表示计算机上的一个程序的进程;
不同进程有不同的端口号,用来区分软件。
端口从0~65535;TCP,UDP:65535*2 ,单个协议下端口号不能重复
端口分类:

1 公有端口 0~1023 一般是占用的
HTTP:80
HTTPS:443
FTP:21
Telent:23
2 程序注册端口:1024~49151,分配给用户或者程序
Tomcat:8080 MySQL:3306 Oracle:1521
3 动态、私有:49152~65535
netstat -ano # 查询所有端口
netstat -ano|findstr "5900" # 查看指定端口
tasklist|findstr "8696" # 查看指定端口的进程

socket 套接字 用于端口通信

五、通信协议
网络通信协议:速率,传输码率,代码接哦古,传输控制…
问题:非常的复杂?可以大事化小:分层 TCP/IP 协议簇 实际上是一组协议
重要:
TCP:用户传输协议
UDP:用户数据报协议
出名的协议:
TCP:
IP:网络互联协议
TCP UDP对比:
TCP 打电话
(1)连接 稳定
(2)一次连接 三次握手 四次挥手
A: 你好
B: 收到
A: 开始发消息
=
A: 我准备断开连接
B: 我知道了
B: 你要断开了吗
A:是的

(3)客户端 服务端
(4)传输完成,释放连接,效率低
UDP:发短信
(1)不连接、不稳定
(2)客户端、服务端没有明确界限
(3)随时发送,不需要准备
(4)DDOS:洪水攻击!饱和式攻击
六、TCP
客户端
1.连接服务器 Socket
2.发送消息
服务端
1.建立服务器端口 ServerSocket
2.等待用户的链接 accept
3.接收用的消息

文件上传
服务端
客户端

Tomcat

  1. 服务端
    • 自定义S
    • Tomcat服务器S:Java后台开发!
  2. 客户端
    • 自定义C
    • 浏览器B

七、UDP
发短信:不用链接,直接发消息。
客户端和服务端的界限不再清晰。

八、URL 统一资源定位符

DNS (Domain Name System,域名解析): 把www.baidu.com 解析成 IP XXX.XX.XX.XX
协议://ip地址:端口/项目名/资源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值