[JAVASE]笔记15

IP:定义网络上的不同节点(手机,电脑,路由器。。)
IPV4:32位 IPV6:128位
目前主要用的都是IPV4
非注册IP公司(公司内部使用):192.168.0.0~192.168.255.255
特殊的IP:
127.0.0.1 本地IP
localhost 本机域名
DNS域名解析器

java.net 类 InetAddress 此类表示互联网协议(IP)地址。

	static InetAddress getLocalHost()	//返回本机主机。		vassar/192.168.11.230
	static InetAddress getByName(String host)	//在给定主机名的情况下确定主机IP的地址	host=vassar时,打印输出为 vassar/192.168.11.230

	String getHostAddress()	//返回IP地址字符串(以文本表现形式)
	String getHostName()		//获取此IP地址的主机名

端口:区分软件的
定义端口 2个字节 0~65535
相同的协议下端口不能冲突
端口自定义越大越好,8000以上,8000以内预留端口号
特殊的端口号:
80:http
8080:tomat
1521:Oracle 端口号
3306:mysql端口号

InetSocketAddress 此类实现IP套接字地址(IP+端口号)

InetSocketAddress(String hostname,int port)	//根据主机名额端口号创建套接字地址
	InetSocketAddress i=new InetSocketAddress("127.0.0.1",8888);	输出:/127.0.0.1:8888
InetAddress getAddress()	获取InetAddress
String getHostName()		获取hostname
int getPort();			获取端口

URL:统一资源定位符|器,它是指向互联网“资源”的指针
互联网的三大基石:html、url、http

协议:http
域名:www.baidu.com
端口:80 默认80
资源:index.html?name=zhangsan&age=21#a

	String getFile()	获取此url的文件名
	String getHost()	获取此URL的主机名(如果适用)
	String getPath()	获取此url的路径部分
	int getPort()		获取此url的端口号
	String getProtocol()		获取此url的协议名称
	String getQuery()		获取此url的查询部分
	String getRef()	获取此url的锚点(也称“引用”)

协议:规范 合同
UDP:非面向连接的 写信。 不安全,效率高,协议简单,开销小,大小有限制,一般不超过60k
TCP:面向连接的 打电话。安全,效率低开销大
3次握手:1、拨号 2、回返:响应 3、发送数据,基于IO穿出数据

应用层如何与传输层进行沟通?
通过Socket套接字
面向Socket编程,Socket相当于插座,是两层之间沟通的接口,不同协议,Socket的实现不一样

UDP如何实现Socket编程:发送端和接收端是平等的
DatagramSocket 此类表示用来发送和接收数据包的套接字
DatagramSocket(int port)
DatagramPacket 此类表示数据报包

UDP基本流程:发送端
1、创建发送端,指明发送端的端口
2、准备数据,转为字节数组
3、把数据打包,指明接收端的地址和端口号DatagramPacket
4、发送数据
5、关闭
UDP基本流程:接收端
1、创建接收端,指定接收端端口
2、准备字节数组,用来存储接口收据的
3、把字节数组打包
4、阻塞式接收
5、处理数据
6、关闭

TCP基本流程:客户端
1、创建客户端Socket指定服务端的IP和端口 Socket(String host,int port)
2、io操作
3、关闭

TCP基本流程:服务端
1、创建服务端 ServerSocket 指定端口 Serversocket(int port)
2、阻塞式接听 Socket accept()
3、一个客户端就是一个socket IO操作
4、关闭

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值